2010-06-10 13:37:51 -04:00
|
|
|
require 'spec_helper'
|
2009-04-11 11:27:23 -04:00
|
|
|
|
2010-06-24 09:45:57 -04:00
|
|
|
describe FactoryGirl::Sequence do
|
2010-08-12 22:42:18 -04:00
|
|
|
describe "a basic sequence" do
|
2011-08-13 01:03:12 -04:00
|
|
|
let(:name) { :test }
|
|
|
|
subject { FactoryGirl::Sequence.new(name) {|n| "=#{n}" } }
|
2011-05-19 10:56:45 -04:00
|
|
|
|
2011-08-13 01:03:12 -04:00
|
|
|
its(:name) { should == name }
|
|
|
|
its(:names) { should == [name] }
|
|
|
|
its(:next) { should == "=1" }
|
|
|
|
its(:default_strategy) { should == :create }
|
2009-04-11 11:27:23 -04:00
|
|
|
|
2011-08-13 01:03:12 -04:00
|
|
|
describe "when incrementing" do
|
|
|
|
before { subject.next }
|
|
|
|
its(:next) { should == "=2" }
|
2009-04-11 11:27:23 -04:00
|
|
|
end
|
|
|
|
end
|
2011-01-25 17:55:40 -05:00
|
|
|
|
2010-08-12 22:42:18 -04:00
|
|
|
describe "a custom sequence" do
|
2011-08-13 01:03:12 -04:00
|
|
|
subject { FactoryGirl::Sequence.new(:name, "A") {|n| "=#{n}" } }
|
|
|
|
its(:next) { should == "=A" }
|
2010-08-12 22:42:18 -04:00
|
|
|
|
2011-08-13 01:03:12 -04:00
|
|
|
describe "when incrementing" do
|
|
|
|
before { subject.next }
|
|
|
|
its(:next) { should == "=B" }
|
2010-08-12 22:42:18 -04:00
|
|
|
end
|
|
|
|
end
|
2011-01-27 16:25:31 -05:00
|
|
|
|
|
|
|
describe "a basic sequence without a block" do
|
2011-08-13 01:03:12 -04:00
|
|
|
subject { FactoryGirl::Sequence.new(:name) }
|
|
|
|
its(:next) { should == 1 }
|
2011-01-25 17:55:40 -05:00
|
|
|
|
2011-08-13 01:03:12 -04:00
|
|
|
describe "when incrementing" do
|
|
|
|
before { subject.next }
|
|
|
|
its(:next) { should == 2 }
|
2011-01-27 16:25:31 -05:00
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
describe "a custom sequence without a block" do
|
2011-08-13 01:03:12 -04:00
|
|
|
subject { FactoryGirl::Sequence.new(:name, "A") }
|
|
|
|
its(:next) { should == "A" }
|
2011-01-27 16:25:31 -05:00
|
|
|
|
2011-08-13 01:03:12 -04:00
|
|
|
describe "when incrementing" do
|
|
|
|
before { subject.next }
|
|
|
|
its(:next) { should == "B" }
|
2011-01-27 16:25:31 -05:00
|
|
|
end
|
|
|
|
end
|
2009-04-11 11:27:23 -04:00
|
|
|
end
|