shoulda-matchers 2.8.0 → 3.0.0.rc1

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.
Files changed (171) hide show
  1. checksums.yaml +4 -4
  2. data/.hound_config/ruby.yml +7 -0
  3. data/.travis.yml +11 -54
  4. data/Appraisals +45 -100
  5. data/CONTRIBUTING.md +51 -7
  6. data/Gemfile +7 -19
  7. data/Gemfile.lock +60 -134
  8. data/Guardfile +5 -0
  9. data/NEWS.md +203 -0
  10. data/README.md +95 -50
  11. data/Rakefile +1 -0
  12. data/doc_config/yard/templates/default/layout/html/setup.rb +1 -1
  13. data/gemfiles/4.0.0.gemfile +10 -7
  14. data/gemfiles/4.0.0.gemfile.lock +103 -79
  15. data/gemfiles/4.0.1.gemfile +10 -7
  16. data/gemfiles/4.0.1.gemfile.lock +109 -83
  17. data/gemfiles/4.1.gemfile +10 -7
  18. data/gemfiles/4.1.gemfile.lock +109 -85
  19. data/gemfiles/4.2.gemfile +10 -9
  20. data/gemfiles/4.2.gemfile.lock +86 -78
  21. data/lib/shoulda/matchers.rb +13 -18
  22. data/lib/shoulda/matchers/action_controller.rb +4 -1
  23. data/lib/shoulda/matchers/action_controller/flash_store.rb +95 -0
  24. data/lib/shoulda/matchers/action_controller/{strong_parameters_matcher.rb → permit_matcher.rb} +147 -30
  25. data/lib/shoulda/matchers/action_controller/redirect_to_matcher.rb +1 -1
  26. data/lib/shoulda/matchers/action_controller/render_template_matcher.rb +1 -1
  27. data/lib/shoulda/matchers/action_controller/render_with_layout_matcher.rb +1 -1
  28. data/lib/shoulda/matchers/action_controller/rescue_from_matcher.rb +1 -1
  29. data/lib/shoulda/matchers/action_controller/route_matcher.rb +5 -1
  30. data/lib/shoulda/matchers/action_controller/route_params.rb +15 -6
  31. data/lib/shoulda/matchers/action_controller/session_store.rb +34 -0
  32. data/lib/shoulda/matchers/action_controller/set_flash_matcher.rb +30 -136
  33. data/lib/shoulda/matchers/action_controller/set_session_matcher.rb +28 -109
  34. data/lib/shoulda/matchers/action_controller/set_session_or_flash_matcher.rb +103 -0
  35. data/lib/shoulda/matchers/active_model/allow_mass_assignment_of_matcher.rb +1 -12
  36. data/lib/shoulda/matchers/active_model/allow_value_matcher.rb +79 -10
  37. data/lib/shoulda/matchers/active_model/numericality_matchers/numeric_type_matcher.rb +10 -0
  38. data/lib/shoulda/matchers/active_model/validate_absence_of_matcher.rb +21 -0
  39. data/lib/shoulda/matchers/active_model/validate_acceptance_of_matcher.rb +24 -0
  40. data/lib/shoulda/matchers/active_model/validate_confirmation_of_matcher.rb +22 -5
  41. data/lib/shoulda/matchers/active_model/validate_exclusion_of_matcher.rb +29 -10
  42. data/lib/shoulda/matchers/active_model/validate_inclusion_of_matcher.rb +27 -10
  43. data/lib/shoulda/matchers/active_model/validate_length_of_matcher.rb +27 -12
  44. data/lib/shoulda/matchers/active_model/validate_numericality_of_matcher.rb +56 -20
  45. data/lib/shoulda/matchers/active_model/validate_presence_of_matcher.rb +3 -11
  46. data/lib/shoulda/matchers/active_model/validation_message_finder.rb +65 -0
  47. data/lib/shoulda/matchers/active_record/association_matcher.rb +40 -6
  48. data/lib/shoulda/matchers/active_record/association_matchers/join_table_matcher.rb +21 -7
  49. data/lib/shoulda/matchers/active_record/association_matchers/model_reflection.rb +11 -40
  50. data/lib/shoulda/matchers/active_record/association_matchers/model_reflector.rb +1 -1
  51. data/lib/shoulda/matchers/active_record/define_enum_for_matcher.rb +2 -6
  52. data/lib/shoulda/matchers/active_record/validate_uniqueness_of_matcher.rb +137 -22
  53. data/lib/shoulda/matchers/configuration.rb +20 -0
  54. data/lib/shoulda/matchers/doublespeak.rb +11 -1
  55. data/lib/shoulda/matchers/doublespeak/double.rb +29 -11
  56. data/lib/shoulda/matchers/doublespeak/double_collection.rb +4 -3
  57. data/lib/shoulda/matchers/doublespeak/method_call.rb +35 -0
  58. data/lib/shoulda/matchers/doublespeak/object_double.rb +7 -2
  59. data/lib/shoulda/matchers/doublespeak/proxy_implementation.rb +4 -3
  60. data/lib/shoulda/matchers/doublespeak/stub_implementation.rb +3 -3
  61. data/lib/shoulda/matchers/doublespeak/world.rb +21 -1
  62. data/lib/shoulda/matchers/integrations.rb +43 -0
  63. data/lib/shoulda/matchers/integrations/configuration.rb +68 -0
  64. data/lib/shoulda/matchers/integrations/configuration_error.rb +9 -0
  65. data/lib/shoulda/matchers/integrations/inclusion.rb +20 -0
  66. data/lib/shoulda/matchers/integrations/libraries.rb +15 -0
  67. data/lib/shoulda/matchers/integrations/libraries/action_controller.rb +31 -0
  68. data/lib/shoulda/matchers/integrations/libraries/active_model.rb +26 -0
  69. data/lib/shoulda/matchers/integrations/libraries/active_record.rb +26 -0
  70. data/lib/shoulda/matchers/integrations/libraries/missing_library.rb +19 -0
  71. data/lib/shoulda/matchers/integrations/libraries/rails.rb +30 -0
  72. data/lib/shoulda/matchers/integrations/rails.rb +12 -0
  73. data/lib/shoulda/matchers/integrations/registry.rb +28 -0
  74. data/lib/shoulda/matchers/integrations/test_frameworks.rb +16 -0
  75. data/lib/shoulda/matchers/integrations/test_frameworks/active_support_test_case.rb +37 -0
  76. data/lib/shoulda/matchers/integrations/test_frameworks/minitest_4.rb +36 -0
  77. data/lib/shoulda/matchers/integrations/test_frameworks/minitest_5.rb +37 -0
  78. data/lib/shoulda/matchers/integrations/test_frameworks/missing_test_framework.rb +40 -0
  79. data/lib/shoulda/matchers/integrations/test_frameworks/rspec.rb +29 -0
  80. data/lib/shoulda/matchers/integrations/test_frameworks/test_unit.rb +36 -0
  81. data/lib/shoulda/matchers/rails_shim.rb +0 -40
  82. data/lib/shoulda/matchers/version.rb +1 -1
  83. data/script/SUPPORTED_VERSIONS +1 -1
  84. data/script/update_gems_in_all_appraisals +14 -0
  85. data/shoulda-matchers.gemspec +2 -2
  86. data/spec/acceptance/active_model_integration_spec.rb +4 -1
  87. data/spec/acceptance/independent_matchers_spec.rb +6 -6
  88. data/spec/acceptance/multiple_libraries_integration_spec.rb +52 -0
  89. data/spec/acceptance/rails_integration_spec.rb +15 -5
  90. data/spec/acceptance_spec_helper.rb +8 -0
  91. data/spec/doublespeak_spec_helper.rb +14 -0
  92. data/spec/support/acceptance/adds_shoulda_matchers_to_project.rb +110 -0
  93. data/spec/support/acceptance/helpers.rb +2 -0
  94. data/spec/support/acceptance/helpers/base_helpers.rb +6 -1
  95. data/spec/support/acceptance/helpers/command_helpers.rb +6 -2
  96. data/spec/support/acceptance/helpers/minitest_helpers.rb +0 -8
  97. data/spec/support/acceptance/helpers/n_unit_helpers.rb +25 -0
  98. data/spec/support/acceptance/helpers/rspec_helpers.rb +2 -0
  99. data/spec/support/acceptance/helpers/step_helpers.rb +13 -19
  100. data/spec/support/acceptance/matchers/have_output.rb +1 -1
  101. data/spec/support/tests/bundle.rb +1 -1
  102. data/spec/support/tests/command_runner.rb +25 -13
  103. data/spec/support/tests/current_bundle.rb +47 -0
  104. data/spec/support/tests/database.rb +28 -0
  105. data/spec/support/tests/database_adapters/postgresql.rb +25 -0
  106. data/spec/support/tests/database_adapters/sqlite3.rb +26 -0
  107. data/spec/support/tests/database_configuration.rb +33 -0
  108. data/spec/support/tests/database_configuration_registry.rb +28 -0
  109. data/spec/support/tests/filesystem.rb +25 -2
  110. data/spec/support/unit/helpers/active_record_versions.rb +12 -0
  111. data/spec/support/unit/helpers/class_builder.rb +6 -2
  112. data/spec/support/unit/helpers/column_type_helpers.rb +26 -0
  113. data/spec/support/unit/helpers/controller_builder.rb +0 -28
  114. data/spec/support/unit/helpers/database_helpers.rb +18 -0
  115. data/spec/support/unit/helpers/model_builder.rb +38 -6
  116. data/spec/support/unit/helpers/rails_versions.rb +2 -2
  117. data/spec/support/unit/matchers/fail_with_message_including_matcher.rb +9 -8
  118. data/spec/support/unit/matchers/fail_with_message_matcher.rb +1 -1
  119. data/spec/support/unit/rails_application.rb +29 -13
  120. data/spec/support/unit/record_validating_confirmation_builder.rb +1 -2
  121. data/spec/support/unit/shared_examples/set_session_or_flash.rb +355 -0
  122. data/spec/unit/shoulda/matchers/action_controller/permit_matcher_spec.rb +433 -0
  123. data/spec/unit/shoulda/matchers/action_controller/render_with_layout_matcher_spec.rb +1 -5
  124. data/spec/unit/shoulda/matchers/action_controller/route_matcher_spec.rb +37 -0
  125. data/spec/unit/shoulda/matchers/action_controller/set_flash_matcher_spec.rb +23 -147
  126. data/spec/unit/shoulda/matchers/action_controller/set_session_matcher_spec.rb +8 -285
  127. data/spec/unit/shoulda/matchers/action_controller/set_session_or_flash_matcher_spec.rb +562 -0
  128. data/spec/unit/shoulda/matchers/active_model/allow_value_matcher_spec.rb +81 -14
  129. data/spec/unit/shoulda/matchers/active_model/disallow_value_matcher_spec.rb +16 -8
  130. data/spec/unit/shoulda/matchers/active_model/numericality_matchers/comparison_matcher_spec.rb +101 -9
  131. data/spec/unit/shoulda/matchers/active_model/numericality_matchers/even_number_matcher_spec.rb +39 -1
  132. data/spec/unit/shoulda/matchers/active_model/numericality_matchers/odd_number_matcher_spec.rb +39 -1
  133. data/spec/unit/shoulda/matchers/active_model/numericality_matchers/only_integer_matcher_spec.rb +39 -0
  134. data/spec/unit/shoulda/matchers/active_model/validate_exclusion_of_matcher_spec.rb +0 -17
  135. data/spec/unit/shoulda/matchers/active_model/validate_inclusion_of_matcher_spec.rb +0 -17
  136. data/spec/unit/shoulda/matchers/active_model/validate_length_of_matcher_spec.rb +0 -17
  137. data/spec/unit/shoulda/matchers/active_model/validate_numericality_of_matcher_spec.rb +838 -271
  138. data/spec/unit/shoulda/matchers/active_model/validate_presence_of_matcher_spec.rb +0 -19
  139. data/spec/unit/shoulda/matchers/active_record/association_matcher_spec.rb +93 -0
  140. data/spec/unit/shoulda/matchers/active_record/association_matchers/model_reflection_spec.rb +3 -3
  141. data/spec/unit/shoulda/matchers/active_record/define_enum_for_matcher_spec.rb +25 -0
  142. data/spec/unit/shoulda/matchers/active_record/validate_uniqueness_of_matcher_spec.rb +905 -0
  143. data/spec/unit/shoulda/matchers/doublespeak/double_collection_spec.rb +17 -11
  144. data/spec/unit/shoulda/matchers/doublespeak/double_implementation_registry_spec.rb +1 -1
  145. data/spec/unit/shoulda/matchers/doublespeak/double_spec.rb +144 -43
  146. data/spec/unit/shoulda/matchers/doublespeak/object_double_spec.rb +1 -1
  147. data/spec/unit/shoulda/matchers/doublespeak/proxy_implementation_spec.rb +36 -11
  148. data/spec/unit/shoulda/matchers/doublespeak/stub_implementation_spec.rb +29 -16
  149. data/spec/unit/shoulda/matchers/doublespeak/world_spec.rb +8 -5
  150. data/spec/unit/shoulda/matchers/doublespeak_spec.rb +1 -1
  151. data/spec/unit_spec_helper.rb +15 -14
  152. data/spec/warnings_spy.rb +1 -1
  153. metadata +68 -29
  154. data/docs.watchr +0 -5
  155. data/gemfiles/3.0.gemfile +0 -26
  156. data/gemfiles/3.0.gemfile.lock +0 -173
  157. data/gemfiles/3.1.gemfile +0 -32
  158. data/gemfiles/3.1.gemfile.lock +0 -212
  159. data/gemfiles/3.1_1.9.2.gemfile +0 -32
  160. data/gemfiles/3.1_1.9.2.gemfile.lock +0 -212
  161. data/gemfiles/3.2.gemfile +0 -33
  162. data/gemfiles/3.2.gemfile.lock +0 -212
  163. data/gemfiles/3.2_1.9.2.gemfile +0 -31
  164. data/gemfiles/3.2_1.9.2.gemfile.lock +0 -207
  165. data/lib/shoulda/matchers/assertion_error.rb +0 -27
  166. data/lib/shoulda/matchers/doublespeak/structs.rb +0 -10
  167. data/lib/shoulda/matchers/integrations/nunit_test_case_detection.rb +0 -39
  168. data/lib/shoulda/matchers/integrations/rspec.rb +0 -19
  169. data/lib/shoulda/matchers/integrations/test_unit.rb +0 -34
  170. data/spec/unit/shoulda/matchers/action_controller/strong_parameters_matcher_spec.rb +0 -331
  171. data/spec/unit/shoulda/matchers/active_model/validate_uniqueness_of_matcher_spec.rb +0 -564
@@ -1,4 +1,4 @@
1
- require 'unit_spec_helper'
1
+ require 'doublespeak_spec_helper'
2
2
 
3
3
  module Shoulda::Matchers::Doublespeak
4
4
  describe StubImplementation do
@@ -6,18 +6,20 @@ module Shoulda::Matchers::Doublespeak
6
6
  it 'calls #record_call on the double' do
7
7
  implementation = described_class.new
8
8
  double = build_double
9
+ call = build_call(double: double)
9
10
 
10
- double.expects(:record_call).with(:args, :block)
11
+ allow(double).to receive(:record_call).with(call)
11
12
 
12
- implementation.call(double, :object, :args, :block)
13
+ implementation.call(call)
13
14
  end
14
15
 
15
16
  context 'if no explicit implementation was set' do
16
17
  it 'returns nil' do
17
18
  implementation = described_class.new
18
19
  double = build_double
20
+ call = build_call(double: double)
19
21
 
20
- return_value = implementation.call(double, :object, :args, :block)
22
+ return_value = implementation.call(call)
21
23
 
22
24
  expect(return_value).to eq nil
23
25
  end
@@ -28,29 +30,33 @@ module Shoulda::Matchers::Doublespeak
28
30
  implementation = described_class.new
29
31
  implementation.returns(42)
30
32
  double = build_double
33
+ call = build_call(double: double)
31
34
 
32
- return_value = implementation.call(double, :object, :args, :block)
35
+ return_value = implementation.call(call)
33
36
 
34
37
  expect(return_value).to eq 42
35
38
  end
36
39
  end
37
40
 
38
41
  context 'if the implementation was set as a block' do
39
- it 'calls the block with the object and args/block passed to the method' do
42
+ it 'calls the block with the MethodCall object the implementation was called with' do
40
43
  double = build_double
41
44
  expected_object, expected_args, expected_block = :object, :args, :block
45
+ call = build_call(
46
+ double: double,
47
+ object: expected_object,
48
+ args: expected_args,
49
+ block: expected_block
50
+ )
42
51
  actual_object, actual_args, actual_block = []
43
52
  implementation = described_class.new
44
- implementation.returns do |object, args, block|
45
- actual_object, actual_args, actual_block = object, args, block
53
+ implementation.returns do |actual_call|
54
+ actual_object = actual_call.object
55
+ actual_args = actual_call.args
56
+ actual_block = actual_call.block
46
57
  end
47
58
 
48
- implementation.call(
49
- double,
50
- expected_object,
51
- expected_args,
52
- expected_block
53
- )
59
+ implementation.call(call)
54
60
 
55
61
  expect(actual_object).to eq expected_object
56
62
  expect(actual_args).to eq expected_args
@@ -61,8 +67,9 @@ module Shoulda::Matchers::Doublespeak
61
67
  implementation = described_class.new
62
68
  implementation.returns { 42 }
63
69
  double = build_double
70
+ call = build_call(double: double)
64
71
 
65
- return_value = implementation.call(double, :object, :args, :block)
72
+ return_value = implementation.call(call)
66
73
 
67
74
  expect(return_value).to eq 42
68
75
  end
@@ -73,8 +80,9 @@ module Shoulda::Matchers::Doublespeak
73
80
  implementation = described_class.new
74
81
  implementation.returns(:something_else) { 42 }
75
82
  double = build_double
83
+ call = build_call(double: double)
76
84
 
77
- return_value = implementation.call(double, :object, :args, :block)
85
+ return_value = implementation.call(call)
78
86
 
79
87
  expect(return_value).to eq 42
80
88
  end
@@ -84,5 +92,10 @@ module Shoulda::Matchers::Doublespeak
84
92
  def build_double
85
93
  double('double', record_call: nil)
86
94
  end
95
+
96
+ def build_call(options = {})
97
+ defaults = { double: build_double }
98
+ double('call', defaults.merge(options))
99
+ end
87
100
  end
88
101
  end
@@ -1,4 +1,4 @@
1
- require 'unit_spec_helper'
1
+ require 'doublespeak_spec_helper'
2
2
 
3
3
  module Shoulda::Matchers::Doublespeak
4
4
  describe World do
@@ -10,16 +10,19 @@ module Shoulda::Matchers::Doublespeak
10
10
  world.double_collection_for(:klass)
11
11
  world.double_collection_for(:klass)
12
12
 
13
- expect(DoubleCollection).to have_received(:new).with(:klass).once
13
+ expect(DoubleCollection).
14
+ to have_received(:new).
15
+ with(world, :klass).
16
+ once
14
17
  end
15
18
 
16
19
  it 'returns the created DoubleCollection' do
20
+ world = described_class.new
17
21
  double_collection = build_double_collection
18
22
  allow(DoubleCollection).
19
23
  to receive(:new).
20
- with(:klass).
24
+ with(world, :klass).
21
25
  and_return(double_collection)
22
- world = described_class.new
23
26
 
24
27
  expect(world.double_collection_for(:klass)).to be double_collection
25
28
  end
@@ -40,7 +43,7 @@ module Shoulda::Matchers::Doublespeak
40
43
  double_collections.zip(klasses).each do |double_collection, klass|
41
44
  allow(DoubleCollection).
42
45
  to receive(:new).
43
- with(klass).
46
+ with(world, klass).
44
47
  and_return(double_collection)
45
48
  world.double_collection_for(klass)
46
49
  end
@@ -1,4 +1,4 @@
1
- require 'unit_spec_helper'
1
+ require 'doublespeak_spec_helper'
2
2
 
3
3
  module Shoulda::Matchers
4
4
  describe Doublespeak do
@@ -1,24 +1,15 @@
1
- require File.expand_path('../support/unit/rails_application', __FILE__)
1
+ require_relative 'support/tests/current_bundle'
2
2
 
3
- def monkey_patch_minitest_to_do_nothing
4
- # Rails 3.1's test_help file requires Turn, which loads Minitest in autorun
5
- # mode. This means that Minitest tests will run after these RSpec tests are
6
- # finished running. This will break on CI since we pass --color to the `rspec`
7
- # command.
3
+ Tests::CurrentBundle.instance.assert_appraisal!
8
4
 
9
- if defined?(MiniTest)
10
- MiniTest::Unit.class_eval do
11
- def run(*); end
12
- end
13
- end
14
- end
5
+ #---
6
+
7
+ require File.expand_path('../support/unit/rails_application', __FILE__)
15
8
 
16
9
  $test_app = UnitTests::RailsApplication.new
17
10
  $test_app.create
18
11
  $test_app.load
19
12
 
20
- monkey_patch_minitest_to_do_nothing
21
-
22
13
  ENV['BUNDLE_GEMFILE'] ||= app.gemfile_path
23
14
  ENV['RAILS_ENV'] = 'test'
24
15
 
@@ -60,9 +51,19 @@ RSpec.configure do |config|
60
51
  UnitTests::RailsVersions.configure_example_group(config)
61
52
  UnitTests::ActiveRecordVersions.configure_example_group(config)
62
53
  UnitTests::ActiveModelVersions.configure_example_group(config)
54
+ UnitTests::DatabaseHelpers.configure_example_group(config)
55
+ UnitTests::ColumnTypeHelpers.configure_example_group(config)
63
56
 
64
57
  config.include UnitTests::Matchers
65
58
  end
66
59
 
67
60
  ActiveSupport::Deprecation.behavior = :stderr
61
+
62
+ Shoulda::Matchers.configure do |config|
63
+ config.integrate do |with|
64
+ with.test_framework :rspec
65
+ with.library :rails
66
+ end
67
+ end
68
+
68
69
  $VERBOSE = true
@@ -41,7 +41,7 @@ class WarningsSpy
41
41
  reader.read
42
42
  partitioner.partition
43
43
  reporter.report
44
- #fail_build_if_there_are_any_warnings
44
+ fail_build_if_there_are_any_warnings
45
45
  end
46
46
 
47
47
  def fail_build_if_there_are_any_warnings
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shoulda-matchers
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.8.0
4
+ version: 3.0.0.rc1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tammer Saleh
@@ -14,7 +14,7 @@ authors:
14
14
  autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
- date: 2015-01-30 00:00:00.000000000 Z
17
+ date: 2015-06-01 00:00:00.000000000 Z
18
18
  dependencies:
19
19
  - !ruby/object:Gem::Dependency
20
20
  name: activesupport
@@ -22,14 +22,14 @@ dependencies:
22
22
  requirements:
23
23
  - - ">="
24
24
  - !ruby/object:Gem::Version
25
- version: 3.0.0
25
+ version: 4.0.0
26
26
  type: :runtime
27
27
  prerelease: false
28
28
  version_requirements: !ruby/object:Gem::Requirement
29
29
  requirements:
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.0.0
32
+ version: 4.0.0
33
33
  description: Making tests easy on the fingers and eyes
34
34
  email: support@thoughtbot.com
35
35
  executables: []
@@ -45,6 +45,7 @@ files:
45
45
  - CONTRIBUTING.md
46
46
  - Gemfile
47
47
  - Gemfile.lock
48
+ - Guardfile
48
49
  - MIT-LICENSE
49
50
  - NEWS.md
50
51
  - README.md
@@ -72,17 +73,6 @@ files:
72
73
  - doc_config/yard/templates/default/layout/html/setup.rb
73
74
  - doc_config/yard/templates/default/method_details/html/source.erb
74
75
  - doc_config/yard/templates/default/module/html/box_info.erb
75
- - docs.watchr
76
- - gemfiles/3.0.gemfile
77
- - gemfiles/3.0.gemfile.lock
78
- - gemfiles/3.1.gemfile
79
- - gemfiles/3.1.gemfile.lock
80
- - gemfiles/3.1_1.9.2.gemfile
81
- - gemfiles/3.1_1.9.2.gemfile.lock
82
- - gemfiles/3.2.gemfile
83
- - gemfiles/3.2.gemfile.lock
84
- - gemfiles/3.2_1.9.2.gemfile
85
- - gemfiles/3.2_1.9.2.gemfile.lock
86
76
  - gemfiles/4.0.0.gemfile
87
77
  - gemfiles/4.0.0.gemfile.lock
88
78
  - gemfiles/4.0.1.gemfile
@@ -96,6 +86,8 @@ files:
96
86
  - lib/shoulda/matchers/action_controller.rb
97
87
  - lib/shoulda/matchers/action_controller/callback_matcher.rb
98
88
  - lib/shoulda/matchers/action_controller/filter_param_matcher.rb
89
+ - lib/shoulda/matchers/action_controller/flash_store.rb
90
+ - lib/shoulda/matchers/action_controller/permit_matcher.rb
99
91
  - lib/shoulda/matchers/action_controller/redirect_to_matcher.rb
100
92
  - lib/shoulda/matchers/action_controller/render_template_matcher.rb
101
93
  - lib/shoulda/matchers/action_controller/render_with_layout_matcher.rb
@@ -103,9 +95,10 @@ files:
103
95
  - lib/shoulda/matchers/action_controller/respond_with_matcher.rb
104
96
  - lib/shoulda/matchers/action_controller/route_matcher.rb
105
97
  - lib/shoulda/matchers/action_controller/route_params.rb
98
+ - lib/shoulda/matchers/action_controller/session_store.rb
106
99
  - lib/shoulda/matchers/action_controller/set_flash_matcher.rb
107
100
  - lib/shoulda/matchers/action_controller/set_session_matcher.rb
108
- - lib/shoulda/matchers/action_controller/strong_parameters_matcher.rb
101
+ - lib/shoulda/matchers/action_controller/set_session_or_flash_matcher.rb
109
102
  - lib/shoulda/matchers/active_model.rb
110
103
  - lib/shoulda/matchers/active_model/allow_mass_assignment_of_matcher.rb
111
104
  - lib/shoulda/matchers/active_model/allow_value_matcher.rb
@@ -129,6 +122,7 @@ files:
129
122
  - lib/shoulda/matchers/active_model/validate_numericality_of_matcher.rb
130
123
  - lib/shoulda/matchers/active_model/validate_presence_of_matcher.rb
131
124
  - lib/shoulda/matchers/active_model/validation_matcher.rb
125
+ - lib/shoulda/matchers/active_model/validation_message_finder.rb
132
126
  - lib/shoulda/matchers/active_model/validator.rb
133
127
  - lib/shoulda/matchers/active_model/validator_with_captured_range_error.rb
134
128
  - lib/shoulda/matchers/active_record.rb
@@ -156,14 +150,14 @@ files:
156
150
  - lib/shoulda/matchers/active_record/uniqueness/test_model_creator.rb
157
151
  - lib/shoulda/matchers/active_record/uniqueness/test_models.rb
158
152
  - lib/shoulda/matchers/active_record/validate_uniqueness_of_matcher.rb
