mocha 1.11.2 → 1.12.0

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 (200) hide show
  1. checksums.yaml +4 -4
  2. data/CONTRIBUTING.md +1 -1
  3. data/README.md +28 -30
  4. data/RELEASE.md +25 -0
  5. data/Rakefile +6 -1
  6. data/lib/mocha/cardinality.rb +30 -27
  7. data/lib/mocha/expectation.rb +24 -24
  8. data/lib/mocha/mock.rb +1 -1
  9. data/lib/mocha/mockery.rb +9 -22
  10. data/lib/mocha/state_machine.rb +30 -38
  11. data/lib/mocha/version.rb +1 -1
  12. data/mocha.gemspec +3 -1
  13. metadata +5 -192
  14. data/docs/CNAME +0 -1
  15. data/docs/Mocha.html +0 -254
  16. data/docs/Mocha/API.html +0 -1285
  17. data/docs/Mocha/ClassMethods.html +0 -264
  18. data/docs/Mocha/Configuration.html +0 -1525
  19. data/docs/Mocha/Expectation.html +0 -2862
  20. data/docs/Mocha/ExpectationError.html +0 -152
  21. data/docs/Mocha/ExpectationErrorFactory.html +0 -260
  22. data/docs/Mocha/Hooks.html +0 -370
  23. data/docs/Mocha/Integration.html +0 -125
  24. data/docs/Mocha/Integration/MiniTest.html +0 -123
  25. data/docs/Mocha/Integration/MiniTest/Adapter.html +0 -164
  26. data/docs/Mocha/Integration/TestUnit.html +0 -123
  27. data/docs/Mocha/Integration/TestUnit/Adapter.html +0 -164
  28. data/docs/Mocha/Mock.html +0 -1210
  29. data/docs/Mocha/ObjectMethods.html +0 -765
  30. data/docs/Mocha/ParameterMatchers.html +0 -2949
  31. data/docs/Mocha/ParameterMatchers/AllOf.html +0 -153
  32. data/docs/Mocha/ParameterMatchers/AnyOf.html +0 -153
  33. data/docs/Mocha/ParameterMatchers/AnyParameters.html +0 -153
  34. data/docs/Mocha/ParameterMatchers/Anything.html +0 -153
  35. data/docs/Mocha/ParameterMatchers/Base.html +0 -441
  36. data/docs/Mocha/ParameterMatchers/Equals.html +0 -153
  37. data/docs/Mocha/ParameterMatchers/EquivalentUri.html +0 -153
  38. data/docs/Mocha/ParameterMatchers/HasEntries.html +0 -153
  39. data/docs/Mocha/ParameterMatchers/HasEntry.html +0 -153
  40. data/docs/Mocha/ParameterMatchers/HasKey.html +0 -153
  41. data/docs/Mocha/ParameterMatchers/HasValue.html +0 -153
  42. data/docs/Mocha/ParameterMatchers/Includes.html +0 -153
  43. data/docs/Mocha/ParameterMatchers/InstanceOf.html +0 -153
  44. data/docs/Mocha/ParameterMatchers/IsA.html +0 -153
  45. data/docs/Mocha/ParameterMatchers/KindOf.html +0 -153
  46. data/docs/Mocha/ParameterMatchers/Not.html +0 -153
  47. data/docs/Mocha/ParameterMatchers/Optionally.html +0 -153
  48. data/docs/Mocha/ParameterMatchers/RegexpMatches.html +0 -153
  49. data/docs/Mocha/ParameterMatchers/RespondsWith.html +0 -153
  50. data/docs/Mocha/ParameterMatchers/YamlEquivalent.html +0 -153
  51. data/docs/Mocha/Sequence.html +0 -149
  52. data/docs/Mocha/StateMachine.html +0 -527
  53. data/docs/Mocha/StateMachine/State.html +0 -140
  54. data/docs/Mocha/StateMachine/StatePredicate.html +0 -140
  55. data/docs/Mocha/StubbingError.html +0 -150
  56. data/docs/_index.html +0 -519
  57. data/docs/class_list.html +0 -51
  58. data/docs/css/common.css +0 -1
  59. data/docs/css/full_list.css +0 -58
  60. data/docs/css/style.css +0 -496
  61. data/docs/file.COPYING.html +0 -81
  62. data/docs/file.MIT-LICENSE.html +0 -85
  63. data/docs/file.README.html +0 -448
  64. data/docs/file.RELEASE.html +0 -1028
  65. data/docs/file_list.html +0 -71
  66. data/docs/frames.html +0 -17
  67. data/docs/index.html +0 -448
  68. data/docs/js/app.js +0 -303
  69. data/docs/js/full_list.js +0 -216
  70. data/docs/js/jquery.js +0 -4
  71. data/docs/method_list.html +0 -651
  72. data/docs/top-level-namespace.html +0 -118
  73. data/test/acceptance/acceptance_test_helper.rb +0 -42
  74. data/test/acceptance/bug_18914_test.rb +0 -37
  75. data/test/acceptance/bug_21465_test.rb +0 -31
  76. data/test/acceptance/bug_21563_test.rb +0 -22
  77. data/test/acceptance/display_matching_invocations_alongside_expectations_test.rb +0 -69
  78. data/test/acceptance/exception_rescue_test.rb +0 -53
  79. data/test/acceptance/expectations_on_multiple_methods_test.rb +0 -55
  80. data/test/acceptance/expected_invocation_count_test.rb +0 -229
  81. data/test/acceptance/failure_messages_test.rb +0 -77
  82. data/test/acceptance/issue_272_test.rb +0 -50
  83. data/test/acceptance/issue_457_test.rb +0 -31
  84. data/test/acceptance/issue_65_test.rb +0 -64
  85. data/test/acceptance/issue_70_test.rb +0 -53
  86. data/test/acceptance/mocha_example_test.rb +0 -106
  87. data/test/acceptance/mocha_test_result_test.rb +0 -83
  88. data/test/acceptance/mock_built_with_first_argument_type_being_string_test.rb +0 -98
  89. data/test/acceptance/mock_test.rb +0 -191
  90. data/test/acceptance/mocked_methods_dispatch_test.rb +0 -75
  91. data/test/acceptance/multiple_expectations_failure_message_test.rb +0 -66
  92. data/test/acceptance/multiple_yielding_test.rb +0 -59
  93. data/test/acceptance/optional_parameters_test.rb +0 -67
  94. data/test/acceptance/parameter_matcher_test.rb +0 -299
  95. data/test/acceptance/partial_mocks_test.rb +0 -44
  96. data/test/acceptance/prepend_test.rb +0 -86
  97. data/test/acceptance/prevent_use_of_mocha_outside_test_test.rb +0 -76
  98. data/test/acceptance/raise_exception_test.rb +0 -36
  99. data/test/acceptance/return_value_test.rb +0 -49
  100. data/test/acceptance/sequence_test.rb +0 -189
  101. data/test/acceptance/states_test.rb +0 -71
  102. data/test/acceptance/stub_any_instance_method_defined_on_superclass_test.rb +0 -64
  103. data/test/acceptance/stub_any_instance_method_test.rb +0 -301
  104. data/test/acceptance/stub_class_method_defined_on_active_record_association_proxy_test.rb +0 -105
  105. data/test/acceptance/stub_class_method_defined_on_class_test.rb +0 -78
  106. data/test/acceptance/stub_class_method_defined_on_module_test.rb +0 -73
  107. data/test/acceptance/stub_class_method_defined_on_superclass_test.rb +0 -144
  108. data/test/acceptance/stub_everything_test.rb +0 -53
  109. data/test/acceptance/stub_instance_method_defined_on_active_record_association_proxy_test.rb +0 -91
  110. data/test/acceptance/stub_instance_method_defined_on_class_and_aliased_test.rb +0 -67
  111. data/test/acceptance/stub_instance_method_defined_on_class_test.rb +0 -67
  112. data/test/acceptance/stub_instance_method_defined_on_kernel_module_test.rb +0 -136
  113. data/test/acceptance/stub_instance_method_defined_on_module_test.rb +0 -76
  114. data/test/acceptance/stub_instance_method_defined_on_object_class_test.rb +0 -75
  115. data/test/acceptance/stub_instance_method_defined_on_singleton_class_test.rb +0 -67
  116. data/test/acceptance/stub_instance_method_defined_on_superclass_test.rb +0 -70
  117. data/test/acceptance/stub_method_defined_on_module_and_aliased_test.rb +0 -38
  118. data/test/acceptance/stub_module_method_test.rb +0 -200
  119. data/test/acceptance/stub_test.rb +0 -49
  120. data/test/acceptance/stubba_example_test.rb +0 -103
  121. data/test/acceptance/stubba_test_result_test.rb +0 -71
  122. data/test/acceptance/stubbing_error_backtrace_test.rb +0 -63
  123. data/test/acceptance/stubbing_frozen_object_test.rb +0 -88
  124. data/test/acceptance/stubbing_method_accepting_block_parameter_test.rb +0 -52
  125. data/test/acceptance/stubbing_method_unnecessarily_test.rb +0 -63
  126. data/test/acceptance/stubbing_nil_test.rb +0 -60
  127. data/test/acceptance/stubbing_non_existent_any_instance_method_test.rb +0 -157
  128. data/test/acceptance/stubbing_non_existent_class_method_test.rb +0 -157
  129. data/test/acceptance/stubbing_non_existent_instance_method_test.rb +0 -145
  130. data/test/acceptance/stubbing_non_public_any_instance_method_test.rb +0 -128
  131. data/test/acceptance/stubbing_non_public_class_method_test.rb +0 -163
  132. data/test/acceptance/stubbing_non_public_instance_method_test.rb +0 -141
  133. data/test/acceptance/stubbing_on_non_mock_object_test.rb +0 -70
  134. data/test/acceptance/stubbing_same_class_method_on_parent_and_child_classes_test.rb +0 -33
  135. data/test/acceptance/throw_test.rb +0 -42
  136. data/test/acceptance/unexpected_invocation_test.rb +0 -23
  137. data/test/acceptance/unstubbing_test.rb +0 -194
  138. data/test/acceptance/yielding_test.rb +0 -80
  139. data/test/assertions.rb +0 -8
  140. data/test/deprecation_disabler.rb +0 -15
  141. data/test/execution_point.rb +0 -36
  142. data/test/integration/mini_test_test.rb +0 -8
  143. data/test/integration/shared_tests.rb +0 -178
  144. data/test/integration/test_unit_test.rb +0 -8
  145. data/test/method_definer.rb +0 -16
  146. data/test/mini_test_result.rb +0 -96
  147. data/test/minitest_result.rb +0 -48
  148. data/test/simple_counter.rb +0 -11
  149. data/test/test_helper.rb +0 -58
  150. data/test/test_runner.rb +0 -58
  151. data/test/test_unit_result.rb +0 -22
  152. data/test/unit/any_instance_method_test.rb +0 -175
  153. data/test/unit/array_inspect_test.rb +0 -14
  154. data/test/unit/backtrace_filter_test.rb +0 -17
  155. data/test/unit/cardinality_test.rb +0 -72
  156. data/test/unit/central_test.rb +0 -98
  157. data/test/unit/change_state_side_effect_test.rb +0 -37
  158. data/test/unit/class_methods_test.rb +0 -69
  159. data/test/unit/configuration_test.rb +0 -37
  160. data/test/unit/date_time_inspect_test.rb +0 -19
  161. data/test/unit/exception_raiser_test.rb +0 -45
  162. data/test/unit/expectation_list_test.rb +0 -82
  163. data/test/unit/expectation_test.rb +0 -504
  164. data/test/unit/hash_inspect_test.rb +0 -14
  165. data/test/unit/hooks_test.rb +0 -35
  166. data/test/unit/in_state_ordering_constraint_test.rb +0 -39
  167. data/test/unit/instance_method_test.rb +0 -282
  168. data/test/unit/method_matcher_test.rb +0 -26
  169. data/test/unit/mock_test.rb +0 -372
  170. data/test/unit/mockery_test.rb +0 -171
  171. data/test/unit/module_methods_test.rb +0 -16
  172. data/test/unit/object_inspect_test.rb +0 -60
  173. data/test/unit/object_methods_test.rb +0 -63
  174. data/test/unit/parameter_matchers/all_of_test.rb +0 -24
  175. data/test/unit/parameter_matchers/any_of_test.rb +0 -24
  176. data/test/unit/parameter_matchers/anything_test.rb +0 -19
  177. data/test/unit/parameter_matchers/equals_test.rb +0 -23
  178. data/test/unit/parameter_matchers/equivalent_uri_test.rb +0 -41
  179. data/test/unit/parameter_matchers/has_entries_test.rb +0 -51
  180. data/test/unit/parameter_matchers/has_entry_test.rb +0 -128
  181. data/test/unit/parameter_matchers/has_key_test.rb +0 -54
  182. data/test/unit/parameter_matchers/has_value_test.rb +0 -55
  183. data/test/unit/parameter_matchers/includes_test.rb +0 -106
  184. data/test/unit/parameter_matchers/instance_of_test.rb +0 -23
  185. data/test/unit/parameter_matchers/is_a_test.rb +0 -23
  186. data/test/unit/parameter_matchers/kind_of_test.rb +0 -23
  187. data/test/unit/parameter_matchers/not_test.rb +0 -24
  188. data/test/unit/parameter_matchers/regexp_matches_test.rb +0 -45
  189. data/test/unit/parameter_matchers/responds_with_test.rb +0 -38
  190. data/test/unit/parameter_matchers/stub_matcher.rb +0 -23
  191. data/test/unit/parameter_matchers/yaml_equivalent_test.rb +0 -23
  192. data/test/unit/parameters_matcher_test.rb +0 -119
  193. data/test/unit/receivers_test.rb +0 -96
  194. data/test/unit/return_values_test.rb +0 -66
  195. data/test/unit/sequence_test.rb +0 -100
  196. data/test/unit/single_return_value_test.rb +0 -17
  197. data/test/unit/state_machine_test.rb +0 -96
  198. data/test/unit/string_inspect_test.rb +0 -9
  199. data/test/unit/thrower_test.rb +0 -23
  200. data/test/unit/yield_parameters_test.rb +0 -73
