minitest-spec-rails 3.1.2 → 4.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (71) hide show
  1. data/.travis.yml +9 -6
  2. data/Appraisals +17 -0
  3. data/CHANGELOG.md +3 -12
  4. data/Gemfile +1 -3
  5. data/README.md +111 -2
  6. data/Rakefile +8 -0
  7. data/gemfiles/rails30.gemfile +7 -0
  8. data/gemfiles/rails30.gemfile.lock +94 -0
  9. data/gemfiles/rails31.gemfile +7 -0
  10. data/gemfiles/rails31.gemfile.lock +105 -0
  11. data/gemfiles/rails32.gemfile +7 -0
  12. data/gemfiles/rails32.gemfile.lock +104 -0
  13. data/gemfiles/rails40.gemfile +7 -0
  14. data/gemfiles/rails40.gemfile.lock +107 -0
  15. data/lib/minitest-spec-rails.rb +4 -5
  16. data/lib/minitest-spec-rails/init/action_controller.rb +11 -19
  17. data/lib/minitest-spec-rails/init/action_mailer.rb +5 -22
  18. data/lib/minitest-spec-rails/init/action_view.rb +15 -33
  19. data/lib/minitest-spec-rails/init/active_support.rb +11 -19
  20. data/lib/minitest-spec-rails/railtie.rb +17 -0
  21. data/lib/minitest-spec-rails/version.rb +1 -1
  22. data/lib/test/unit.rb +5 -0
  23. data/lib/test/unit/assertions.rb +5 -0
  24. data/lib/test/unit/testcase.rb +31 -0
  25. data/minitest-spec-rails.gemspec +3 -4
  26. data/test/cases/action_dispatch_test.rb +2 -2
  27. data/test/cases/active_support_test.rb +5 -17
  28. data/test/cases/minitest_spec_rails_test.rb +11 -0
  29. data/test/dummy_app/app/controllers/users_controller.rb +0 -4
  30. data/test/dummy_app/app/helpers/application_helper.rb +1 -0
  31. data/test/dummy_app/app/mailers/user_mailer.rb +10 -0
  32. data/test/dummy_app/app/models/user.rb +0 -3
  33. data/test/dummy_app/app/views/users/{index.rhtml → index.html.erb} +0 -0
  34. data/test/dummy_app/config/database.yml +5 -2
  35. data/test/dummy_app/config/routes.rb +3 -5
  36. data/test/dummy_app/init.rb +32 -8
  37. data/test/dummy_app/{db/schema.rb → tmp/.gitkeep} +0 -0
  38. data/test/dummy_tests/application_controller_test.rb +23 -67
  39. data/test/dummy_tests/integration_test.rb +22 -13
  40. data/test/dummy_tests/user_mailer_test.rb +27 -65
  41. data/test/dummy_tests/user_test.rb +14 -50
  42. data/test/dummy_tests/users_controller_test.rb +6 -13
  43. data/test/dummy_tests/users_helper_test.rb +19 -55
  44. data/test/support/shared_test_case_behavior.rb +16 -10
  45. data/test/test_helper.rb +2 -2
  46. data/test/test_helper_dummy.rb +2 -0
  47. metadata +33 -75
  48. data/Guardfile +0 -7
  49. data/lib/minitest-spec-rails/dsl.rb +0 -52
  50. data/lib/minitest-spec-rails/init/action_dispatch.rb +0 -17
  51. data/lib/minitest-spec-rails/init/mini_shoulda.rb +0 -47
  52. data/lib/minitest-spec-rails/rails.rb +0 -7
  53. data/test/cases/mini_shoulda_test.rb +0 -38
  54. data/test/dummy_app/app/helpers/foos_helper.rb +0 -5
  55. data/test/dummy_app/app/models/post.rb +0 -6
  56. data/test/dummy_app/app/models/user_mailer.rb +0 -10
  57. data/test/dummy_app/app/views/user_mailer/welcome.erb +0 -1
  58. data/test/dummy_app/config/boot.rb +0 -126
  59. data/test/dummy_app/config/environment.rb +0 -12
  60. data/test/dummy_app/config/environments/test.rb +0 -28
  61. data/test/dummy_app/config/initializers/new_rails_defaults.rb +0 -15
  62. data/test/dummy_app/lib/library.rb +0 -2
  63. data/test/dummy_app/log/.keep +0 -0
  64. data/test/dummy_app/public/.htaccess +0 -40
  65. data/test/dummy_app/public/404.html +0 -30
  66. data/test/dummy_app/public/422.html +0 -30
  67. data/test/dummy_app/public/500.html +0 -30
  68. data/test/dummy_app/script/console +0 -3
  69. data/test/dummy_app/script/generate +0 -3
  70. data/test/dummy_tests/foo_helper_test.rb +0 -12
  71. data/test/dummy_tests/library_test.rb +0 -16
@@ -1,21 +1,14 @@
1
1
  require 'test_helper_dummy'
2
2
 
3
3
  module UsersControllerTests
4
- def self.included(klass)
5
- klass.class_eval do
4
+ extend ActiveSupport::Concern
5
+ included do
6
6
 
7
- before { get :index }
8
-
9
- it 'works' do
10
- assert_select 'h1', "All #{User.count} Users"
11
- end
12
-
13
- it 'redirects' do
14
- put :update, :id => 0
15
- assert_redirected_to users_url
16
- end
17
-
7
+ it 'works' do
8
+ get :index
9
+ assert_select 'h1', "All #{User.count} Users"
18
10
  end
11
+
19
12
  end
20
13
  end
21
14
 
@@ -1,81 +1,45 @@
1
1
  require 'test_helper_dummy'
2
2
 
3
3
  module UsersHelperTests
4
- def self.included(klass)
5
- klass.class_eval do
4
+ extend ActiveSupport::Concern
5
+ included do
6
6
 
7
- let(:users_list) { render_users_list User.all }
7
+ let(:users_list) { render_users_list User.all }
8
8
 
9
- before { user_ken }
9
+ before { user_ken }
10
10
 
11
- it 'works' do
12
- user_ken
13
- users_list.must_equal "<ul><li>#{user_ken.email}</li></ul>"
14
- end
11
+ it 'works' do
12
+ user_ken
13
+ users_list.must_equal "<ul><li>#{user_ken.email}</li></ul>"
14
+ end
15
+
16
+ it 'can find the helper_class' do
17
+ self.class.helper_class.must_equal UsersHelper
18
+ end
19
+
20
+ describe 'nested 1' do
21
+
22
+ it('works') { skip }
15
23
 
16
24
  it 'can find the helper_class' do
17
25
  self.class.helper_class.must_equal UsersHelper
18
26
  end
19
27
 
20
- describe 'nested 1' do
28
+ describe 'nested 2' do
21
29
 
22
30
  it('works') { skip }
23
31
 
24
- it 'can find the helper_class' do
25
- self.class.helper_class.must_equal UsersHelper
26
- end
27
-
28
- describe 'nested 2' do
29
-
30
- it('works') { skip }
31
-
32
- end
33
-
34
32
  end
35
-
33
+
36
34
  end
35
+
37
36
  end
38
37
  end
39
38
 
40
39
  class UsersHelperTest < ActionView::TestCase
41
40
  include UsersHelperTests
42
- it 'reflects' do
43
- describing_class.must_equal UsersHelperTest
44
- described_class.must_equal UsersHelper
45
- self.class.described_class.must_equal UsersHelper
46
- end
47
- describe 'level 1' do
48
- it 'reflects' do
49
- describing_class.must_equal UsersHelperTest
50
- described_class.must_equal UsersHelper
51
- self.class.described_class.must_equal UsersHelper
52
- end
53
- describe 'level 2' do
54
- it 'reflects' do
55
- describing_class.must_equal UsersHelperTest
56
- described_class.must_equal UsersHelper
57
- self.class.described_class.must_equal UsersHelper
58
- end
59
- end
60
- end
61
41
  end
62
42
 
63
43
  describe UsersHelper do
64
44
  include UsersHelperTests
65
- it 'reflects' do
66
- described_class.must_equal UsersHelper
67
- self.class.described_class.must_equal UsersHelper
68
- end
69
- describe 'level 1' do
70
- it 'reflects' do
71
- described_class.must_equal UsersHelper
72
- self.class.described_class.must_equal UsersHelper
73
- end
74
- describe 'level 2' do
75
- it 'reflects' do
76
- described_class.must_equal UsersHelper
77
- self.class.described_class.must_equal UsersHelper
78
- end
79
- end
80
- end
81
45
  end
@@ -1,12 +1,12 @@
1
1
  module MiniTestSpecRails
2
2
  module SharedTestCaseBehavior
3
3
 
4
- def self.included(klass)
5
- klass.class_eval do
6
- before { setup_dummy_schema }
7
- let(:user_ken) { User.create! :email => 'ken@metaskills.net' }
8
- let(:user_post) { Post.create! :title => 'Test Title', :body => 'Test body. Test body.', :user => user_ken}
9
- end
4
+ extend ActiveSupport::Concern
5
+
6
+ included do
7
+ before { setup_dummy_schema }
8
+ let(:app) { Dummy::Application }
9
+ let(:user_ken) { User.create! :email => 'ken@metaskills.net' }
10
10
  end
11
11
 
12
12
  private
@@ -17,13 +17,19 @@ module MiniTestSpecRails
17
17
  create_table :users, :force => true do |t|
18
18
  t.string :email
19
19
  end
20
- create_table :posts, :force => true do |t|
21
- t.string :title, :body
22
- t.integer :user_id
23
- end
24
20
  end
25
21
  end
26
22
  end
23
+
24
+ def rails_version
25
+ Rails.version.split('.')[0,2].join('.')
26
+ end
27
+
28
+ def rails3? ; rails30? || rails31? || rails32? ; end
29
+ def rails30? ; rails_version == '3.0' ; end
30
+ def rails31? ; rails_version == '3.1' ; end
31
+ def rails32? ; rails_version == '3.2' ; end
32
+ def rails40? ; rails_version == '4.0' ; end
27
33
 
28
34
  end
29
35
  end
@@ -5,8 +5,8 @@ require 'support/shared_test_case_behavior'
5
5
  module MiniTestSpecRails
6
6
  class TestCase < MiniTest::Spec
7
7
 
8
- include SharedTestCaseBehavior
9
-
8
+ include MiniTestSpecRails::SharedTestCaseBehavior
9
+
10
10
 
11
11
  end
12
12
  end
@@ -1,7 +1,9 @@
1
1
  require 'test_helper'
2
+ require 'rails/test_help'
2
3
 
3
4
  class ActiveSupport::TestCase
4
5
 
6
+ fixtures :all
5
7
  include MiniTestSpecRails::SharedTestCaseBehavior
6
8
 
7
9
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: minitest-spec-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.2
4
+ version: 4.3.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-03-20 00:00:00.000000000 Z
12
+ date: 2013-01-18 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: minitest
@@ -18,7 +18,7 @@ dependencies:
18
18
  requirements:
19
19
  - - ~>
20
20
  - !ruby/object:Gem::Version
21
- version: '4.7'
21
+ version: '4.3'
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
@@ -26,41 +26,25 @@ dependencies:
26
26
  requirements:
27
27
  - - ~>
28
28
  - !ruby/object:Gem::Version
29
- version: '4.7'
29
+ version: '4.3'
30
30
  - !ruby/object:Gem::Dependency
31
31
  name: rails
32
- requirement: !ruby/object:Gem::Requirement
33
- none: false
34
- requirements:
35
- - - ~>
36
- - !ruby/object:Gem::Version
37
- version: 2.3.0
38
- type: :runtime
39
- prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - ~>
44
- - !ruby/object:Gem::Version
45
- version: 2.3.0
46
- - !ruby/object:Gem::Dependency
47
- name: guard-minitest
48
32
  requirement: !ruby/object:Gem::Requirement
49
33
  none: false
50
34
  requirements:
51
35
  - - ! '>='
52
36
  - !ruby/object:Gem::Version
53
- version: '0'
54
- type: :development
37
+ version: '3.0'
38
+ type: :runtime
55
39
  prerelease: false
56
40
  version_requirements: !ruby/object:Gem::Requirement
57
41
  none: false
58
42
  requirements:
59
43
  - - ! '>='
60
44
  - !ruby/object:Gem::Version
61
- version: '0'
45
+ version: '3.0'
62
46
  - !ruby/object:Gem::Dependency
63
- name: minitest-emoji
47
+ name: appraisal
64
48
  requirement: !ruby/object:Gem::Requirement
65
49
  none: false
66
50
  requirements:
@@ -76,7 +60,7 @@ dependencies:
76
60
  - !ruby/object:Gem::Version
77
61
  version: '0'
78
62
  - !ruby/object:Gem::Dependency
79
- name: minitest-focus
63
+ name: minitest-emoji
80
64
  requirement: !ruby/object:Gem::Requirement
81
65
  none: false
82
66
  requirements:
@@ -133,59 +117,50 @@ extra_rdoc_files: []
133
117
  files:
134
118
  - .gitignore
135
119
  - .travis.yml
120
+ - Appraisals
136
121
  - CHANGELOG.md
137
122
  - Gemfile
