jam-cloud/spec/jam_ruby/models/saved_track_spec.rb

41 lines
1.3 KiB
Ruby

require 'spec_helper'
describe SavedTrack do
before do
@user = FactoryGirl.create(:user)
@connection = FactoryGirl.create(:connection, :user => @user)
@instrument = FactoryGirl.create(:instrument, :description => 'a great instrument')
@track = FactoryGirl.create(:track, :connection => @connection, :instrument => @instrument)
end
it "should copy from a regular track properly" do
@saved_track = SavedTrack.create_from_track(@track)
@saved_track.user.id.should == @track.connection.user.id
@saved_track.instrument.id.should == @track.instrument.id
@saved_track.next_part_to_upload.should == 0
@saved_track.fully_uploaded.should == false
end
it "should update the next part to upload properly" do
@saved_track = SavedTrack.create_from_track(@track)
@saved_track.upload_part_complete(0)
@saved_track.upload_part_complete(1)
@saved_track.upload_part_complete(2)
@saved_track.next_part_to_upload.should == 3
end
it "should error if the wrong part is uploaded" do
@saved_track = SavedTrack.create_from_track(@track)
@saved_track.upload_part_complete(0)
@saved_track.upload_part_complete(1)
expect { @saved_track.upload_part_complete(3) }.to raise_error
@saved_track.next_part_to_upload.should == 2
end
end