minitest-spec-rails 4.3.4 → 4.3.5

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/CHANGELOG.md CHANGED
@@ -1,4 +1,9 @@
1
1
 
2
+ ## v4.3.5
3
+
4
+ * Make sure #described_class works in ActiveSupport::TestCase class level.
5
+
6
+
2
7
  ## v4.3.4
3
8
 
4
9
  * Add mini_should support and talk about matchers.
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: /Users/kencollins/Repositories/minitest-spec-rails
3
3
  specs:
4
- minitest-spec-rails (4.3.3)
4
+ minitest-spec-rails (4.3.4)
5
5
  minitest (~> 4.3)
6
6
  rails (>= 3.0)
7
7
 
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: /Users/kencollins/Repositories/minitest-spec-rails
3
3
  specs:
4
- minitest-spec-rails (4.3.3)
4
+ minitest-spec-rails (4.3.4)
5
5
  minitest (~> 4.3)
6
6
  rails (>= 3.0)
7
7
 
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: /Users/kencollins/Repositories/minitest-spec-rails
3
3
  specs:
4
- minitest-spec-rails (4.3.3)
4
+ minitest-spec-rails (4.3.5)
5
5
  minitest (~> 4.3)
6
6
  rails (>= 3.0)
7
7
 
@@ -43,7 +43,7 @@ GIT
43
43
  PATH
44
44
  remote: /Users/kencollins/Repositories/minitest-spec-rails
45
45
  specs:
46
- minitest-spec-rails (4.3.3)
46
+ minitest-spec-rails (4.3.5)
47
47
  minitest (~> 4.3)
48
48
  rails (>= 3.0)
49
49
 
@@ -8,6 +8,7 @@ module MiniTestSpecRails
8
8
  register_spec_type(self) { |desc| Class === desc && desc < ActionController::Metal }
9
9
  register_spec_type(/Controller( ?Test)?\z/i, self)
10
10
  register_spec_type(self) { |desc| Class === desc && desc < self }
11
+ register_rails_test_case self
11
12
  end
12
13
 
13
14
  private
@@ -7,6 +7,7 @@ module MiniTestSpecRails
7
7
  included do
8
8
  register_spec_type(/(Acceptance|Integration) ?Test\z/i, self)
9
9
  register_spec_type(self) { |desc| Class === desc && desc < self }
10
+ register_rails_test_case self
10
11
  end
11
12
 
12
13
  end
@@ -8,6 +8,7 @@ module MiniTestSpecRails
8
8
  register_spec_type(self) { |desc| Class === desc && desc < ActionMailer::Base }
9
9
  register_spec_type(/Mailer( ?Test)?\z/i, self)
10
10
  register_spec_type(self) { |desc| Class === desc && desc < self }
11
+ register_rails_test_case self
11
12
  before { setup_minitest_spec_rails_mailer_class }
12
13
  end
13
14
 
@@ -8,6 +8,7 @@ module MiniTestSpecRails
8
8
  class_attribute :_helper_class
9
9
  register_spec_type(/(Helper|View)( ?Test)?\z/i, self)
10
10
  register_spec_type(self) { |desc| Class === desc && desc < self }
11
+ register_rails_test_case self
11
12
  before { setup_minitest_spec_rails_helper_class }
12
13
  end
13
14
 
@@ -1,15 +1,21 @@
1
- ActiveSupport::TestCase.instance_eval do
1
+ module MiniTestSpecRails
2
+ module Init
3
+ module ActiveSupportBehavior
2
4
 
3
- class << self
4
- remove_method :describe
5
- end
5
+ extend ActiveSupport::Concern
6
6
 
7
- register_spec_type(self) do |desc|
8
- Class === desc && desc < ActiveRecord::Base
9
- end
7
+ included do
8
+ singleton_class.send :remove_method, :describe
9
+ register_spec_type(self) { |desc| Class === desc && desc < ActiveRecord::Base }
10
+ register_rails_test_case self
11
+ end
10
12
 
13
+ end
14
+ end
11
15
  end
12
16
 
17
+ ActiveSupport::TestCase.send :include, MiniTestSpecRails::Init::ActiveSupportBehavior
18
+
13
19
  # The AbstractController::Helpers#default_helper_module! blows up using
14
20
  # ActiveSupport's modified LoadError class under Ruby 1.8 because describe
15
21
  # blocks with spaces for their names have a `module_path` of something like
@@ -1,3 +1,3 @@
1
1
  module MiniTestSpecRails
2
- VERSION = "4.3.4"
2
+ VERSION = "4.3.5"
3
3
  end
@@ -29,8 +29,19 @@ module Test
29
29
 
