jeffrafter-factory_girl 1.2.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (46) hide show
  1. data/CONTRIBUTION_GUIDELINES.rdoc +9 -0
  2. data/Changelog +29 -0
  3. data/LICENSE +19 -0
  4. data/README.rdoc +265 -0
  5. data/Rakefile +81 -0
  6. data/lib/factory_girl.rb +35 -0
  7. data/lib/factory_girl/aliases.rb +50 -0
  8. data/lib/factory_girl/attribute.rb +29 -0
  9. data/lib/factory_girl/attribute/association.rb +20 -0
  10. data/lib/factory_girl/attribute/callback.rb +16 -0
  11. data/lib/factory_girl/attribute/dynamic.rb +20 -0
  12. data/lib/factory_girl/attribute/static.rb +17 -0
  13. data/lib/factory_girl/factory.rb +430 -0
  14. data/lib/factory_girl/proxy.rb +79 -0
  15. data/lib/factory_girl/proxy/attributes_for.rb +21 -0
  16. data/lib/factory_girl/proxy/build.rb +30 -0
  17. data/lib/factory_girl/proxy/create.rb +12 -0
  18. data/lib/factory_girl/proxy/stub.rb +50 -0
  19. data/lib/factory_girl/sequence.rb +63 -0
  20. data/lib/factory_girl/step_definitions.rb +54 -0
  21. data/lib/factory_girl/syntax.rb +12 -0
  22. data/lib/factory_girl/syntax/blueprint.rb +42 -0
  23. data/lib/factory_girl/syntax/generate.rb +68 -0
  24. data/lib/factory_girl/syntax/make.rb +39 -0
  25. data/lib/factory_girl/syntax/sham.rb +42 -0
  26. data/spec/factory_girl/aliases_spec.rb +29 -0
  27. data/spec/factory_girl/attribute/association_spec.rb +29 -0
  28. data/spec/factory_girl/attribute/callback_spec.rb +23 -0
  29. data/spec/factory_girl/attribute/dynamic_spec.rb +49 -0
  30. data/spec/factory_girl/attribute/static_spec.rb +29 -0
  31. data/spec/factory_girl/attribute_spec.rb +30 -0
  32. data/spec/factory_girl/factory_spec.rb +605 -0
  33. data/spec/factory_girl/proxy/attributes_for_spec.rb +52 -0
  34. data/spec/factory_girl/proxy/build_spec.rb +81 -0
  35. data/spec/factory_girl/proxy/create_spec.rb +94 -0
  36. data/spec/factory_girl/proxy/stub_spec.rb +79 -0
  37. data/spec/factory_girl/proxy_spec.rb +84 -0
  38. data/spec/factory_girl/sequence_spec.rb +66 -0
  39. data/spec/factory_girl/syntax/blueprint_spec.rb +34 -0
  40. data/spec/factory_girl/syntax/generate_spec.rb +57 -0
  41. data/spec/factory_girl/syntax/make_spec.rb +35 -0
  42. data/spec/factory_girl/syntax/sham_spec.rb +35 -0
  43. data/spec/integration_spec.rb +304 -0
  44. data/spec/models.rb +43 -0
  45. data/spec/spec_helper.rb +18 -0
  46. metadata +128 -0
