From 52ac75b484408bc47bf31d7c10dbcb8c3a9024e8 Mon Sep 17 00:00:00 2001 From: jekyllbot Date: Tue, 4 Apr 2017 19:47:11 -0400 Subject: [PATCH] Date filters should never raise an exception (#5722) Merge pull request 5722 --- lib/jekyll/filters.rb | 3 +++ test/test_filters.rb | 8 +++----- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/lib/jekyll/filters.rb b/lib/jekyll/filters.rb index ea0fc905..c8da0e52 100644 --- a/lib/jekyll/filters.rb +++ b/lib/jekyll/filters.rb @@ -80,6 +80,7 @@ module Jekyll # # Returns the formatted String. def date_to_long_string(date) + return date if date.to_s.empty? time(date).strftime("%d %B %Y") end @@ -94,6 +95,7 @@ module Jekyll # # Returns the formatted String. def date_to_xmlschema(date) + return date if date.to_s.empty? time(date).xmlschema end @@ -108,6 +110,7 @@ module Jekyll # # Returns the formatted String. def date_to_rfc822(date) + return date if date.to_s.empty? time(date).rfc822 end diff --git a/test/test_filters.rb b/test/test_filters.rb index 782b5be9..9e35df92 100644 --- a/test/test_filters.rb +++ b/test/test_filters.rb @@ -284,11 +284,9 @@ class TestFilters < JekyllUnitTest end context "without input" do - should "raise an error if input is nil" do - err = assert_raises Jekyll::Errors::InvalidDateError do - @filter.date_to_xmlschema(nil) - end - assert_equal "Invalid Date: 'nil' is not a valid datetime.", err.message + should "return input" do + assert_nil(@filter.date_to_xmlschema(nil)) + assert_equal("", @filter.date_to_xmlschema("")) end end end