30
30
  # MiniTestSpecRails Additions
31
31
 
32
+ RAILS_TEST_CASES = []
33
+
34
+ def self.rails_test_cases
35
+ RAILS_TEST_CASES
36
+ end
37
+
38
+ def self.register_rails_test_case(test_case)
39
+ return if RAILS_TEST_CASES.include?(test_case)
40
+ RAILS_TEST_CASES.unshift(test_case)
41
+ end
42
+
32
43
  def self.describing_class
33
- ancestors.detect { |a| Class === a && a.superclass == spec_type(self) }
44
+ ancestors.detect { |a| Class === a && rails_test_cases.include?(a.superclass) }
34
45
  end
35
46
 
36
47
  def describing_class
@@ -46,22 +46,22 @@ end
46
46
 
47
47
  class ApplicationControllerTest < ActionController::TestCase
48
48
  include ApplicationControllerTests
49
- it 'reflects' do
50
- self.class.spec_type(self.class).must_equal ActionController::TestCase
49
+ it 'reflects' do
51
50
  describing_class.must_equal ApplicationControllerTest
52
51
  described_class.must_equal ApplicationController
52
+ self.class.described_class.must_equal ApplicationController
53
53
  end
54
54
  describe 'level 1' do
55
55
  it 'reflects' do
56
- self.class.spec_type(self.class).must_equal ActionController::TestCase
57
56
  describing_class.must_equal ApplicationControllerTest
58
57
  described_class.must_equal ApplicationController
58
+ self.class.described_class.must_equal ApplicationController
59
59
  end
60
60
  describe 'level 2' do
61
61
  it 'reflects' do
62
- self.class.spec_type(self.class).must_equal ActionController::TestCase
63
62
  describing_class.must_equal ApplicationControllerTest
64
63
  described_class.must_equal ApplicationController
64
+ self.class.described_class.must_equal ApplicationController
65
65
  end
66
66
  end
67
67
  end
@@ -69,19 +69,23 @@ end
69
69
 
70
70
  describe ApplicationController do
71
71
  include ApplicationControllerTests
72
+ it 'class reflects' do
73
+ described_class.must_equal ApplicationController
74
+ self.class.described_class.must_equal ApplicationController
75
+ end
72
76
  it 'reflects' do
73
- self.class.spec_type(self.class).must_equal ActionController::TestCase
74
77
  described_class.must_equal ApplicationController
78
+ self.class.described_class.must_equal ApplicationController
75
79
  end
76
80
  describe 'level 1' do
77
81
  it 'reflects' do
78
- self.class.spec_type(self.class).must_equal ActionController::TestCase
79
82
  described_class.must_equal ApplicationController
83
+ self.class.described_class.must_equal ApplicationController
80
84
  end
81
85
  describe 'level 2' do
82
86
  it 'reflects' do
83
- self.class.spec_type(self.class).must_equal ActionController::TestCase
84
87
  described_class.must_equal ApplicationController
88
+ self.class.described_class.must_equal ApplicationController
85
89
  end
86
90
  end
87
91
  end
@@ -49,21 +49,21 @@ end
49
49
  class UserMailerTest < ActionMailer::TestCase
50
50
  include UserMailerTests
51
51
  it 'reflects' do
52
- self.class.spec_type(self.class).must_equal ActionMailer::TestCase
53
52
  describing_class.must_equal UserMailerTest
54
53
  described_class.must_equal UserMailer
54
+ self.class.described_class.must_equal UserMailer
55
55
  end
56
56
  describe 'level 1' do
57
57
  it 'reflects' do
58
- self.class.spec_type(self.class).must_equal ActionMailer::TestCase
59
58
  describing_class.must_equal UserMailerTest
60
59
  described_class.must_equal UserMailer
60
+ self.class.described_class.must_equal UserMailer
61
61
  end
62
62
  describe 'level 2' do
63
63
  it 'reflects' do
64
- self.class.spec_type(self.class).must_equal ActionMailer::TestCase
65
64
  describing_class.must_equal UserMailerTest
66
65
  described_class.must_equal UserMailer
66
+ self.class.described_class.must_equal UserMailer
67
67
  end
68
68
  end
69
69
  end
@@ -72,18 +72,18 @@ end
72
72
  describe UserMailer do
73
73
  include UserMailerTests
74
74
  it 'reflects' do
75
- self.class.spec_type(self.class).must_equal ActionMailer::TestCase
76
75
  described_class.must_equal UserMailer
76
+ self.class.described_class.must_equal UserMailer
77
77
  end
78
78
  describe 'level 1' do
79
79
  it 'reflects' do