159
- - lib/shoulda/matchers/assertion_error.rb
153
+ - lib/shoulda/matchers/configuration.rb
160
154
  - lib/shoulda/matchers/doublespeak.rb
161
155
  - lib/shoulda/matchers/doublespeak/double.rb
162
156
  - lib/shoulda/matchers/doublespeak/double_collection.rb
163
157
  - lib/shoulda/matchers/doublespeak/double_implementation_registry.rb
158
+ - lib/shoulda/matchers/doublespeak/method_call.rb
164
159
  - lib/shoulda/matchers/doublespeak/object_double.rb
165
160
  - lib/shoulda/matchers/doublespeak/proxy_implementation.rb
166
- - lib/shoulda/matchers/doublespeak/structs.rb
167
161
  - lib/shoulda/matchers/doublespeak/stub_implementation.rb
168
162
  - lib/shoulda/matchers/doublespeak/world.rb
169
163
  - lib/shoulda/matchers/error.rb
@@ -171,9 +165,25 @@ files:
171
165
  - lib/shoulda/matchers/independent/delegate_method_matcher.rb
172
166
  - lib/shoulda/matchers/independent/delegate_method_matcher/stubbed_target.rb
173
167
  - lib/shoulda/matchers/independent/delegate_method_matcher/target_not_defined_error.rb
174
- - lib/shoulda/matchers/integrations/nunit_test_case_detection.rb
175
- - lib/shoulda/matchers/integrations/rspec.rb
176
- - lib/shoulda/matchers/integrations/test_unit.rb
168
+ - lib/shoulda/matchers/integrations.rb
169
+ - lib/shoulda/matchers/integrations/configuration.rb
170
+ - lib/shoulda/matchers/integrations/configuration_error.rb
171
+ - lib/shoulda/matchers/integrations/inclusion.rb
172
+ - lib/shoulda/matchers/integrations/libraries.rb
173
+ - lib/shoulda/matchers/integrations/libraries/action_controller.rb
174
+ - lib/shoulda/matchers/integrations/libraries/active_model.rb
175
+ - lib/shoulda/matchers/integrations/libraries/active_record.rb
176
+ - lib/shoulda/matchers/integrations/libraries/missing_library.rb
177
+ - lib/shoulda/matchers/integrations/libraries/rails.rb
178
+ - lib/shoulda/matchers/integrations/rails.rb
179
+ - lib/shoulda/matchers/integrations/registry.rb
180
+ - lib/shoulda/matchers/integrations/test_frameworks.rb
181
+ - lib/shoulda/matchers/integrations/test_frameworks/active_support_test_case.rb
182
+ - lib/shoulda/matchers/integrations/test_frameworks/minitest_4.rb
183
+ - lib/shoulda/matchers/integrations/test_frameworks/minitest_5.rb
184
+ - lib/shoulda/matchers/integrations/test_frameworks/missing_test_framework.rb
185
+ - lib/shoulda/matchers/integrations/test_frameworks/rspec.rb
186
+ - lib/shoulda/matchers/integrations/test_frameworks/test_unit.rb
177
187
  - lib/shoulda/matchers/matcher_context.rb
178
188
  - lib/shoulda/matchers/rails_shim.rb
179
189
  - lib/shoulda/matchers/util.rb
@@ -183,12 +193,16 @@ files:
183
193
  - script/install_gems_in_all_appraisals
184
194
  - script/run_all_tests
185
195
  - script/update_gem_in_all_appraisals
196
+ - script/update_gems_in_all_appraisals
186
197
  - shoulda-matchers.gemspec
187
198
  - spec/acceptance/active_model_integration_spec.rb
188
199
  - spec/acceptance/independent_matchers_spec.rb
200
+ - spec/acceptance/multiple_libraries_integration_spec.rb
189
201
  - spec/acceptance/rails_integration_spec.rb
190
202
  - spec/acceptance_spec_helper.rb
203
+ - spec/doublespeak_spec_helper.rb
191
204
  - spec/report_warnings.rb
205
+ - spec/support/acceptance/adds_shoulda_matchers_to_project.rb
192
206
  - spec/support/acceptance/helpers.rb
193
207
  - spec/support/acceptance/helpers/active_model_helpers.rb
194
208
  - spec/support/acceptance/helpers/array_helpers.rb
@@ -197,6 +211,7 @@ files:
197
211
  - spec/support/acceptance/helpers/file_helpers.rb
198
212
  - spec/support/acceptance/helpers/gem_helpers.rb
199
213
  - spec/support/acceptance/helpers/minitest_helpers.rb
214
+ - spec/support/acceptance/helpers/n_unit_helpers.rb
200
215
  - spec/support/acceptance/helpers/pluralization_helpers.rb
201
216
  - spec/support/acceptance/helpers/rails_version_helpers.rb
202
217
  - spec/support/acceptance/helpers/rspec_helpers.rb
@@ -207,6 +222,12 @@ files:
207
222
  - spec/support/acceptance/matchers/indicate_that_tests_were_run_matcher.rb
208
223
  - spec/support/tests/bundle.rb
209
224
  - spec/support/tests/command_runner.rb
225
+ - spec/support/tests/current_bundle.rb
226
+ - spec/support/tests/database.rb
227
+ - spec/support/tests/database_adapters/postgresql.rb
228
+ - spec/support/tests/database_adapters/sqlite3.rb
229
+ - spec/support/tests/database_configuration.rb
230
+ - spec/support/tests/database_configuration_registry.rb
210
231
  - spec/support/tests/filesystem.rb
211
232
  - spec/support/tests/version.rb
212
233
  - spec/support/unit/capture.rb
@@ -216,8 +237,10 @@ files:
216
237
  - spec/support/unit/helpers/active_resource_builder.rb
217
238
  - spec/support/unit/helpers/allow_value_matcher_helpers.rb
218
239
  - spec/support/unit/helpers/class_builder.rb
240
+ - spec/support/unit/helpers/column_type_helpers.rb
219
241
  - spec/support/unit/helpers/confirmation_matcher_helpers.rb
220
242
  - spec/support/unit/helpers/controller_builder.rb
243
+ - spec/support/unit/helpers/database_helpers.rb
221
244
  - spec/support/unit/helpers/i18n_faker.rb
222
245
  - spec/support/unit/helpers/mailer_builder.rb
223
246
  - spec/support/unit/helpers/model_builder.rb
@@ -233,8 +256,10 @@ files:
233
256
  - spec/support/unit/record_with_different_error_attribute_builder.rb
234
257
  - spec/support/unit/shared_examples/numerical_submatcher.rb
235
258
  - spec/support/unit/shared_examples/numerical_type_submatcher.rb
259
+ - spec/support/unit/shared_examples/set_session_or_flash.rb
236
260
  - spec/unit/shoulda/matchers/action_controller/callback_matcher_spec.rb
237
261
  - spec/unit/shoulda/matchers/action_controller/filter_param_matcher_spec.rb
262
+ - spec/unit/shoulda/matchers/action_controller/permit_matcher_spec.rb
238
263
  - spec/unit/shoulda/matchers/action_controller/redirect_to_matcher_spec.rb
239
264
  - spec/unit/shoulda/matchers/action_controller/render_template_matcher_spec.rb
240
265
  - spec/unit/shoulda/matchers/action_controller/render_with_layout_matcher_spec.rb
@@ -244,7 +269,7 @@ files:
244
269
  - spec/unit/shoulda/matchers/action_controller/route_params_spec.rb
245
270
  - spec/unit/shoulda/matchers/action_controller/set_flash_matcher_spec.rb
246
271
  - spec/unit/shoulda/matchers/action_controller/set_session_matcher_spec.rb
247
- - spec/unit/shoulda/matchers/action_controller/strong_parameters_matcher_spec.rb
272
+ - spec/unit/shoulda/matchers/action_controller/set_session_or_flash_matcher_spec.rb
248
273
  - spec/unit/shoulda/matchers/active_model/allow_mass_assignment_of_matcher_spec.rb
249
274
  - spec/unit/shoulda/matchers/active_model/allow_value_matcher_spec.rb
250
275
  - spec/unit/shoulda/matchers/active_model/disallow_value_matcher_spec.rb
@@ -262,7 +287,6 @@ files:
262
287
  - spec/unit/shoulda/matchers/active_model/validate_length_of_matcher_spec.rb
263
288
  - spec/unit/shoulda/matchers/active_model/validate_numericality_of_matcher_spec.rb
264
289
  - spec/unit/shoulda/matchers/active_model/validate_presence_of_matcher_spec.rb
265
- - spec/unit/shoulda/matchers/active_model/validate_uniqueness_of_matcher_spec.rb
266
290
  - spec/unit/shoulda/matchers/active_record/accept_nested_attributes_for_matcher_spec.rb
267
291
  - spec/unit/shoulda/matchers/active_record/association_matcher_spec.rb
268
292
  - spec/unit/shoulda/matchers/active_record/association_matchers/model_reflection_spec.rb
@@ -271,6 +295,7 @@ files:
271
295
  - spec/unit/shoulda/matchers/active_record/have_db_index_matcher_spec.rb
272
296
  - spec/unit/shoulda/matchers/active_record/have_readonly_attributes_matcher_spec.rb
273
297
  - spec/unit/shoulda/matchers/active_record/serialize_matcher_spec.rb
298
+ - spec/unit/shoulda/matchers/active_record/validate_uniqueness_of_matcher_spec.rb
274
299
  - spec/unit/shoulda/matchers/doublespeak/double_collection_spec.rb
275
300
  - spec/unit/shoulda/matchers/doublespeak/double_implementation_registry_spec.rb
276
301
  - spec/unit/shoulda/matchers/doublespeak/double_spec.rb
@@ -300,24 +325,27 @@ required_ruby_version: !ruby/object:Gem::Requirement
300
325
  requirements:
301
326
  - - ">="
302
327
  - !ruby/object:Gem::Version
303
- version: 1.9.2
328
+ version: 2.0.0
304
329
  required_rubygems_version: !ruby/object:Gem::Requirement
305
330
  requirements:
306
- - - ">="
331
+ - - ">"
307
332
  - !ruby/object:Gem::Version
308
- version: '0'
333
+ version: 1.3.1
309
334
  requirements: []
310
335
  rubyforge_project:
311
- rubygems_version: 2.2.2
336
+ rubygems_version: 2.4.5
312
337
  signing_key:
313
338
  specification_version: 4
314
339
  summary: Making tests easy on the fingers and eyes
315
340
  test_files:
316
341
  - spec/acceptance/active_model_integration_spec.rb
317
342
  - spec/acceptance/independent_matchers_spec.rb
343
+ - spec/acceptance/multiple_libraries_integration_spec.rb
318
344
  - spec/acceptance/rails_integration_spec.rb
319
345
  - spec/acceptance_spec_helper.rb
346
+ - spec/doublespeak_spec_helper.rb
320
347
  - spec/report_warnings.rb
348
+ - spec/support/acceptance/adds_shoulda_matchers_to_project.rb
321
349
  - spec/support/acceptance/helpers.rb
322
350
  - spec/support/acceptance/helpers/active_model_helpers.rb
323
351
  - spec/support/acceptance/helpers/array_helpers.rb
@@ -326,6 +354,7 @@ test_files:
326
354
  - spec/support/acceptance/helpers/file_helpers.rb
327
355
  - spec/support/acceptance/helpers/gem_helpers.rb
328
356
  - spec/support/acceptance/helpers/minitest_helpers.rb
357
+ - spec/support/acceptance/helpers/n_unit_helpers.rb
329
358
  - spec/support/acceptance/helpers/pluralization_helpers.rb
330
359
  - spec/support/acceptance/helpers/rails_version_helpers.rb
331
360
  - spec/support/acceptance/helpers/rspec_helpers.rb
@@ -336,6 +365,12 @@ test_files:
336
365
  - spec/support/acceptance/matchers/indicate_that_tests_were_run_matcher.rb
337
366
  - spec/support/tests/bundle.rb
338
367
  - spec/support/tests/command_runner.rb
368
+ - spec/support/tests/current_bundle.rb
369
+ - spec/support/tests/database.rb
370
+ - spec/support/tests/database_adapters/postgresql.rb
371
+ - spec/support/tests/database_adapters/sqlite3.rb
372
+ - spec/support/tests/database_configuration.rb
373
+ - spec/support/tests/database_configuration_registry.rb
339
374
  - spec/support/tests/filesystem.rb
340
375
  - spec/support/tests/version.rb
341
376
  - spec/support/unit/capture.rb
@@ -345,8 +380,10 @@ test_files:
345
380
  - spec/support/unit/helpers/active_resource_builder.rb
346
381
  - spec/support/unit/helpers/allow_value_matcher_helpers.rb
347
382
  - spec/support/unit/helpers/class_builder.rb
383
+ - spec/support/unit/helpers/column_type_helpers.rb
348
384
  - spec/support/unit/helpers/confirmation_matcher_helpers.rb
349
385
  - spec/support/unit/helpers/controller_builder.rb
386
+ - spec/support/unit/helpers/database_helpers.rb
350
387
  - spec/support/unit/helpers/i18n_faker.rb
351
388
  - spec/support/unit/helpers/mailer_builder.rb
352
389
  - spec/support/unit/helpers/model_builder.rb
@@ -362,8 +399,10 @@ test_files:
362
399
  - spec/support/unit/record_with_different_error_attribute_builder.rb
363
400
  - spec/support/unit/shared_examples/numerical_submatcher.rb
364
401
  - spec/support/unit/shared_examples/numerical_type_submatcher.rb
402
+ - spec/support/unit/shared_examples/set_session_or_flash.rb
365
403
  - spec/unit/shoulda/matchers/action_controller/callback_matcher_spec.rb
366
404
  - spec/unit/shoulda/matchers/action_controller/filter_param_matcher_spec.rb
405
+ - spec/unit/shoulda/matchers/action_controller/permit_matcher_spec.rb
367
406
  - spec/unit/shoulda/matchers/action_controller/redirect_to_matcher_spec.rb
368
407
  - spec/unit/shoulda/matchers/action_controller/render_template_matcher_spec.rb
369
408
  - spec/unit/shoulda/matchers/action_controller/render_with_layout_matcher_spec.rb
@@ -373,7 +412,7 @@ test_files:
373
412
  - spec/unit/shoulda/matchers/action_controller/route_params_spec.rb
374
413
  - spec/unit/shoulda/matchers/action_controller/set_flash_matcher_spec.rb
375
414
  - spec/unit/shoulda/matchers/action_controller/set_session_matcher_spec.rb
376
- - spec/unit/shoulda/matchers/action_controller/strong_parameters_matcher_spec.rb
415
+ - spec/unit/shoulda/matchers/action_controller/set_session_or_flash_matcher_spec.rb
377
416
  - spec/unit/shoulda/matchers/active_model/allow_mass_assignment_of_matcher_spec.rb
378
417
  - spec/unit/shoulda/matchers/active_model/allow_value_matcher_spec.rb
379
418
  - spec/unit/shoulda/matchers/active_model/disallow_value_matcher_spec.rb
@@ -391,7 +430,6 @@ test_files:
391
430
  - spec/unit/shoulda/matchers/active_model/validate_length_of_matcher_spec.rb
392
431
  - spec/unit/shoulda/matchers/active_model/validate_numericality_of_matcher_spec.rb
393
432
  - spec/unit/shoulda/matchers/active_model/validate_presence_of_matcher_spec.rb
394
- - spec/unit/shoulda/matchers/active_model/validate_uniqueness_of_matcher_spec.rb
395
433
  - spec/unit/shoulda/matchers/active_record/accept_nested_attributes_for_matcher_spec.rb
396
434
  - spec/unit/shoulda/matchers/active_record/association_matcher_spec.rb
397
435
  - spec/unit/shoulda/matchers/active_record/association_matchers/model_reflection_spec.rb
@@ -400,6 +438,7 @@ test_files:
400
438
  - spec/unit/shoulda/matchers/active_record/have_db_index_matcher_spec.rb
401
439
  - spec/unit/shoulda/matchers/active_record/have_readonly_attributes_matcher_spec.rb
402
440
  - spec/unit/shoulda/matchers/active_record/serialize_matcher_spec.rb
441
+ - spec/unit/shoulda/matchers/active_record/validate_uniqueness_of_matcher_spec.rb
403
442
  - spec/unit/shoulda/matchers/doublespeak/double_collection_spec.rb
404
443
  - spec/unit/shoulda/matchers/doublespeak/double_implementation_registry_spec.rb
405
444
  - spec/unit/shoulda/matchers/doublespeak/double_spec.rb