Adding validations for the length of node tags, and the presence of the id (and version). More tests, including some boiler plate tests.
This commit is contained in:
parent
495bd7f1f0
commit
9a4ea6bfd0
10 changed files with 179 additions and 33 deletions
|
@ -2,4 +2,7 @@ class NodeTag < ActiveRecord::Base
|
|||
set_table_name 'current_node_tags'
|
||||
|
||||
belongs_to :node, :foreign_key => 'id'
|
||||
|
||||
validates_presence_of :id
|
||||
validates_length_of :k, :v, :within => 0..255, :allow_blank => true
|
||||
end
|
||||
|
|
|
@ -3,5 +3,7 @@ class OldNodeTag < ActiveRecord::Base
|
|||
|
||||
set_table_name 'node_tags'
|
||||
|
||||
validates_presence_of :id, :version
|
||||
validates_length_of :k, :v, :within => 0..255, :allow_blank => true
|
||||
|
||||
end
|
||||
|
|
4
test/fixtures/friends.yml
vendored
Normal file
4
test/fixtures/friends.yml
vendored
Normal file
|
@ -0,0 +1,4 @@
|
|||
normal_user_with_second_user:
|
||||
id: 1
|
||||
user_id: 1
|
||||
friend_user_id: 2
|
|
@ -1,22 +0,0 @@
|
|||
require File.dirname(__FILE__) + '/../test_helper'
|
||||
|
||||
class CurrentNodeTagTest < Test::Unit::TestCase
|
||||
fixtures :current_node_tags, :current_nodes
|
||||
set_fixture_class :current_nodes => Node
|
||||
set_fixture_class :current_node_tags => NodeTag
|
||||
|
||||
def test_tag_count
|
||||
assert_equal 6, NodeTag.count
|
||||
node_tag_count(:visible_node, 1)
|
||||
node_tag_count(:invisible_node, 1)
|
||||
node_tag_count(:used_node_1, 1)
|
||||
node_tag_count(:used_node_2, 1)
|
||||
node_tag_count(:node_with_versions, 2)
|
||||
end
|
||||
|
||||
def node_tag_count (node, count)
|
||||
nod = current_nodes(node)
|
||||
assert_equal count, nod.node_tags.count
|
||||
end
|
||||
|
||||
end
|
11
test/unit/diary_comment_test.rb
Normal file
11
test/unit/diary_comment_test.rb
Normal file
|
@ -0,0 +1,11 @@
|
|||
require File.dirname(__FILE__) + '/../test_helper'
|
||||
|
||||
class DiaryCommentTest < Test::Unit::TestCase
|
||||
fixtures :diary_comments
|
||||
|
||||
|
||||
def test_diary_comment_count
|
||||
assert_equal 1, DiaryComment.count
|
||||
end
|
||||
|
||||
end
|
11
test/unit/diary_entry_test.rb
Normal file
11
test/unit/diary_entry_test.rb
Normal file
|
@ -0,0 +1,11 @@
|
|||
require File.dirname(__FILE__) + '/../test_helper'
|
||||
|
||||
class DiaryEntryTest < Test::Unit::TestCase
|
||||
fixtures :diary_entries
|
||||
|
||||
|
||||
def test_diary_entry_count
|
||||
assert_equal 2, DiaryEntry.count
|
||||
end
|
||||
|
||||
end
|
11
test/unit/friend_test.rb
Normal file
11
test/unit/friend_test.rb
Normal file
|
@ -0,0 +1,11 @@
|
|||
require File.dirname(__FILE__) + '/../test_helper'
|
||||
|
||||
class FriendTest < Test::Unit::TestCase
|
||||
fixtures :friends
|
||||
|
||||
|
||||
def test_friend_count
|
||||
assert_equal 1, Friend.count
|
||||
end
|
||||
|
||||
end
|
|
@ -1,11 +1,71 @@
|
|||
require File.dirname(__FILE__) + '/../test_helper'
|
||||
|
||||
class NodeTagTest < Test::Unit::TestCase
|
||||
fixtures :current_node_tags
|
||||
fixtures :current_node_tags, :current_nodes
|
||||
set_fixture_class :current_nodes => Node
|
||||
set_fixture_class :current_node_tags => NodeTag
|
||||
|
||||
def test_node_tag_count
|
||||
def test_tag_count
|
||||
assert_equal 6, NodeTag.count
|
||||
node_tag_count(:visible_node, 1)
|
||||
node_tag_count(:invisible_node, 1)
|
||||
node_tag_count(:used_node_1, 1)
|
||||
node_tag_count(:used_node_2, 1)
|
||||
node_tag_count(:node_with_versions, 2)
|
||||
end
|
||||
|
||||
def node_tag_count (node, count)
|
||||
nod = current_nodes(node)
|
||||
assert_equal count, nod.node_tags.count
|
||||
end
|
||||
|
||||
def test_length_key_valid
|
||||
key = "k"
|
||||
(0..255).each do |i|
|
||||
tag = NodeTag.new
|
||||
tag.id = current_node_tags(:t1).id
|
||||
tag.k = key*i
|
||||
tag.v = "v"
|
||||
assert_valid tag
|
||||
end
|
||||
end
|
||||
|
||||
def test_length_value_valid
|
||||
val = "v"
|
||||
(0..255).each do |i|
|
||||
tag = NodeTag.new
|
||||
tag.id = current_node_tags(:t1).id
|
||||
tag.k = "k"
|
||||
tag.v = val*i
|
||||
assert_valid tag
|
||||
end
|
||||
end
|
||||
|
||||
def test_length_key_invalid
|
||||
["k"*256].each do |i|
|
||||
tag = NodeTag.new
|
||||
tag.id = current_node_tags(:t1).id
|
||||
tag.k = i
|
||||
tag.v = "v", "Key should be too long"
|
||||
assert !tag.valid?
|
||||
assert tag.errors.invalid?(:k)
|
||||
end
|
||||
end
|
||||
|
||||
def test_length_value_invalid
|
||||
["k"*256].each do |i|
|
||||
tag = NodeTag.new
|
||||
tag.id = current_node_tags(:t1).id
|
||||
tag.k = "k"
|
||||
tag.v = i
|
||||
assert !tag.valid?, "Value should be too long"
|
||||
assert tag.errors.invalid?(:v)
|
||||
end
|
||||
end
|
||||
|
||||
def test_empty_node_tag_invalid
|
||||
tag = NodeTag.new
|
||||
assert !tag.valid?, "Empty tag should be invalid"
|
||||
assert tag.errors.invalid?(:id)
|
||||
end
|
||||
end
|
||||
|
|
66
test/unit/old_node_tag_test.rb
Normal file
66
test/unit/old_node_tag_test.rb
Normal file
|
@ -0,0 +1,66 @@
|
|||
require File.dirname(__FILE__) + '/../test_helper'
|
||||
|
||||
class OldNodeTest < Test::Unit::TestCase
|
||||
set_fixture_class :nodes => OldNode
|
||||
set_fixture_class :node_tags => OldNodeTag
|
||||
fixtures :users, :nodes, :node_tags
|
||||
|
||||
def test_old_node_tag_count
|
||||
assert_equal 8, OldNodeTag.count, "Unexpected number of fixtures loaded."
|
||||
end
|
||||
|
||||
def test_length_key_valid
|
||||
key = "k"
|
||||
(0..255).each do |i|
|
||||
tag = OldNodeTag.new
|
||||
tag.id = node_tags(:t1).id
|
||||
tag.version = node_tags(:t1).version
|
||||
tag.k = key*i
|
||||
tag.v = "v"
|
||||
assert_valid tag
|
||||
end
|
||||
end
|
||||
|
||||
def test_length_value_valid
|
||||
val = "v"
|
||||
(0..255).each do |i|
|
||||
tag = OldNodeTag.new
|
||||
tag.id = node_tags(:t1).id
|
||||
tag.version = node_tags(:t1).version
|
||||
tag.k = "k"
|
||||
tag.v = val*i
|
||||
assert_valid tag
|
||||
end
|
||||
end
|
||||
|
||||
def test_length_key_invalid
|
||||
["k"*256].each do |i|
|
||||
tag = OldNodeTag.new
|
||||
tag.id = node_tags(:t1).id
|
||||
tag.version = node_tags(:t1).version
|
||||
tag.k = i
|
||||
tag.v = "v", "Key should be too long"
|
||||
assert !tag.valid?
|
||||
assert tag.errors.invalid?(:k)
|
||||
end
|
||||
end
|
||||
|
||||
def test_length_value_invalid
|
||||
["k"*256].each do |i|
|
||||
tag = OldNodeTag.new
|
||||
tag.id = node_tags(:t1).id
|
||||
tag.version = node_tags(:t1).version
|
||||
tag.k = "k"
|
||||
tag.v = i
|
||||
assert !tag.valid?, "Value should be too long"
|
||||
assert tag.errors.invalid?(:v)
|
||||
end
|
||||
end
|
||||
|
||||
def test_empty_old_node_tag_invalid
|
||||
tag = OldNodeTag.new
|
||||
assert !tag.valid?, "Empty tag should be invalid"
|
||||
assert tag.errors.invalid?(:id)
|
||||
assert tag.errors.invalid?(:version)
|
||||
end
|
||||
end
|
|
@ -96,7 +96,7 @@ class UserTest < Test::Unit::TestCase
|
|||
end
|
||||
|
||||
def test_friend_with
|
||||
assert_equal false, users(:normal_user).is_friends_with?(users(:second_user))
|
||||
assert_equal true, users(:normal_user).is_friends_with?(users(:second_user))
|
||||
assert_equal false, users(:normal_user).is_friends_with?(users(:inactive_user))
|
||||
assert_equal false, users(:second_user).is_friends_with?(users(:normal_user))
|
||||
assert_equal false, users(:second_user).is_friends_with?(users(:inactive_user))
|
||||
|
@ -114,15 +114,15 @@ class UserTest < Test::Unit::TestCase
|
|||
end
|
||||
|
||||
def test_friends_with
|
||||
# make normal user a friend of second user
|
||||
# normal user is a friend of second user
|
||||
# it should be a one way friend accossitation
|
||||
assert_equal 0, Friend.count
|
||||
assert_equal 1, Friend.count
|
||||
norm = users(:normal_user)
|
||||
sec = users(:second_user)
|
||||
friend = Friend.new
|
||||
friend.befriender = norm
|
||||
friend.befriendee = sec
|
||||
friend.save
|
||||
#friend = Friend.new
|
||||
#friend.befriender = norm
|
||||
#friend.befriendee = sec
|
||||
#friend.save
|
||||
assert_equal [sec], norm.nearby
|
||||
assert_equal 1, norm.nearby.size
|
||||
assert_equal 1, Friend.count
|
||||
|
@ -133,7 +133,7 @@ class UserTest < Test::Unit::TestCase
|
|||
assert_equal false, users(:second_user).is_friends_with?(users(:inactive_user))
|
||||
assert_equal false, users(:inactive_user).is_friends_with?(users(:normal_user))
|
||||
assert_equal false, users(:inactive_user).is_friends_with?(users(:second_user))
|
||||
Friend.delete(friend)
|
||||
assert_equal 0, Friend.count
|
||||
#Friend.delete(friend)
|
||||
#assert_equal 0, Friend.count
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue