Convert the languages fixtures to a factory
For some tests, the existance of an 'en' language is assumed by the database structure (not null default 'en'::character varying) so this can be created in a setup block.
This commit is contained in:
parent
7725cd59b4
commit
c365e2b28a
7 changed files with 39 additions and 30 deletions
|
@ -1,10 +1,15 @@
|
||||||
require "test_helper"
|
require "test_helper"
|
||||||
|
|
||||||
class DiaryEntryControllerTest < ActionController::TestCase
|
class DiaryEntryControllerTest < ActionController::TestCase
|
||||||
fixtures :users, :user_roles, :languages
|
fixtures :users, :user_roles
|
||||||
|
|
||||||
include ActionView::Helpers::NumberHelper
|
include ActionView::Helpers::NumberHelper
|
||||||
|
|
||||||
|
def setup
|
||||||
|
# Create the default language for diary entries
|
||||||
|
create(:language, :code => "en")
|
||||||
|
end
|
||||||
|
|
||||||
##
|
##
|
||||||
# test all routes which lead to this controller
|
# test all routes which lead to this controller
|
||||||
def test_routes
|
def test_routes
|
||||||
|
@ -162,6 +167,7 @@ class DiaryEntryControllerTest < ActionController::TestCase
|
||||||
assert_equal new_language_code, UserPreference.where(:user_id => users(:normal_user).id, :k => "diary.default_language").first.v
|
assert_equal new_language_code, UserPreference.where(:user_id => users(:normal_user).id, :k => "diary.default_language").first.v
|
||||||
|
|
||||||
new_language_code = "de"
|
new_language_code = "de"
|
||||||
|
create(:language, :code => new_language_code)
|
||||||
|
|
||||||
# Now try creating a diary entry in a different language
|
# Now try creating a diary entry in a different language
|
||||||
assert_difference "DiaryEntry.count", 1 do
|
assert_difference "DiaryEntry.count", 1 do
|
||||||
|
@ -472,6 +478,8 @@ class DiaryEntryControllerTest < ActionController::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_list_language
|
def test_list_language
|
||||||
|
create(:language, :code => "de")
|
||||||
|
create(:language, :code => "sl")
|
||||||
diary_entry_en = create(:diary_entry, :language_code => "en")
|
diary_entry_en = create(:diary_entry, :language_code => "en")
|
||||||
diary_entry_en2 = create(:diary_entry, :language_code => "en")
|
diary_entry_en2 = create(:diary_entry, :language_code => "en")
|
||||||
diary_entry_de = create(:diary_entry, :language_code => "de")
|
diary_entry_de = create(:diary_entry, :language_code => "de")
|
||||||
|
@ -490,6 +498,7 @@ class DiaryEntryControllerTest < ActionController::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_rss
|
def test_rss
|
||||||
|
create(:language, :code => "de")
|
||||||
create(:diary_entry, :language_code => "en")
|
create(:diary_entry, :language_code => "en")
|
||||||
create(:diary_entry, :language_code => "en")
|
create(:diary_entry, :language_code => "en")
|
||||||
create(:diary_entry, :language_code => "de")
|
create(:diary_entry, :language_code => "de")
|
||||||
|
@ -506,6 +515,7 @@ class DiaryEntryControllerTest < ActionController::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_rss_language
|
def test_rss_language
|
||||||
|
create(:language, :code => "de")
|
||||||
create(:diary_entry, :language_code => "en")
|
create(:diary_entry, :language_code => "en")
|
||||||
create(:diary_entry, :language_code => "en")
|
create(:diary_entry, :language_code => "en")
|
||||||
create(:diary_entry, :language_code => "de")
|
create(:diary_entry, :language_code => "de")
|
||||||
|
@ -521,6 +531,7 @@ class DiaryEntryControllerTest < ActionController::TestCase
|
||||||
# end
|
# end
|
||||||
|
|
||||||
def test_rss_language_with_no_entries
|
def test_rss_language_with_no_entries
|
||||||
|
create(:language, :code => "sl")
|
||||||
create(:diary_entry, :language_code => "en")
|
create(:diary_entry, :language_code => "en")
|
||||||
|
|
||||||
get :rss, :language => "sl", :format => :rss
|
get :rss, :language => "sl", :format => :rss
|
||||||
|
|
7
test/factories/languages.rb
Normal file
7
test/factories/languages.rb
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
FactoryGirl.define do
|
||||||
|
factory :language do
|
||||||
|
code "en"
|
||||||
|
english_name "English"
|
||||||
|
native_name "English"
|
||||||
|
end
|
||||||
|
end
|
16
test/fixtures/languages.yml
vendored
16
test/fixtures/languages.yml
vendored
|
@ -1,16 +0,0 @@
|
||||||
# Read about fixtures at http://ar.rubyonrails.org/classes/Fixtures.html
|
|
||||||
|
|
||||||
en:
|
|
||||||
code: en
|
|
||||||
english_name: English
|
|
||||||
native_name: English
|
|
||||||
|
|
||||||
de:
|
|
||||||
code: de
|
|
||||||
english_name: German
|
|
||||||
native_name: Deutsch
|
|
||||||
|
|
||||||
sl:
|
|
||||||
code: sl
|
|
||||||
english_name: Slovenian
|
|
||||||
native_name: slovenščina
|
|
|
@ -1,7 +1,12 @@
|
||||||
require "test_helper"
|
require "test_helper"
|
||||||
|
|
||||||
class DiaryCommentTest < ActiveSupport::TestCase
|
class DiaryCommentTest < ActiveSupport::TestCase
|
||||||
fixtures :users, :languages
|
fixtures :users
|
||||||
|
|
||||||
|
def setup
|
||||||
|
# Create the default language for diary entries
|
||||||
|
create(:language, :code => "en")
|
||||||
|
end
|
||||||
|
|
||||||
test "body must be present" do
|
test "body must be present" do
|
||||||
comment = build(:diary_comment, :body => "")
|
comment = build(:diary_comment, :body => "")
|
||||||
|
|
|
@ -1,7 +1,12 @@
|
||||||
require "test_helper"
|
require "test_helper"
|
||||||
|
|
||||||
class DiaryEntryTest < ActiveSupport::TestCase
|
class DiaryEntryTest < ActiveSupport::TestCase
|
||||||
fixtures :users, :languages
|
fixtures :users
|
||||||
|
|
||||||
|
def setup
|
||||||
|
# Create the default language for diary entries
|
||||||
|
create(:language, :code => "en")
|
||||||
|
end
|
||||||
|
|
||||||
def test_diary_entry_validations
|
def test_diary_entry_validations
|
||||||
diary_entry_valid({})
|
diary_entry_valid({})
|
||||||
|
|
|
@ -2,20 +2,13 @@
|
||||||
require "test_helper"
|
require "test_helper"
|
||||||
|
|
||||||
class LanguageTest < ActiveSupport::TestCase
|
class LanguageTest < ActiveSupport::TestCase
|
||||||
fixtures :languages
|
|
||||||
|
|
||||||
def test_language_count
|
|
||||||
assert_equal 3, Language.count
|
|
||||||
end
|
|
||||||
|
|
||||||
def test_name
|
def test_name
|
||||||
assert_equal "English (English)", languages(:en).name
|
create(:language, :code => "sl", :english_name => "Slovenian", :native_name => "slovenščina")
|
||||||
assert_equal "German (Deutsch)", languages(:de).name
|
assert_equal "Slovenian (slovenščina)", Language.find("sl").name
|
||||||
assert_equal "Slovenian (slovenščina)", languages(:sl).name
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_load
|
def test_load
|
||||||
assert_equal 3, Language.count
|
assert_equal 0, Language.count
|
||||||
assert_raise ActiveRecord::RecordNotFound do
|
assert_raise ActiveRecord::RecordNotFound do
|
||||||
Language.find("zh")
|
Language.find("zh")
|
||||||
end
|
end
|
||||||
|
|
|
@ -5,7 +5,7 @@ class UserTest < ActiveSupport::TestCase
|
||||||
include Rails::Dom::Testing::Assertions::SelectorAssertions
|
include Rails::Dom::Testing::Assertions::SelectorAssertions
|
||||||
|
|
||||||
api_fixtures
|
api_fixtures
|
||||||
fixtures :languages, :user_roles
|
fixtures :user_roles
|
||||||
|
|
||||||
def test_invalid_with_empty_attributes
|
def test_invalid_with_empty_attributes
|
||||||
user = User.new
|
user = User.new
|
||||||
|
@ -191,6 +191,10 @@ class UserTest < ActiveSupport::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_languages
|
def test_languages
|
||||||
|
create(:language, :code => "en")
|
||||||
|
create(:language, :code => "de")
|
||||||
|
create(:language, :code => "sl")
|
||||||
|
|
||||||
user = users(:normal_user)
|
user = users(:normal_user)
|
||||||
assert_equal ["en"], user.languages
|
assert_equal ["en"], user.languages
|
||||||
user.languages = %w(de fr en)
|
user.languages = %w(de fr en)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue