fabrication 1.0.0 → 1.0.1

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/README.markdown CHANGED
@@ -10,5 +10,4 @@ Fabrication is developed against Ruby 1.8.7 and 1.9.2.
10
10
 
11
11
  ## Documentation
12
12
 
13
- Please see the Fabrication website for up-to-date documentation:
14
- {fabricationgem.org}[http://fabricationgem.org]
13
+ Please see the Fabrication website for up-to-date documentation: http://fabricationgem.org
@@ -0,0 +1,11 @@
1
+ class Fabrication::Generator::Sequel < Fabrication::Generator::Base
2
+
3
+ def self.supports?(klass)
4
+ defined?(Sequel) && klass.ancestors.include?(Sequel::Model)
5
+ end
6
+
7
+ def after_generation(options)
8
+ instance.save if options[:save]
9
+ end
10
+
11
+ end
@@ -2,6 +2,7 @@ class Fabrication::Schematic
2
2
 
3
3
  GENERATORS = [
4
4
  Fabrication::Generator::ActiveRecord,
5
+ Fabrication::Generator::Sequel,
5
6
  Fabrication::Generator::Base
6
7
  ]
7
8
 
@@ -114,7 +115,7 @@ class Fabrication::Schematic
114
115
  name = name.to_s
115
116
  name = name.singularize if name.respond_to?(:singularize)
116
117
  params[:count] ||= 1 if !params[:count] && name != name.to_s
117
- Proc.new { Fabricate(name.to_sym) }
118
+ Proc.new { Fabricate(params[:fabricator] || name.to_sym) }
118
119
  end
119
120
 
120
121
  def to_hash(object)
@@ -1,3 +1,3 @@
1
1
  module Fabrication
2
- VERSION = '1.0.0'
2
+ VERSION = '1.0.1'
3
3
  end
@@ -58,6 +58,10 @@ module FabricationMethods
58
58
  { parent_class_name => parent_instance }
59
59
  end
60
60
 
61
+ def class_from_model_name(model_name)
62
+ eval(dehumanize(model_name).singularize.classify)
63
+ end
64
+
61
65
  end
62
66
 
63
67
  World(FabricationMethods)
@@ -89,3 +93,11 @@ Given /^(?:that|those) (.*) belongs? to that (.*)$/ do |child_or_children, paren
89
93
  child_instance.save
90
94
  end
91
95
  end
96
+
97
+ Then /^I should see (\d+) ([^"]*) in the database$/ do |count, model_name|
98
+ get_class(dehumanize(model_name)).count.should == count.to_i
99
+ end
100
+
101
+ Then /^I should see the following (.*) in the database:$/ do |model_name, table|
102
+ get_class(dehumanize(model_name)).where(table.rows_hash).count.should == 1
103
+ end
@@ -2,9 +2,6 @@ require 'spec_helper'
2
2
 
3
3
  describe Fabrication::Generator::ActiveRecord do
4
4
 
5
- before(:all) { TestMigration.up }
6
- after(:all) { TestMigration.down }
7
-
8
5
  describe ".supports?" do
9
6
  subject { Fabrication::Generator::ActiveRecord }
10
7
  it "returns true for active record objects" do
@@ -23,7 +23,7 @@ describe Fabrication::Schematic do
23
23
  end
24
24
  context "for a sequel object" do
25
25
  it "uses the base generator" do
26
- Fabrication::Schematic.new(Artist).generator.should == Fabrication::Generator::Base
26
+ Fabrication::Schematic.new(ParentSequelModel).generator.should == Fabrication::Generator::Sequel
27
27
  end
28
28
  end
29
29
  end
@@ -1,59 +1,79 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Fabrication do
4
-
5
- context 'static fields' do
3
+ shared_examples 'something fabricatable' do
4
+ subject { Fabricate(fabricator_name) }
5
+
6
+ context 'defaults from fabricator' do
7
+ its(:dynamic_field) { should == 'dynamic content' }
8
+ its(:nil_field) { should be_nil }
9
+ its(:number_field) { should == 5 }
10
+ its(:string_field) { should == 'content' }
11
+ end
6
12
 
7
- let(:person) { Fabricate(:person, :last_name => 'Awesome') }
8
- let(:location) { Fabricate(:location) }
9
- let(:dog) do
10
- Fabricate(:dog) do
11
- name nil
13
+ context 'overriding at fabricate time' do
14
+ subject do
15
+ Fabricate(
16
+ fabricator_name,
17
+ :string_field => 'new content',
18
+ :number_field => 10,
19
+ :nil_field => nil
20
+ ) do
21
+ dynamic_field { 'new dynamic content' }
12
22
  end
13
23
  end
24
+ its('collection_field.size') { should == 2 }
25
+ its('collection_field.first.number_field') { should == 10 }
26
+ its('collection_field.last.number_field') { should == 10 }
27
+ its(:dynamic_field) { should == 'new dynamic content' }
28
+ its(:nil_field) { should be_nil }
29
+ its(:number_field) { should == 10 }
30
+ its(:string_field) { should == 'new content' }
31
+ end
14
32
 
15
- it 'has the default first name' do
16
- person.first_name.should == 'John'
17
- end
18
-
19
- it 'has an overridden last name' do
20
- person.last_name.should == 'Awesome'
21
- end
22
-
33
+ context 'state of the object' do
23
34
  it 'generates a fresh object every time' do
24
- Fabricate(:person).should_not == person
25
- end
26
-
27
- it "has the latitude" do
28
- location.lat.should == 35
35
+ Fabricate(fabricator_name).should_not == subject
29
36
  end
30
37
 
31
- it "has the longitude" do
32
- location.lng.should == 40
33
- end
38
+ it { should be_persisted }
39
+ its('collection_field.first') { should be_persisted }
40
+ its('collection_field.last') { should be_persisted }
41
+ end
34
42
 
35
- it "handles nil values" do
36
- dog.name.should be_nil
43
+ context 'attributes for' do
44
+ subject { Fabricate.attributes_for(fabricator_name) }
45
+ it { should be_kind_of(HashWithIndifferentAccess) }
46
+ it 'serializes the attributes' do
47
+ should include({
48
+ :dynamic_field => 'dynamic content',
49
+ :nil_field => nil,
50
+ :number_field => 5,
51
+ :string_field => 'content'
52
+ })
37
53
  end
38
-
39
54
  end
55
+ end
40
56
 
41
- context 'block generated fields' do
42
-
43
- let(:person) { Fabricate(:person) }
57
+ describe Fabrication do
44
58
 
45
- it 'has a last name' do
46
- person.last_name.should be
47
- end
59
+ context 'plain old ruby objects' do
60
+ let(:fabricator_name) { :parent_ruby_object }
61
+ it_should_behave_like 'something fabricatable'
62
+ end
48
63
 
49
- it 'has an age' do
50
- person.age.should be
51
- end
64
+ context 'active_record models' do
65
+ let(:fabricator_name) { :parent_active_record_model }
66
+ it_should_behave_like 'something fabricatable'
67
+ end
52
68
 
53
- it 'has 10 shoes' do
54
- person.shoes.should == (1..10).map { |i| "shoe #{i}" }
55
- end
69
+ context 'mongoid documents' do
70
+ let(:fabricator_name) { :parent_mongoid_document }
71
+ it_should_behave_like 'something fabricatable'
72
+ end
56
73
 
74
+ context 'sequel models' do
75
+ let(:fabricator_name) { :parent_sequel_model }
76
+ it_should_behave_like 'something fabricatable'
57
77
  end
58
78
 
59
79
  context 'when the class requires a constructor' do
@@ -72,58 +92,6 @@ describe Fabrication do
72
92
  its(:stuff) { should == "things" }
73
93
  end
74
94
 
75
- context "when referring to other fabricators" do
76
-
77
- let(:person) { Fabricate(:person) }
78
-
79
- it "has the latitude" do
80
- person.location.lat.should == 35
81
- end
82
-
83
- it "has the longitude" do
84
- person.location.lng.should == 40
85
- end
86
-
87
- context "with a count" do
88
-
89
- context "of one" do
90
-
91
- let(:greyhound) do
92
- Fabricate(:greyhound) do
93
- locations(:count => 1)
94
- end
95
- end
96
-
97
- it "should have one location" do
98
- greyhound.locations.size.should == 1
99
- greyhound.locations.first.lat.should == 35
100
- greyhound.locations.first.lng.should == 40
101
- end
102
-
103
- end
104
-
105
- context "of two" do
106
-
107
- let(:greyhound) do
108
- Fabricate(:greyhound) do
109
- locations(:count => 2)
110
- end
111
- end
112
-
113
- it "should have two locations" do
114
- greyhound.locations.size.should == 2
115
- greyhound.locations.each do |loc|
116
- loc.lat.should == 35
117
- loc.lng.should == 40
118
- end
119
- end
120
-
121
- end
122
-
123
- end
124
-
125
- end
126
-
127
95
  context 'with the generation parameter' do
128
96
 
129
97
  let(:person) do
@@ -293,43 +261,30 @@ describe Fabrication do
293
261
  end
294
262
 
295
263
  describe '.clear_definitions' do
296
-
297
- before(:all) do
298
- Fabrication.clear_definitions
299
- end
300
-
301
- after(:all) do
302
- Fabrication::Support.find_definitions
303
- end
264
+ before { Fabrication.clear_definitions }
265
+ after { Fabrication::Support.find_definitions }
304
266
 
305
267
  it 'should not generate authors' do
306
268
  Fabrication::Fabricator.schematics.has_key?(:author).should be_false
307
269
  end
308
-
309
270
  end
310
271
 
311
272
  context 'when defining a fabricator twice' do
312
-
313
273
  it 'throws an error' do
314
274
  lambda { Fabricator(:author) {} }.should raise_error(Fabrication::DuplicateFabricatorError)
315
275
  end
316
-
317
276
  end
318
277
 
319
278
  context "when defining a fabricator for a class that doesn't exist" do
320
-
321
279
  it 'throws an error' do
322
280
  lambda { Fabricator(:your_mom) }.should raise_error(Fabrication::UnfabricatableError)
323
281
  end
324
-
325
282
  end
326
283
 
327
284
  context 'when generating from a non-existant fabricator' do
328
-
329
285
  it 'throws an error' do
330
286
  lambda { Fabricate(:your_mom) }.should raise_error(Fabrication::UnknownFabricatorError)
331
287
  end
332
-
333
288
  end
334
289
 
335
290
  context 'defining a fabricator without a block' do
@@ -345,54 +300,6 @@ describe Fabrication do
345
300
 
346
301
  end
347
302
 
348
- describe "Fabricate with a block" do
349
-
350
- let(:person) do
351
- Fabricate(:person) do
352
- age nil
353
- first_name "Paul"
354
- last_name { "Elliott" }
355
- end
356
- end
357
-
358
- it 'uses the class matching the passed-in symbol' do
359
- person.kind_of?(Person).should be_true
360
- end
361
-
362
- it 'has the correct first_name' do
363
- person.first_name.should == 'Paul'
364
- end
365
-
366
- it 'has the correct last_name' do
367
- person.last_name.should == 'Elliott'
368
- end
369
-
370
- it 'has the correct age' do
371
- person.age.should be_nil
372
- end
373
-
374
- end
375
-
376
- describe "Fabricate.attributes_for" do
377
-
378
- let(:person) do
379
- Fabricate.attributes_for(:person, :first_name => "John", :last_name => "Smith")
380
- end
381
-
382
- it 'has the first name as a parameter' do
383
- person['first_name'].should == "John"
384
- end
385
-
386
- it 'has the last name as a parameter' do
387
- person[:last_name].should == "Smith"
388
- end
389
-
390
- it 'has the fabricator provided attributes' do
391
- person[:shoes].length.should == 10
392
- end
393
-
394
- end
395
-
396
303
  describe "Fabricate with a sequence" do
397
304
  subject { Fabricate(:sequencer) }
398
305
 
@@ -1,3 +1,15 @@
1
+ Fabricator(:parent_active_record_model) do
2
+ collection_field(:count => 2, :fabricator => :child_active_record_model)
3
+ dynamic_field { 'dynamic content' }
4
+ nil_field nil
5
+ number_field 5
6
+ string_field 'content'
7
+ end
8
+
9
+ Fabricator(:child_active_record_model) do
10
+ number_field 10
11
+ end
12
+
1
13
  # ActiveRecord Objects
2
14
  Fabricator(:division) do
3
15
  name "Division Name"
@@ -1,3 +1,15 @@
1
+ Fabricator(:parent_mongoid_document) do
2
+ collection_field(:count => 2, :fabricator => :child_mongoid_document)
3
+ dynamic_field { 'dynamic content' }
4
+ nil_field nil
5
+ number_field 5
6
+ string_field 'content'
7
+ end
8
+
9
+ Fabricator(:child_mongoid_document) do
10
+ number_field 10
11
+ end
12
+
1
13
  # Mongoid Documents
2
14
  Fabricator(:author) do
3
15
  name 'George Orwell'
@@ -1,3 +1,15 @@
1
+ Fabricator(:parent_ruby_object) do
2
+ collection_field(:count => 2, :fabricator => :child_ruby_object)
3
+ dynamic_field { 'dynamic content' }
4
+ nil_field nil
5
+ number_field 5
6
+ string_field 'content'
7
+ end
8
+
9
+ Fabricator(:child_ruby_object) do
10
+ number_field 10
11
+ end
12
+
1
13
  # Plain Ruby Objects
2
14
  Fabricator(:awesome_object, :from => :object)
3
15
 
@@ -0,0 +1,15 @@
1
+ Fabricator(:parent_sequel_model) do
2
+ dynamic_field { 'dynamic content' }
3
+ nil_field nil
4
+ number_field 5
5
+ string_field 'content'
6
+ after_create do |parent|
7
+ 2.times do
8
+ Fabricate(:child_sequel_model, :parent => parent)
9
+ end
10
+ end
11
+ end
12
+
13
+ Fabricator(:child_sequel_model) do
14
+ number_field 10
15
+ end
data/spec/spec_helper.rb CHANGED
@@ -7,7 +7,6 @@ require 'ffaker'
7
7
  Dir[File.expand_path(File.join(File.dirname(__FILE__),'support','**','*.rb'))].each {|f| require f}
8
8
 
9
9
  RSpec.configure do |config|
10
- config.before(:all) do
11
- clear_mongodb
12
- end
10
+ config.before(:suite) { TestMigration.up }
11
+ config.before(:all) { clear_mongodb }
13
12
  end
@@ -10,6 +10,18 @@ ActiveRecord::Migration.verbose = false
10
10
 
11
11
  class TestMigration < ActiveRecord::Migration
12
12
  def self.up
13
+ create_table :child_active_record_models, :force => true do |t|
14
+ t.column :parent_active_record_model_id, :integer
15
+ t.column :number_field, :integer
16
+ end
17
+
18
+ create_table :parent_active_record_models, :force => true do |t|
19
+ t.column :dynamic_field, :string
20
+ t.column :nil_field, :string
21
+ t.column :number_field, :integer
22
+ t.column :string_field, :string
23
+ end
24
+
13
25
  create_table :companies, :force => true do |t|
14
26
  t.column :name, :string
15
27
  t.column :city, :string
@@ -22,11 +34,21 @@ class TestMigration < ActiveRecord::Migration
22
34
  end
23
35
 
24
36
  def self.down
37
+ drop_table :child_active_record_models
38
+ drop_table :parent_active_record_models
25
39
  drop_table :companies
26
40
  drop_table :divisions
27
41
  end
28
42
  end
29
43
 
44
+ class ChildActiveRecordModel < ActiveRecord::Base
45
+ belongs_to :parent, :class_name => 'ParentActiveRecordModel'
46
+ end
47
+
48
+ class ParentActiveRecordModel < ActiveRecord::Base
49
+ has_many :collection_field, :class_name => 'ChildActiveRecordModel'
50
+ end
51
+
30
52
  class Company < ActiveRecord::Base
31
53
  has_many :divisions
32
54
 
@@ -9,6 +9,25 @@ def clear_mongodb
9
9
  Mongoid.master.collections.select {|c| c.name !~ /system/ }.each(&:drop)
10
10
  end
11
11
 
12
+ class ChildMongoidDocument
13
+ include Mongoid::Document
14
+
15
+ field :number_field
16
+
17
+ referenced_in :parent, :class_name => 'ParentMongoidDocument'
18
+ end
19
+
20
+ class ParentMongoidDocument
21
+ include Mongoid::Document
22
+
23
+ field :dynamic_field
24
+ field :nil_field
25
+ field :number_field
26
+ field :string_field
27
+
28
+ references_many :collection_field, :class_name => 'ChildMongoidDocument'
29
+ end
30
+
12
31
  class Author
13
32
  include Mongoid::Document
14
33
 
@@ -1,3 +1,22 @@
1
+ class ParentRubyObject
2
+ attr_accessor \
3
+ :collection_field,
4
+ :dynamic_field,
5
+ :nil_field,
6
+ :number_field,
7
+ :string_field
8
+
9
+ def persisted?; true end
10
+ end
11
+
12
+ class ChildRubyObject
13
+ attr_accessor \
14
+ :parent,
15
+ :number_field
16
+
17
+ def persisted?; true end
18
+ end
19
+
1
20
  class Dog
2
21
  attr_accessor :name, :breed, :locations
3
22
  end
@@ -1,13 +1,17 @@
1
1
  require 'sequel'
2
2
 
3
3
  DB = Sequel.sqlite # in memory
4
+ Sequel.extension :migration
5
+ Sequel::Migrator.run(DB, 'spec/support/sequel_migrations', :current => 0)
4
6
 
5
- class Artist < Sequel::Model
6
- one_to_many :albums
7
+ class ChildSequelModel < Sequel::Model
8
+ many_to_one :parent, :class => :ParentSequelModel, :key => :parent_sequel_model_id
7
9
 
8
- attr_accessor :non_field
10
+ def persisted?; !new? end
9
11
  end
10
12
 
11
- class Album < Sequel::Model
12
- many_to_one :artist
13
+ class ParentSequelModel < Sequel::Model
14
+ one_to_many :collection_field, :class => :ChildSequelModel, :key => :parent_sequel_model_id
15
+
16
+ def persisted?; !new? end
13
17
  end
@@ -0,0 +1,22 @@
1
+ Sequel.migration do
2
+ up do
3
+ create_table :child_sequel_models do
4
+ primary_key :id
5
+ Integer :parent_sequel_model_id
6
+ Integer :number_field
7
+ end
8
+
9
+ create_table :parent_sequel_models do
10
+ primary_key :id
11
+ String :dynamic_field
12
+ String :nil_field
13
+ Integer :number_field
14
+ String :string_field
15
+ end
16
+ end
17
+
18
+ down do
19
+ drop_table :child_sequel_models
20
+ drop_table :parent_sequel_models
21
+ end
22
+ end
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: fabrication
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 1.0.0
5
+ version: 1.0.1
6
6
  platform: ruby
7
7
  authors:
8
8
  - Paul Elliott
@@ -10,72 +10,72 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2011-06-15 00:00:00 Z
13
+ date: 2011-07-02 00:00:00 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
- name: rspec
16
+ name: activerecord
17
17
  prerelease: false
18
18
  requirement: &id001 !ruby/object:Gem::Requirement
19
19
  none: false
20
20
  requirements:
21
21
  - - ~>
22
22
  - !ruby/object:Gem::Version
23
- version: 2.6.0
23
+ version: 3.0.9
24
24
  type: :development
25
25
  version_requirements: *id001
26
26
  - !ruby/object:Gem::Dependency
27
- name: cucumber
27
+ name: bson_ext
28
28
  prerelease: false
29
29
  requirement: &id002 !ruby/object:Gem::Requirement
30
30
  none: false
31
31
  requirements:
32
32
  - - ~>
33
33
  - !ruby/object:Gem::Version
34
- version: 0.10.6
34
+ version: 1.3.1
35
35
  type: :development
36
36
  version_requirements: *id002
37
37
  - !ruby/object:Gem::Dependency
38
- name: ffaker
38
+ name: cucumber
39
39
  prerelease: false
40
40
  requirement: &id003 !ruby/object:Gem::Requirement
41
41
  none: false
42
42
  requirements:
43
- - - ~>
43
+ - - ">="
44
44
  - !ruby/object:Gem::Version
45
- version: 1.8.0
45
+ version: "0"
46
46
  type: :development
47
47
  version_requirements: *id003
48
48
  - !ruby/object:Gem::Dependency
49
- name: activerecord
49
+ name: ffaker
50
50
  prerelease: false
51
51
  requirement: &id004 !ruby/object:Gem::Requirement
52
52
  none: false
53
53
  requirements:
54
- - - ~>
54
+ - - ">="
55
55
  - !ruby/object:Gem::Version
56
- version: 3.0.8
56
+ version: "0"
57
57
  type: :development
58
58
  version_requirements: *id004
59
59
  - !ruby/object:Gem::Dependency
60
- name: sqlite3-ruby
60
+ name: fuubar
61
61
  prerelease: false
62
62
  requirement: &id005 !ruby/object:Gem::Requirement
63
63
  none: false
64
64
  requirements:
65
- - - ~>
65
+ - - ">="
66
66
  - !ruby/object:Gem::Version
67
- version: 1.3.3
67
+ version: "0"
68
68
  type: :development
69
69
  version_requirements: *id005
70
70
  - !ruby/object:Gem::Dependency
71
- name: bson_ext
71
+ name: fuubar-cucumber
72
72
  prerelease: false
73
73
  requirement: &id006 !ruby/object:Gem::Requirement
74
74
  none: false
75
75
  requirements:
76
- - - ~>
76
+ - - ">="
77
77
  - !ruby/object:Gem::Version
78
- version: 1.3.1
78
+ version: "0"
79
79
  type: :development
80
80
  version_requirements: *id006
81
81
  - !ruby/object:Gem::Dependency
@@ -90,27 +90,49 @@ dependencies:
90
90
  type: :development
91
91
  version_requirements: *id007
92
92
  - !ruby/object:Gem::Dependency
93
- name: sequel
93
+ name: rake
94
94
  prerelease: false
95
95
  requirement: &id008 !ruby/object:Gem::Requirement
96
96
  none: false
97
97
  requirements:
98
- - - ~>
98
+ - - ">="
99
99
  - !ruby/object:Gem::Version
100
- version: 3.24.1
100
+ version: "0"
101
101
  type: :development
102
102
  version_requirements: *id008
103
103
  - !ruby/object:Gem::Dependency
104
- name: rake
104
+ name: rspec
105
105
  prerelease: false
106
106
  requirement: &id009 !ruby/object:Gem::Requirement
107
107
  none: false
108
108
  requirements:
109
- - - ~>
109
+ - - ">="
110
110
  - !ruby/object:Gem::Version
111
- version: 0.9.2
111
+ version: "0"
112
112
  type: :development
113
113
  version_requirements: *id009
114
+ - !ruby/object:Gem::Dependency
115
+ name: sequel
116
+ prerelease: false
117
+ requirement: &id010 !ruby/object:Gem::Requirement
118
+ none: false
119
+ requirements:
120
+ - - ~>
121
+ - !ruby/object:Gem::Version
122
+ version: 3.25.0
123
+ type: :development
124
+ version_requirements: *id010
125
+ - !ruby/object:Gem::Dependency
126
+ name: sqlite3-ruby
127
+ prerelease: false
128
+ requirement: &id011 !ruby/object:Gem::Requirement
129
+ none: false
130
+ requirements:
131
+ - - ">="
132
+ - !ruby/object:Gem::Version
133
+ version: "0"
134
+ type: :development
135
+ version_requirements: *id011
114
136
  description: Fabrication is an object generation framework for ActiveRecord, Mongoid, and Sequel. It has a sensible syntax and lazily generates ActiveRecord associations!
115
137
  email:
116
138
  - paul@hashrocket.com
@@ -129,6 +151,7 @@ files:
129
151
  - lib/fabrication/fabricator.rb
130
152
  - lib/fabrication/generator/active_record.rb
131
153
  - lib/fabrication/generator/base.rb
154
+ - lib/fabrication/generator/sequel.rb
132
155
  - lib/fabrication/schematic.rb
133
156
  - lib/fabrication/sequencer.rb
134
157
  - lib/fabrication/support.rb
@@ -151,11 +174,13 @@ files:
151
174
  - spec/fabricators/cool_object_fabricator.rb
152
175
  - spec/fabricators/mongoid_fabricator.rb
153
176
  - spec/fabricators/plain_old_ruby_object_fabricator.rb
177
+ - spec/fabricators/sequel_fabricator.rb
154
178
  - spec/spec_helper.rb
155
179
  - spec/support/active_record.rb
156
- - spec/support/helper_objects.rb
157
180
  - spec/support/mongoid.rb
181
+ - spec/support/plain_old_ruby_objects.rb
158
182
  - spec/support/sequel.rb
183
+ - spec/support/sequel_migrations/001_create_tables.rb
159
184
  - README.markdown
160
185
  homepage: http://github.com/paulelliott/fabrication
161
186
  licenses: []