From 57e2d5a8f5adc18df966ca1801e42d3cfe01d16e Mon Sep 17 00:00:00 2001 From: Shaun McDonald Date: Fri, 14 Nov 2008 16:26:56 +0000 Subject: [PATCH] Unit tests work again. Fixed the set fixture class that I should. Adding 2 length checks to the user preference controller. --- test/unit/user_preference_test.rb | 28 ++++++++++++++++++++++++++++ test/unit/way_node_test.rb | 2 +- test/unit/way_tag_test.rb | 4 ++-- 3 files changed, 31 insertions(+), 3 deletions(-) diff --git a/test/unit/user_preference_test.rb b/test/unit/user_preference_test.rb index d591db69d..2118fcd39 100644 --- a/test/unit/user_preference_test.rb +++ b/test/unit/user_preference_test.rb @@ -22,5 +22,33 @@ class UserPreferenceTest < ActiveSupport::TestCase assert_raise (ActiveRecord::StatementInvalid) {newUP.save} end + def test_check_valid_length + key = "k" + val = "v" + (1..255).each do |i| + up = UserPreference.new + up.user = users(:normal_user) + up.k = key*i + up.v = val*i + assert up.valid? + assert up.save! + resp = UserPreference.find(up.id) + assert_equal key*i, resp.k, "User preference with #{i} #{key} chars (i.e. #{key.length*i} bytes) fails" + assert_equal val*i, resp.v, "User preference with #{i} #{val} chars (i.e. #{val.length*i} bytes) fails" + end + end + + def test_check_invalid_length + key = "k" + val = "v" + [0,256].each do |i| + up = UserPreference.new + up.user = users(:normal_user) + up.k = key*i + up.v = val*i + assert_equal false, up.valid? + assert_raise(ActiveRecord::RecordInvalid) {up.save!} + end + end end diff --git a/test/unit/way_node_test.rb b/test/unit/way_node_test.rb index b931d3c04..1871eae9d 100644 --- a/test/unit/way_node_test.rb +++ b/test/unit/way_node_test.rb @@ -1,7 +1,7 @@ require File.dirname(__FILE__) + '/../test_helper' class WayNodeTest < Test::Unit::TestCase - fixtures :way_nodes + fixtures :way_nodes, :current_way_nodes set_fixture_class :way_nodes=>OldWayNode set_fixture_class :current_way_nodes=>WayNode diff --git a/test/unit/way_tag_test.rb b/test/unit/way_tag_test.rb index 099d29da3..cd296749e 100644 --- a/test/unit/way_tag_test.rb +++ b/test/unit/way_tag_test.rb @@ -1,8 +1,8 @@ require File.dirname(__FILE__) + '/../test_helper' class WayTagTest < Test::Unit::TestCase - fixtures :way_tags - + fixtures :current_way_tags + set_fixture_class :current_way_tags => WayTag def test_way_tag_count assert_equal 3, WayTag.count -- 2.43.2