factory_girl 2.3.2 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.travis.yml +5 -3
- data/Appraisals +4 -0
- data/CONTRIBUTION_GUIDELINES.md +1 -1
- data/Changelog +13 -0
- data/GETTING_STARTED.md +362 -286
- data/Gemfile.lock +1 -1
- data/README.md +8 -8
- data/features/factory_girl_steps.feature +4 -0
- data/features/support/factories.rb +19 -0
- data/gemfiles/2.1.gemfile.lock +1 -1
- data/gemfiles/2.3.gemfile.lock +1 -1
- data/gemfiles/3.0.gemfile.lock +1 -1
- data/gemfiles/3.1.gemfile.lock +1 -1
- data/gemfiles/3.2.gemfile +7 -0
- data/gemfiles/3.2.gemfile.lock +90 -0
- data/lib/factory_girl.rb +4 -0
- data/lib/factory_girl/attribute.rb +1 -9
- data/lib/factory_girl/attribute/association.rb +2 -2
- data/lib/factory_girl/attribute/dynamic.rb +2 -2
- data/lib/factory_girl/attribute/sequence.rb +1 -1
- data/lib/factory_girl/attribute/static.rb +1 -1
- data/lib/factory_girl/attribute_assigner.rb +73 -0
- data/lib/factory_girl/attribute_list.rb +6 -15
- data/lib/factory_girl/callback.rb +2 -2
- data/lib/factory_girl/evaluator.rb +57 -0
- data/lib/factory_girl/evaluator_class_definer.rb +34 -0
- data/lib/factory_girl/factory.rb +31 -80
- data/lib/factory_girl/null_factory.rb +2 -1
- data/lib/factory_girl/null_object.rb +19 -0
- data/lib/factory_girl/proxy.rb +6 -87
- data/lib/factory_girl/proxy/attributes_for.rb +2 -7
- data/lib/factory_girl/proxy/build.rb +4 -3
- data/lib/factory_girl/proxy/create.rb +6 -7
- data/lib/factory_girl/proxy/stub.rb +19 -18
- data/lib/factory_girl/step_definitions.rb +4 -3
- data/lib/factory_girl/version.rb +1 -1
- data/spec/acceptance/aliases_spec.rb +19 -0
- data/spec/acceptance/attributes_for_spec.rb +10 -1
- data/spec/acceptance/attributes_from_instance_spec.rb +53 -0
- data/spec/acceptance/build_spec.rb +8 -0
- data/spec/acceptance/build_stubbed_spec.rb +9 -0
- data/spec/acceptance/create_spec.rb +8 -0
- data/spec/factory_girl/attribute/association_spec.rb +5 -4
- data/spec/factory_girl/attribute/dynamic_spec.rb +9 -10
- data/spec/factory_girl/attribute/sequence_spec.rb +1 -2
- data/spec/factory_girl/attribute/static_spec.rb +1 -2
- data/spec/factory_girl/attribute_list_spec.rb +14 -4
- data/spec/factory_girl/evaluator_class_definer_spec.rb +54 -0
- data/spec/factory_girl/factory_spec.rb +23 -16
- data/spec/factory_girl/null_factory_spec.rb +2 -1
- data/spec/factory_girl/null_object_spec.rb +8 -0
- data/spec/factory_girl/proxy/attributes_for_spec.rb +8 -24
- data/spec/factory_girl/proxy/build_spec.rb +1 -7
- data/spec/factory_girl/proxy/create_spec.rb +2 -27
- data/spec/factory_girl/proxy/stub_spec.rb +14 -13
- data/spec/factory_girl/proxy_spec.rb +1 -33
- data/spec/support/shared_examples/proxy.rb +22 -45
- metadata +133 -177
@@ -6,7 +6,8 @@ describe FactoryGirl::NullFactory do
|
|
6
6
|
it { should delegate(:attributes).to(:definition) }
|
7
7
|
|
8
8
|
its(:compile) { should be_nil }
|
9
|
-
its(:default_strategy) { should be_nil }
|
10
9
|
its(:class_name) { should be_nil }
|
10
|
+
its(:default_strategy) { should == :create }
|
11
11
|
its(:attributes) { should be_an_instance_of(FactoryGirl::AttributeList) }
|
12
|
+
its(:evaluator_class) { should == FactoryGirl::Evaluator }
|
12
13
|
end
|
@@ -1,34 +1,18 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe FactoryGirl::Proxy::AttributesFor do
|
4
|
-
let(:
|
5
|
-
|
6
|
-
subject { FactoryGirl::Proxy::AttributesFor.new(proxy_class) }
|
4
|
+
let(:result) { { :name => "John Doe", :gender => "Male", :admin => false } }
|
5
|
+
let(:attribute_assigner) { stub("attribute assigner", :hash => result) }
|
7
6
|
|
8
7
|
it_should_behave_like "proxy without association support"
|
9
8
|
|
10
|
-
it "returns
|
11
|
-
subject.result(
|
9
|
+
it "returns the hash from the attribute assigner" do
|
10
|
+
subject.result(attribute_assigner, lambda {|item| item }).should == result
|
12
11
|
end
|
13
12
|
|
14
|
-
it "does not
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
end
|
19
|
-
|
20
|
-
describe "after setting an attribute" do
|
21
|
-
let(:attribute) { stub("attribute", :name => :attribute) }
|
22
|
-
|
23
|
-
before { subject.set(attribute, lambda { "value" }) }
|
24
|
-
|
25
|
-
it "sets that value in the resulting hash" do
|
26
|
-
subject.result(nil)[:attribute].should == "value"
|
27
|
-
end
|
28
|
-
|
29
|
-
it "returns that value when asked for that attribute" do
|
30
|
-
subject.get(:attribute).should == "value"
|
31
|
-
end
|
13
|
+
it "does not run the to_create block" do
|
14
|
+
expect do
|
15
|
+
subject.result(attribute_assigner, lambda {|item| raise "failed" })
|
16
|
+
end.to_not raise_error
|
32
17
|
end
|
33
18
|
end
|
34
|
-
|
@@ -1,13 +1,7 @@
|
|
1
|
-
require
|
1
|
+
require "spec_helper"
|
2
2
|
|
3
3
|
describe FactoryGirl::Proxy::Build do
|
4
|
-
let(:instance) { stub("built-instance") }
|
5
|
-
let(:proxy_class) { stub("class", :new => instance) }
|
6
|
-
|
7
|
-
subject { FactoryGirl::Proxy::Build.new(proxy_class) }
|
8
|
-
|
9
4
|
it_should_behave_like "proxy with association support", FactoryGirl::Proxy::Create
|
10
|
-
it_should_behave_like "proxy with standard getters and setters", :attribute_name, "attribute value!"
|
11
5
|
it_should_behave_like "proxy with callbacks", :after_build
|
12
6
|
it_should_behave_like "proxy with :method => :build", FactoryGirl::Proxy::Build
|
13
7
|
end
|
@@ -1,38 +1,13 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe FactoryGirl::Proxy::Create do
|
4
|
-
let(:instance) { stub("created-instance", :save! => true) }
|
5
|
-
let(:proxy_class) { stub("class", :new => instance) }
|
6
|
-
|
7
|
-
subject { FactoryGirl::Proxy::Create.new(proxy_class) }
|
8
|
-
|
9
4
|
it_should_behave_like "proxy with association support", FactoryGirl::Proxy::Create
|
10
|
-
it_should_behave_like "proxy with
|
11
|
-
it_should_behave_like "proxy with callbacks", :after_build
|
12
|
-
it_should_behave_like "proxy with callbacks", :after_create
|
5
|
+
it_should_behave_like "proxy with callbacks", :after_build, :after_create
|
13
6
|
|
14
7
|
it "runs a custom create block" do
|
15
8
|
block_run = false
|
16
9
|
block = lambda {|instance| block_run = true }
|
17
|
-
subject.result(block)
|
18
|
-
instance.should have_received(:save!).never
|
10
|
+
subject.result(stub("assigner", :object => stub("result instance")), block)
|
19
11
|
block_run.should be_true
|
20
12
|
end
|
21
13
|
end
|
22
|
-
|
23
|
-
describe FactoryGirl::Proxy::Create, "when running callbacks" do
|
24
|
-
let(:instance) { stub("created-instance", :save! => true) }
|
25
|
-
let(:proxy_class) { stub("class", :new => instance) }
|
26
|
-
let!(:callback_result) { [] }
|
27
|
-
|
28
|
-
let(:after_create_one) { FactoryGirl::Callback.new(:after_create, lambda { callback_result << :after_create_one }) }
|
29
|
-
let(:after_create_two) { FactoryGirl::Callback.new(:after_create, lambda { callback_result << :after_create_two }) }
|
30
|
-
let(:after_build_one) { FactoryGirl::Callback.new(:after_build, lambda { callback_result << :after_build_one }) }
|
31
|
-
|
32
|
-
subject { FactoryGirl::Proxy::Create.new(proxy_class, [after_create_one, after_create_two, after_build_one]) }
|
33
|
-
|
34
|
-
it "runs callbacks in the correct order" do
|
35
|
-
subject.result(lambda {|instance| instance })
|
36
|
-
callback_result.should == [:after_build_one, :after_create_one, :after_create_two]
|
37
|
-
end
|
38
|
-
end
|
@@ -1,37 +1,38 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe FactoryGirl::Proxy::Stub do
|
4
|
-
let(:instance) { stub("instance", :id= => nil, :id => 42) }
|
5
|
-
let(:proxy_class) { stub("class", :new => instance) }
|
6
|
-
|
7
|
-
subject { FactoryGirl::Proxy::Stub.new(proxy_class) }
|
8
|
-
|
9
4
|
it_should_behave_like "proxy with association support", FactoryGirl::Proxy::Stub
|
10
|
-
it_should_behave_like "proxy with standard getters and setters", :attribute_name, "attribute value!"
|
11
5
|
it_should_behave_like "proxy with callbacks", :after_stub
|
12
|
-
it_should_behave_like "proxy with :method => :build",
|
13
|
-
FactoryGirl::Proxy::Stub
|
6
|
+
it_should_behave_like "proxy with :method => :build", FactoryGirl::Proxy::Stub
|
14
7
|
|
15
8
|
context "asking for a result" do
|
16
9
|
before { Timecop.freeze(Time.now) }
|
17
10
|
after { Timecop.return }
|
11
|
+
let(:result_instance) do
|
12
|
+
define_class("ResultInstance") do
|
13
|
+
attr_accessor :id
|
14
|
+
end.new
|
15
|
+
end
|
16
|
+
|
17
|
+
let(:assigner) { stub("attribute assigner", :object => result_instance) }
|
18
|
+
let(:to_create) { lambda {|instance| instance } }
|
18
19
|
|
19
|
-
it { subject.result(
|
20
|
-
it { subject.result(
|
20
|
+
it { subject.result(assigner, to_create).should_not be_new_record }
|
21
|
+
it { subject.result(assigner, to_create).should be_persisted }
|
21
22
|
|
22
23
|
it "assigns created_at" do
|
23
|
-
created_at = subject.result(
|
24
|
+
created_at = subject.result(assigner, to_create).created_at
|
24
25
|
created_at.should == Time.now
|
25
26
|
|
26
27
|
Timecop.travel(150000)
|
27
28
|
|
28
|
-
subject.result(
|
29
|
+
subject.result(assigner, to_create).created_at.should == created_at
|
29
30
|
end
|
30
31
|
|
31
32
|
[:save, :destroy, :connection, :reload, :update_attribute].each do |database_method|
|
32
33
|
it "raises when attempting to connect to the database by calling #{database_method}" do
|
33
34
|
expect do
|
34
|
-
subject.result(
|
35
|
+
subject.result(assigner, to_create).send(database_method)
|
35
36
|
end.to raise_error(RuntimeError, "stubbed models are not allowed to access the database")
|
36
37
|
end
|
37
38
|
end
|
@@ -1,42 +1,10 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe FactoryGirl::Proxy do
|
4
|
-
subject { FactoryGirl::Proxy.new(Class.new) }
|
5
|
-
|
6
4
|
it_should_behave_like "proxy without association support"
|
7
5
|
|
8
|
-
it "doesn't raise when assigning a value to an attribute" do
|
9
|
-
name_attribute = FactoryGirl::Attribute::Static.new(:name, "great", false)
|
10
|
-
expect { subject.set(name_attribute, lambda { "a name" }) }.to_not raise_error
|
11
|
-
end
|
12
|
-
|
13
|
-
it "calls get for a missing method" do
|
14
|
-
subject.stubs(:get).with(:name).returns("it's a name")
|
15
|
-
subject.name.should == "it's a name"
|
16
|
-
end
|
17
|
-
|
18
6
|
it "raises an error when asking for the result" do
|
19
|
-
expect { subject.result(
|
20
|
-
end
|
21
|
-
end
|
22
|
-
|
23
|
-
describe FactoryGirl::Proxy, "when running callbacks" do
|
24
|
-
let!(:callback_result) { [] }
|
25
|
-
|
26
|
-
let(:after_create_one) { FactoryGirl::Callback.new(:after_create, lambda { callback_result << :after_create_one }) }
|
27
|
-
let(:after_create_two) { FactoryGirl::Callback.new(:after_create, lambda { callback_result << :after_create_two }) }
|
28
|
-
let(:after_build_one) { FactoryGirl::Callback.new(:after_build, lambda { callback_result << :after_build_one }) }
|
29
|
-
|
30
|
-
subject { FactoryGirl::Proxy.new(Class.new, [after_create_one, after_create_two, after_build_one]) }
|
31
|
-
|
32
|
-
it "runs callbacks in the correct order" do
|
33
|
-
subject.run_callbacks(:after_create)
|
34
|
-
callback_result.should == [:after_create_one, :after_create_two]
|
35
|
-
end
|
36
|
-
|
37
|
-
it "runs the correct callbacks based on name" do
|
38
|
-
subject.run_callbacks(:after_build)
|
39
|
-
callback_result.should == [:after_build_one]
|
7
|
+
expect { subject.result(stub("assigner"), lambda {|instance| instance }) }.to raise_error(NotImplementedError)
|
40
8
|
end
|
41
9
|
end
|
42
10
|
|
@@ -1,12 +1,6 @@
|
|
1
1
|
shared_examples_for "proxy without association support" do
|
2
2
|
let(:attribute) { FactoryGirl::Attribute::Association.new(:user, :user, {}) }
|
3
3
|
|
4
|
-
it "does not call FactoryGirl.create when building an association" do
|
5
|
-
FactoryGirl.stubs(:create)
|
6
|
-
subject.set(attribute, lambda { "awesome" })
|
7
|
-
FactoryGirl.should have_received(:create).never
|
8
|
-
end
|
9
|
-
|
10
4
|
it "returns nil when accessing an association" do
|
11
5
|
subject.association(:user, {}).should be_nil
|
12
6
|
end
|
@@ -60,54 +54,37 @@ shared_examples_for "proxy with :method => :build" do |factory_girl_proxy_class|
|
|
60
54
|
end
|
61
55
|
end
|
62
56
|
|
63
|
-
shared_examples_for "proxy with
|
64
|
-
let(:
|
65
|
-
|
66
|
-
|
67
|
-
instance.stubs(:"#{attribute}=" => value, :"#{attribute}" => value)
|
68
|
-
end
|
69
|
-
|
70
|
-
describe "when setting an attribute" do
|
71
|
-
before do
|
72
|
-
subject.set(attribute_instance, lambda { value })
|
73
|
-
subject.result(lambda {|instance| instance })
|
74
|
-
end
|
75
|
-
|
76
|
-
its(attribute) { should == value }
|
77
|
-
it { instance.should have_received(:"#{attribute}=").with(value) }
|
78
|
-
end
|
57
|
+
shared_examples_for "proxy with callbacks" do |*callback_names|
|
58
|
+
let(:callback_observer) do
|
59
|
+
define_class("CallbackObserver") do
|
60
|
+
attr_reader :callbacks_called
|
79
61
|
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
subject.result(lambda {|instance| instance })
|
84
|
-
end
|
62
|
+
def initialize
|
63
|
+
@callbacks_called = []
|
64
|
+
end
|
85
65
|
|
86
|
-
|
66
|
+
def update(callback_name, assigner)
|
67
|
+
@callbacks_called << [callback_name, assigner]
|
68
|
+
end
|
69
|
+
end.new
|
87
70
|
end
|
88
71
|
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
end
|
94
|
-
|
95
|
-
it { subject.get(attribute).should == value }
|
72
|
+
let(:result_instance) do
|
73
|
+
define_class("ResultInstance") do
|
74
|
+
attr_accessor :id
|
75
|
+
end.new
|
96
76
|
end
|
97
|
-
end
|
98
77
|
|
99
|
-
|
100
|
-
let(:callback_instance) { stub("#{callback_name} callback", :foo => nil) }
|
101
|
-
let(:callback) { FactoryGirl::Callback.new(callback_name, proc { callback_instance.foo }) }
|
78
|
+
let(:assigner) { stub("attribute assigner", :object => result_instance) }
|
102
79
|
|
103
|
-
|
80
|
+
before { subject.add_observer(callback_observer) }
|
104
81
|
|
105
|
-
it "runs the #{
|
106
|
-
subject.result(lambda {|instance| instance })
|
107
|
-
|
82
|
+
it "runs the callbacks #{callback_names} with the assigner's object" do
|
83
|
+
subject.result(assigner, lambda {|instance| instance })
|
84
|
+
callback_observer.callbacks_called.should == callback_names.map {|name| [name, assigner.object] }
|
108
85
|
end
|
109
86
|
|
110
|
-
it "returns the
|
111
|
-
subject.result(lambda {|instance| instance }).should ==
|
87
|
+
it "returns the object from the assigner" do
|
88
|
+
subject.result(assigner, lambda {|instance| instance }).should == assigner.object
|
112
89
|
end
|
113
90
|
end
|
metadata
CHANGED
@@ -1,208 +1,156 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: factory_girl
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 2.4.0
|
5
5
|
prerelease:
|
6
|
-
segments:
|
7
|
-
- 2
|
8
|
-
- 3
|
9
|
-
- 2
|
10
|
-
version: 2.3.2
|
11
6
|
platform: ruby
|
12
|
-
authors:
|
7
|
+
authors:
|
13
8
|
- Joe Ferris
|
14
9
|
autorequire:
|
15
10
|
bindir: bin
|
16
11
|
cert_chain: []
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
dependencies:
|
21
|
-
- !ruby/object:Gem::Dependency
|
12
|
+
date: 2012-01-13 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
22
15
|
name: activesupport
|
23
|
-
|
24
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
16
|
+
requirement: &70203557477340 !ruby/object:Gem::Requirement
|
25
17
|
none: false
|
26
|
-
requirements:
|
27
|
-
- -
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
|
30
|
-
segments:
|
31
|
-
- 0
|
32
|
-
version: "0"
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
33
22
|
type: :runtime
|
34
|
-
version_requirements: *id001
|
35
|
-
- !ruby/object:Gem::Dependency
|
36
|
-
name: rspec
|
37
23
|
prerelease: false
|
38
|
-
|
24
|
+
version_requirements: *70203557477340
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: rspec
|
27
|
+
requirement: &70203557470340 !ruby/object:Gem::Requirement
|
39
28
|
none: false
|
40
|
-
requirements:
|
29
|
+
requirements:
|
41
30
|
- - ~>
|
42
|
-
- !ruby/object:Gem::Version
|
43
|
-
|
44
|
-
segments:
|
45
|
-
- 2
|
46
|
-
- 0
|
47
|
-
version: "2.0"
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '2.0'
|
48
33
|
type: :development
|
49
|
-
version_requirements: *id002
|
50
|
-
- !ruby/object:Gem::Dependency
|
51
|
-
name: cucumber
|
52
34
|
prerelease: false
|
53
|
-
|
35
|
+
version_requirements: *70203557470340
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
name: cucumber
|
38
|
+
requirement: &70203557469400 !ruby/object:Gem::Requirement
|
54
39
|
none: false
|
55
|
-
requirements:
|
40
|
+
requirements:
|
56
41
|
- - ~>
|
57
|
-
- !ruby/object:Gem::Version
|
58
|
-
hash: 23
|
59
|
-
segments:
|
60
|
-
- 1
|
61
|
-
- 0
|
62
|
-
- 0
|
42
|
+
- !ruby/object:Gem::Version
|
63
43
|
version: 1.0.0
|
64
44
|
type: :development
|
65
|
-
version_requirements: *id003
|
66
|
-
- !ruby/object:Gem::Dependency
|
67
|
-
name: timecop
|
68
45
|
prerelease: false
|
69
|
-
|
46
|
+
version_requirements: *70203557469400
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: timecop
|
49
|
+
requirement: &70203557468720 !ruby/object:Gem::Requirement
|
70
50
|
none: false
|
71
|
-
requirements:
|
72
|
-
- -
|
73
|
-
- !ruby/object:Gem::Version
|
74
|
-
|
75
|
-
segments:
|
76
|
-
- 0
|
77
|
-
version: "0"
|
51
|
+
requirements:
|
52
|
+
- - ! '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
78
55
|
type: :development
|
79
|
-
version_requirements: *id004
|
80
|
-
- !ruby/object:Gem::Dependency
|
81
|
-
name: rcov
|
82
56
|
prerelease: false
|
83
|
-
|
57
|
+
version_requirements: *70203557468720
|
58
|
+
- !ruby/object:Gem::Dependency
|
59
|
+
name: rcov
|
60
|
+
requirement: &70203557467720 !ruby/object:Gem::Requirement
|
84
61
|
none: false
|
85
|
-
requirements:
|
86
|
-
- -
|
87
|
-
- !ruby/object:Gem::Version
|
88
|
-
|
89
|
-
segments:
|
90
|
-
- 0
|
91
|
-
version: "0"
|
62
|
+
requirements:
|
63
|
+
- - ! '>='
|
64
|
+
- !ruby/object:Gem::Version
|
65
|
+
version: '0'
|
92
66
|
type: :development
|
93
|
-
version_requirements: *id005
|
94
|
-
- !ruby/object:Gem::Dependency
|
95
|
-
name: aruba
|
96
67
|
prerelease: false
|
97
|
-
|
68
|
+
version_requirements: *70203557467720
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: aruba
|
71
|
+
requirement: &70203557466180 !ruby/object:Gem::Requirement
|
98
72
|
none: false
|
99
|
-
requirements:
|
100
|
-
- -
|
101
|
-
- !ruby/object:Gem::Version
|
102
|
-
|
103
|
-
segments:
|
104
|
-
- 0
|
105
|
-
version: "0"
|
73
|
+
requirements:
|
74
|
+
- - ! '>='
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: '0'
|
106
77
|
type: :development
|
107
|
-
version_requirements: *id006
|
108
|
-
- !ruby/object:Gem::Dependency
|
109
|
-
name: mocha
|
110
78
|
prerelease: false
|
111
|
-
|
79
|
+
version_requirements: *70203557466180
|
80
|
+
- !ruby/object:Gem::Dependency
|
81
|
+
name: mocha
|
82
|
+
requirement: &70203557465420 !ruby/object:Gem::Requirement
|
112
83
|
none: false
|
113
|
-
requirements:
|
114
|
-
- -
|
115
|
-
- !ruby/object:Gem::Version
|
116
|
-
|
117
|
-
segments:
|
118
|
-
- 0
|
119
|
-
version: "0"
|
84
|
+
requirements:
|
85
|
+
- - ! '>='
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: '0'
|
120
88
|
type: :development
|
121
|
-
version_requirements: *id007
|
122
|
-
- !ruby/object:Gem::Dependency
|
123
|
-
name: bourne
|
124
89
|
prerelease: false
|
125
|
-
|
90
|
+
version_requirements: *70203557465420
|
91
|
+
- !ruby/object:Gem::Dependency
|
92
|
+
name: bourne
|
93
|
+
requirement: &70203557464620 !ruby/object:Gem::Requirement
|
126
94
|
none: false
|
127
|
-
requirements:
|
128
|
-
- -
|
129
|
-
- !ruby/object:Gem::Version
|
130
|
-
|
131
|
-
segments:
|
132
|
-
- 0
|
133
|
-
version: "0"
|
95
|
+
requirements:
|
96
|
+
- - ! '>='
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
version: '0'
|
134
99
|
type: :development
|
135
|
-
version_requirements: *id008
|
136
|
-
- !ruby/object:Gem::Dependency
|
137
|
-
name: appraisal
|
138
100
|
prerelease: false
|
139
|
-
|
101
|
+
version_requirements: *70203557464620
|
102
|
+
- !ruby/object:Gem::Dependency
|
103
|
+
name: appraisal
|
104
|
+
requirement: &70203557456720 !ruby/object:Gem::Requirement
|
140
105
|
none: false
|
141
|
-
requirements:
|
106
|
+
requirements:
|
142
107
|
- - ~>
|
143
|
-
- !ruby/object:Gem::Version
|
144
|
-
hash: 3
|
145
|
-
segments:
|
146
|
-
- 0
|
147
|
-
- 3
|
148
|
-
- 8
|
108
|
+
- !ruby/object:Gem::Version
|
149
109
|
version: 0.3.8
|
150
110
|
type: :development
|
151
|
-
version_requirements: *id009
|
152
|
-
- !ruby/object:Gem::Dependency
|
153
|
-
name: sqlite3-ruby
|
154
111
|
prerelease: false
|
155
|
-
|
112
|
+
version_requirements: *70203557456720
|
113
|
+
- !ruby/object:Gem::Dependency
|
114
|
+
name: sqlite3-ruby
|
115
|
+
requirement: &70203557455540 !ruby/object:Gem::Requirement
|
156
116
|
none: false
|
157
|
-
requirements:
|
158
|
-
- -
|
159
|
-
- !ruby/object:Gem::Version
|
160
|
-
|
161
|
-
segments:
|
162
|
-
- 0
|
163
|
-
version: "0"
|
117
|
+
requirements:
|
118
|
+
- - ! '>='
|
119
|
+
- !ruby/object:Gem::Version
|
120
|
+
version: '0'
|
164
121
|
type: :development
|
165
|
-
version_requirements: *id010
|
166
|
-
- !ruby/object:Gem::Dependency
|
167
|
-
name: yard
|
168
122
|
prerelease: false
|
169
|
-
|
123
|
+
version_requirements: *70203557455540
|
124
|
+
- !ruby/object:Gem::Dependency
|
125
|
+
name: yard
|
126
|
+
requirement: &70203557454880 !ruby/object:Gem::Requirement
|
170
127
|
none: false
|
171
|
-
requirements:
|
172
|
-
- -
|
173
|
-
- !ruby/object:Gem::Version
|
174
|
-
|
175
|
-
segments:
|
176
|
-
- 0
|
177
|
-
version: "0"
|
128
|
+
requirements:
|
129
|
+
- - ! '>='
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: '0'
|
178
132
|
type: :development
|
179
|
-
version_requirements: *id011
|
180
|
-
- !ruby/object:Gem::Dependency
|
181
|
-
name: bluecloth
|
182
133
|
prerelease: false
|
183
|
-
|
134
|
+
version_requirements: *70203557454880
|
135
|
+
- !ruby/object:Gem::Dependency
|
136
|
+
name: bluecloth
|
137
|
+
requirement: &70203557453700 !ruby/object:Gem::Requirement
|
184
138
|
none: false
|
185
|
-
requirements:
|
186
|
-
- -
|
187
|
-
- !ruby/object:Gem::Version
|
188
|
-
|
189
|
-
segments:
|
190
|
-
- 0
|
191
|
-
version: "0"
|
139
|
+
requirements:
|
140
|
+
- - ! '>='
|
141
|
+
- !ruby/object:Gem::Version
|
142
|
+
version: '0'
|
192
143
|
type: :development
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
144
|
+
prerelease: false
|
145
|
+
version_requirements: *70203557453700
|
146
|
+
description: ! "factory_girl provides a framework and DSL for defining and\n using
|
147
|
+
factories - less error-prone, more explicit, and\n all-around
|
148
|
+
easier to work with than fixtures."
|
198
149
|
email: jferris@thoughtbot.com
|
199
150
|
executables: []
|
200
|
-
|
201
151
|
extensions: []
|
202
|
-
|
203
152
|
extra_rdoc_files: []
|
204
|
-
|
205
|
-
files:
|
153
|
+
files:
|
206
154
|
- .autotest
|
207
155
|
- .gitignore
|
208
156
|
- .rspec
|
@@ -223,6 +171,7 @@ files:
|
|
223
171
|
- lib/factory_girl/attribute/dynamic.rb
|
224
172
|
- lib/factory_girl/attribute/sequence.rb
|
225
173
|
- lib/factory_girl/attribute/static.rb
|
174
|
+
- lib/factory_girl/attribute_assigner.rb
|
226
175
|
- lib/factory_girl/attribute_list.rb
|
227
176
|
- lib/factory_girl/callback.rb
|
228
177
|
- lib/factory_girl/declaration.rb
|
@@ -234,9 +183,12 @@ files:
|
|
234
183
|
- lib/factory_girl/definition.rb
|
235
184
|
- lib/factory_girl/definition_proxy.rb
|
236
185
|
- lib/factory_girl/deprecated.rb
|
186
|
+
- lib/factory_girl/evaluator.rb
|
187
|
+
- lib/factory_girl/evaluator_class_definer.rb
|
237
188
|
- lib/factory_girl/factory.rb
|
238
189
|
- lib/factory_girl/find_definitions.rb
|
239
190
|
- lib/factory_girl/null_factory.rb
|
191
|
+
- lib/factory_girl/null_object.rb
|
240
192
|
- lib/factory_girl/proxy.rb
|
241
193
|
- lib/factory_girl/proxy/attributes_for.rb
|
242
194
|
- lib/factory_girl/proxy/build.rb
|
@@ -273,9 +225,13 @@ files:
|
|
273
225
|
- gemfiles/3.0.gemfile.lock
|
274
226
|
- gemfiles/3.1.gemfile
|
275
227
|
- gemfiles/3.1.gemfile.lock
|
228
|
+
- gemfiles/3.2.gemfile
|
229
|
+
- gemfiles/3.2.gemfile.lock
|
230
|
+
- spec/acceptance/aliases_spec.rb
|
276
231
|
- spec/acceptance/attribute_aliases_spec.rb
|
277
232
|
- spec/acceptance/attribute_existing_on_object.rb
|
278
233
|
- spec/acceptance/attributes_for_spec.rb
|
234
|
+
- spec/acceptance/attributes_from_instance_spec.rb
|
279
235
|
- spec/acceptance/attributes_ordered_spec.rb
|
280
236
|
- spec/acceptance/build_list_spec.rb
|
281
237
|
- spec/acceptance/build_spec.rb
|
@@ -313,9 +269,11 @@ files:
|
|
313
269
|
- spec/factory_girl/definition_proxy_spec.rb
|
314
270
|
- spec/factory_girl/definition_spec.rb
|
315
271
|
- spec/factory_girl/deprecated_spec.rb
|
272
|
+
- spec/factory_girl/evaluator_class_definer_spec.rb
|
316
273
|
- spec/factory_girl/factory_spec.rb
|
317
274
|
- spec/factory_girl/find_definitions_spec.rb
|
318
275
|
- spec/factory_girl/null_factory_spec.rb
|
276
|
+
- spec/factory_girl/null_object_spec.rb
|
319
277
|
- spec/factory_girl/proxy/attributes_for_spec.rb
|
320
278
|
- spec/factory_girl/proxy/build_spec.rb
|
321
279
|
- spec/factory_girl/proxy/create_spec.rb
|
@@ -331,41 +289,32 @@ files:
|
|
331
289
|
- spec/support/matchers/delegate.rb
|
332
290
|
- spec/support/matchers/trait.rb
|
333
291
|
- spec/support/shared_examples/proxy.rb
|
334
|
-
has_rdoc: true
|
335
292
|
homepage: https://github.com/thoughtbot/factory_girl
|
336
293
|
licenses: []
|
337
|
-
|
338
294
|
post_install_message:
|
339
295
|
rdoc_options: []
|
340
|
-
|
341
|
-
require_paths:
|
296
|
+
require_paths:
|
342
297
|
- lib
|
343
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
298
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
344
299
|
none: false
|
345
|
-
requirements:
|
346
|
-
- -
|
347
|
-
- !ruby/object:Gem::Version
|
348
|
-
|
349
|
-
|
350
|
-
- 0
|
351
|
-
version: "0"
|
352
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
300
|
+
requirements:
|
301
|
+
- - ! '>='
|
302
|
+
- !ruby/object:Gem::Version
|
303
|
+
version: 1.8.7
|
304
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
353
305
|
none: false
|
354
|
-
requirements:
|
355
|
-
- -
|
356
|
-
- !ruby/object:Gem::Version
|
357
|
-
|
358
|
-
segments:
|
359
|
-
- 0
|
360
|
-
version: "0"
|
306
|
+
requirements:
|
307
|
+
- - ! '>='
|
308
|
+
- !ruby/object:Gem::Version
|
309
|
+
version: '0'
|
361
310
|
requirements: []
|
362
|
-
|
363
311
|
rubyforge_project:
|
364
|
-
rubygems_version: 1.
|
312
|
+
rubygems_version: 1.8.10
|
365
313
|
signing_key:
|
366
314
|
specification_version: 3
|
367
|
-
summary: factory_girl provides a framework and DSL for defining and using model instance
|
368
|
-
|
315
|
+
summary: factory_girl provides a framework and DSL for defining and using model instance
|
316
|
+
factories.
|
317
|
+
test_files:
|
369
318
|
- Appraisals
|
370
319
|
- cucumber.yml
|
371
320
|
- features/factory_girl_steps.feature
|
@@ -382,9 +331,13 @@ test_files:
|
|
382
331
|
- gemfiles/3.0.gemfile.lock
|
383
332
|
- gemfiles/3.1.gemfile
|
384
333
|
- gemfiles/3.1.gemfile.lock
|
334
|
+
- gemfiles/3.2.gemfile
|
335
|
+
- gemfiles/3.2.gemfile.lock
|
336
|
+
- spec/acceptance/aliases_spec.rb
|
385
337
|
- spec/acceptance/attribute_aliases_spec.rb
|
386
338
|
- spec/acceptance/attribute_existing_on_object.rb
|
387
339
|
- spec/acceptance/attributes_for_spec.rb
|
340
|
+
- spec/acceptance/attributes_from_instance_spec.rb
|
388
341
|
- spec/acceptance/attributes_ordered_spec.rb
|
389
342
|
- spec/acceptance/build_list_spec.rb
|
390
343
|
- spec/acceptance/build_spec.rb
|
@@ -422,9 +375,11 @@ test_files:
|
|
422
375
|
- spec/factory_girl/definition_proxy_spec.rb
|
423
376
|
- spec/factory_girl/definition_spec.rb
|
424
377
|
- spec/factory_girl/deprecated_spec.rb
|
378
|
+
- spec/factory_girl/evaluator_class_definer_spec.rb
|
425
379
|
- spec/factory_girl/factory_spec.rb
|
426
380
|
- spec/factory_girl/find_definitions_spec.rb
|
427
381
|
- spec/factory_girl/null_factory_spec.rb
|
382
|
+
- spec/factory_girl/null_object_spec.rb
|
428
383
|
- spec/factory_girl/proxy/attributes_for_spec.rb
|
429
384
|
- spec/factory_girl/proxy/build_spec.rb
|
430
385
|
- spec/factory_girl/proxy/create_spec.rb
|
@@ -440,3 +395,4 @@ test_files:
|
|
440
395
|
- spec/support/matchers/delegate.rb
|
441
396
|
- spec/support/matchers/trait.rb
|
442
397
|
- spec/support/shared_examples/proxy.rb
|
398
|
+
has_rdoc:
|