migration_test_helper 1.3.2 → 1.3.3

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.
@@ -0,0 +1,39 @@
1
+ .
2
+ ./generators
3
+ ./generators/full_migration_test
4
+ ./generators/full_migration_test/full_migration_test_generator.rb
5
+ ./generators/full_migration_test/templates
6
+ ./generators/full_migration_test/templates/full_migration_test.rb
7
+ ./generators/full_migration_test/USAGE
8
+ ./generators/migration_test
9
+ ./generators/migration_test/migration_test_generator.rb
10
+ ./generators/migration_test/templates
11
+ ./generators/migration_test/templates/migration_test.rb
12
+ ./init.rb
13
+ ./install.rb
14
+ ./lib
15
+ ./lib/migration_test_helper.rb
16
+ ./LICENSE
17
+ ./Manifest.txt
18
+ ./Rakefile
19
+ ./README
20
+ ./tasks
21
+ ./tasks/migration_test_helper_tasks.rake
22
+ ./test
23
+ ./test/config
24
+ ./test/config/database.yml
25
+ ./test/db
26
+ ./test/db/migrate_bad
27
+ ./test/db/migrate_bad/001_create_top_dogs.rb
28
+ ./test/db/migrate_good
29
+ ./test/db/migrate_good/001_create_top_dogs.rb
30
+ ./test/db/migrate_good/002_create_bottom_dogs.rb
31
+ ./test/db/migrate_good/003_create_cats.rb
32
+ ./test/db/schema.rb
33
+ ./test/foundry_only_helper.rb
34
+ ./test/full_migration_test_generator_test.rb
35
+ ./test/helper.rb
36
+ ./test/log
37
+ ./test/migration_test_generator_test.rb
38
+ ./test/migration_test_helper_test.rb
39
+ ./uninstall.rb
data/README CHANGED
@@ -41,11 +41,12 @@ If you're using it outside of a Rails environment (for whatever reason) include
41
41
  t.column :book_id, :integer
42
42
  t.column :body, :text
43
43
  t.column :rating, :integer, :default => 0
44
+ t.index :book_id, :name => 'index_book_id_on_reviews'
44
45
  end
45
46
  end
46
47
  end
47
48
 
48
- This would verify there are only two tables defined in the test database: _books_ and _reviews_ (schema_info is ignored). It will also verify that the _book_ table has the three columns, _id_, _title_ and _author_, each with their respective types.
49
+ This would verify there are only two tables defined in the test database: _books_ and _reviews_ (schema_info is ignored). It will also verify that the _book_ table has the three columns, _id_, _title_ and _author_, each with their respective types. Indexes are verified too.
49
50
 
50
51
 
51
52
  *assert_table*: verify a table is found exactly as specified:
@@ -54,6 +55,7 @@ This would verify there are only two tables defined in the test database: _books
54
55
  t.column :id, :integer
55
56
  t.column :title, :string, :limit => 5
56
57
  t.column :author, :string
58
+ t.index :author, :name => 'index_author_on_books'
57
59
  end
58
60
 
59
61
 
@@ -101,6 +103,7 @@ By combining the two helpers you can write a test that shows you can run all you
101
103
  t.column :book_id, :integer
102
104
  t.column :body, :text
103
105
  t.column :rating, :integer
106
+ t.index :book_id, :name => 'index_book_id_on_reviews'
104
107
  end
105
108
  end
106
109
  end
data/Rakefile CHANGED
@@ -16,7 +16,7 @@ Rake::RDocTask.new(:rdoc) do |rdoc|
16
16
  rdoc.rdoc_files.include('lib/**/*.rb')
17
17
  end
18
18
 
19
- GEM_VERSION = '1.3.2'
19
+ GEM_VERSION = '1.3.3'
20
20
 
21
21
  Hoe.new('migration_test_helper',GEM_VERSION) do |p|
22
22
  p.author = "Micah Alles"
@@ -30,8 +30,6 @@ current state of the schema and executing migrations against the
30
30
  test database.
31
31
  EOS
32
32
 
33
- p.gem_files = FileList["{test,lib,tasks}/**/*"] + %w|LICENSE README Rakefile init.rb install.rb uninstall.rb|
34
-
35
33
  p.changes = <<-EOS
36
34
  * fixed bug where test:migration was calling itself, thanks Patrick ;)
37
35
  EOS
@@ -52,13 +50,13 @@ task :plugin_release do
52
50
  status = `svn status`
53
51
  raise "Please clean up before releasing.\n#{status}" unless status == ""
54
52
 
55
- unless `svn ls svn+ssh://alles@rubyforge.org/var/svn/migrationtest/tags/rel-#{GEM_VERSION} -m`.strip.empty?
56
- sh "svn del svn+ssh://alles@rubyforge.org/var/svn/migrationtest/tags/rel-#{GEM_VERSION} -m 'Preparing to update stable release tag'"
53
+ unless `svn ls svn+ssh://swieton@rubyforge.org/var/svn/migrationtest/tags/rel-#{GEM_VERSION} -m`.strip.empty?
54
+ sh "svn del svn+ssh://swieton@rubyforge.org/var/svn/migrationtest/tags/rel-#{GEM_VERSION} -m 'Preparing to update stable release tag'"
57
55
  end
58
- sh "svn cp . svn+ssh://alles@rubyforge.org/var/svn/migrationtest/tags/rel-#{GEM_VERSION} -m 'Releasing version #{GEM_VERSION}'"
59
- unless `svn ls svn+ssh://alles@rubyforge.org/var/svn/migrationtest/tags/migration_test_helper`.strip.empty?
60
- sh "svn del svn+ssh://alles@rubyforge.org/var/svn/migrationtest/tags/migration_test_helper -m 'Preparing to update stable release tag'"
56
+ sh "svn cp . svn+ssh://swieton@rubyforge.org/var/svn/migrationtest/tags/rel-#{GEM_VERSION} -m 'Releasing version #{GEM_VERSION}'"
57
+ unless `svn ls svn+ssh://swieton@rubyforge.org/var/svn/migrationtest/tags/migration_test_helper`.strip.empty?
58
+ sh "svn del svn+ssh://swieton@rubyforge.org/var/svn/migrationtest/tags/migration_test_helper -m 'Preparing to update stable release tag'"
61
59
  end
62
- sh "svn cp . svn+ssh://alles@rubyforge.org/var/svn/migrationtest/tags/migration_test_helper -m 'Updating stable tag to version #{GEM_VERSION}'"
60
+ sh "svn cp . svn+ssh://swieton@rubyforge.org/var/svn/migrationtest/tags/migration_test_helper -m 'Updating stable tag to version #{GEM_VERSION}'"
63
61
  end
64
62
  end
