diff --git a/app/controllers/web_sweeper.rb b/app/controllers/web_sweeper.rb index 276a2128..81ebf141 100644 --- a/app/controllers/web_sweeper.rb +++ b/app/controllers/web_sweeper.rb @@ -27,6 +27,7 @@ class WebSweeper < ActionController::Caching::Sweeper expire_cached_summary_pages(record) else expire_cached_page(record.web, record.name) + expire_cached_summary_pages(record.web) end end diff --git a/app/models/page_set.rb b/app/models/page_set.rb index d22a6246..fb0ecf46 100644 --- a/app/models/page_set.rb +++ b/app/models/page_set.rb @@ -67,8 +67,9 @@ class PageSet < Array if never_orphans.include? page.name false else - references = pages_that_reference(page.name) - references.empty? or references == [page] +# references = pages_that_reference(page.name) + references = WikiReference.pages_that_reference(@web, page.name) + references.empty? or references == [page.name] end } end diff --git a/test/unit/web_test.rb b/test/unit/web_test.rb index 3ef65d68..00d1f514 100644 --- a/test/unit/web_test.rb +++ b/test/unit/web_test.rb @@ -79,12 +79,16 @@ class WebTest < Test::Unit::TestCase 'This is an author page, it should not be an orphan', Time.local(2004, 4, 4, 16, 50), 'AlexeyVerkhovsky', test_renderer) self_linked = @web.add_page('SelfLinked', - 'I am SelfLinked and link to EverBeenInLove', + "I am SelfLinked and link to EverBeenInLove\ncategory: fubar", Time.local(2004, 4, 4, 16, 50), 'AnonymousCoward', test_renderer) # page that links to itself, and nobody else links to it must be an orphan assert_equal ['EverBeenHated', 'SelfLinked'], @web.select.orphaned_pages.collect{ |page| page.name }.sort + pages_in_category = @web.select.pages_in_category('fubar') + orphaned_pages = @web.select.orphaned_pages + assert_equal ['SelfLinked'], + (pages_in_category & orphaned_pages).collect{ |page| page.name }.sort end def test_page_names_by_author @@ -98,7 +102,7 @@ class WebTest < Test::Unit::TestCase private def add_sample_pages - @in_love = @web.add_page('EverBeenInLove', 'Who am I me', + @in_love = @web.add_page('EverBeenInLove', "Who am I me\ncategory: fubar", Time.local(2004, 4, 4, 16, 50), 'DavidHeinemeierHansson', test_renderer) @hated = @web.add_page('EverBeenHated', 'I am me EverBeenHated', Time.local(2004, 4, 4, 16, 51), 'DavidHeinemeierHansson', test_renderer)