From 8a0c0727eab4c39ad7ee160100ac939adb152649 Mon Sep 17 00:00:00 2001 From: Parker Moore Date: Wed, 1 Mar 2017 21:38:55 -0500 Subject: [PATCH 1/4] Failing test: abbreviated post dates are no longer read. This is a regression introduced by https://github.com/jekyll/jekyll/pull/5609. --- test/source/_posts/2017-2-5-i-dont-like-zeroes.md | 5 +++++ test/test_generated_site.rb | 7 ++++++- 2 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 test/source/_posts/2017-2-5-i-dont-like-zeroes.md diff --git a/test/source/_posts/2017-2-5-i-dont-like-zeroes.md b/test/source/_posts/2017-2-5-i-dont-like-zeroes.md new file mode 100644 index 00000000..201b96dc --- /dev/null +++ b/test/source/_posts/2017-2-5-i-dont-like-zeroes.md @@ -0,0 +1,5 @@ +--- +foo: barj +--- +I have an abbreviated date. Instead of "2017-02-05", I am instead "2017-2-5". +Zeros have always seemed superfluous. diff --git a/test/test_generated_site.rb b/test/test_generated_site.rb index 3a520b24..debb4ceb 100644 --- a/test/test_generated_site.rb +++ b/test/test_generated_site.rb @@ -11,7 +11,7 @@ class TestGeneratedSite < JekyllUnitTest end should "ensure post count is as expected" do - assert_equal 51, @site.posts.size + assert_equal 52, @site.posts.size end should "insert site.posts into the index" do @@ -48,6 +48,11 @@ class TestGeneratedSite < JekyllUnitTest assert_exist dest_dir("dynamic_file.php") end + should "include a post with a abbreviated dates" do + refute_nil -1, @site.posts.index { |post| post.relative_path == "_posts/2017-2-5-i-dont-like-zeroes.md" } + assert_exist dest_dir("2017", "02", "05", "i-dont-like-zeroes.html") + end + should "print a nice list of static files" do time_regexp = "\\d+:\\d+" # From 4085e29f80fbb760cd2050a9a8cc93bc18dbb6ee Mon Sep 17 00:00:00 2001 From: Parker Moore Date: Wed, 1 Mar 2017 21:39:23 -0500 Subject: [PATCH 2/4] Document::DATE_FILENAME_MATCHER: allow abbreviated dates in post filenames --- lib/jekyll/document.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/jekyll/document.rb b/lib/jekyll/document.rb index fecd5828..386683d6 100644 --- a/lib/jekyll/document.rb +++ b/lib/jekyll/document.rb @@ -9,7 +9,7 @@ module Jekyll YAML_FRONT_MATTER_REGEXP = %r!\A(---\s*\n.*?\n?)^((---|\.\.\.)\s*$\n?)!m DATELESS_FILENAME_MATCHER = %r!^(?:.+/)*(.*)(\.[^.]+)$! - DATE_FILENAME_MATCHER = %r!^(?:.+/)*(\d{4}-\d{2}-\d{2})-(.*)(\.[^.]+)$! + DATE_FILENAME_MATCHER = %r!^(?:.+/)*(\d{2,4}-\d{1,2}-\d{1,2})-(.*)(\.[^.]+)$! # Create a new Document. # From ca87c99a3c6bc4324741c8cba31dfe2981881281 Mon Sep 17 00:00:00 2001 From: Parker Moore Date: Wed, 1 Mar 2017 22:08:21 -0500 Subject: [PATCH 3/4] Fix fmt issues in test for 'include a post with a abbreviated dates' --- test/test_generated_site.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/test/test_generated_site.rb b/test/test_generated_site.rb index debb4ceb..e7cc52cb 100644 --- a/test/test_generated_site.rb +++ b/test/test_generated_site.rb @@ -49,7 +49,9 @@ class TestGeneratedSite < JekyllUnitTest end should "include a post with a abbreviated dates" do - refute_nil -1, @site.posts.index { |post| post.relative_path == "_posts/2017-2-5-i-dont-like-zeroes.md" } + refute_nil @site.posts.index { |post| + post.relative_path == "_posts/2017-2-5-i-dont-like-zeroes.md" + } assert_exist dest_dir("2017", "02", "05", "i-dont-like-zeroes.html") end From 3e4dbc83e3efb25edf47ffcfe798611c34a7a267 Mon Sep 17 00:00:00 2001 From: Parker Moore Date: Wed, 1 Mar 2017 22:36:25 -0500 Subject: [PATCH 4/4] Attempt to alleviate strange Windows encoding error. Error: TestGeneratedSite#test_: generated sites should render latest post's content. : Encoding::CompatibilityError: incompatible character encodings: IBM437 and UTF-8 C:/projects/jekyll/test/test_generated_site.rb:22:in `include?' C:/projects/jekyll/test/test_generated_site.rb:22:in `block (2 levels) in ' C:/projects/jekyll/test/test_generated_site.rb:34:in `instance_exec' C:/projects/jekyll/test/test_generated_site.rb:34:in `block in create_test_from_should_hash' --- test/source/_posts/2017-2-5-i-dont-like-zeroes.md | 2 +- test/test_generated_site.rb | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/test/source/_posts/2017-2-5-i-dont-like-zeroes.md b/test/source/_posts/2017-2-5-i-dont-like-zeroes.md index 201b96dc..95e11f12 100644 --- a/test/source/_posts/2017-2-5-i-dont-like-zeroes.md +++ b/test/source/_posts/2017-2-5-i-dont-like-zeroes.md @@ -1,5 +1,5 @@ --- -foo: barj +foo: bar --- I have an abbreviated date. Instead of "2017-02-05", I am instead "2017-2-5". Zeros have always seemed superfluous. diff --git a/test/test_generated_site.rb b/test/test_generated_site.rb index e7cc52cb..41e7c3a1 100644 --- a/test/test_generated_site.rb +++ b/test/test_generated_site.rb @@ -7,7 +7,10 @@ class TestGeneratedSite < JekyllUnitTest @site = fixture_site @site.process - @index = File.read(dest_dir("index.html")) + @index = File.read( + dest_dir("index.html"), + Utils.merged_file_read_opts(@site, {}) + ) end should "ensure post count is as expected" do