@@ -0,0 +1,30 @@
1
+ Description:
2
+ The controller generator creates stubs for a new controller and its views.
3
+
4
+ The generator takes a controller name and a list of views as arguments.
5
+ The controller name may be given in CamelCase or under_score and should
6
+ not be suffixed with 'Controller'. To create a controller within a
7
+ module, specify the controller name as 'module/controller'.
8
+
9
+ The generator creates a controller class in app/controllers with view
10
+ templates in app/views/controller_name, a helper class in app/helpers,
11
+ and a functional test suite in test/functional.
12
+
13
+ Example:
14
+ ./script/generate controller CreditCard open debit credit close
15
+
16
+ Credit card controller with URLs like /credit_card/debit.
17
+ Controller: app/controllers/credit_card_controller.rb
18
+ Views: app/views/credit_card/debit.rhtml [...]
19
+ Helper: app/helpers/credit_card_helper.rb
20
+ Test: test/functional/credit_card_controller_test.rb
21
+
22
+ Modules Example:
23
+ ./script/generate controller 'admin/credit_card' suspend late_fee
24
+
25
+ Credit card admin controller with URLs /admin/credit_card/suspend.
26
+ Controller: app/controllers/admin/credit_card_controller.rb
27
+ Views: app/views/admin/credit_card/debit.rhtml [...]
28
+ Helper: app/helpers/admin/credit_card_helper.rb
29
+ Test: test/functional/admin/credit_card_controller_test.rb
30
+
@@ -0,0 +1,10 @@
1
+ class FullMigrationTestGenerator < Rails::Generator::Base
2
+ def manifest
3
+ record do |m|
4
+
5
+ m.directory 'test/migration'
6
+ m.template 'full_migration_test.rb',
7
+ 'test/migration/full_migration_test.rb'
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,89 @@
1
+ require File.expand_path(File.dirname(__FILE__) + '/../test_helper')
2
+
3
+ #
4
+ # This excercises the full set of migrations for your Rails app.
5
+ # It proves:
6
+ # - After full migration, the database is in the expected state, including:
7
+ # - All table structure
8
+ # - Default data (if any)
9
+ # - Full downward (version 0) migration functions correctly.
10
+ #
11
+ # YOU NEED TO:
12
+ # - Update "see_full_schema"
13
+ # - Update "see_data"
14
+ #
15
+ class FullMigrationTest < ActionController::IntegrationTest
16
+
17
+ #
18
+ # Transactional fixtures can, on occasion, cause migration tests to hang.
19
+ # Applying this setting here will turn transactional fixtures off for THIS
20
+ # SUITE ONLY
21
+ #
22
+ # self.use_transactional_fixtures = false
23
+
24
+ def conn
25
+ ActiveRecord::Base.connection
26
+ end
27
+
28
+ def see_empty_schema
29
+ assert_schema do |s|
30
+ # is nothing
31
+ end
32
+ end
33
+
34
+ #
35
+ # Structure and Content assertions
36
+ #
37
+
38
+ # Fully assert db structure after full migration
39
+ def see_full_schema
40
+ # TODO: add assertions here to verify your schema was built
41
+ flunk "implement me"
42
+
43
+ #
44
+ # Something like this can be used to see the entire schema
45
+ # is as expeted.
46
+ #
47
+ # assert_schema do |s|
48
+ # s.table :cat_tails do |t|
49
+ # t.column :id, :integer
50
+ # t.column :name, :string
51
+ # end
52
+ #
53
+ # s.table :dogs do |t|
54
+ # t.column :id, :integer
55
+ # t.column :name, :string
56
+ # end
57
+ # end
58
+
59
+ #
60
+ # Alternatively individual tables can be checked.
61
+ #
62
+ # assert_table :cats_tails do |s|
63
+ # t.column :id, :integer
64
+ # t.column :name, :string
65
+ # end
66
+ end
67
+
68
+ # Make sure data you expect your migrations to load are in there:
69
+ def see_default_data
70
+ # TODO: add assertions here to verify any default data was loaded
71
+ end
72
+
73
+ #
74
+ # TESTS
75
+ #
76
+
77
+ def test_full_migration
78
+ drop_all_tables
79
+
80
+ see_empty_schema
81
+
82
+ migrate
83
+
84
+ see_full_schema
85
+
86
+ see_default_data
87
+ end
88
+
89
+ end
@@ -0,0 +1,33 @@
1
+ class MigrationTestGenerator < Rails::Generator::NamedBase
2
+ def manifest
3
+ schema_version = class_name.to_i
4
+ raise "Invalid schema version '#{class_name}'" unless schema_version > 0
5
+
6
+ schema_version_string = schema_version.to_s.rjust(3,'0')
7
+
8
+ migration = Dir["db/migrate/#{schema_version_string}*.rb"].first
9
+ raise "No migration found for schema version #{schema_version_string}" unless migration
10
+
11
+ migration_name = File.basename(migration,'.rb').sub(/^\d+_/,'')
12
+ test_class_name = migration_name.camelize + "Test"
13
+ test_file = "test/migration/#{schema_version_string}_#{migration_name}_test.rb"
14
+
15
+ record do |m|
16
+ m.directory 'test/migration'
17
+ m.template 'migration_test.rb', test_file, :assigns => {
18
+ :test_class_name => test_class_name,
19
+ :migration_name => migration_name,
20
+ :schema_version => schema_version,
21
+ :previous_schema_version => previous_schema_version(schema_version_string)
22
+ }
23
+ end
24
+ end
25
+
26
+ def previous_schema_version(current_version_string)
27
+ versions = Dir["db/migrate/*.rb"].map do |migration_file|
28
+ migration_file.match(/db\/migrate\/(\d+)_.*\.rb/)[1]
29
+ end.sort
30
+ prev_index = versions.index(current_version_string) - 1
31
+ prev_index < 0 ? -1 : versions[prev_index].to_i
32
+ end
33
+ end
@@ -0,0 +1,25 @@
1
+ require File.expand_path(File.dirname(__FILE__) + '/../test_helper')
2
+
3
+ class <%= test_class_name %> < Test::Unit::TestCase
4
+
5
+ def teardown
6
+ migrate
7
+ end
8
+
9
+ def test_migration_should_<%= migration_name %>
10
+ drop_all_tables
11
+
12
+ migrate :version => <%= previous_schema_version %>
13
+
14
+ flunk "TODO: setup test data"
15
+
16
+ migrate :version => <%= schema_version %>
17
+
18
+ flunk "TODO: examine results"
19
+
20
+ migrate :version => <%= previous_schema_version %>
21
+
22
+ flunk "TODO: examine results"
23
+ end
24
+
25
+ end
@@ -114,7 +114,7 @@ module MigrationTestHelper
114
114
  end
