History

Implement Docs::Filter#initial_page?

Thibaut committed 12 years ago

Commit ca06cc71 parent f8298182 files · +25 −0Browse files

Unified · Split

2 files
  1. lib/docs/core/filter.rb +4 −0
  2. test/lib/docs/core/filter_test.rb +21 −0
lib/docs/core/filter.rb+4−0
@@ -50,6 +50,10 @@ module Docs · 49 unmodified lines
5050 subpath.blank? || subpath == '/' || subpath == root_path
5151 end
5252
53+ def initial_page?
54+ root_page? || context[:initial_paths].include?(subpath)
55+ end
56+
5357 SCHEME_RGX = /\A[^:\/?#]+:/
5458
5559 def fragment_url_string?(str)
test/lib/docs/core/filter_test.rb+21−0
@@ -78,6 +78,27 @@ class DocsFilterTest < MiniTest::Spec · 77 unmodified lines
7878 end
7979 end
8080
81+ describe "#initial_page?" do
82+ before do
83+ context[:initial_paths] = ['initial']
84+ stub(filter).root_page? { false }
85+ end
86+
87+ it "returns true when #root_page? is true" do
88+ stub(filter).root_page? { true }
89+ assert filter.initial_page?
90+ end
91+
92+ it "returns true when #subpath is included in :initial_paths" do
93+ stub(filter).subpath { 'initial' }
94+ assert filter.initial_page?
95+ end
96+
97+ it "returns false otherwise" do
98+ refute filter.initial_page?
99+ end
100+ end
101+
81102 describe "#fragment_url_string?" do
82103 it "returns false with ''" do
83104 refute filter.fragment_url_string?('')