diff options
| author | hukl <contact@smyck.org> | 2009-03-05 21:11:46 +0100 |
|---|---|---|
| committer | hukl <contact@smyck.org> | 2009-03-05 21:11:46 +0100 |
| commit | 13846d2702639c018507a5231b2efcfc5ff6683f (patch) | |
| tree | 554041d14687d91336d070e9f0bce26869d03c28 /test | |
| parent | a006c9c54bf19273fca2f0607c82c069623a4125 (diff) | |
rewriting url in body fields to include the locale before saving the page. xpath magick for the win!
added corresponding test of course
Diffstat (limited to 'test')
| -rw-r--r-- | test/unit/page_test.rb | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/test/unit/page_test.rb b/test/unit/page_test.rb index 21b8910..461472e 100644 --- a/test/unit/page_test.rb +++ b/test/unit/page_test.rb | |||
| @@ -48,4 +48,61 @@ class PageTest < ActiveSupport::TestCase | |||
| 48 | assert_equal 4, Page.find_tagged_with( "update" ).count | 48 | assert_equal 4, Page.find_tagged_with( "update" ).count |
| 49 | assert_equal [d2.id, d4.id], Page.aggregate( options1 ).map {|x| x.id} | 49 | assert_equal [d2.id, d4.id], Page.aggregate( options1 ).map {|x| x.id} |
| 50 | end | 50 | end |
| 51 | |||
| 52 | def test_before_save_rewrite_links_in_body | ||
| 53 | n = Node.create :slug => "link_test" | ||
| 54 | n.move_to_child_of Node.root | ||
| 55 | d = n.find_or_create_draft @user1 | ||
| 56 | |||
| 57 | before = "<h1>Hello World</h1>\n" \ | ||
| 58 | "<a href=\"/club\" target=\"_blank\">Linkme</a>" | ||
| 59 | |||
| 60 | after = "<h1>Hello World</h1>\n" \ | ||
| 61 | "<a href=\"/de/club\" target=\"_blank\">Linkme</a>" | ||
| 62 | |||
| 63 | I18n.locale = :de | ||
| 64 | |||
| 65 | d.body = before | ||
| 66 | d.save | ||
| 67 | |||
| 68 | assert_equal after, d.body | ||
| 69 | end | ||
| 70 | |||
| 71 | def test_before_save_rewrite_links_in_body_if_no_locale_prefix_present | ||
| 72 | n = Node.create :slug => "link_test" | ||
| 73 | n.move_to_child_of Node.root | ||
| 74 | d = n.find_or_create_draft @user1 | ||
| 75 | |||
| 76 | before = "<h1>Hello World</h1>\n" \ | ||
| 77 | "<a href=\"/de/club\" target=\"_blank\">Linkme</a>" | ||
| 78 | |||
| 79 | after = "<h1>Hello World</h1>\n" \ | ||
| 80 | "<a href=\"/de/club\" target=\"_blank\">Linkme</a>" | ||
| 81 | |||
| 82 | I18n.locale = :de | ||
| 83 | |||
| 84 | d.body = before | ||
| 85 | d.save | ||
| 86 | |||
| 87 | assert_equal after, d.body | ||
| 88 | end | ||
| 89 | |||
| 90 | def test_before_save_rewrite_links_skips_on_external_links | ||
| 91 | n = Node.create :slug => "link_test" | ||
| 92 | n.move_to_child_of Node.root | ||
| 93 | d = n.find_or_create_draft @user1 | ||
| 94 | |||
| 95 | before = "<h1>Hello World</h1>\n" \ | ||
| 96 | "<a href=\"http://www.ccc.de/club\" target=\"_blank\">Linkme</a>" | ||
| 97 | |||
| 98 | after = "<h1>Hello World</h1>\n" \ | ||
| 99 | "<a href=\"http://www.ccc.de/club\" target=\"_blank\">Linkme</a>" | ||
| 100 | |||
| 101 | I18n.locale = :de | ||
| 102 | |||
| 103 | d.body = before | ||
| 104 | d.save | ||
| 105 | |||
| 106 | assert_equal after, d.body | ||
| 107 | end | ||
| 51 | end | 108 | end |