115
115
 
116
116
  def verify #:nodoc:
117
- actual_tables = conn.tables.reject {|t| t == 'schema_info' }
117
+ actual_tables = conn.tables.reject {|t| t == 'schema_info' || t == 'schema_migrations' }
118
118
  expected_tables = @tables.map {|t| t.name }
119
119
  assert_equal expected_tables.sort, actual_tables.sort, 'wrong tables in schema'
120
120
  end
@@ -128,6 +128,7 @@ module MigrationTestHelper
128
128
  def initialize(name) #:nodoc:
129
129
  @name = name.to_s
130
130
  @columns = []
131
+ @indexes = []
131
132
  assert conn.tables.include?(@name), "table <#{@name}> not found in schema"
132
133
  end
133
134
 
@@ -138,14 +139,21 @@ module MigrationTestHelper
138
139
  assert_not_nil col, "column <#{colname}> not found in table <#{self.name}>"
139
140
  assert_equal type, col.type, "wrong type for column <#{colname}> in table <#{name}>"
140
141
  options.each do |k,v|
141
- k = k.to_sym
142
- assert_equal v, col.send(k), "column <#{colname}> in table <#{name}> has wrong :#{k}"
142
+ k = k.to_sym; actual = col.send(k); actual = actual.is_a?(String) ? actual.sub(/'$/,'').sub(/^'/,'') : actual
143
+ assert_equal v, actual, "column <#{colname}> in table <#{name}> has wrong :#{k}"
143
144
  end
144
145
  end
145
146
 
147
+ def index(column_name, options = {})
148
+ @indexes << "name <#{options[:name]}> columns <#{Array(column_name).join(",")}> unique <#{options[:unique] == true}>"
149
+ end
150
+
146
151
  def verify #:nodoc:
147
152
  actual_columns = conn.columns(name).map {|c| c.name }
148
153
  assert_equal @columns.sort, actual_columns.sort, "wrong columns for table: <#{name}>"
154
+
155
+ actual_indexes = conn.indexes(@name).collect { |i| "name <#{i.name}> columns <#{i.columns.join(",")}> unique <#{i.unique}>" }
156
+ assert_equal @indexes.sort, actual_indexes.sort, "wrong indexes for table: <#{name}>"
149
157
  end
150
158
  end
151
159
  end
@@ -2,4 +2,5 @@ ActiveRecord::Schema.define(:version => 1) do
2
2
  create_table "dogs", :force => true do |t|
3
3
  t.column "tail", :string, :default => 'top dog', :limit => 187
4
4
  end
5
+ add_index :dogs, :tail, :name => 'index_tail_on_dogs'
5
6
  end
@@ -12,6 +12,4 @@ class Test::Unit::TestCase
12
12
  should(behave,&block) if running_in_foundry
13
13
  end
14
14
 
15
- def test_PLACEHOLDER; end
16
-
17
15
  end
@@ -20,15 +20,17 @@ class MigrationTestGeneratorTest < Test::Unit::TestCase
20
20
  # HELPERS
21
21
  #
22
22
 
