require 'spec_helper' describe JamTrackRight do it "created" do jam_track_right = FactoryGirl.create(:jam_track_right) user = jam_track_right.user jam_track = jam_track_right.jam_track # verify that the user sees this as a purchased jam_track user.purchased_jam_tracks.should == [jam_track] # verify that the jam_track sees the user as an owner jam_track.owners.should == [user] end describe "validations" do it "one purchase per user/jam_track combo" do user = FactoryGirl.create(:user) jam_track = FactoryGirl.create(:jam_track) right_1 = FactoryGirl.create(:jam_track_right, user: user, jam_track: jam_track) right_2 = FactoryGirl.build(:jam_track_right, user: user, jam_track: jam_track) right_2.valid?.should be_false right_2.errors[:user_id].should == ['has already been taken'] end end it "saves JKZ" do user = FactoryGirl.create(:user) jam_track = FactoryGirl.create(:jam_track) right = JamTrackRight.create(:user=>user, :jam_track=>jam_track) expect { JamRuby::JamTracksManager.save_jam_track_jkz(user, jam_track) }.to_not raise_error end end