factory_girl 3.0.0 → 3.1.0

Sign up to get free protection for your applications and to get access to all the features.
data/lib/factory_girl.rb CHANGED
@@ -64,6 +64,6 @@ module FactoryGirl
64
64
  end
65
65
 
66
66
  def self.callback_names
67
- [:after_build, :after_create, :after_stub].freeze
67
+ [:after_build, :after_create, :after_stub, :before_create].freeze
68
68
  end
69
69
  end
@@ -108,8 +108,8 @@ module FactoryGirl
108
108
  # end
109
109
  #
110
110
  # Except that no globally available sequence will be defined.
111
- def sequence(name, start_value = 1, &block)
112
- sequence = Sequence.new(name, start_value, &block)
111
+ def sequence(name, *args, &block)
112
+ sequence = Sequence.new(name, *args, &block)
113
113
  add_attribute(name) { sequence.next }
114
114
  end
115
115
 
@@ -22,9 +22,8 @@ module FactoryGirl
22
22
  @overrides = overrides
23
23
  @cached_attributes = overrides
24
24
 
25
- singleton = class << self; self end
26
25
  @overrides.each do |name, value|
27
- singleton.send :define_method, name, lambda { value }
26
+ singleton_class.send :define_method, name, lambda { value }
28
27
  end
29
28
 
30
29
  @build_strategy.add_observer(CallbackRunner.new(self.class.callbacks, self))
@@ -5,10 +5,13 @@ module FactoryGirl
5
5
  class Sequence
6
6
  attr_reader :name
7
7
 
8
- def initialize(name, value = 1, &proc) #:nodoc:
9
- @name = name
10
- @proc = proc
11
- @value = value
8
+ def initialize(name, *args, &proc) #:nodoc:
9
+ @name = name
10
+ @proc = proc
11
+
12
+ options = args.extract_options!
13
+ @value = args.first || 1
14
+ @aliases = options[:aliases] || []
12
15
  end
13
16
 
14
17
  def next
@@ -18,7 +21,7 @@ module FactoryGirl
18
21
  end
19
22
 
20
23
  def names
21
- [@name]
24
+ [@name] + @aliases
22
25
  end
23
26
  end
24
27
  end
@@ -97,6 +97,16 @@ World(FactoryGirlStepHelpers)
97
97
  FactoryGirl.factories.each do |factory|
98
98
  factory.compile
99
99
  factory.human_names.each do |human_name|