data/spec/models.rb ADDED
@@ -0,0 +1,43 @@
1
+ ActiveRecord::Base.establish_connection(
2
+ :adapter => 'sqlite3',
3
+ :database => File.join(File.dirname(__FILE__), 'test.db')
4
+ )
5
+
6
+ class CreateSchema < ActiveRecord::Migration
7
+ def self.up
8
+ create_table :users, :force => true do |t|
9
+ t.string :first_name
10
+ t.string :last_name
11
+ t.string :email
12
+ t.string :username
13
+ t.boolean :admin, :default => false
14
+ end
15
+
16
+ create_table :posts, :force => true do |t|
17
+ t.string :name
18
+ t.integer :author_id
19
+ end
20
+
21
+ create_table :business, :force => true do |t|
22
+ t.string :name
23
+ t.integer :owner_id
24
+ end
25
+ end
26
+ end
27
+
28
+ CreateSchema.suppress_messages { CreateSchema.migrate(:up) }
29
+
30
+ class User < ActiveRecord::Base
31
+ validates_presence_of :first_name, :last_name, :email
32
+ has_many :posts, :foreign_key => 'author_id'
33
+ end
34
+
35
+ class Business < ActiveRecord::Base
36
+ validates_presence_of :name, :owner_id
37
+ belongs_to :owner, :class_name => 'User'
38
+ end
39
+
40
+ class Post < ActiveRecord::Base
41
+ validates_presence_of :name, :author_id
42
+ belongs_to :author, :class_name => 'User'
43
+ end
@@ -0,0 +1,18 @@
1
+ $: << File.join(File.dirname(__FILE__), '..', 'lib')
2
+ $: << File.join(File.dirname(__FILE__))
3
+
4
+ require 'rubygems'
5
+
6
+ require 'activerecord'
7
+
8
+ require 'spec'
9
+ require 'spec/autorun'
10
+ require 'rr'
11
+
12
+ require 'models'
13
+
14
+ require 'factory_girl'
15
+
16
+ Spec::Runner.configure do |config|
17
+ config.mock_with RR::Adapters::Rspec
18
+ end
metadata ADDED
@@ -0,0 +1,128 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: jeffrafter-factory_girl
3
+ version: !ruby/object:Gem::Version
4
+ prerelease: false
5
+ segments:
6
+ - 1
7
+ - 2
8
+ - 3
9
+ version: 1.2.3
10
+ platform: ruby
11
+ authors:
12
+ - Joe Ferris
13
+ autorequire:
14
+ bindir: bin
15
+ cert_chain: []
16
+
17
+ date: 2010-03-09 00:00:00 -08:00
18
+ default_executable:
19
+ dependencies: []
20
+
21
+ description: |-
22
+ factory_girl provides a framework and DSL for defining and
23
+ using factories - less error-prone, more explicit, and
24
+ all-around easier to work with than fixtures.
25
+ email: jferris@thoughtbot.com
26
+ executables: []
27
+
28
+ extensions: []
29
+
30
+ extra_rdoc_files:
31
+ - README.rdoc
32
+ files:
33
+ - Changelog
34
+ - CONTRIBUTION_GUIDELINES.rdoc
35
+ - LICENSE
36
+ - Rakefile
37
+ - README.rdoc
38
+ - lib/factory_girl/aliases.rb
39
+ - lib/factory_girl/attribute/association.rb
40
+ - lib/factory_girl/attribute/callback.rb
41
+ - lib/factory_girl/attribute/dynamic.rb
42
+ - lib/factory_girl/attribute/static.rb
43
+ - lib/factory_girl/attribute.rb
44
+ - lib/factory_girl/factory.rb
45
+ - lib/factory_girl/proxy/attributes_for.rb
46
+ - lib/factory_girl/proxy/build.rb
47
+ - lib/factory_girl/proxy/create.rb
48
+ - lib/factory_girl/proxy/stub.rb
49
+ - lib/factory_girl/proxy.rb
50
+ - lib/factory_girl/sequence.rb
51
+ - lib/factory_girl/step_definitions.rb
52
+ - lib/factory_girl/syntax/blueprint.rb
53
+ - lib/factory_girl/syntax/generate.rb
54
+ - lib/factory_girl/syntax/make.rb
55
+ - lib/factory_girl/syntax/sham.rb
56
+ - lib/factory_girl/syntax.rb
57
+ - lib/factory_girl.rb
58
+ - spec/factory_girl/aliases_spec.rb
59
+ - spec/factory_girl/attribute/association_spec.rb
60
+ - spec/factory_girl/attribute/callback_spec.rb
61
+ - spec/factory_girl/attribute/dynamic_spec.rb
62
+ - spec/factory_girl/attribute/static_spec.rb
63
+ - spec/factory_girl/attribute_spec.rb
64
+ - spec/factory_girl/factory_spec.rb
65
+ - spec/factory_girl/proxy/attributes_for_spec.rb
66
+ - spec/factory_girl/proxy/build_spec.rb
67
+ - spec/factory_girl/proxy/create_spec.rb
68
+ - spec/factory_girl/proxy/stub_spec.rb
69
+ - spec/factory_girl/proxy_spec.rb
70
+ - spec/factory_girl/sequence_spec.rb
71
+ - spec/factory_girl/syntax/blueprint_spec.rb
72
+ - spec/factory_girl/syntax/generate_spec.rb
73
+ - spec/factory_girl/syntax/make_spec.rb
74
+ - spec/factory_girl/syntax/sham_spec.rb
75
+ - spec/integration_spec.rb
76
+ - spec/models.rb
77
+ - spec/spec_helper.rb
78
+ has_rdoc: true
79
+ homepage: http://thoughtbot.com/projects/factory_girl
80
+ licenses: []
81
+
82
+ post_install_message:
83
+ rdoc_options:
84
+ - --line-numbers
85
+ - --main
86
+ - README.rdoc
87
+ require_paths:
88
+ - lib
89
+ required_ruby_version: !ruby/object:Gem::Requirement
90
+ requirements:
91
+ - - ">="
92
+ - !ruby/object:Gem::Version
93
+ segments:
94
+ - 0
95
+ version: "0"
96
+ required_rubygems_version: !ruby/object:Gem::Requirement
97
+ requirements:
98
+ - - ">="
99
+ - !ruby/object:Gem::Version
100
+ segments:
101
+ - 0
102
+ version: "0"
103
+ requirements: []
104
+
105
+ rubyforge_project:
106
+ rubygems_version: 1.3.6
107
+ signing_key:
108
+ specification_version: 3
109
+ summary: factory_girl provides a framework and DSL for defining and using model instance factories.
110
+ test_files:
111
+ - spec/factory_girl/aliases_spec.rb
112
+ - spec/factory_girl/attribute/association_spec.rb
113
+ - spec/factory_girl/attribute/callback_spec.rb
114
+ - spec/factory_girl/attribute/dynamic_spec.rb
115
+ - spec/factory_girl/attribute/static_spec.rb
116
+ - spec/factory_girl/attribute_spec.rb
117
+ - spec/factory_girl/factory_spec.rb
118
+ - spec/factory_girl/proxy/attributes_for_spec.rb
119
+ - spec/factory_girl/proxy/build_spec.rb
120
+ - spec/factory_girl/proxy/create_spec.rb
121
+ - spec/factory_girl/proxy/stub_spec.rb
122
+ - spec/factory_girl/proxy_spec.rb
123
+ - spec/factory_girl/sequence_spec.rb
124
+ - spec/factory_girl/syntax/blueprint_spec.rb
125
+ - spec/factory_girl/syntax/generate_spec.rb
126
+ - spec/factory_girl/syntax/make_spec.rb
127
+ - spec/factory_girl/syntax/sham_spec.rb
128
+ - spec/integration_spec.rb