diff --git a/lib/jekyll/generators/pagination.rb b/lib/jekyll/generators/pagination.rb index 0cd934c5..cfcd9c30 100644 --- a/lib/jekyll/generators/pagination.rb +++ b/lib/jekyll/generators/pagination.rb @@ -92,8 +92,9 @@ module Jekyll # Returns the pagination path as a string def self.paginate_path(site_config, num_page) return nil if num_page.nil? || num_page <= 1 - format = File.basename(site_config['paginate_path']) - format.sub(':num', num_page.to_s) + format = site_config['paginate_path'] + format = format.sub(':num', num_page.to_s) + File.basename(format) end # Initialize a new Pager. diff --git a/test/test_pager.rb b/test/test_pager.rb index 7e153ea4..990d28eb 100644 --- a/test/test_pager.rb +++ b/test/test_pager.rb @@ -11,6 +11,13 @@ class TestPager < Test::Unit::TestCase assert_equal(3, Pager.calculate_pages([1,2,3,4,5], '2')) end + should "determine the pagination path" do + assert_nil(Pager.paginate_path(Jekyll::Configuration::DEFAULTS, 1)) + assert_equal("page2", Pager.paginate_path(Jekyll::Configuration::DEFAULTS, 2)) + assert_nil(Pager.paginate_path(Jekyll::Configuration::DEFAULTS.merge('paginate_path' => '/blog/page-:num'), 1)) + assert_equal("page-2", Pager.paginate_path(Jekyll::Configuration::DEFAULTS.merge('paginate_path' => '/blog/page-:num'), 2)) + end + context "pagination disabled" do setup do stub(Jekyll).configuration do