138
- - Guardfile
139
123
  - MIT-LICENSE
140
124
  - README.md
141
125
  - Rakefile
126
+ - gemfiles/rails30.gemfile
127
+ - gemfiles/rails30.gemfile.lock
128
+ - gemfiles/rails31.gemfile
129
+ - gemfiles/rails31.gemfile.lock
130
+ - gemfiles/rails32.gemfile
131
+ - gemfiles/rails32.gemfile.lock
132
+ - gemfiles/rails40.gemfile
133
+ - gemfiles/rails40.gemfile.lock
142
134
  - lib/minitest-spec-rails.rb
143
- - lib/minitest-spec-rails/dsl.rb
144
135
  - lib/minitest-spec-rails/init/action_controller.rb
145
- - lib/minitest-spec-rails/init/action_dispatch.rb
146
136
  - lib/minitest-spec-rails/init/action_mailer.rb
147
137
  - lib/minitest-spec-rails/init/action_view.rb
148
138
  - lib/minitest-spec-rails/init/active_support.rb
149
- - lib/minitest-spec-rails/init/mini_shoulda.rb
150
- - lib/minitest-spec-rails/rails.rb
139
+ - lib/minitest-spec-rails/railtie.rb
151
140
  - lib/minitest-spec-rails/version.rb
141
+ - lib/test/unit.rb
142
+ - lib/test/unit/assertions.rb
143
+ - lib/test/unit/testcase.rb
152
144
  - minitest-spec-rails.gemspec
153
145
  - test/cases/action_controller_test.rb
154
146
  - test/cases/action_dispatch_test.rb
155
147
  - test/cases/action_mailer_test.rb
156
148
  - test/cases/action_view_test.rb
157
149
  - test/cases/active_support_test.rb
158
- - test/cases/mini_shoulda_test.rb
150
+ - test/cases/minitest_spec_rails_test.rb
159
151
  - test/dummy_app/app/controllers/application_controller.rb
160
152
  - test/dummy_app/app/controllers/users_controller.rb
161
153
  - test/dummy_app/app/helpers/application_helper.rb
162
- - test/dummy_app/app/helpers/foos_helper.rb
163
154
  - test/dummy_app/app/helpers/users_helper.rb
164
- - test/dummy_app/app/models/post.rb
155
+ - test/dummy_app/app/mailers/user_mailer.rb
165
156
  - test/dummy_app/app/models/user.rb
166
- - test/dummy_app/app/models/user_mailer.rb
167
- - test/dummy_app/app/views/user_mailer/welcome.erb
168
- - test/dummy_app/app/views/users/index.rhtml
169
- - test/dummy_app/config/boot.rb
157
+ - test/dummy_app/app/views/users/index.html.erb
170
158
  - test/dummy_app/config/database.yml
171
- - test/dummy_app/config/environment.rb
172
- - test/dummy_app/config/environments/test.rb
173
- - test/dummy_app/config/initializers/new_rails_defaults.rb
174
159
  - test/dummy_app/config/routes.rb
175
- - test/dummy_app/db/schema.rb
176
160
  - test/dummy_app/init.rb
177
- - test/dummy_app/lib/library.rb
178
- - test/dummy_app/log/.keep
179
- - test/dummy_app/public/.htaccess
180
- - test/dummy_app/public/404.html
181
- - test/dummy_app/public/422.html
182
- - test/dummy_app/public/500.html
183
- - test/dummy_app/script/console
184
- - test/dummy_app/script/generate
161
+ - test/dummy_app/tmp/.gitkeep
185
162
  - test/dummy_tests/application_controller_test.rb
186
- - test/dummy_tests/foo_helper_test.rb
187
163
  - test/dummy_tests/integration_test.rb
188
- - test/dummy_tests/library_test.rb
189
164
  - test/dummy_tests/user_mailer_test.rb
190
165
  - test/dummy_tests/user_test.rb
191
166
  - test/dummy_tests/users_controller_test.rb
@@ -208,7 +183,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
208
183
  version: '0'
209
184
  segments:
210
185
  - 0
211
- hash: -14675576919957165
186
+ hash: -1108058497587389129
212
187
  required_rubygems_version: !ruby/object:Gem::Requirement
213
188
  none: false
214
189
  requirements:
@@ -217,10 +192,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
217
192
  version: '0'
218
193
  segments:
219
194
  - 0
220
- hash: -14675576919957165
195
+ hash: -1108058497587389129
221
196
  requirements: []
222
197
  rubyforge_project:
223
- rubygems_version: 1.8.25
198
+ rubygems_version: 1.8.24
224
199
  signing_key:
225
200
  specification_version: 3
226
201
  summary: Make Rails Use MiniTest::Spec!
@@ -230,37 +205,20 @@ test_files:
230
205
  - test/cases/action_mailer_test.rb
231
206
  - test/cases/action_view_test.rb
232
207
  - test/cases/active_support_test.rb
233
- - test/cases/mini_shoulda_test.rb
208
+ - test/cases/minitest_spec_rails_test.rb
234
209
  - test/dummy_app/app/controllers/application_controller.rb
235
210
  - test/dummy_app/app/controllers/users_controller.rb
236
211
  - test/dummy_app/app/helpers/application_helper.rb
237
- - test/dummy_app/app/helpers/foos_helper.rb
238
212
  - test/dummy_app/app/helpers/users_helper.rb
239
- - test/dummy_app/app/models/post.rb
213
+ - test/dummy_app/app/mailers/user_mailer.rb
240
214
  - test/dummy_app/app/models/user.rb
241
- - test/dummy_app/app/models/user_mailer.rb
242
- - test/dummy_app/app/views/user_mailer/welcome.erb
243
- - test/dummy_app/app/views/users/index.rhtml
244
- - test/dummy_app/config/boot.rb
215
+ - test/dummy_app/app/views/users/index.html.erb
245
216
  - test/dummy_app/config/database.yml
246
- - test/dummy_app/config/environment.rb
247
- - test/dummy_app/config/environments/test.rb
248
- - test/dummy_app/config/initializers/new_rails_defaults.rb
249
217
  - test/dummy_app/config/routes.rb
250
- - test/dummy_app/db/schema.rb
251
218
  - test/dummy_app/init.rb
252
- - test/dummy_app/lib/library.rb
253
- - test/dummy_app/log/.keep
254
- - test/dummy_app/public/.htaccess
255
- - test/dummy_app/public/404.html
256
- - test/dummy_app/public/422.html
257
- - test/dummy_app/public/500.html
258
- - test/dummy_app/script/console
259
- - test/dummy_app/script/generate
219
+ - test/dummy_app/tmp/.gitkeep
260
220
  - test/dummy_tests/application_controller_test.rb
261
- - test/dummy_tests/foo_helper_test.rb
262
221
  - test/dummy_tests/integration_test.rb
263
- - test/dummy_tests/library_test.rb
264
222
  - test/dummy_tests/user_mailer_test.rb
265
223
  - test/dummy_tests/user_test.rb
266
224
  - test/dummy_tests/users_controller_test.rb
data/Guardfile DELETED
@@ -1,7 +0,0 @@
1
- guard 'minitest' do
2
- watch(%r|^lib/minitest-spec-rails/init/(.*)\.rb|) { |m| "test/cases/#{m[1]}_test.rb" }
3
- watch(%r|^test/test_helper\.rb|) { "test" }
4
- watch(%r|^test/test_helper_dummy\.rb|) { "test" }
5
- watch(%r|^test/cases/(.*)_test\.rb|)
6
- watch(%r|^test/dummy_tests/(.*)_test\.rb|)
7
- end
@@ -1,52 +0,0 @@
1
- module MiniTestSpecRails
2
- module DSL
3
-
4
- RAILS_TEST_CASES = []
5
-
6
- def self.included(klass)
7
- klass.extend ClassMethods
8
- end
9
-
10
- module ClassMethods
11
-
12
- def before(type = nil, &block)
13
- setup { self.instance_eval(&block) }
14
- end
15
-
16
- def after(type = nil, &block)
17
- teardown { self.instance_eval(&block) }
18
- end
19
-
20
- def rails_test_cases
21
- RAILS_TEST_CASES
22
- end
23
-
24
- def register_rails_test_case(test_case)
25
- return if RAILS_TEST_CASES.include?(test_case)
26
- RAILS_TEST_CASES.unshift(test_case)
27
- end
28
-
29
- def describing_class
30
- ancestors.detect { |a| Class === a && rails_test_cases.include?(a.superclass) }
31
- end
32
-
33
- def described_class
34
- begin
35
- describing_class.name.gsub(/Test$/, '').constantize
36
- rescue NameError
37
- nil
38
- end
39
- end
40
-
41
- end
42
-
43
- def describing_class
44
- self.class.describing_class
45
- end
46
-
47
- def described_class
48
- self.class.described_class
49
- end
50
-
51
- end
52
- end