80
- self.class.spec_type(self.class).must_equal ActionMailer::TestCase
81
80
  described_class.must_equal UserMailer
81
+ self.class.described_class.must_equal UserMailer
82
82
  end
83
83
  describe 'level 2' do
84
84
  it 'reflects' do
85
- self.class.spec_type(self.class).must_equal ActionMailer::TestCase
86
85
  described_class.must_equal UserMailer
86
+ self.class.described_class.must_equal UserMailer
87
87
  end
88
88
  end
89
89
  end
@@ -29,8 +29,43 @@ end
29
29
 
30
30
  class UserTest < ActiveSupport::TestCase
31
31
  include UserTests
32
+ it 'reflects' do
33
+ describing_class.must_equal UserTest
34
+ described_class.must_equal User
35
+ self.class.described_class.must_equal User
36
+ end
37
+ describe 'level 1' do
38
+ it 'reflects' do
39
+ describing_class.must_equal UserTest
40
+ described_class.must_equal User
41
+ self.class.described_class.must_equal User
42
+ end
43
+ describe 'level 2' do
44
+ it 'reflects' do
45
+ describing_class.must_equal UserTest
46
+ described_class.must_equal User
47
+ self.class.described_class.must_equal User
48
+ end
49
+ end
50
+ end
32
51
  end
33
52
 
34
53
  describe User do
35
54
  include UserTests
55
+ it 'reflects' do
56
+ described_class.must_equal User
57
+ self.class.described_class.must_equal User
58
+ end
59
+ describe 'level 1' do
60
+ it 'reflects' do
61
+ described_class.must_equal User
62
+ self.class.described_class.must_equal User
63
+ end
64
+ describe 'level 2' do
65
+ it 'reflects' do
66
+ described_class.must_equal User
67
+ self.class.described_class.must_equal User
68
+ end
69
+ end
70
+ end
36
71
  end
@@ -39,21 +39,21 @@ end
39
39
  class UsersHelperTest < ActionView::TestCase
40
40
  include UsersHelperTests
41
41
  it 'reflects' do
42
- self.class.spec_type(self.class).must_equal ActionView::TestCase
43
42
  describing_class.must_equal UsersHelperTest
44
43
  described_class.must_equal UsersHelper
44
+ self.class.described_class.must_equal UsersHelper
45
45
  end
46
46
  describe 'level 1' do
47
47
  it 'reflects' do
48
- self.class.spec_type(self.class).must_equal ActionView::TestCase
49
48
  describing_class.must_equal UsersHelperTest
50
49
  described_class.must_equal UsersHelper
50
+ self.class.described_class.must_equal UsersHelper
51
51
  end
52
52
  describe 'level 2' do
53
53
  it 'reflects' do
54
- self.class.spec_type(self.class).must_equal ActionView::TestCase
55
54
  describing_class.must_equal UsersHelperTest
56
55
  described_class.must_equal UsersHelper
56
+ self.class.described_class.must_equal UsersHelper
57
57
  end
58
58
  end
59
59
  end
@@ -62,18 +62,18 @@ end
62
62
  describe UsersHelper do
63
63
  include UsersHelperTests
64
64
  it 'reflects' do
65
- self.class.spec_type(self.class).must_equal ActionView::TestCase
66
65
  described_class.must_equal UsersHelper
66
+ self.class.described_class.must_equal UsersHelper
67
67
  end
68
68
  describe 'level 1' do
69
69
  it 'reflects' do
70
- self.class.spec_type(self.class).must_equal ActionView::TestCase
71
70
  described_class.must_equal UsersHelper
71
+ self.class.described_class.must_equal UsersHelper
72
72
  end
73
73
  describe 'level 2' do
74
74
  it 'reflects' do
75
- self.class.spec_type(self.class).must_equal ActionView::TestCase
76
75
  described_class.must_equal UsersHelper
76
+ self.class.described_class.must_equal UsersHelper
77
77
  end
78
78
  end
79
79
  end
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: 4.3.4
4
+ version: 4.3.5
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-01-19 00:00:00.000000000 Z
12
+ date: 2013-01-20 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: minitest
@@ -188,7 +188,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
188
188
  version: '0'
189
189
  segments:
190
190
  - 0
191
- hash: 1500693276380796618
191
+ hash: -3446977262078357422
192
192
  required_rubygems_version: !ruby/object:Gem::Requirement
193
193
  none: false
194
194
  requirements:
@@ -197,7 +197,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
197
197
  version: '0'
198
198
  segments:
199
199
  - 0
200
- hash: 1500693276380796618
200
+ hash: -3446977262078357422
201
201
  requirements: []
202
202
  rubyforge_project:
203
203
  rubygems_version: 1.8.24