1 require File.dirname(__FILE__) + '/../test_helper'
3 class TaggingTest < Test::Unit::TestCase
4 fixtures :taggings, :tags, <%= taggable_models[0..1].join(", ") -%>
7 @obj1 = <%= model_two %>.find(1)
8 @obj2 = <%= model_two %>.find(2)
9 <% if taggable_models.size > 1 -%>
10 @obj3 = <%= model_one -%>.find(1)
14 @tagging1 = Tagging.find(1)
18 @obj2.tag_with "dark columbian"
19 assert_equal "columbian dark", @obj2.tag_list
22 <% if options[:self_referential] -%>
23 def test_self_referential_tag_with
25 assert @tag1.tags.include?(@tag1)
26 assert !@tag2.tags.include?(@tag1)
31 @obj1._add_tags "porter longneck"
32 assert Tag.find_by_name("porter").taggables.include?(@obj1)
33 assert Tag.find_by_name("longneck").taggables.include?(@obj1)
34 assert_equal "delicious longneck porter", @obj1.tag_list
37 assert_equal "delicious longneck porter sexy", @obj1.tag_list
41 @obj2._remove_tags ["2", @tag1]
42 assert @obj2.tags.empty?
46 assert_equal "delicious sexy", @obj2.tag_list
50 assert_raises(RuntimeError) do
51 @tagging1.send(:taggable?, true)
53 assert !@tagging1.send(:taggable?)
54 <% if taggable_models.size > 1 -%>
55 assert @obj3.send(:taggable?)
57 <% if options[:self_referential] -%>
58 assert @tag1.send(:taggable?)