]> git.openstreetmap.org Git - rails.git/blobdiff - test/system/diary_entry_test.rb
Add links to diaries in preferred languages
[rails.git] / test / system / diary_entry_test.rb
index 38e2a184727c398d2a6b4953cf54330697217ee6..290b94207acec68cedbc8eb86819cfa7dbccfc49 100644 (file)
@@ -3,6 +3,9 @@ require "application_system_test_case"
 class DiaryEntrySystemTest < ApplicationSystemTestCase
   def setup
     create(:language, :code => "en")
 class DiaryEntrySystemTest < ApplicationSystemTestCase
   def setup
     create(:language, :code => "en")
+    create(:language, :code => "pt", :english_name => "Portuguese", :native_name => "Português")
+    create(:language, :code => "pt-BR", :english_name => "Brazilian Portuguese", :native_name => "Português do Brasil")
+    create(:language, :code => "ru", :english_name => "Russian", :native_name => "Русский")
     @diary_entry = create(:diary_entry)
   end
 
     @diary_entry = create(:diary_entry)
   end
 
@@ -10,9 +13,9 @@ class DiaryEntrySystemTest < ApplicationSystemTestCase
     sign_in_as(create(:user))
     visit diary_entries_path
 
     sign_in_as(create(:user))
     visit diary_entries_path
 
-    click_on "Reply to this entry"
+    click_link "Send a message to the author"
 
 
-    assert page.has_content? "Send a new message"
+    assert_content "Send a new message"
     assert_equal "Re: #{@diary_entry.title}", page.find_field("Subject").value
   end
 
     assert_equal "Re: #{@diary_entry.title}", page.find_field("Subject").value
   end
 
@@ -22,7 +25,7 @@ class DiaryEntrySystemTest < ApplicationSystemTestCase
     sign_in_as(create(:user))
     visit diary_entries_path
 
     sign_in_as(create(:user))
     visit diary_entries_path
 
-    assert_not page.has_content? @deleted_entry.title
+    assert_no_content @deleted_entry.title
   end
 
   test "deleted diary entries should be shown to administrators for review" do
   end
 
   test "deleted diary entries should be shown to administrators for review" do
@@ -31,17 +34,17 @@ class DiaryEntrySystemTest < ApplicationSystemTestCase
     sign_in_as(create(:administrator_user))
     visit diary_entries_path
 
     sign_in_as(create(:administrator_user))
     visit diary_entries_path
 
-    assert page.has_content? @deleted_entry.title
+    assert_content @deleted_entry.title
   end
 
   test "deleted diary entries should not be shown to admins when the user is also deleted" do
   end
 
   test "deleted diary entries should not be shown to admins when the user is also deleted" do
-    @deleted_user = create(:user, :status => :deleted)
+    @deleted_user = create(:user, :deleted)
     @deleted_entry = create(:diary_entry, :visible => false, :user => @deleted_user)
 
     sign_in_as(create(:administrator_user))
     visit diary_entries_path
 
     @deleted_entry = create(:diary_entry, :visible => false, :user => @deleted_user)
 
     sign_in_as(create(:administrator_user))
     visit diary_entries_path
 
-    assert_not page.has_content? @deleted_entry.title
+    assert_no_content @deleted_entry.title
   end
 
   test "deleted diary comments should be hidden for regular users" do
   end
 
   test "deleted diary comments should be hidden for regular users" do
@@ -50,7 +53,7 @@ class DiaryEntrySystemTest < ApplicationSystemTestCase
     sign_in_as(create(:user))
     visit diary_entry_path(@diary_entry.user, @diary_entry)
 
     sign_in_as(create(:user))
     visit diary_entry_path(@diary_entry.user, @diary_entry)
 
-    assert_not page.has_content? @deleted_comment.body
+    assert_no_content @deleted_comment.body
   end
 
   test "deleted diary comments should be shown to administrators" do
   end
 
   test "deleted diary comments should be shown to administrators" do
@@ -59,6 +62,16 @@ class DiaryEntrySystemTest < ApplicationSystemTestCase
     sign_in_as(create(:administrator_user))
     visit diary_entry_path(@diary_entry.user, @diary_entry)
 
     sign_in_as(create(:administrator_user))
     visit diary_entry_path(@diary_entry.user, @diary_entry)
 
-    assert page.has_content? @deleted_comment.body
+    assert_content @deleted_comment.body
+  end
+
+  test "should have links to preferred languages" do
+    sign_in_as(create(:user, :languages => %w[en-US pt-BR]))
+    visit diary_entries_path
+
+    assert_link "Diary Entries in English", :href => "/diary/en"
+    assert_link "Diary Entries in Brazilian Portuguese", :href => "/diary/pt-BR"
+    assert_link "Diary Entries in Portuguese", :href => "/diary/pt"
+    assert_no_link "Diary Entries in Russian"
   end
 end
   end
 end