23
- def generate_migration(expected_version, name)
23
+ def generate_migration(name)
24
24
  run_in_rails_root "script/generate migration #{name}"
25
- migration_file = "db/migrate/#{expected_version}_#{name}.rb"
25
+ @output =~ /create db\/migrate\/(\d+)_.*\.rb/
26
+ migration = $1
27
+ migration_file = "db/migrate/#{migration}_#{name}.rb"
26
28
  assert File.exists?(migration_file), "Migration not there: #{migration_file}"
29
+ migration
27
30
  end
28
31
 
29
32
  def generate_migration_test(version)
30
33
  run_in_rails_root "script/generate migration_test #{version}"
31
-
32
34
  end
33
35
 
34
36
  def rm_migrations
@@ -40,11 +42,11 @@ class MigrationTestGeneratorTest < Test::Unit::TestCase
40
42
  #
41
43
 
42
44
  in_foundry_should "generate a migration test for schema 1" do
43
- generate_migration '001', 'create_the_dogs_table'
45
+ migration = generate_migration 'create_the_dogs_table'
44
46
 
45
- generate_migration_test '1'
47
+ generate_migration_test migration
46
48
 
47
- migration_test_file = "test/migration/001_create_the_dogs_table_test.rb"
49
+ migration_test_file = "test/migration/#{migration}_create_the_dogs_table_test.rb"
48
50
  assert File.exists?(migration_test_file), "Migration test not there: #{migration_test_file}"
49
51
 
50
52
  run_in_rails_root "ruby #{migration_test_file}"
@@ -55,10 +57,10 @@ class MigrationTestGeneratorTest < Test::Unit::TestCase
55
57
  end
56
58
 
57
59
  in_foundry_should "generate a migration test for schema 2" do
58
- generate_migration '001', 'create_the_dogs_table'
59
- generate_migration '002', 'transfer_cats_data'
60
- generate_migration_test '002'
61
- migration_test_file = "test/migration/002_transfer_cats_data_test.rb"
60
+ generate_migration 'create_the_dogs_table'
61
+ migration = generate_migration 'transfer_cats_data'
62
+ generate_migration_test migration
63
+ migration_test_file = "test/migration/#{migration}_transfer_cats_data_test.rb"
62
64
  assert File.exists?(migration_test_file), "Migration test not there: #{migration_test_file}"
63
65
 
64
66
  run_in_rails_root "ruby #{migration_test_file}"
@@ -69,19 +71,19 @@ class MigrationTestGeneratorTest < Test::Unit::TestCase
69
71
  end
70
72
 
71
73
  in_foundry_should "fail if no schema version is provided" do
72
- generate_migration '001', 'create_the_dogs_table'
74
+ generate_migration 'create_the_dogs_table'
73
75
  generate_migration_test ''
74
76
  check_output 'Usage: script/generate migration_test MigrationTestName [options]'
75
77
  end
76
78
 
77
79
  in_foundry_should "fail if bad schema version is provided" do
78
- generate_migration '001', 'create_the_dogs_table'
80
+ generate_migration 'create_the_dogs_table'
79
81
  generate_migration_test 'oops'
80
82
  check_output(/Invalid schema version 'oops'/i)
81
83
  end
82
84
 
83
85
  in_foundry_should "fail if schema version does not correspond to existing migration" do
84
- generate_migration '001', 'create_the_dogs_table'
86
+ migration = generate_migration 'create_the_dogs_table'
85
87
  generate_migration_test '2'
86
88
  check_output "No migration found for schema version 002"
87
89
  end
@@ -22,6 +22,11 @@ class MigrationTestHelperTest < Test::Unit::TestCase
22
22
  yield
23
23
  end
24
24
  end
25
+
26
+ def declare_columns_on_table(t)
27
+ t.column :id, :integer
28
+ t.column :tail, :string, :default => 'top dog', :limit => 187
29
+ end
25
30
 
26
31
  #
27
32
  # TESTS
@@ -30,9 +35,10 @@ class MigrationTestHelperTest < Test::Unit::TestCase
30
35
  see_no_failure do
31
36
  assert_schema do |s|
32
37
  s.table :dogs do |t|
