seed_loader 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (67) hide show
  1. data/.gitignore +4 -0
  2. data/Gemfile +8 -0
  3. data/MIT-LICENSE +21 -0
  4. data/README +0 -0
  5. data/README.rdoc +55 -0
  6. data/Rakefile +30 -0
  7. data/lib/seed_loader/active_record_methods.rb +49 -0
  8. data/lib/seed_loader/loader.rb +76 -0
  9. data/lib/seed_loader/version.rb +3 -0
  10. data/lib/seed_loader.rb +5 -0
  11. data/seed_loader.gemspec +26 -0
  12. data/test/dummy/Gemfile +7 -0
  13. data/test/dummy/Rakefile +7 -0
  14. data/test/dummy/app/assets/javascripts/application.js +9 -0
  15. data/test/dummy/app/assets/stylesheets/application.css +7 -0
  16. data/test/dummy/app/controllers/application_controller.rb +3 -0
  17. data/test/dummy/app/helpers/application_helper.rb +2 -0
  18. data/test/dummy/app/mailers/.gitkeep +0 -0
  19. data/test/dummy/app/models/.gitkeep +0 -0
  20. data/test/dummy/app/models/dummy_table.rb +5 -0
  21. data/test/dummy/app/models/dummy_user.rb +2 -0
  22. data/test/dummy/app/views/layouts/application.html.erb +14 -0
  23. data/test/dummy/config/application.rb +45 -0
  24. data/test/dummy/config/boot.rb +10 -0
  25. data/test/dummy/config/database.yml +13 -0
  26. data/test/dummy/config/environment.rb +5 -0
  27. data/test/dummy/config/environments/development.rb +30 -0
  28. data/test/dummy/config/environments/production.rb +60 -0
  29. data/test/dummy/config/environments/test.rb +39 -0
  30. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  31. data/test/dummy/config/initializers/inflections.rb +10 -0
  32. data/test/dummy/config/initializers/mime_types.rb +5 -0
  33. data/test/dummy/config/initializers/secret_token.rb +7 -0
  34. data/test/dummy/config/initializers/session_store.rb +8 -0
  35. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  36. data/test/dummy/config/locales/en.yml +5 -0
  37. data/test/dummy/config/routes.rb +58 -0
  38. data/test/dummy/config.ru +4 -0
  39. data/test/dummy/db/.DS_Store +0 -0
  40. data/test/dummy/db/migrate/.DS_Store +0 -0
  41. data/test/dummy/db/migrate/20111027142111_create_dummy_tables.rb +11 -0
  42. data/test/dummy/db/migrate/20111027142236_create_dummy_users.rb +9 -0
  43. data/test/dummy/db/schema.rb +29 -0
  44. data/test/dummy/db/seeds/dummy_tables.yml +12 -0
  45. data/test/dummy/db/seeds/dummy_users.yml +10 -0
  46. data/test/dummy/dummy_development +0 -0
  47. data/test/dummy/dummy_test +0 -0
  48. data/test/dummy/lib/assets/.gitkeep +0 -0
  49. data/test/dummy/log/.gitkeep +0 -0
  50. data/test/dummy/log/development.log +37 -0
  51. data/test/dummy/log/test.log +2025 -0
  52. data/test/dummy/public/404.html +26 -0
  53. data/test/dummy/public/422.html +26 -0
  54. data/test/dummy/public/500.html +26 -0
  55. data/test/dummy/public/favicon.ico +0 -0
  56. data/test/dummy/script/rails +6 -0
  57. data/test/dummy/test/fixtures/dummy_tables.yml +11 -0
  58. data/test/dummy/test/fixtures/dummy_users.yml +7 -0
  59. data/test/dummy/test/fixtures/positions.yml +9 -0
  60. data/test/dummy/test/unit/dummy_table_test.rb +7 -0
  61. data/test/dummy/test/unit/dummy_user_test.rb +7 -0
  62. data/test/dummy/test/unit/position_test.rb +7 -0
  63. data/test/seed_loader_test.rb +99 -0
  64. data/test/seeds/dummy_tables.yml +12 -0
  65. data/test/seeds/dummy_users.yml +10 -0
  66. data/test/test_helper.rb +10 -0
  67. metadata +242 -0
