Added tests for new jekyll doctor warning

This commit is contained in:
Alexander Köplinger 2014-12-15 21:26:47 +01:00
parent 6055f112fb
commit 34ff0bbb36
4 changed files with 54 additions and 0 deletions

View File

@ -0,0 +1,6 @@
---
title: About
permalink: /about/
---
About the site

View File

@ -0,0 +1,6 @@
---
title: About
permalink: /About/
---
About the site

View File

@ -0,0 +1,6 @@
---
title: About
permalink: /about/
---
About the site

View File

@ -0,0 +1,36 @@
require 'helper'
require 'jekyll/commands/doctor'
class TestDoctorCommand < Test::Unit::TestCase
context 'urls only differ by case' do
setup do
clear_dest
end
should 'return success on a valid site/page' do
@site = Site.new(Jekyll.configuration({
"source" => File.join(source_dir, '/_urls_differ_by_case_valid'),
"destination" => dest_dir
}))
@site.process
output = capture_stderr do
ret = Jekyll::Commands::Doctor.urls_only_differ_by_case(@site)
assert_equal false, ret
end
assert_equal "", output
end
should 'return warning for pages only differing by case' do
@site = Site.new(Jekyll.configuration({
"source" => File.join(source_dir, '/_urls_differ_by_case_invalid'),
"destination" => dest_dir
}))
@site.process
output = capture_stderr do
ret = Jekyll::Commands::Doctor.urls_only_differ_by_case(@site)
assert_equal true, ret
end
assert_equal "\e[33m Warning: The following URLs only differ by case. On a case-insensitive file system one of the URLs will be overwritten by the other: #{dest_dir}/about/index.html, #{dest_dir}/About/index.html\e[0m\n", output
end
end
end