100
+ attribute_names_for_model = if factory.build_class.respond_to?(:attribute_names)
101
+ factory.build_class.attribute_names
102
+ elsif factory.build_class.respond_to?(:columns)
103
+ factory.build_class.columns.map do |column|
104
+ column.respond_to?(:name) ? column.name : column.to_s
105
+ end
106
+ else
107
+ []
108
+ end
109
+
100
110
  Given /^the following (?:#{human_name}|#{human_name.pluralize}) exists?:?$/i do |table|
101
111
  table.hashes.each do |human_hash|
102
112
  attributes = convert_human_hash_to_attribute_hash(human_hash, factory.associations)
@@ -112,17 +122,15 @@ FactoryGirl.factories.each do |factory|
112
122
  FactoryGirl.create_list(factory.name, count.to_i)
113
123
  end
114
124
 
115
- if factory.build_class.respond_to?(:columns)
116
- factory.build_class.columns.each do |column|
117
- name = column.respond_to?(:name) ? column.name : column.to_s
118
- human_column_name = name.downcase.gsub('_', ' ')
119
- Given /^an? #{human_name} exists with an? #{human_column_name} of "([^"]*)"$/i do |value|
120
- FactoryGirl.create(factory.name, name => value)
121
- end
125
+ attribute_names_for_model.each do |attribute_name|
126
+ human_column_name = attribute_name.downcase.gsub('_', ' ')
122
127
 
123
- Given /^(\d+) #{human_name.pluralize} exist with an? #{human_column_name} of "([^"]*)"$/i do |count, value|
124
- FactoryGirl.create_list(factory.name, count.to_i, name => value)
125
- end
128
+ Given /^an? #{human_name} exists with an? #{human_column_name} of "([^"]*)"$/i do |value|
129
+ FactoryGirl.create(factory.name, attribute_name => value)
130
+ end
131
+
132
+ Given /^(\d+) #{human_name.pluralize} exist with an? #{human_column_name} of "([^"]*)"$/i do |count, value|
133
+ FactoryGirl.create_list(factory.name, count.to_i, attribute_name => value)
126
134
  end
127
135
  end
128
136
  end
@@ -2,6 +2,7 @@ require "factory_girl/strategy/build"
2
2
  require "factory_girl/strategy/create"
3
3
  require "factory_girl/strategy/attributes_for"
4
4
  require "factory_girl/strategy/stub"
5
+ require "factory_girl/strategy/null"
5
6
  require "observer"
6
7
 
7
8
  module FactoryGirl
@@ -2,6 +2,7 @@ module FactoryGirl
2
2
  class Strategy #:nodoc:
3
3
  class AttributesFor < Strategy #:nodoc:
4
4
  def association(runner)
5
+ runner.run(Strategy::Null)
5
6
  end
6
7
 
7
8
  def result(attribute_assigner, to_create)
@@ -8,6 +8,7 @@ module FactoryGirl
8
8
  def result(attribute_assigner, to_create)
9
9
  attribute_assigner.object.tap do |result_instance|
10
10
  run_callbacks(:after_build, result_instance)
11
+ run_callbacks(:before_create, result_instance)
11
12
  to_create[result_instance]
12
13
  run_callbacks(:after_create, result_instance)
13
14
  end
@@ -0,0 +1,11 @@
1
+ module FactoryGirl
2
+ class Strategy
3
+ class Null
4
+ def association(runner)
5
+ end
6
+
7
+ def result(attribute_assigner, to_create)
8
+ end
9
+ end
10
+ end
11
+ end
@@ -29,8 +29,8 @@ module FactoryGirl
29
29
  end
30
30
  end
31
31
 
32
- def sequence(name, start_value = 1, &block)
33
- FactoryGirl.register_sequence(Sequence.new(name, start_value, &block))
32
+ def sequence(name, *args, &block)
33
+ FactoryGirl.register_sequence(Sequence.new(name, *args, &block))
34
34
  end
35
35
 
36
36
  def trait(name, &block)
@@ -1,3 +1,5 @@
1
+ require "active_support/deprecation"
2
+
1
3
  module FactoryGirl
2
4
  module Syntax
3
5
  module Vintage
@@ -21,7 +23,7 @@ module FactoryGirl
21
23
  # Yields: +Factory+
22
24
  # The newly created factory.
23
25
  def self.define(name, options = {})
24
- $stderr.puts "DEPRECATION WARNING: Factory.define is deprecated; use the FactoryGirl.define block syntax to declare your factory."
26
+ ActiveSupport::Deprecation.warn "Factory.define is deprecated; use the FactoryGirl.define block syntax to declare your factory.", caller
25
27
  factory = FactoryGirl::Factory.new(name, options)
26
28
  proxy = FactoryGirl::DefinitionProxy.new(factory)
27
29
  yield(proxy)
@@ -44,7 +46,7 @@ module FactoryGirl
44
46
  #
45
47
  # Factory.sequence(:email) {|n| "somebody_#{n}@example.com" }
46
48
  def self.sequence(name, start_value = 1, &block)
47
- $stderr.puts "DEPRECATION WARNING: Factory.sequence is deprecated; use the FactoryGirl.define block syntax to declare your sequence."
49
+ ActiveSupport::Deprecation.warn "Factory.sequence is deprecated; use the FactoryGirl.define block syntax to declare your sequence.", caller
48
50
  FactoryGirl.register_sequence(Sequence.new(name, start_value, &block))
49
51
  end
50
52
 
@@ -57,7 +59,7 @@ module FactoryGirl
57
59
  # Returns:
58
60
  # The next value in the sequence. (Object)
59
61
  def self.next(name)
60
- $stderr.puts "DEPRECATION WARNING: Factory.next is deprecated; use FactoryGirl.generate instead."
62
+ ActiveSupport::Deprecation.warn "Factory.next is deprecated; use FactoryGirl.generate instead.", caller
61
63
  FactoryGirl.generate(name)
62
64
  end
63
65
 
@@ -86,31 +88,31 @@ module FactoryGirl
86
88
  # # will be used instead.
87
89
  # Factory(:post, user_id: 1)
88
90
  def self.alias(pattern, replace)
89
- $stderr.puts "DEPRECATION WARNING: Factory.alias is deprecated; use FactoryGirl.aliases << [pattern, replace] instead."
91
+ ActiveSupport::Deprecation.warn "Factory.alias is deprecated; use FactoryGirl.aliases << [pattern, replace] instead.", caller
90
92
  FactoryGirl.aliases << [pattern, replace]
91
93
  end
92
94
 
93
95
  # Alias for FactoryGirl.attributes_for
94
96
  def self.attributes_for(name, overrides = {})
95
- $stderr.puts "DEPRECATION WARNING: Factory.attributes_for is deprecated; use FactoryGirl.attributes_for instead."
97
+ ActiveSupport::Deprecation.warn "Factory.attributes_for is deprecated; use FactoryGirl.attributes_for instead.", caller
96
98
  FactoryGirl.attributes_for(name, overrides)
97
99
  end
98
100
 
99
101
  # Alias for FactoryGirl.build
100
102
  def self.build(name, overrides = {})
101
- $stderr.puts "DEPRECATION WARNING: Factory.build is deprecated; use FactoryGirl.build instead."
103
+ ActiveSupport::Deprecation.warn "Factory.build is deprecated; use FactoryGirl.build instead.", caller
102
104
  FactoryGirl.build(name, overrides)
103
105
  end
104
106
 
105
107
  # Alias for FactoryGirl.create
106
108
  def self.create(name, overrides = {})
107
- $stderr.puts "DEPRECATION WARNING: Factory.create is deprecated; use FactoryGirl.create instead."
109
+ ActiveSupport::Deprecation.warn "Factory.create is deprecated; use FactoryGirl.create instead.", caller
108
110
  FactoryGirl.create(name, overrides)
109
111
  end
110
112
 
111
113
  # Alias for FactoryGirl.build_stubbed.
112
114
  def self.stub(name, overrides = {})
113
- $stderr.puts "DEPRECATION WARNING: Factory.stub is deprecated; use FactoryGirl.build_stubbed instead."
115
+ ActiveSupport::Deprecation.warn "Factory.stub is deprecated; use FactoryGirl.build_stubbed instead.", caller
114
116
  FactoryGirl.build_stubbed(name, overrides)
115
117
  end
116
118
  end
@@ -120,7 +122,7 @@ module FactoryGirl
120
122
  # Example:
121
123
  # Factory(:user, name: 'Joe')
122
124
  def Factory(name, attrs = {})
123
- $stderr.puts "DEPRECATION WARNING: Factory(:name) is deprecated; use FactoryGirl.create(:name) instead."
125
+ ActiveSupport::Deprecation.warn "Factory(:name) is deprecated; use FactoryGirl.create(:name) instead.", caller
124
126
  FactoryGirl.create(name, attrs)
125
127
  end
126
128
  end
@@ -1,4 +1,4 @@
1
1
  module FactoryGirl
2
- VERSION = "3.0.0"
2
+ VERSION = "3.1.0"
3
3
  end
4
4
 
@@ -30,4 +30,32 @@ describe "sequences" do
30
30
  another_value.should == 2
31
31
  first_value.should_not == another_value
32
32
  end
33
+
34
+ it "generates aliases for the sequence that reference the same block" do
35
+ FactoryGirl.define do
36
+ sequence(:size, aliases: [:count, :length]) {|n| "called-#{n}" }
37
+ end
38
+
39
+ first_value = generate(:size)
40
+ second_value = generate(:count)
41
+ third_value = generate(:length)
42
+
43
+ first_value.should == "called-1"
44
+ second_value.should == "called-2"
45
+ third_value.should == "called-3"
46
+ end
47
+
48
+ it "generates aliases for the sequence that reference the same block and retains value" do
49
+ FactoryGirl.define do
50
+ sequence(:size, "a", aliases: [:count, :length]) {|n| "called-#{n}" }
51
+ end
52
+
53
+ first_value = generate(:size)
54
+ second_value = generate(:count)
55
+ third_value = generate(:length)
56
+
57
+ first_value.should == "called-a"
58
+ second_value.should == "called-b"
59
+ third_value.should == "called-c"
60
+ end
33
61
  end
@@ -2,6 +2,8 @@ require 'spec_helper'
2
2
 
3
3
  describe "vintage syntax" do
4
4
  before do
5
+ ActiveSupport::Deprecation.silenced = true
6
+
5
7
  define_model('User', first_name: :string,
6
8
  last_name: :string,
7
9
  email: :string)
@@ -91,7 +91,7 @@ describe FactoryGirl::DefinitionProxy, "#sequence" do
91
91
 
92
92
  it "creates a new sequence starting at 1" do
93
93
  proxy.sequence(:great)
94
- FactoryGirl::Sequence.should have_received(:new).with(:great, 1)
94
+ FactoryGirl::Sequence.should have_received(:new).with(:great)
95
95
  end
96
96
 
97
97
  it "creates a new sequence with an overridden starting vaue" do
@@ -2,7 +2,6 @@ require 'spec_helper'
2
2
 
3
3
  describe FactoryGirl::Registry do
4
4
  let(:aliases) { [:thing, :widget] }
5
- let(:sequence) { FactoryGirl::Sequence.new(:email) { |n| "somebody#{n}@example.com" } }
6
5
  let(:factory) { FactoryGirl::Factory.new(:object) }
7
6
  let(:other_factory) { FactoryGirl::Factory.new(:string) }
8
7
  let(:factory_with_aliases) { FactoryGirl::Factory.new(:string, aliases: aliases) }
@@ -56,11 +55,6 @@ describe FactoryGirl::Registry do
56
55
  subject.to_a.should =~ [factory, factory_with_aliases]
57
56
  end
58
57
 
59
- it "registers an sequence" do
60
- subject.add(sequence)
61
- subject.find(:email).should == sequence
62
- end
63
-
64
58
  it "doesn't allow a duplicate name" do
65
59
  expect { 2.times { subject.add(factory) } }.
66
60
  to raise_error(FactoryGirl::DuplicateDefinitionError, "Factory already registered: object")
@@ -79,3 +73,30 @@ describe FactoryGirl::Registry do
79
73
  subject.count.should be_zero
80
74
  end
81
75
  end
76
+
77
+ describe FactoryGirl::Registry, "with sequences" do
78
+ let(:aliases) { [:sender, :receiver] }
79
+ let(:sequence) { FactoryGirl::Sequence.new(:email) { |n| "somebody#{n}@example.com" } }
80
+ let(:sequence_with_aliases) { FactoryGirl::Sequence.new(:email, aliases: aliases) { |n| "someone_else#{n}@example.com" } }
81
+ let(:registry_name) { "Sequence" }
82
+
83
+ subject { FactoryGirl::Registry.new(registry_name) }
84
+
85
+ it "registers an sequence" do
86
+ subject.add(sequence)
87
+ subject.find(:email).should == sequence
88
+ end
89
+
90
+ it "registers a sequence with aliases" do
91
+ subject.add(sequence_with_aliases)
92
+
93
+ subject.find(:email).should == sequence_with_aliases
94
+ subject.find(:sender).should == sequence_with_aliases
95
+ subject.find(:receiver).should == sequence_with_aliases
96
+ end
97
+
98
+ it "doesn't allow a duplicate name" do
99
+ expect { 2.times { subject.add(sequence_with_aliases) } }.
100
+ to raise_error(FactoryGirl::DuplicateDefinitionError, "Sequence already registered: email")
101
+ end
102
+ end
@@ -25,6 +25,26 @@ describe FactoryGirl::Sequence do
25
25
  end
26
26
  end
27
27
 
28
+ describe "a sequence with aliases using default value" do
29
+ subject { FactoryGirl::Sequence.new(:test, aliases: [:alias, :other]) { |n| "=#{n}" } }
30
+ its(:next) { should == "=1" }
31
+
32
+ describe "when incrementing" do
33
+ before { subject.next }
34
+ its(:next) { should == "=2" }
35
+ end
36
+ end
37
+
38
+ describe "a sequence with custom value and aliases" do
39
+ subject { FactoryGirl::Sequence.new(:test, 3, aliases: [:alias, :other]) { |n| "=#{n}" } }
40
+ its(:next) { should == "=3" }
41
+
42
+ describe "when incrementing" do
43
+ before { subject.next }
44
+ its(:next) { should == "=4" }
45
+ end
46
+ end
47
+
28
48
  describe "a basic sequence without a block" do
29
49
  subject { FactoryGirl::Sequence.new(:name) }
30
50
  its(:next) { should == 1 }
@@ -2,7 +2,7 @@ require 'spec_helper'
2
2
 
3
3
  describe FactoryGirl::Strategy::Create do
4
4
  it_should_behave_like "strategy with association support", FactoryGirl::Strategy::Create
5
- it_should_behave_like "strategy with callbacks", :after_build, :after_create
5
+ it_should_behave_like "strategy with callbacks", :after_build, :before_create, :after_create
6
6
 
7
7
  it "runs a custom create block" do
8
8
  block_run = false
@@ -1,4 +1,5 @@
1
1
  shared_examples_for "strategy without association support" do
2
+ let(:factory) { stub("associate_factory") }
2
3
  let(:attribute) { FactoryGirl::Attribute::Association.new(:user, :user, {}) }
3
4
 
4
5
  def association_named(name, overrides)
@@ -6,14 +7,14 @@ shared_examples_for "strategy without association support" do
6
7
  subject.association(runner)
7
8
  end
8
9
 
9
- it "returns nil when accessing an association" do
10
- association_named(:user, {}).should be_nil
10
+ before do
11
+ FactoryGirl.stubs(factory_by_name: factory)
12
+ factory.stubs(:compile)
13
+ factory.stubs(:run)
11
14
  end
12
15
 
13
- it "does not attempt to look up the factory when accessing the association" do
14
- FactoryGirl.stubs(:factory_by_name)
15
- association_named(:awesome, {})
16
- FactoryGirl.should have_received(:factory_by_name).never
16
+ it "returns nil when accessing an association" do
17
+ association_named(:user, {}).should be_nil
17
18
  end
18
19
  end
19
20
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: factory_girl
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.0
4
+ version: 3.1.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,11 +10,11 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2012-03-23 00:00:00.000000000Z
13
+ date: 2012-04-06 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activesupport
17
- requirement: &70112674654360 !ruby/object:Gem::Requirement
17
+ requirement: &70215892807040 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,10 +22,10 @@ dependencies:
22
22
  version: 3.0.0
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *70112674654360
25
+ version_requirements: *70215892807040
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: rspec
28
- requirement: &70112674653480 !ruby/object:Gem::Requirement
28
+ requirement: &70215892806560 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ~>
@@ -33,21 +33,21 @@ dependencies:
33
33
  version: '2.0'
34
34
  type: :development
35
35
  prerelease: false
36
- version_requirements: *70112674653480
36
+ version_requirements: *70215892806560
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: cucumber
39
- requirement: &70112674652580 !ruby/object:Gem::Requirement
39
+ requirement: &70215892806060 !ruby/object:Gem::Requirement
40
40
  none: false
41
41
  requirements:
42
42
  - - ~>
43
43
  - !ruby/object:Gem::Version
44
- version: 1.0.0
44
+ version: '1.1'
45
45
  type: :development
46
46
  prerelease: false
47
- version_requirements: *70112674652580
47
+ version_requirements: *70215892806060
48
48
  - !ruby/object:Gem::Dependency
49
49
  name: timecop
50
- requirement: &70112674652200 !ruby/object:Gem::Requirement
50
+ requirement: &70215892805660 !ruby/object:Gem::Requirement
51
51
  none: false
52
52
  requirements:
53
53
  - - ! '>='
@@ -55,10 +55,10 @@ dependencies:
55
55
  version: '0'
56
56
  type: :development
57
57
  prerelease: false
58
- version_requirements: *70112674652200
58
+ version_requirements: *70215892805660
59
59
  - !ruby/object:Gem::Dependency
60
60
  name: simplecov
61
- requirement: &70112674651740 !ruby/object:Gem::Requirement
61
+ requirement: &70215892805160 !ruby/object:Gem::Requirement
62
62
  none: false
63
63
  requirements:
64
64
  - - ! '>='
@@ -66,10 +66,10 @@ dependencies:
66
66
  version: '0'
67
67
  type: :development
68
68
  prerelease: false
69
- version_requirements: *70112674651740
69
+ version_requirements: *70215892805160
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: aruba
72
- requirement: &70112674651320 !ruby/object:Gem::Requirement
72
+ requirement: &70215892804720 !ruby/object:Gem::Requirement
73
73
  none: false
74
74
  requirements:
75
75
  - - ! '>='
@@ -77,10 +77,10 @@ dependencies:
77
77
  version: '0'
78
78
  type: :development
79
79
  prerelease: false
80
- version_requirements: *70112674651320
80
+ version_requirements: *70215892804720
81
81
  - !ruby/object:Gem::Dependency
82
82
  name: mocha
83
- requirement: &70112674650900 !ruby/object:Gem::Requirement
83
+ requirement: &70215893186120 !ruby/object:Gem::Requirement
84
84
  none: false
85
85
  requirements:
86
86
  - - ! '>='
@@ -88,10 +88,10 @@ dependencies:
88
88
  version: '0'
89
89
  type: :development
90
90
  prerelease: false
91
- version_requirements: *70112674650900
91
+ version_requirements: *70215893186120
92
92
  - !ruby/object:Gem::Dependency
93
93
  name: bourne
94
- requirement: &70112674650480 !ruby/object:Gem::Requirement
94
+ requirement: &70215893156440 !ruby/object:Gem::Requirement
95
95
  none: false
96
96
  requirements:
97
97
  - - ! '>='
@@ -99,21 +99,21 @@ dependencies:
99
99
  version: '0'
100
100
  type: :development
101
101
  prerelease: false
102
- version_requirements: *70112674650480
102
+ version_requirements: *70215893156440
103
103
  - !ruby/object:Gem::Dependency
104
104
  name: appraisal
105
- requirement: &70112674649980 !ruby/object:Gem::Requirement
105
+ requirement: &70215893134240 !ruby/object:Gem::Requirement
106
106
  none: false
107
107
  requirements:
108
108
  - - ~>
109
109
  - !ruby/object:Gem::Version
110
- version: 0.3.8
110
+ version: '0.4'
111
111
  type: :development
112
112
  prerelease: false
113
- version_requirements: *70112674649980
113
+ version_requirements: *70215893134240
114
114
  - !ruby/object:Gem::Dependency
115
115
  name: sqlite3-ruby
116
- requirement: &70112674646080 !ruby/object:Gem::Requirement
116
+ requirement: &70215893110760 !ruby/object:Gem::Requirement
117
117
  none: false
118
118
  requirements:
119
119
  - - ! '>='
@@ -121,10 +121,10 @@ dependencies:
121
121
  version: '0'
122
122
  type: :development
123
123
  prerelease: false
124
- version_requirements: *70112674646080
124
+ version_requirements: *70215893110760
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: yard
127
- requirement: &70112674644200 !ruby/object:Gem::Requirement
127
+ requirement: &70215893076860 !ruby/object:Gem::Requirement
128
128
  none: false
129
129
  requirements:
130
130
  - - ! '>='
@@ -132,10 +132,10 @@ dependencies:
132
132
  version: '0'
133
133
  type: :development
134
134
  prerelease: false
135
- version_requirements: *70112674644200
135
+ version_requirements: *70215893076860
136
136
  - !ruby/object:Gem::Dependency
137
137
  name: bluecloth
138
- requirement: &70112674643660 !ruby/object:Gem::Requirement
138
+ requirement: &70215893049900 !ruby/object:Gem::Requirement
139
139
  none: false
140
140
  requirements:
141
141
  - - ! '>='
@@ -143,7 +143,7 @@ dependencies:
143
143
  version: '0'
144
144
  type: :development
145
145
  prerelease: false
146
- version_requirements: *70112674643660
146
+ version_requirements: *70215893049900
147
147
  description: ! "factory_girl provides a framework and DSL for defining and\n using
148
148
  factories - less error-prone, more explicit, and\n all-around
149
149
  easier to work with than fixtures."
@@ -161,11 +161,11 @@ files:
161
161
  - .yardopts
162
162
  - Appraisals
163
163
  - CONTRIBUTION_GUIDELINES.md
164
- - Changelog
165
164
  - GETTING_STARTED.md
166
165
  - Gemfile
167
166
  - Gemfile.lock
168
167
  - LICENSE
168
+ - NEWS
169
169
  - README.md
170
170
  - Rakefile
171
171
  - cucumber.yml
@@ -217,6 +217,7 @@ files:
217
217
  - lib/factory_girl/strategy/attributes_for.rb
218
218
  - lib/factory_girl/strategy/build.rb
219
219
  - lib/factory_girl/strategy/create.rb
220
+ - lib/factory_girl/strategy/null.rb
220
221
  - lib/factory_girl/strategy/stub.rb
221
222
  - lib/factory_girl/strategy_calculator.rb
222
223
  - lib/factory_girl/syntax.rb
@@ -312,7 +313,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
312
313
  version: '0'
313
314
  requirements: []
314
315
  rubyforge_project:
315
- rubygems_version: 1.8.17
316
+ rubygems_version: 1.8.16
316
317
  signing_key:
317
318
  specification_version: 3
318
319
  summary: factory_girl provides a framework and DSL for defining and using model instance