From 93c592bbe4b385cac2f8353b0814b523838388fa Mon Sep 17 00:00:00 2001 From: =?utf8?q?=C5=A0tefan=20Baebler?= Date: Wed, 19 Aug 2009 05:07:26 +0000 Subject: [PATCH 1/1] tests for diary rss feeds --- test/fixtures/languages.yml | 5 +++ .../functional/diary_entry_controller_test.rb | 37 ++++++++++++++++++- test/unit/language_test.rb | 2 +- 3 files changed, 42 insertions(+), 2 deletions(-) diff --git a/test/fixtures/languages.yml b/test/fixtures/languages.yml index e992da23e..7f4a18af6 100644 --- a/test/fixtures/languages.yml +++ b/test/fixtures/languages.yml @@ -9,3 +9,8 @@ de: code: de english_name: German native_name: Deutsch + +sl: + code: sl + english_name: Slovenian + native_name: slovenščina diff --git a/test/functional/diary_entry_controller_test.rb b/test/functional/diary_entry_controller_test.rb index d060af416..1f3492ae9 100644 --- a/test/functional/diary_entry_controller_test.rb +++ b/test/functional/diary_entry_controller_test.rb @@ -176,9 +176,44 @@ class DiaryEntryControllerTest < ActionController::TestCase def test_rss get :rss - assert_response :success + assert_response :success, "Should be able to get a diary RSS" + assert_select "rss:root", :count => 1 do + assert_select "channel", :count => 1 do + assert_select "channel>title", :count => 1 + assert_select "image", :count => 1 + assert_select "channel>item", :count => 2 + end + end + end + + def test_rss_language + get :rss, {:language => diary_entries(:normal_user_entry_1).language_code} + assert_response :success, "Should be able to get a specific language diary RSS" + assert_select "rss>channel>item", :count => 1 #, "Diary entries should be filtered by language" + end + +# def test_rss_nonexisting_language +# get :rss, {:language => 'xx'} +# assert_response :not_found, "Should not be able to get a nonexisting language diary RSS" +# end + + def test_rss_language_with_no_entries + get :rss, {:language => 'sl'} + assert_response :success, "Should be able to get a specific language diary RSS" + assert_select "rss>channel>item", :count => 0 #, "Diary entries should be filtered by language" + end + + def test_rss_user + get :rss, {:display_name => users(:normal_user).display_name} + assert_response :success, "Should be able to get a specific users diary RSS" + assert_select "rss>channel>item", :count => 2 #, "Diary entries should be filtered by user" end + def test_rss_nonexisting_user + get :rss, {:display_name => 'fakeUsername76543'} + assert_response :not_found, "Should not be able to get a nonexisting users diary RSS" + end + def test_viewing_diary_entry get :view, {:display_name => users(:normal_user).display_name, :id => diary_entries(:normal_user_entry_1).id} assert_response :success diff --git a/test/unit/language_test.rb b/test/unit/language_test.rb index da3004459..a171c1e2e 100644 --- a/test/unit/language_test.rb +++ b/test/unit/language_test.rb @@ -2,6 +2,6 @@ require File.dirname(__FILE__) + '/../test_helper' class LanguageTest < ActiveSupport::TestCase test "language count" do - assert_equal 2, Language.count + assert_equal 3, Language.count end end -- 2.43.2