33
- t.column :id, :integer
34
- t.column :tail, :string, :default => 'top dog', :limit => 187
38
+ declare_columns_on_table(t)
39
+ t.index :tail, :name => 'index_tail_on_dogs'
35
40
  end
41
+
36
42
  end
37
43
  end
38
44
  end
@@ -88,8 +94,8 @@ class MigrationTestHelperTest < Test::Unit::TestCase
88
94
  def test_assert_table_should_not_fail_if_table_is_matched
89
95
  see_no_failure do
90
96
  assert_table :dogs do |t|
91
- t.column :id, :integer
92
- t.column :tail, :string, :default => 'top dog', :limit => 187
97
+ declare_columns_on_table(t)
98
+ t.index :tail, :name => 'index_tail_on_dogs'
93
99
  end
94
100
  end
95
101
  end
@@ -129,8 +135,39 @@ class MigrationTestHelperTest < Test::Unit::TestCase
129
135
  end
130
136
  end
131
137
 
138
+ def test_assert_table_should_fail_if_an_index_is_not_specified
139
+ see_failure 'wrong indexes for table: <dogs>' do
140
+ assert_table :dogs do |t|
141
+ declare_columns_on_table(t)
142
+ end
143
+ end
144
+ end
145
+
146
+ def test_assert_schema_should_fail_if_a_column_in_an_index_is_not_found
147
+ see_failure 'wrong indexes for table: <dogs>' do
148
+ assert_table :dogs do |t|
149
+ declare_columns_on_table(t)
150
+ t.index :legs, :name => 'index_legs_on_dogs'
151
+ end
152
+ end
153
+ end
154
+
155
+ def test_assert_schema_should_fail_if_wrong_options_on_an_index
156
+ see_failure 'wrong indexes for table: <dogs>' do
157
+ assert_table :dogs do |t|
158
+ declare_columns_on_table(t)
159
+ t.index :tail, :name => 'index_tail_on_dogs', :unique => true
160
+ end
161
+ end
162
+ end
163
+
132
164
  def test_should_drop_all_tables
133
- assert_equal ['dogs','schema_info'].sort, ActiveRecord::Base.connection.tables.sort
165
+ if Rails::VERSION::MAJOR >= 2 && Rails::VERSION::MINOR >= 1
166
+ schema_table = 'schema_migrations'
167
+ else
168
+ schema_table = 'schema_info'
169
+ end
170
+ assert_equal ['dogs', schema_table].sort, ActiveRecord::Base.connection.tables.sort
134
171
  drop_all_tables
135
172
  assert_equal [], ActiveRecord::Base.connection.tables
136
173
  drop_all_tables
metadata CHANGED
@@ -1,77 +1,94 @@
1
1
  --- !ruby/object:Gem::Specification
2
- rubygems_version: 0.9.0
3
- specification_version: 1
4
2
  name: migration_test_helper
5
3
  version: !ruby/object:Gem::Version
6
- version: 1.3.2
7
- date: 2007-03-31 00:00:00 -04:00
8
- summary: A Rails plugin for testing migrations
9
- require_paths:
10
- - lib
11
- email: micah@atomicobject.com
12
- homepage: http://migrationtest.rubyforge.org
13
- rubyforge_project: migrationtest
14
- description: migration_test_helper makes testing your migrations easier by adding helper methods to Test::Unit::TestCase for asserting the current state of the schema and executing migrations against the test database.
15
- autorequire:
16
- default_executable:
17
- bindir: bin
18
- has_rdoc: true
19
- required_ruby_version: !ruby/object:Gem::Version::Requirement
20
- requirements:
21
- - - ">"
22
- - !ruby/object:Gem::Version
23
- version: 0.0.0
24
- version:
4
+ version: 1.3.3
25
5
  platform: ruby
26
- signing_key:
27
- cert_chain:
28
- post_install_message:
29
6
  authors:
30
7
  - Micah Alles