@@ -1,171 +0,0 @@
1
- require File.expand_path('../../test_helper', __FILE__)
2
- require 'mocha/mockery'
3
- require 'mocha/state_machine'
4
- require 'mocha/expectation_error_factory'
5
-
6
- class MockeryTest < Mocha::TestCase
7
- include Mocha
8
-
9
- def setup
10
- Mockery.setup
11
- end
12
-
13
- def teardown
14
- Mockery.teardown
15
- end
16
-
17
- def test_should_return_null_mockery_if_not_setup
18
- Mockery.teardown
19
- mockery = Mockery.instance
20
- assert_not_nil mockery
21
- assert_kind_of Mockery::Null, mockery
22
- end
23
-
24
- def test_should_return_instance_of_mockery
25
- mockery = Mockery.instance
26
- assert_not_nil mockery
27
- assert_kind_of Mockery, mockery
28
- end
29
-
30
- def test_should_cache_instance_of_mockery
31
- mockery1 = Mockery.instance
32
- mockery2 = Mockery.instance
33
- assert_same mockery1, mockery2
34
- end
35
-
36
- def test_should_expire_mockery_instance_cache
37
- mockery1 = Mockery.instance
38
- Mockery.teardown
39
- mockery2 = Mockery.instance
40
- assert_not_same mockery1, mockery2
41
- end
42
-
43
- def test_should_raise_expectation_error_because_not_all_expectations_are_satisfied
44
- mockery = Mockery.new
45
- mock1 = mockery.named_mock('mock-1')
46
- mock1.expects(:method_1)
47
- mock2 = mockery.named_mock('mock-2')
48
- mock2.expects(:method_2)
49
- 1.times { mock1.method_1 }
50
- 0.times { mock2.method_2 }
51
- assert_raises(ExpectationErrorFactory.exception_class) { mockery.verify }
52
- end
53
-
54
- def test_should_reset_list_of_mocks_on_teardown
55
- mockery = Mockery.new
56
- mock = mockery.unnamed_mock
57
- mock.expects(:my_method)
58
- mockery.teardown
59
- assert_nothing_raised(ExpectationErrorFactory.exception_class) { mockery.verify }
60
- end
61
-
62
- def test_should_build_instance_of_stubba_on_instantiation
63
- mockery = Mockery.new
64
- assert_not_nil mockery.stubba
65
- assert_kind_of Central, mockery.stubba
66
- end
67
-
68
- def test_should_build_new_instance_of_stubba_on_teardown
69
- mockery = Mockery.new
70
- stubba1 = mockery.stubba
71
- mockery.teardown
72
- stubba2 = mockery.stubba
73
- assert_not_same stubba1, stubba2
74
- end
75
-
76
- def test_should_build_and_store_new_state_machine
77
- mockery = Mockery.new
78
- mockery.new_state_machine('state-machine-name')
79
- assert_equal 1, mockery.state_machines.length
80
- assert_kind_of StateMachine, mockery.state_machines[0]
81
- end
82
-
83
- def test_should_reset_list_of_state_machines_on_teardown
84
- mockery = Mockery.new
85
- mockery.new_state_machine('state-machine-name')
86
- mockery.teardown
87
- assert_equal 0, mockery.state_machines.length
88
- end
89
-
90
- class FakeMethod
91
- def stub; end
92
-
93
- def unstub; end
94
-
95
- def matches?(_other)
96
- true
97
- end
98
- end
99
-
100
- def test_should_unstub_all_methods_on_teardown
101
- mockery = Mockery.new
102
- stubba = mockery.stubba
103
- stubba.stub(FakeMethod.new)
104
- mockery.teardown
105
- assert stubba.stubba_methods.empty?
106
- end
107
-
108
- def test_should_display_object_id_for_mocha_inspect_if_mock_has_no_name
109
- mockery = Mockery.new
110
- mock = mockery.unnamed_mock
111
- assert_match Regexp.new('^#<Mock:0x[0-9A-Fa-f]{1,12}>$'), mock.mocha_inspect
112
- end
113
-
114
- def test_should_display_object_id_for_inspect_if_mock_has_no_name
115
- mockery = Mockery.new
116
- mock = mockery.unnamed_mock
117
- assert_match Regexp.new('^#<Mock:0x[0-9A-Fa-f]{1,12}>$'), mock.inspect
118
- end
119
-
120
- def test_should_display_name_for_mocha_inspect_if_mock_has_string_name
121
- mockery = Mockery.new
122
- mock = mockery.named_mock('named_mock')
123
- assert_equal '#<Mock:named_mock>', mock.mocha_inspect
124
- end
125
-
126
- def test_should_display_name_for_mocha_inspect_if_mock_has_symbol_name
127
- mockery = Mockery.new
128
- mock = mockery.named_mock(:named_mock)
129
- assert_equal '#<Mock:named_mock>', mock.mocha_inspect
130
- end
131
-
132
- def test_should_display_name_for_inspect_if_mock_has_string_name
133
- mockery = Mockery.new
134
- mock = mockery.named_mock('named_mock')
135
- assert_equal '#<Mock:named_mock>', mock.inspect
136
- end
137
-
138
- def test_should_display_name_for_inspect_if_mock_has_symbol_name
139
- mockery = Mockery.new
140
- mock = mockery.named_mock(:named_mock)
141
- assert_equal '#<Mock:named_mock>', mock.inspect
142
- end
143
-
144
- def test_should_display_impersonated_object_for_mocha_inspect
145
- mockery = Mockery.new
146
- instance = Object.new
147
- mock = mockery.mock_impersonating(instance)
148
- assert_equal instance.mocha_inspect.to_s, mock.mocha_inspect
149
- end
150
-
151
- def test_should_display_impersonated_object_for_inspect
152
- mockery = Mockery.new
153
- instance = Object.new
154
- mock = mockery.mock_impersonating(instance)
155
- assert_equal instance.mocha_inspect.to_s, mock.inspect
156
- end
157
-
158
- class FakeClass; end
159
-
160
- def test_should_display_any_instance_prefix_followed_by_class_whose_instances_are_being_impersonated_for_mocha_inspect
161
- mockery = Mockery.new
162
- mock = mockery.mock_impersonating_any_instance_of(FakeClass)
163
- assert_equal '#<AnyInstance:MockeryTest::FakeClass>', mock.mocha_inspect
164
- end
165
-
166
- def test_should_display_any_instance_prefix_followed_by_class_whose_instances_are_being_impersonated_for_inspect
167
- mockery = Mockery.new
168
- mock = mockery.mock_impersonating_any_instance_of(FakeClass)
169
- assert_equal '#<AnyInstance:MockeryTest::FakeClass>', mock.inspect
170
- end
171
- end
@@ -1,16 +0,0 @@
1
- require File.expand_path('../../test_helper', __FILE__)
2
- require 'mocha/object_methods'
3
-
4
- class ModuleMethodsTest < Mocha::TestCase
5
- def setup
6
- @module = Module.new.extend(Mocha::ObjectMethods)
7
- end
8
-
9
- def test_should_use_stubba_module_method_for_module
10
- assert_equal Mocha::InstanceMethod, @module.stubba_method
11
- end
12
-
13
- def test_should_stub_self_for_module
14
- assert_equal @module, @module.stubba_object
15
- end
16
- end
@@ -1,60 +0,0 @@
1
- require File.expand_path('../../test_helper', __FILE__)
2
- require 'mocha/ruby_version'
3
- require 'mocha/inspect'
4
- require 'method_definer'
5
-
6
- class ObjectInspectTest < Mocha::TestCase
7
- include MethodDefiner
8
-
9
- def test_should_return_default_string_representation_of_object_not_including_instance_variables
10
- object = Object.new
11
- class << object
12
- attr_accessor :attribute
13
- end
14
- object.attribute = 'instance_variable'
15
- assert_match Regexp.new('^#<Object:0x[0-9A-Fa-f]{1,8}.*>$'), object.mocha_inspect
16
- assert_no_match(/instance_variable/, object.mocha_inspect)
17
- end
18
-
19
- def test_should_return_customized_string_representation_of_object
20
- object = Object.new
21
- class << object
22
- define_method(:inspect) { 'custom_inspect' }
23
- end
24
- assert_equal 'custom_inspect', object.mocha_inspect
25
- end
26
-
27
- def test_should_use_underscored_id_instead_of_object_id_or_id_so_that_they_can_be_stubbed
28
- calls = []
29
- object = Object.new
30
- if Mocha::PRE_RUBY_V19
31
- replace_instance_method(object, :id) do
32
- calls << :id
33
- return 1
34
- end
35
- end
36
- replace_instance_method(object, :object_id) do
37
- calls << :object_id
38
- return 1
39
- end
40
- replace_instance_method(object, :__id__) do
41
- calls << :__id__
42
- return 1
43
- end
44
- replace_instance_method(object, :inspect) { 'object-description' }
45
-
46
- object.mocha_inspect
47
-
48
- assert_equal [:__id__], calls.uniq
49
- end
50
-
51
- def test_should_not_call_object_instance_format_method
52
- object = Object.new
53
- class << object
54
- def format(*)
55
- 'internal_format'
56
- end
57
- end
58
- assert_no_match(/internal_format/, object.mocha_inspect)
59
- end
60
- end
@@ -1,63 +0,0 @@
1
- require File.expand_path('../../test_helper', __FILE__)
2
- require 'mocha/object_methods'
3
- require 'mocha/mockery'
4
- require 'mocha/mock'
5
- require 'mocha/expectation_error_factory'
6
- require 'mocha/names'
7
-
8
- class ObjectMethodsTest < Mocha::TestCase
9
- def setup
10
- Mocha::Mockery.setup
11
- @object = Object.new.extend(Mocha::ObjectMethods)
12
- end
13
-
14
- def teardown
15
- Mocha::Mockery.teardown
16
- end
17
-
18
- def test_should_build_mocha_referring_to_self
19
- mocha = @object.mocha
20
- assert_not_nil mocha
21
- assert mocha.is_a?(Mocha::Mock)
22
- expected_name = Mocha::ImpersonatingName.new(@object).mocha_inspect
23
- assert_equal expected_name, mocha.mocha_inspect
24
- end
25
-
26
- def test_should_not_build_mocha_if_instantiate_is_false
27
- assert_nil @object.mocha(false)
28
- end
29
-
30
- def test_should_reuse_existing_mocha
31
- mocha1 = @object.mocha
32
- mocha2 = @object.mocha
33
- assert_equal mocha1, mocha2
34
- end
35
-
36
- def test_should_reuse_existing_mocha_even_if_instantiate_is_false
37
- mocha1 = @object.mocha
38
- mocha2 = @object.mocha(false)
39
- assert_equal mocha1, mocha2
40
- end
41
-
42
- def test_should_reset_mocha
43
- assert_nil @object.reset_mocha
44
- end
45
-
46
- def test_should_use_stubba_instance_method_for_object
47
- assert_equal Mocha::InstanceMethod, @object.stubba_method
48
- end
49
-
50
- def test_should_stub_self_for_object
51
- assert_equal @object, @object.stubba_object
52
- end
53
-
54
- def test_nobody_expects_the_spanish_inquisition
55
- assert_raises(Mocha::ExpectationErrorFactory.exception_class) { @object.expects(:the_spanish_inquisition) }
56
- end
57
-
58
- def test_should_alias_object_method
59
- klass = Class.new { def self.method_x; end }
60
- klass.extend(Mocha::ObjectMethods)
61
- assert_equal klass._method(:method_x), klass.method(:method_x)
62
- end
63
- end
@@ -1,24 +0,0 @@
1
- require File.expand_path('../../../test_helper', __FILE__)
2
-
3
- require 'mocha/parameter_matchers/all_of'
4
- require 'mocha/inspect'
5
- require 'stub_matcher'
6
-
7
- class AllOfTest < Mocha::TestCase
8
- include Mocha::ParameterMatchers
9
-
10
- def test_should_match_if_all_matchers_match
11
- matcher = all_of(Stub::Matcher.new(true), Stub::Matcher.new(true), Stub::Matcher.new(true))
12
- assert matcher.matches?(['any_old_value'])
13
- end
14
-
15
- def test_should_not_match_if_any_matcher_does_not_match
16
- matcher = all_of(Stub::Matcher.new(true), Stub::Matcher.new(false), Stub::Matcher.new(true))
17
- assert !matcher.matches?(['any_old_value'])
18
- end
19
-
20
- def test_should_describe_matcher
21
- matcher = all_of(Stub::Matcher.new(true), Stub::Matcher.new(false), Stub::Matcher.new(true))
22
- assert_equal 'all_of(matcher(true), matcher(false), matcher(true))', matcher.mocha_inspect
23
- end
24
- end
@@ -1,24 +0,0 @@
1
- require File.expand_path('../../../test_helper', __FILE__)
2
-
3
- require 'mocha/parameter_matchers/any_of'
4
- require 'mocha/inspect'
5
- require 'stub_matcher'
6
-
7
- class AnyOfTest < Mocha::TestCase
8
- include Mocha::ParameterMatchers
9
-
10
- def test_should_match_if_any_matchers_match
11
- matcher = any_of(Stub::Matcher.new(false), Stub::Matcher.new(true), Stub::Matcher.new(false))
12
- assert matcher.matches?(['any_old_value'])
13
- end
14
-
15
- def test_should_not_match_if_no_matchers_match
16
- matcher = any_of(Stub::Matcher.new(false), Stub::Matcher.new(false), Stub::Matcher.new(false))
17
- assert !matcher.matches?(['any_old_value'])
18
- end
19
-
20
- def test_should_describe_matcher
21
- matcher = any_of(Stub::Matcher.new(false), Stub::Matcher.new(true), Stub::Matcher.new(false))
22
- assert_equal 'any_of(matcher(false), matcher(true), matcher(false))', matcher.mocha_inspect
23
- end
24
- end
@@ -1,19 +0,0 @@
1
- require File.expand_path('../../../test_helper', __FILE__)
2
-
3
- require 'mocha/parameter_matchers/anything'
4
- require 'mocha/inspect'
5
-
6
- class AnythingTest < Mocha::TestCase
7
- include Mocha::ParameterMatchers
8
-
9
- def test_should_match_anything
10
- matcher = anything
11
- assert matcher.matches?([:something])
12
- assert matcher.matches?([{ 'x' => 'y' }])
13
- end
14
-
15
- def test_should_describe_matcher
16
- matcher = anything
17
- assert_equal 'anything', matcher.mocha_inspect
18
- end
19
- end
@@ -1,23 +0,0 @@
1
- require File.expand_path('../../../test_helper', __FILE__)
2
-
3
- require 'mocha/parameter_matchers/equals'
4
- require 'mocha/inspect'
5
-
6
- class EqualsTest < Mocha::TestCase
7
- include Mocha::ParameterMatchers
8
-
9
- def test_should_match_object_that_equals_value
10
- matcher = equals('x')
11
- assert matcher.matches?(['x'])
12
- end
13
-
14
- def test_should_not_match_object_that_does_not_equal_value
15
- matcher = equals('x')
16
- assert !matcher.matches?(['y'])
17
- end
18
-
19
- def test_should_describe_matcher
20
- matcher = equals('x')
21
- assert_equal %("x"), matcher.mocha_inspect
22
- end
23
- end
@@ -1,41 +0,0 @@
1
- require File.expand_path('../../../test_helper', __FILE__)
2
- require 'mocha/parameter_matchers/equivalent_uri'
3
-
4
- class EquivalentUriMatchesTest < Mocha::TestCase
5
- include Mocha::ParameterMatchers
6
-
7
- def test_should_match_identical_uri
8
- matcher = equivalent_uri('http://example.com/foo?a=1&b=2')
9
- assert matcher.matches?(['http://example.com/foo?a=1&b=2'])
10
- end
11
-
12
- def test_should_match_uri_with_rearranged_query_string
13
- matcher = equivalent_uri('http://example.com/foo?b=2&a=1')
14
- assert matcher.matches?(['http://example.com/foo?a=1&b=2'])
15
- end
16
-
17
- def test_should_not_match_uri_with_different_query_string
18
- matcher = equivalent_uri('http://example.com/foo?a=1')
19
- assert !matcher.matches?(['http://example.com/foo?a=1&b=2'])
20
- end
21
-
22
- def test_should_not_match_uri_when_no_query_string_expected
23
- matcher = equivalent_uri('http://example.com/foo')
24
- assert !matcher.matches?(['http://example.com/foo?a=1&b=2'])
25
- end
26
-
27
- def test_should_not_match_uri_with_different_domain
28
- matcher = equivalent_uri('http://a.example.com/foo?a=1&b=2')
29
- assert !matcher.matches?(['http://b.example.com/foo?a=1&b=2'])
30
- end
31
-
32
- def test_should_match_uri_without_scheme_and_domain
33
- matcher = equivalent_uri('/foo?a=1&b=2')
34
- assert matcher.matches?(['/foo?a=1&b=2'])
35
- end
36
-
37
- def test_should_match_uri_with_query_string_containing_blank_value
38
- matcher = equivalent_uri('http://example.com/foo?a=&b=2')
39
- assert matcher.matches?(['http://example.com/foo?a=&b=2'])
40
- end
41
- end