@@ -0,0 +1,26 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>The page you were looking for doesn't exist (404)</title>
5
+ <style type="text/css">
6
+ body { background-color: #fff; color: #666; text-align: center; font-family: arial, sans-serif; }
7
+ div.dialog {
8
+ width: 25em;
9
+ padding: 0 4em;
10
+ margin: 4em auto 0 auto;
11
+ border: 1px solid #ccc;
12
+ border-right-color: #999;
13
+ border-bottom-color: #999;
14
+ }
15
+ h1 { font-size: 100%; color: #f00; line-height: 1.5em; }
16
+ </style>
17
+ </head>
18
+
19
+ <body>
20
+ <!-- This file lives in public/404.html -->
21
+ <div class="dialog">
22
+ <h1>The page you were looking for doesn't exist.</h1>
23
+ <p>You may have mistyped the address or the page may have moved.</p>
24
+ </div>
25
+ </body>
26
+ </html>
@@ -0,0 +1,26 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>The change you wanted was rejected (422)</title>
5
+ <style type="text/css">
6
+ body { background-color: #fff; color: #666; text-align: center; font-family: arial, sans-serif; }
7
+ div.dialog {
8
+ width: 25em;
9
+ padding: 0 4em;
10
+ margin: 4em auto 0 auto;
11
+ border: 1px solid #ccc;
12
+ border-right-color: #999;
13
+ border-bottom-color: #999;
14
+ }
15
+ h1 { font-size: 100%; color: #f00; line-height: 1.5em; }
16
+ </style>
17
+ </head>
18
+
19
+ <body>
20
+ <!-- This file lives in public/422.html -->
21
+ <div class="dialog">
22
+ <h1>The change you wanted was rejected.</h1>
23
+ <p>Maybe you tried to change something you didn't have access to.</p>
24
+ </div>
25
+ </body>
26
+ </html>
@@ -0,0 +1,26 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>We're sorry, but something went wrong (500)</title>
5
+ <style type="text/css">
6
+ body { background-color: #fff; color: #666; text-align: center; font-family: arial, sans-serif; }
7
+ div.dialog {
8
+ width: 25em;
9
+ padding: 0 4em;
10
+ margin: 4em auto 0 auto;
11
+ border: 1px solid #ccc;
12
+ border-right-color: #999;
13
+ border-bottom-color: #999;
14
+ }
15
+ h1 { font-size: 100%; color: #f00; line-height: 1.5em; }
16
+ </style>
17
+ </head>
18
+
19
+ <body>
20
+ <!-- This file lives in public/500.html -->
21
+ <div class="dialog">
22
+ <h1>We're sorry, but something went wrong.</h1>
23
+ <p>We've been notified about this issue and we'll take a look at it shortly.</p>
24
+ </div>
25
+ </body>
26
+ </html>
File without changes
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env ruby
2
+ # This command will automatically be run when you run "rails" with Rails 3 gems installed from the root of your application.
3
+
4
+ APP_PATH = File.expand_path('../../config/application', __FILE__)
5
+ require File.expand_path('../../config/boot', __FILE__)
6
+ require 'rails/commands'
@@ -0,0 +1,11 @@
1
+ # Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/Fixtures.html
2
+
3
+ one:
4
+ field1: MyString
5
+ field2: 1
6
+ dummy_user_id: 1
7
+
8
+ two:
9
+ field1: MyString
10
+ field2: 1
11
+ dummy_user_id: 1
@@ -0,0 +1,7 @@
1
+ # Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/Fixtures.html
2
+
3
+ one:
4
+ name: MyString
5
+
6
+ two:
7
+ name: MyString
@@ -0,0 +1,9 @@
1
+ # Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/Fixtures.html
2
+
3
+ one:
4
+ lat: 9.99
5
+ lng: 9.99
6
+
7
+ two:
8
+ lat: 9.99
9
+ lng: 9.99
@@ -0,0 +1,7 @@
1
+ require 'test_helper'
2
+
3
+ class DummyTableTest < ActiveSupport::TestCase
4
+ # test "the truth" do
5
+ # assert true
6
+ # end
7
+ end
@@ -0,0 +1,7 @@
1
+ require 'test_helper'
2
+
3
+ class DummyUserTest < ActiveSupport::TestCase
4
+ # test "the truth" do
5
+ # assert true
6
+ # end
7
+ end
@@ -0,0 +1,7 @@
1
+ require 'test_helper'
2
+
3
+ class PositionTest < ActiveSupport::TestCase
4
+ # test "the truth" do
5
+ # assert true
6
+ # end
7
+ end
@@ -0,0 +1,99 @@
1
+ require 'test_helper'
2
+
3
+ class MysqlDummyUser < ActiveRecord::Base
4
+ end
5
+
6
+ class PostgresDummyUser < ActiveRecord::Base
7
+ end
8
+
9
+
10
+ class SeedLoaderTest < ActiveSupport::TestCase
11
+
12
+ def setup
13
+ SeedLoader::Loader.seeds_path = "/db/seeds"
14
+ end
15
+
16
+ test "belongs to associations" do
17
+ associations = DummyTable.belongs_to_associations
18
+ assert_equal 1, associations.length
19
+ assert_equal :dummy_user, associations[0].name
20
+ end
21
+
22
+ test "seeds path" do
23
+ assert_equal "/db/seeds", SeedLoader::Loader.seeds_path
24
+ end
25
+
26
+ test "seeds path change" do
27
+ new_seeds_path = "/lib/seeds"
28
+ SeedLoader::Loader.seeds_path = new_seeds_path
29
+ assert_equal new_seeds_path, SeedLoader::Loader.seeds_path
30
+ end
31
+
32
+ test "loading seed files into the database" do
33
+ Dir.glob(File.dirname(__FILE__) + '/seeds/*').each { |file| FileUtils.cp file, File.dirname(__FILE__) + '/dummy/db/seeds' }
34
+ SeedLoader::Loader.seed_files_to_db
35
+ dummy_users = DummyUser.all
36
+ assert_equal 3, dummy_users.length
37
+ dummy_tables = DummyTable.all
38
+ assert_equal 3, dummy_tables.length
39
+ assert_equal "User1", dummy_tables.map(&:dummy_user).uniq[0].name
40
+ end
41
+
42
+ test "reset autoincrement" do
43
+ DummyUser.create(:name => "AnotherTestUser")
44
+ DummyUser.delete_all
45
+ DummyUser.reset_autoincrement
46
+ dummy_user = DummyUser.create(:name => "AnotherTestUser")
47
+ assert_equal 1, dummy_user[:id]
48
+ end
49
+
50
+ test "reset autoincrement mysql" do
51
+ connection_options = {
52
+ :adapter => 'mysql2',
53
+ :host => 'localhost',
54
+ :database => 'mysql',
55
+ :username => 'root' }
56
+ ActiveRecord::Base.establish_connection connection_options
57
+ ActiveRecord::Base.connection.create_database 'seed_loader_dummy_database', :charset => 'utf8', :collation => 'utf8_unicode_ci' rescue nil
58
+ ActiveRecord::Base.establish_connection connection_options.merge({:database => 'seed_loader_dummy_database'})
59
+ begin
60
+ ActiveRecord::Base.connection.create_table 'mysql_dummy_users' do |t|
61
+ t.string :name
62
+ end
63
+ rescue
64
+ nil
65
+ end
66
+ MysqlDummyUser.create(:name => "AnotherTestUser")
67
+ MysqlDummyUser.delete_all
68
+ MysqlDummyUser.reset_autoincrement
69
+ dummy_user = MysqlDummyUser.create(:name => "AnotherTestUser")
70
+ assert_equal 1, dummy_user[:id]
71
+ ActiveRecord::Base.connection.drop_table 'mysql_dummy_users'
72
+ ActiveRecord::Base.connection.drop_database 'seed_loader_dummy_database'
73
+ ActiveRecord::Base.establish_connection :test
74
+ end
75
+
76
+ test "reset autoincrement postgres" do
77
+ connection_options = {:adapter => 'postgresql', :host => 'localhost', :database => 'postgres', :username => 'marcessindi', :min_messages => "WARNING" }
78
+ ActiveRecord::Base.establish_connection connection_options
79
+ ActiveRecord::Base.connection.create_database 'seed_loader_dummy_database' rescue nil
80
+ ActiveRecord::Base.establish_connection connection_options.merge({:database => 'seed_loader_dummy_database'})
81
+ begin
82
+ ActiveRecord::Base.connection.create_table 'postgres_dummy_users' do |t|
83
+ t.string :name
84
+ end
85
+ rescue
86
+ nil
87
+ end
88
+ PostgresDummyUser.create(:name => "AnotherTestUser")
89
+ PostgresDummyUser.delete_all
90
+ PostgresDummyUser.reset_autoincrement
91
+ dummy_user = PostgresDummyUser.create(:name => "AnotherTestUser")
92
+ assert_equal 1, dummy_user[:id]
93
+ ActiveRecord::Base.connection.drop_table 'postgres_dummy_users'
94
+ ActiveRecord::Base.establish_connection connection_options
95
+ ActiveRecord::Base.connection.drop_database 'seed_loader_dummy_database'
96
+ ActiveRecord::Base.establish_connection :test
97
+ end
98
+
99
+ end
@@ -0,0 +1,12 @@
1
+ dm_one:
2
+ field1: A
3
+ field2: 1
4
+ dummy_user: user1
5
+ dm_two:
6
+ field1: B
7
+ field2: <%= 3 + 5 %>
8
+ dummy_user: user1
9
+ dm_three:
10
+ field1: C
11
+ field2: 3
12
+ dummy_user: user1
@@ -0,0 +1,10 @@
1
+ user1:
2
+ name: "User1"
3
+
4
+ user2:
5
+ name: <%= "User" + "23" %>
6
+
7
+ user3:
8
+ name: "User3"
9
+
10
+
@@ -0,0 +1,10 @@
1
+ # Configure Rails Environment
2
+ ENV["RAILS_ENV"] = "test"
3
+
4
+ require File.expand_path("../dummy/config/environment.rb", __FILE__)
5
+ require "rails/test_help"
6
+
7
+ Rails.backtrace_cleaner.remove_silencers!
8
+
9
+ # Load support files
10
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
metadata ADDED
@@ -0,0 +1,242 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: seed_loader
3
+ version: !ruby/object:Gem::Version
4
+ hash: 29
5
+ prerelease:
6
+ segments:
7
+ - 0
8
+ - 0
9
+ - 1
10
+ version: 0.0.1
11
+ platform: ruby
12
+ authors:
13
+ - Marc Essindi
14
+ autorequire:
15
+ bindir: bin
16
+ cert_chain: []
17
+
18
+ date: 2011-10-30 00:00:00 Z
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
21
+ name: rails
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
24
+ none: false
25
+ requirements:
26
+ - - ">="
27
+ - !ruby/object:Gem::Version
28
+ hash: 1
29
+ segments:
30
+ - 3
31
+ - 0
32
+ - 3
33
+ version: 3.0.3
34
+ type: :runtime
35
+ version_requirements: *id001
36
+ - !ruby/object:Gem::Dependency
37
+ name: sqlite3
38
+ prerelease: false
39
+ requirement: &id002 !ruby/object:Gem::Requirement
40
+ none: false
41
+ requirements:
42
+ - - ">="
43
+ - !ruby/object:Gem::Version
44
+ hash: 3
45
+ segments:
46
+ - 0
47
+ version: "0"
48
+ type: :development
49
+ version_requirements: *id002
50
+ - !ruby/object:Gem::Dependency
51
+ name: mysql2
52
+ prerelease: false
53
+ requirement: &id003 !ruby/object:Gem::Requirement
54
+ none: false
55
+ requirements:
56
+ - - ">="
57
+ - !ruby/object:Gem::Version
58
+ hash: 3
59
+ segments:
60
+ - 0
61
+ version: "0"
62
+ type: :development
63
+ version_requirements: *id003
64
+ - !ruby/object:Gem::Dependency
65
+ name: pg
66
+ prerelease: false
67
+ requirement: &id004 !ruby/object:Gem::Requirement
68
+ none: false
69
+ requirements:
70
+ - - ">="
71
+ - !ruby/object:Gem::Version
72
+ hash: 3
73
+ segments:
74
+ - 0
75
+ version: "0"
76
+ type: :development
77
+ version_requirements: *id004
78
+ description:
79
+ email:
80
+ - marc.essindi@dunkelbraun.com
81
+ executables: []
82
+
83
+ extensions: []
84
+
85
+ extra_rdoc_files: []
86
+
87
+ files:
88
+ - .gitignore
89
+ - Gemfile
90
+ - MIT-LICENSE
91
+ - README
92
+ - README.rdoc
93
+ - Rakefile
94
+ - lib/seed_loader.rb
95
+ - lib/seed_loader/active_record_methods.rb
96
+ - lib/seed_loader/loader.rb
97
+ - lib/seed_loader/version.rb
98
+ - seed_loader.gemspec
99
+ - test/dummy/Gemfile
100
+ - test/dummy/Rakefile
101
+ - test/dummy/app/assets/javascripts/application.js
102
+ - test/dummy/app/assets/stylesheets/application.css
103
+ - test/dummy/app/controllers/application_controller.rb
104
+ - test/dummy/app/helpers/application_helper.rb
105
+ - test/dummy/app/mailers/.gitkeep
106
+ - test/dummy/app/models/.gitkeep
107
+ - test/dummy/app/models/dummy_table.rb
108
+ - test/dummy/app/models/dummy_user.rb
109
+ - test/dummy/app/views/layouts/application.html.erb
110
+ - test/dummy/config.ru
111
+ - test/dummy/config/application.rb
112
+ - test/dummy/config/boot.rb
113
+ - test/dummy/config/database.yml
114
+ - test/dummy/config/environment.rb
115
+ - test/dummy/config/environments/development.rb
116
+ - test/dummy/config/environments/production.rb
117
+ - test/dummy/config/environments/test.rb
118
+ - test/dummy/config/initializers/backtrace_silencers.rb
119
+ - test/dummy/config/initializers/inflections.rb
120
+ - test/dummy/config/initializers/mime_types.rb
121
+ - test/dummy/config/initializers/secret_token.rb
122
+ - test/dummy/config/initializers/session_store.rb
123
+ - test/dummy/config/initializers/wrap_parameters.rb
124
+ - test/dummy/config/locales/en.yml
125
+ - test/dummy/config/routes.rb
126
+ - test/dummy/db/.DS_Store
127
+ - test/dummy/db/migrate/.DS_Store
128
+ - test/dummy/db/migrate/20111027142111_create_dummy_tables.rb
129
+ - test/dummy/db/migrate/20111027142236_create_dummy_users.rb
130
+ - test/dummy/db/schema.rb
131
+ - test/dummy/db/seeds/dummy_tables.yml
132
+ - test/dummy/db/seeds/dummy_users.yml
133
+ - test/dummy/dummy_development
134
+ - test/dummy/dummy_test
135
+ - test/dummy/lib/assets/.gitkeep
136
+ - test/dummy/log/.gitkeep
137
+ - test/dummy/log/development.log
138
+ - test/dummy/log/test.log
139
+ - test/dummy/public/404.html
140
+ - test/dummy/public/422.html
141
+ - test/dummy/public/500.html
142
+ - test/dummy/public/favicon.ico
143
+ - test/dummy/script/rails
144
+ - test/dummy/test/fixtures/dummy_tables.yml
145
+ - test/dummy/test/fixtures/dummy_users.yml
146
+ - test/dummy/test/fixtures/positions.yml
147
+ - test/dummy/test/unit/dummy_table_test.rb
148
+ - test/dummy/test/unit/dummy_user_test.rb
149
+ - test/dummy/test/unit/position_test.rb
150
+ - test/seed_loader_test.rb
151
+ - test/seeds/dummy_tables.yml
152
+ - test/seeds/dummy_users.yml
153
+ - test/test_helper.rb
154
+ homepage: https://github.com/dunkelbraun/Seed-Loader
155
+ licenses: []
156
+
157
+ post_install_message:
158
+ rdoc_options: []
159
+
160
+ require_paths:
161
+ - lib
162
+ required_ruby_version: !ruby/object:Gem::Requirement
163
+ none: false
164
+ requirements:
165
+ - - ">="
166
+ - !ruby/object:Gem::Version
167
+ hash: 3
168
+ segments:
169
+ - 0
170
+ version: "0"
171
+ required_rubygems_version: !ruby/object:Gem::Requirement
172
+ none: false
173
+ requirements:
174
+ - - ">="
175
+ - !ruby/object:Gem::Version
176
+ hash: 3
177
+ segments:
178
+ - 0
179
+ version: "0"
180
+ requirements: []
181
+
182
+ rubyforge_project: seed_loader
183
+ rubygems_version: 1.8.10
184
+ signing_key:
185
+ specification_version: 3
186
+ summary: YAML seed file loading for Rails.
187
+ test_files:
188
+ - test/dummy/Gemfile
189
+ - test/dummy/Rakefile
190
+ - test/dummy/app/assets/javascripts/application.js
191
+ - test/dummy/app/assets/stylesheets/application.css
192
+ - test/dummy/app/controllers/application_controller.rb
193
+ - test/dummy/app/helpers/application_helper.rb
194
+ - test/dummy/app/mailers/.gitkeep
195
+ - test/dummy/app/models/.gitkeep
196
+ - test/dummy/app/models/dummy_table.rb
197
+ - test/dummy/app/models/dummy_user.rb
198
+ - test/dummy/app/views/layouts/application.html.erb
199
+ - test/dummy/config.ru
200
+ - test/dummy/config/application.rb
201
+ - test/dummy/config/boot.rb
202
+ - test/dummy/config/database.yml
203
+ - test/dummy/config/environment.rb
204
+ - test/dummy/config/environments/development.rb
205
+ - test/dummy/config/environments/production.rb
206
+ - test/dummy/config/environments/test.rb
207
+ - test/dummy/config/initializers/backtrace_silencers.rb
208
+ - test/dummy/config/initializers/inflections.rb
209
+ - test/dummy/config/initializers/mime_types.rb
210
+ - test/dummy/config/initializers/secret_token.rb
211
+ - test/dummy/config/initializers/session_store.rb
212
+ - test/dummy/config/initializers/wrap_parameters.rb
213
+ - test/dummy/config/locales/en.yml
214
+ - test/dummy/config/routes.rb
215
+ - test/dummy/db/.DS_Store
216
+ - test/dummy/db/migrate/.DS_Store
217
+ - test/dummy/db/migrate/20111027142111_create_dummy_tables.rb
218
+ - test/dummy/db/migrate/20111027142236_create_dummy_users.rb
219
+ - test/dummy/db/schema.rb
220
+ - test/dummy/db/seeds/dummy_tables.yml
221
+ - test/dummy/db/seeds/dummy_users.yml
222
+ - test/dummy/dummy_development
223
+ - test/dummy/dummy_test
224
+ - test/dummy/lib/assets/.gitkeep
225
+ - test/dummy/log/.gitkeep
226
+ - test/dummy/log/development.log
227
+ - test/dummy/log/test.log
228
+ - test/dummy/public/404.html
229
+ - test/dummy/public/422.html
230
+ - test/dummy/public/500.html
231
+ - test/dummy/public/favicon.ico
232
+ - test/dummy/script/rails
233
+ - test/dummy/test/fixtures/dummy_tables.yml
234
+ - test/dummy/test/fixtures/dummy_users.yml
235
+ - test/dummy/test/fixtures/positions.yml
236
+ - test/dummy/test/unit/dummy_table_test.rb
237
+ - test/dummy/test/unit/dummy_user_test.rb
238
+ - test/dummy/test/unit/position_test.rb
239
+ - test/seed_loader_test.rb
240
+ - test/seeds/dummy_tables.yml
241
+ - test/seeds/dummy_users.yml
242
+ - test/test_helper.rb