Permalink
Browse files

Tests for --config

  • Loading branch information...
1 parent 283e45d commit 3e1c171c91968c8971276dffd221a50780a0a720 @parkr parkr committed Jan 2, 2013
Showing with 27 additions and 0 deletions.
  1. +27 −0 test/test_configuration.rb
View
@@ -26,4 +26,31 @@ class TestConfiguration < Test::Unit::TestCase
assert_equal Jekyll::DEFAULTS, Jekyll.configuration({})
end
end
+ context "loading config from external file" do
+ setup do
+ @paths = {
+ :default => File.join(Dir.pwd, '_config.yml'),
+ :other => File.join(Dir.pwd, '_config.live.yml'),
+ :empty => ""
+ }
+ end
+
+ should "load default config if no config_file is set" do
+ mock(YAML).load_file(@paths[:default]) { Hash.new }
+ mock($stdout).puts("Configuration from #{@paths[:default]}")
+ assert_equal Jekyll::DEFAULTS, Jekyll.configuration({})
+ end
+
+ should "load different config if specified" do
+ mock(YAML).load_file(@paths[:other]) { {"baseurl" => "http://wahoo.dev"} }
+ mock($stdout).puts("Configuration from #{@paths[:other]}")
+ assert_equal Jekyll::DEFAULTS.deep_merge({ "baseurl" => "http://wahoo.dev" }), Jekyll.configuration({ "config" => @paths[:other] })
+ end
+
+ should "load default config if path passed is empty" do
+ mock(YAML).load_file(@paths[:default]) { Hash.new }
+ mock($stdout).puts("Configuration from #{@paths[:default]}")
+ assert_equal Jekyll::DEFAULTS, Jekyll.configuration({ "config" => @paths[:empty] })
+ end
+ end
end

0 comments on commit 3e1c171

Please sign in to comment.