31
- files:
32
- - test/config
33
- - test/db
34
- - test/foundry_only_helper.rb
35
- - test/full_migration_test_generator_test.rb
36
- - test/helper.rb
37
- - test/log
38
- - test/migration_test_generator_test.rb
39
- - test/migration_test_helper_test.rb
40
- - test/config/database.yml
41
- - test/db/migrate_bad
42
- - test/db/migrate_good
43
- - test/db/schema.rb
44
- - test/db/migrate_bad/001_create_top_dogs.rb
45
- - test/db/migrate_good/001_create_top_dogs.rb
46
- - test/db/migrate_good/002_create_bottom_dogs.rb
47
- - test/db/migrate_good/003_create_cats.rb
48
- - lib/migration_test_helper.rb
49
- - tasks/migration_test_helper_tasks.rake
50
- - LICENSE
51
- - README
52
- - Rakefile
53
- - init.rb
54
- - install.rb
55
- - uninstall.rb
56
- test_files: []
57
-
58
- rdoc_options: []
59
-
60
- extra_rdoc_files: []
61
-
62
- executables: []
63
-
64
- extensions: []
65
-
66
- requirements: []
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
67
11
 
12
+ date: 2009-12-04 00:00:00 -05:00
13
+ default_executable:
68
14
  dependencies:
69
15
  - !ruby/object:Gem::Dependency
70
16
  name: hoe
17
+ type: :development
71
18
  version_requirement:
72
- version_requirements: !ruby/object:Gem::Version::Requirement
19
+ version_requirements: !ruby/object:Gem::Requirement
73
20
  requirements:
74
21
  - - ">="
75
22
  - !ruby/object:Gem::Version
76
- version: 1.1.7
23
+ version: 2.3.3
77
24
  version:
25
+ description: |
26
+ migration_test_helper makes testing your migrations easier by
27
+ adding helper methods to Test::Unit::TestCase for asserting the
28
+ current state of the schema and executing migrations against the
29
+ test database.
30
+
31
+ email: micah@atomicobject.com
32
+ executables: []
33
+
34
+ extensions: []
35
+
36
+ extra_rdoc_files:
37
+ - ./Manifest.txt
38
+ files:
39
+ - ./generators/full_migration_test/full_migration_test_generator.rb
40
+ - ./generators/full_migration_test/templates/full_migration_test.rb
41
+ - ./generators/full_migration_test/USAGE
42
+ - ./generators/migration_test/migration_test_generator.rb
43
+ - ./generators/migration_test/templates/migration_test.rb
44
+ - ./init.rb
45
+ - ./install.rb
46
+ - ./lib/migration_test_helper.rb
47
+ - ./LICENSE
48
+ - ./Manifest.txt
49
+ - ./Rakefile
50
+ - ./README
51
+ - ./tasks/migration_test_helper_tasks.rake
52
+ - ./test/config/database.yml
53
+ - ./test/db/migrate_bad/001_create_top_dogs.rb
54
+ - ./test/db/migrate_good/001_create_top_dogs.rb
55
+ - ./test/db/migrate_good/002_create_bottom_dogs.rb
56
+ - ./test/db/migrate_good/003_create_cats.rb
57
+ - ./test/db/schema.rb
58
+ - ./test/foundry_only_helper.rb
59
+ - ./test/full_migration_test_generator_test.rb
60
+ - ./test/helper.rb
61
+ - ./test/migration_test_generator_test.rb
62
+ - ./test/migration_test_helper_test.rb
63
+ - ./uninstall.rb
64
+ has_rdoc: true
65
+ homepage: http://migrationtest.rubyforge.org
66
+ licenses: []
67
+
68
+ post_install_message:
69
+ rdoc_options:
70
+ - --main
71
+ - README.txt
72
+ require_paths:
73
+ - lib
74
+ required_ruby_version: !ruby/object:Gem::Requirement
75
+ requirements:
76
+ - - ">="
77
+ - !ruby/object:Gem::Version
78
+ version: "0"
79
+ version:
80
+ required_rubygems_version: !ruby/object:Gem::Requirement
81
+ requirements:
82
+ - - ">="
83
+ - !ruby/object:Gem::Version
84
+ version: "0"
85
+ version:
86
+ requirements: []
87
+
88
+ rubyforge_project: migrationtest
89
+ rubygems_version: 1.3.5
90
+ signing_key:
91
+ specification_version: 3
92
+ summary: A Rails plugin for testing migrations
93
+ test_files: []
94
+