diff --git a/spec/models/acts_as_taggable_on_tag_spec.rb b/spec/models/acts_as_taggable_on_tag_spec.rb index 159c7c035..259027d94 100644 --- a/spec/models/acts_as_taggable_on_tag_spec.rb +++ b/spec/models/acts_as_taggable_on_tag_spec.rb @@ -1,23 +1,25 @@ require 'spec_helper' describe ActsAsTaggableOn::Tag, :type => :model do + + subject(:tag) { ActsAsTaggableOn::Tag } + describe '.autocomplete' do - before do - @tag = ActsAsTaggableOn::Tag.create(:name => "cats") - end + let!(:tag_cats) { tag.create(:name => "cats") } + it 'downcases the tag name' do - expect(ActsAsTaggableOn::Tag.autocomplete("CATS")).to eq([@tag]) + expect(tag.autocomplete("CATS")).to eq([tag_cats]) end it 'does an end where on tags' do - expect(ActsAsTaggableOn::Tag.autocomplete("CAT")).to eq([@tag]) + expect(tag.autocomplete("CAT")).to eq([tag_cats]) end end describe ".normalize" do it "removes leading hash symbols" do - expect(ActsAsTaggableOn::Tag.normalize("#mytag")).to eq("mytag") + expect(tag.normalize("#mytag")).to eq("mytag") end it "removes punctuation and whitespace" do @@ -33,13 +35,13 @@ describe ActsAsTaggableOn::Tag, :type => :model do 'hash#inside' => 'hashinside', 'f!u@n#k$y%-^h&a*r(a)c{t}e[r]s' => 'funky-characters' }.each do |invalid, normalized| - expect(ActsAsTaggableOn::Tag.normalize(invalid)).to eq(normalized) + expect(tag.normalize(invalid)).to eq(normalized) end end it 'allows for love' do - expect(ActsAsTaggableOn::Tag.normalize("<3")).to eq("<3") - expect(ActsAsTaggableOn::Tag.normalize("#<3")).to eq("<3") + expect(tag.normalize("<3")).to eq("<3") + expect(tag.normalize("#<3")).to eq("<3") end end end