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.
- checksums.yaml +4 -4
- data/CONTRIBUTING.md +1 -1
- data/README.md +28 -30
- data/RELEASE.md +25 -0
- data/Rakefile +6 -1
- data/lib/mocha/cardinality.rb +30 -27
- data/lib/mocha/expectation.rb +24 -24
- data/lib/mocha/mock.rb +1 -1
- data/lib/mocha/mockery.rb +9 -22
- data/lib/mocha/state_machine.rb +30 -38
- data/lib/mocha/version.rb +1 -1
- data/mocha.gemspec +3 -1
- metadata +5 -192
- data/docs/CNAME +0 -1
- data/docs/Mocha.html +0 -254
- data/docs/Mocha/API.html +0 -1285
- data/docs/Mocha/ClassMethods.html +0 -264
- data/docs/Mocha/Configuration.html +0 -1525
- data/docs/Mocha/Expectation.html +0 -2862
- data/docs/Mocha/ExpectationError.html +0 -152
- data/docs/Mocha/ExpectationErrorFactory.html +0 -260
- data/docs/Mocha/Hooks.html +0 -370
- data/docs/Mocha/Integration.html +0 -125
- data/docs/Mocha/Integration/MiniTest.html +0 -123
- data/docs/Mocha/Integration/MiniTest/Adapter.html +0 -164
- data/docs/Mocha/Integration/TestUnit.html +0 -123
- data/docs/Mocha/Integration/TestUnit/Adapter.html +0 -164
- data/docs/Mocha/Mock.html +0 -1210
- data/docs/Mocha/ObjectMethods.html +0 -765
- data/docs/Mocha/ParameterMatchers.html +0 -2949
- data/docs/Mocha/ParameterMatchers/AllOf.html +0 -153
- data/docs/Mocha/ParameterMatchers/AnyOf.html +0 -153
- data/docs/Mocha/ParameterMatchers/AnyParameters.html +0 -153
- data/docs/Mocha/ParameterMatchers/Anything.html +0 -153
- data/docs/Mocha/ParameterMatchers/Base.html +0 -441
- data/docs/Mocha/ParameterMatchers/Equals.html +0 -153
- data/docs/Mocha/ParameterMatchers/EquivalentUri.html +0 -153
- data/docs/Mocha/ParameterMatchers/HasEntries.html +0 -153
- data/docs/Mocha/ParameterMatchers/HasEntry.html +0 -153
- data/docs/Mocha/ParameterMatchers/HasKey.html +0 -153
- data/docs/Mocha/ParameterMatchers/HasValue.html +0 -153
- data/docs/Mocha/ParameterMatchers/Includes.html +0 -153
- data/docs/Mocha/ParameterMatchers/InstanceOf.html +0 -153
- data/docs/Mocha/ParameterMatchers/IsA.html +0 -153
- data/docs/Mocha/ParameterMatchers/KindOf.html +0 -153
- data/docs/Mocha/ParameterMatchers/Not.html +0 -153
- data/docs/Mocha/ParameterMatchers/Optionally.html +0 -153
- data/docs/Mocha/ParameterMatchers/RegexpMatches.html +0 -153
- data/docs/Mocha/ParameterMatchers/RespondsWith.html +0 -153
- data/docs/Mocha/ParameterMatchers/YamlEquivalent.html +0 -153
- data/docs/Mocha/Sequence.html +0 -149
- data/docs/Mocha/StateMachine.html +0 -527
- data/docs/Mocha/StateMachine/State.html +0 -140
- data/docs/Mocha/StateMachine/StatePredicate.html +0 -140
- data/docs/Mocha/StubbingError.html +0 -150
- data/docs/_index.html +0 -519
- data/docs/class_list.html +0 -51
- data/docs/css/common.css +0 -1
- data/docs/css/full_list.css +0 -58
- data/docs/css/style.css +0 -496
- data/docs/file.COPYING.html +0 -81
- data/docs/file.MIT-LICENSE.html +0 -85
- data/docs/file.README.html +0 -448
- data/docs/file.RELEASE.html +0 -1028
- data/docs/file_list.html +0 -71
- data/docs/frames.html +0 -17
- data/docs/index.html +0 -448
- data/docs/js/app.js +0 -303
- data/docs/js/full_list.js +0 -216
- data/docs/js/jquery.js +0 -4
- data/docs/method_list.html +0 -651
- data/docs/top-level-namespace.html +0 -118
- data/test/acceptance/acceptance_test_helper.rb +0 -42
- data/test/acceptance/bug_18914_test.rb +0 -37
- data/test/acceptance/bug_21465_test.rb +0 -31
- data/test/acceptance/bug_21563_test.rb +0 -22
- data/test/acceptance/display_matching_invocations_alongside_expectations_test.rb +0 -69
- data/test/acceptance/exception_rescue_test.rb +0 -53
- data/test/acceptance/expectations_on_multiple_methods_test.rb +0 -55
- data/test/acceptance/expected_invocation_count_test.rb +0 -229
- data/test/acceptance/failure_messages_test.rb +0 -77
- data/test/acceptance/issue_272_test.rb +0 -50
- data/test/acceptance/issue_457_test.rb +0 -31
- data/test/acceptance/issue_65_test.rb +0 -64
- data/test/acceptance/issue_70_test.rb +0 -53
- data/test/acceptance/mocha_example_test.rb +0 -106
- data/test/acceptance/mocha_test_result_test.rb +0 -83
- data/test/acceptance/mock_built_with_first_argument_type_being_string_test.rb +0 -98
- data/test/acceptance/mock_test.rb +0 -191
- data/test/acceptance/mocked_methods_dispatch_test.rb +0 -75
- data/test/acceptance/multiple_expectations_failure_message_test.rb +0 -66
- data/test/acceptance/multiple_yielding_test.rb +0 -59
- data/test/acceptance/optional_parameters_test.rb +0 -67
- data/test/acceptance/parameter_matcher_test.rb +0 -299
- data/test/acceptance/partial_mocks_test.rb +0 -44
- data/test/acceptance/prepend_test.rb +0 -86
- data/test/acceptance/prevent_use_of_mocha_outside_test_test.rb +0 -76
- data/test/acceptance/raise_exception_test.rb +0 -36
- data/test/acceptance/return_value_test.rb +0 -49
- data/test/acceptance/sequence_test.rb +0 -189
- data/test/acceptance/states_test.rb +0 -71
- data/test/acceptance/stub_any_instance_method_defined_on_superclass_test.rb +0 -64
- data/test/acceptance/stub_any_instance_method_test.rb +0 -301
- data/test/acceptance/stub_class_method_defined_on_active_record_association_proxy_test.rb +0 -105
- data/test/acceptance/stub_class_method_defined_on_class_test.rb +0 -78
- data/test/acceptance/stub_class_method_defined_on_module_test.rb +0 -73
- data/test/acceptance/stub_class_method_defined_on_superclass_test.rb +0 -144
- data/test/acceptance/stub_everything_test.rb +0 -53
- data/test/acceptance/stub_instance_method_defined_on_active_record_association_proxy_test.rb +0 -91
- data/test/acceptance/stub_instance_method_defined_on_class_and_aliased_test.rb +0 -67
- data/test/acceptance/stub_instance_method_defined_on_class_test.rb +0 -67
- data/test/acceptance/stub_instance_method_defined_on_kernel_module_test.rb +0 -136
- data/test/acceptance/stub_instance_method_defined_on_module_test.rb +0 -76
- data/test/acceptance/stub_instance_method_defined_on_object_class_test.rb +0 -75
- data/test/acceptance/stub_instance_method_defined_on_singleton_class_test.rb +0 -67
- data/test/acceptance/stub_instance_method_defined_on_superclass_test.rb +0 -70
- data/test/acceptance/stub_method_defined_on_module_and_aliased_test.rb +0 -38
- data/test/acceptance/stub_module_method_test.rb +0 -200
- data/test/acceptance/stub_test.rb +0 -49
- data/test/acceptance/stubba_example_test.rb +0 -103
- data/test/acceptance/stubba_test_result_test.rb +0 -71
- data/test/acceptance/stubbing_error_backtrace_test.rb +0 -63
- data/test/acceptance/stubbing_frozen_object_test.rb +0 -88
- data/test/acceptance/stubbing_method_accepting_block_parameter_test.rb +0 -52
- data/test/acceptance/stubbing_method_unnecessarily_test.rb +0 -63
- data/test/acceptance/stubbing_nil_test.rb +0 -60
- data/test/acceptance/stubbing_non_existent_any_instance_method_test.rb +0 -157
- data/test/acceptance/stubbing_non_existent_class_method_test.rb +0 -157
- data/test/acceptance/stubbing_non_existent_instance_method_test.rb +0 -145
- data/test/acceptance/stubbing_non_public_any_instance_method_test.rb +0 -128
- data/test/acceptance/stubbing_non_public_class_method_test.rb +0 -163
- data/test/acceptance/stubbing_non_public_instance_method_test.rb +0 -141
- data/test/acceptance/stubbing_on_non_mock_object_test.rb +0 -70
- data/test/acceptance/stubbing_same_class_method_on_parent_and_child_classes_test.rb +0 -33
- data/test/acceptance/throw_test.rb +0 -42
- data/test/acceptance/unexpected_invocation_test.rb +0 -23
- data/test/acceptance/unstubbing_test.rb +0 -194
- data/test/acceptance/yielding_test.rb +0 -80
- data/test/assertions.rb +0 -8
- data/test/deprecation_disabler.rb +0 -15
- data/test/execution_point.rb +0 -36
- data/test/integration/mini_test_test.rb +0 -8
- data/test/integration/shared_tests.rb +0 -178
- data/test/integration/test_unit_test.rb +0 -8
- data/test/method_definer.rb +0 -16
- data/test/mini_test_result.rb +0 -96
- data/test/minitest_result.rb +0 -48
- data/test/simple_counter.rb +0 -11
- data/test/test_helper.rb +0 -58
- data/test/test_runner.rb +0 -58
- data/test/test_unit_result.rb +0 -22
- data/test/unit/any_instance_method_test.rb +0 -175
- data/test/unit/array_inspect_test.rb +0 -14
- data/test/unit/backtrace_filter_test.rb +0 -17
- data/test/unit/cardinality_test.rb +0 -72
- data/test/unit/central_test.rb +0 -98
- data/test/unit/change_state_side_effect_test.rb +0 -37
- data/test/unit/class_methods_test.rb +0 -69
- data/test/unit/configuration_test.rb +0 -37
- data/test/unit/date_time_inspect_test.rb +0 -19
- data/test/unit/exception_raiser_test.rb +0 -45
- data/test/unit/expectation_list_test.rb +0 -82
- data/test/unit/expectation_test.rb +0 -504
- data/test/unit/hash_inspect_test.rb +0 -14
- data/test/unit/hooks_test.rb +0 -35
- data/test/unit/in_state_ordering_constraint_test.rb +0 -39
- data/test/unit/instance_method_test.rb +0 -282
- data/test/unit/method_matcher_test.rb +0 -26
- data/test/unit/mock_test.rb +0 -372
- data/test/unit/mockery_test.rb +0 -171
- data/test/unit/module_methods_test.rb +0 -16
- data/test/unit/object_inspect_test.rb +0 -60
- data/test/unit/object_methods_test.rb +0 -63
- data/test/unit/parameter_matchers/all_of_test.rb +0 -24
- data/test/unit/parameter_matchers/any_of_test.rb +0 -24
- data/test/unit/parameter_matchers/anything_test.rb +0 -19
- data/test/unit/parameter_matchers/equals_test.rb +0 -23
- data/test/unit/parameter_matchers/equivalent_uri_test.rb +0 -41
- data/test/unit/parameter_matchers/has_entries_test.rb +0 -51
- data/test/unit/parameter_matchers/has_entry_test.rb +0 -128
- data/test/unit/parameter_matchers/has_key_test.rb +0 -54
- data/test/unit/parameter_matchers/has_value_test.rb +0 -55
- data/test/unit/parameter_matchers/includes_test.rb +0 -106
- data/test/unit/parameter_matchers/instance_of_test.rb +0 -23
- data/test/unit/parameter_matchers/is_a_test.rb +0 -23
- data/test/unit/parameter_matchers/kind_of_test.rb +0 -23
- data/test/unit/parameter_matchers/not_test.rb +0 -24
- data/test/unit/parameter_matchers/regexp_matches_test.rb +0 -45
- data/test/unit/parameter_matchers/responds_with_test.rb +0 -38
- data/test/unit/parameter_matchers/stub_matcher.rb +0 -23
- data/test/unit/parameter_matchers/yaml_equivalent_test.rb +0 -23
- data/test/unit/parameters_matcher_test.rb +0 -119
- data/test/unit/receivers_test.rb +0 -96
- data/test/unit/return_values_test.rb +0 -66
- data/test/unit/sequence_test.rb +0 -100
- data/test/unit/single_return_value_test.rb +0 -17
- data/test/unit/state_machine_test.rb +0 -96
- data/test/unit/string_inspect_test.rb +0 -9
- data/test/unit/thrower_test.rb +0 -23
- data/test/unit/yield_parameters_test.rb +0 -73
@@ -1,136 +0,0 @@
|
|
1
|
-
require File.expand_path('../acceptance_test_helper', __FILE__)
|
2
|
-
|
3
|
-
class StubInstanceMethodDefinedOnKernelModuleTest < Mocha::TestCase
|
4
|
-
include AcceptanceTest
|
5
|
-
|
6
|
-
def setup
|
7
|
-
setup_acceptance_test
|
8
|
-
end
|
9
|
-
|
10
|
-
def teardown
|
11
|
-
teardown_acceptance_test
|
12
|
-
end
|
13
|
-
|
14
|
-
def test_should_stub_public_method_and_leave_it_unchanged_after_test
|
15
|
-
Kernel.module_eval do
|
16
|
-
def my_instance_method
|
17
|
-
:original_return_value
|
18
|
-
end
|
19
|
-
public :my_instance_method
|
20
|
-
end
|
21
|
-
instance = Class.new.new
|
22
|
-
assert_snapshot_unchanged(instance) do
|
23
|
-
test_result = run_as_test do
|
24
|
-
instance.stubs(:my_instance_method).returns(:new_return_value)
|
25
|
-
assert_equal :new_return_value, instance.my_instance_method
|
26
|
-
end
|
27
|
-
assert_passed(test_result)
|
28
|
-
end
|
29
|
-
assert_equal :original_return_value, instance.my_instance_method
|
30
|
-
ensure
|
31
|
-
Kernel.module_eval { remove_method :my_instance_method }
|
32
|
-
end
|
33
|
-
|
34
|
-
def test_should_stub_protected_method_and_leave_it_unchanged_after_test
|
35
|
-
Kernel.module_eval do
|
36
|
-
def my_instance_method
|
37
|
-
:original_return_value
|
38
|
-
end
|
39
|
-
protected :my_instance_method
|
40
|
-
end
|
41
|
-
instance = Class.new.new
|
42
|
-
assert_snapshot_unchanged(instance) do
|
43
|
-
test_result = run_as_test do
|
44
|
-
instance.stubs(:my_instance_method).returns(:new_return_value)
|
45
|
-
assert_equal :new_return_value, instance.send(:my_instance_method)
|
46
|
-
end
|
47
|
-
assert_passed(test_result)
|
48
|
-
end
|
49
|
-
assert_equal :original_return_value, instance.send(:my_instance_method)
|
50
|
-
ensure
|
51
|
-
Kernel.module_eval { remove_method :my_instance_method }
|
52
|
-
end
|
53
|
-
|
54
|
-
def test_should_stub_private_method_and_leave_it_unchanged_after_test
|
55
|
-
Kernel.module_eval do
|
56
|
-
def my_instance_method
|
57
|
-
:original_return_value
|
58
|
-
end
|
59
|
-
private :my_instance_method
|
60
|
-
end
|
61
|
-
instance = Class.new.new
|
62
|
-
assert_snapshot_unchanged(instance) do
|
63
|
-
test_result = run_as_test do
|
64
|
-
instance.stubs(:my_instance_method).returns(:new_return_value)
|
65
|
-
assert_equal :new_return_value, instance.send(:my_instance_method)
|
66
|
-
end
|
67
|
-
assert_passed(test_result)
|
68
|
-
end
|
69
|
-
assert_equal :original_return_value, instance.send(:my_instance_method)
|
70
|
-
ensure
|
71
|
-
Kernel.module_eval { remove_method :my_instance_method }
|
72
|
-
end
|
73
|
-
|
74
|
-
def test_should_stub_public_module_method_and_leave_it_unchanged_after_test
|
75
|
-
Kernel.module_eval do
|
76
|
-
def my_instance_method
|
77
|
-
:original_return_value
|
78
|
-
end
|
79
|
-
public :my_instance_method
|
80
|
-
end
|
81
|
-
mod = Module.new
|
82
|
-
assert_snapshot_unchanged(mod) do
|
83
|
-
test_result = run_as_test do
|
84
|
-
mod.stubs(:my_instance_method).returns(:new_return_value)
|
85
|
-
assert_method_visibility mod, :my_instance_method, :public
|
86
|
-
assert_equal :new_return_value, mod.my_instance_method
|
87
|
-
end
|
88
|
-
assert_passed(test_result)
|
89
|
-
end
|
90
|
-
assert_equal :original_return_value, mod.my_instance_method
|
91
|
-
ensure
|
92
|
-
Kernel.module_eval { remove_method :my_instance_method }
|
93
|
-
end
|
94
|
-
|
95
|
-
def test_should_stub_protected_module_method_and_leave_it_unchanged_after_test
|
96
|
-
Kernel.module_eval do
|
97
|
-
def my_instance_method
|
98
|
-
:original_return_value
|
99
|
-
end
|
100
|
-
protected :my_instance_method
|
101
|
-
end
|
102
|
-
mod = Module.new
|
103
|
-
assert_snapshot_unchanged(mod) do
|
104
|
-
test_result = run_as_test do
|
105
|
-
mod.stubs(:my_instance_method).returns(:new_return_value)
|
106
|
-
assert_method_visibility mod, :my_instance_method, :protected
|
107
|
-
assert_equal :new_return_value, mod.send(:my_instance_method)
|
108
|
-
end
|
109
|
-
assert_passed(test_result)
|
110
|
-
end
|
111
|
-
assert_equal :original_return_value, mod.send(:my_instance_method)
|
112
|
-
ensure
|
113
|
-
Kernel.module_eval { remove_method :my_instance_method }
|
114
|
-
end
|
115
|
-
|
116
|
-
def test_should_stub_private_module_method_and_leave_it_unchanged_after_test
|
117
|
-
Kernel.module_eval do
|
118
|
-
def my_instance_method
|
119
|
-
:original_return_value
|
120
|
-
end
|
121
|
-
private :my_instance_method
|
122
|
-
end
|
123
|
-
mod = Module.new
|
124
|
-
assert_snapshot_unchanged(mod) do
|
125
|
-
test_result = run_as_test do
|
126
|
-
mod.stubs(:my_instance_method).returns(:new_return_value)
|
127
|
-
assert_method_visibility mod, :my_instance_method, :private
|
128
|
-
assert_equal :new_return_value, mod.send(:my_instance_method)
|
129
|
-
end
|
130
|
-
assert_passed(test_result)
|
131
|
-
end
|
132
|
-
assert_equal :original_return_value, mod.send(:my_instance_method)
|
133
|
-
ensure
|
134
|
-
Kernel.module_eval { remove_method :my_instance_method }
|
135
|
-
end
|
136
|
-
end
|
@@ -1,76 +0,0 @@
|
|
1
|
-
require File.expand_path('../acceptance_test_helper', __FILE__)
|
2
|
-
|
3
|
-
class StubInstanceMethodDefinedOnModuleTest < Mocha::TestCase
|
4
|
-
include AcceptanceTest
|
5
|
-
|
6
|
-
def setup
|
7
|
-
setup_acceptance_test
|
8
|
-
end
|
9
|
-
|
10
|
-
def teardown
|
11
|
-
teardown_acceptance_test
|
12
|
-
end
|
13
|
-
|
14
|
-
def test_should_stub_public_method_and_leave_it_unchanged_after_test
|
15
|
-
mod = Module.new do
|
16
|
-
def my_module_method
|
17
|
-
:original_return_value
|
18
|
-
end
|
19
|
-
public :my_module_method
|
20
|
-
end
|
21
|
-
instance = Class.new do
|
22
|
-
include mod
|
23
|
-
end.new
|
24
|
-
assert_snapshot_unchanged(instance) do
|
25
|
-
test_result = run_as_test do
|
26
|
-
instance.stubs(:my_module_method).returns(:new_return_value)
|
27
|
-
assert_method_visibility instance, :my_module_method, :public
|
28
|
-
assert_equal :new_return_value, instance.my_module_method
|
29
|
-
end
|
30
|
-
assert_passed(test_result)
|
31
|
-
end
|
32
|
-
assert_equal :original_return_value, instance.my_module_method
|
33
|
-
end
|
34
|
-
|
35
|
-
def test_should_stub_protected_method_and_leave_it_unchanged_after_test
|
36
|
-
mod = Module.new do
|
37
|
-
def my_module_method
|
38
|
-
:original_return_value
|
39
|
-
end
|
40
|
-
protected :my_module_method
|
41
|
-
end
|
42
|
-
instance = Class.new do
|
43
|
-
include mod
|
44
|
-
end.new
|
45
|
-
assert_snapshot_unchanged(instance) do
|
46
|
-
test_result = run_as_test do
|
47
|
-
instance.stubs(:my_module_method).returns(:new_return_value)
|
48
|
-
assert_method_visibility instance, :my_module_method, :protected
|
49
|
-
assert_equal :new_return_value, instance.send(:my_module_method)
|
50
|
-
end
|
51
|
-
assert_passed(test_result)
|
52
|
-
end
|
53
|
-
assert_equal :original_return_value, instance.send(:my_module_method)
|
54
|
-
end
|
55
|
-
|
56
|
-
def test_should_stub_private_method_and_leave_it_unchanged_after_test
|
57
|
-
mod = Module.new do
|
58
|
-
def my_module_method
|
59
|
-
:original_return_value
|
60
|
-
end
|
61
|
-
private :my_module_method
|
62
|
-
end
|
63
|
-
instance = Class.new do
|
64
|
-
include mod
|
65
|
-
end.new
|
66
|
-
assert_snapshot_unchanged(instance) do
|
67
|
-
test_result = run_as_test do
|
68
|
-
instance.stubs(:my_module_method).returns(:new_return_value)
|
69
|
-
assert_method_visibility instance, :my_module_method, :private
|
70
|
-
assert_equal :new_return_value, instance.send(:my_module_method)
|
71
|
-
end
|
72
|
-
assert_passed(test_result)
|
73
|
-
end
|
74
|
-
assert_equal :original_return_value, instance.send(:my_module_method)
|
75
|
-
end
|
76
|
-
end
|
@@ -1,75 +0,0 @@
|
|
1
|
-
require File.expand_path('../acceptance_test_helper', __FILE__)
|
2
|
-
|
3
|
-
class StubInstanceMethodDefinedOnObjectClassTest < Mocha::TestCase
|
4
|
-
include AcceptanceTest
|
5
|
-
|
6
|
-
def setup
|
7
|
-
setup_acceptance_test
|
8
|
-
end
|
9
|
-
|
10
|
-
def teardown
|
11
|
-
teardown_acceptance_test
|
12
|
-
end
|
13
|
-
|
14
|
-
# rubocop:disable Lint/DuplicateMethods
|
15
|
-
def test_should_stub_public_method_and_leave_it_unchanged_after_test
|
16
|
-
Object.class_eval do
|
17
|
-
def my_instance_method
|
18
|
-
:original_return_value
|
19
|
-
end
|
20
|
-
public :my_instance_method
|
21
|
-
end
|
22
|
-
instance = Class.new.new
|
23
|
-
assert_snapshot_unchanged(instance) do
|
24
|
-
test_result = run_as_test do
|
25
|
-
instance.stubs(:my_instance_method).returns(:new_return_value)
|
26
|
-
assert_equal :new_return_value, instance.my_instance_method
|
27
|
-
end
|
28
|
-
assert_passed(test_result)
|
29
|
-
end
|
30
|
-
assert_equal :original_return_value, instance.my_instance_method
|
31
|
-
ensure
|
32
|
-
Object.class_eval { remove_method :my_instance_method }
|
33
|
-
end
|
34
|
-
|
35
|
-
def test_should_stub_protected_method_and_leave_it_unchanged_after_test
|
36
|
-
Object.class_eval do
|
37
|
-
def my_instance_method
|
38
|
-
:original_return_value
|
39
|
-
end
|
40
|
-
protected :my_instance_method
|
41
|
-
end
|
42
|
-
instance = Class.new.new
|
43
|
-
assert_snapshot_unchanged(instance) do
|
44
|
-
test_result = run_as_test do
|
45
|
-
instance.stubs(:my_instance_method).returns(:new_return_value)
|
46
|
-
assert_equal :new_return_value, instance.send(:my_instance_method)
|
47
|
-
end
|
48
|
-
assert_passed(test_result)
|
49
|
-
end
|
50
|
-
assert_equal :original_return_value, instance.send(:my_instance_method)
|
51
|
-
ensure
|
52
|
-
Object.class_eval { remove_method :my_instance_method }
|
53
|
-
end
|
54
|
-
|
55
|
-
def test_should_stub_private_method_and_leave_it_unchanged_after_test
|
56
|
-
Object.class_eval do
|
57
|
-
def my_instance_method
|
58
|
-
:original_return_value
|
59
|
-
end
|
60
|
-
private :my_instance_method
|
61
|
-
end
|
62
|
-
instance = Class.new.new
|
63
|
-
assert_snapshot_unchanged(instance) do
|
64
|
-
test_result = run_as_test do
|
65
|
-
instance.stubs(:my_instance_method).returns(:new_return_value)
|
66
|
-
assert_equal :new_return_value, instance.send(:my_instance_method)
|
67
|
-
end
|
68
|
-
assert_passed(test_result)
|
69
|
-
end
|
70
|
-
assert_equal :original_return_value, instance.send(:my_instance_method)
|
71
|
-
ensure
|
72
|
-
Object.class_eval { remove_method :my_instance_method }
|
73
|
-
end
|
74
|
-
# rubocop:enable Lint/DuplicateMethods
|
75
|
-
end
|
@@ -1,67 +0,0 @@
|
|
1
|
-
require File.expand_path('../acceptance_test_helper', __FILE__)
|
2
|
-
|
3
|
-
class StubInstanceMethodDefinedOnSingletonClassTest < Mocha::TestCase
|
4
|
-
include AcceptanceTest
|
5
|
-
|
6
|
-
def setup
|
7
|
-
setup_acceptance_test
|
8
|
-
end
|
9
|
-
|
10
|
-
def teardown
|
11
|
-
teardown_acceptance_test
|
12
|
-
end
|
13
|
-
|
14
|
-
def test_should_stub_public_method_and_leave_it_unchanged_after_test
|
15
|
-
instance = Class.new.new
|
16
|
-
class << instance
|
17
|
-
def my_singleton_method
|
18
|
-
:original_return_value
|
19
|
-
end
|
20
|
-
public :my_singleton_method
|
21
|
-
end
|
22
|
-
assert_snapshot_unchanged(instance) do
|
23
|
-
test_result = run_as_test do
|
24
|
-
instance.stubs(:my_singleton_method).returns(:stubbed_return_value)
|
25
|
-
assert_equal :stubbed_return_value, instance.my_singleton_method
|
26
|
-
end
|
27
|
-
assert_passed(test_result)
|
28
|
-
end
|
29
|
-
assert_equal :original_return_value, instance.my_singleton_method
|
30
|
-
end
|
31
|
-
|
32
|
-
def test_should_stub_protected_method_and_leave_it_unchanged_after_test
|
33
|
-
instance = Class.new.new
|
34
|
-
class << instance
|
35
|
-
def my_singleton_method
|
36
|
-
:original_return_value
|
37
|
-
end
|
38
|
-
protected :my_singleton_method
|
39
|
-
end
|
40
|
-
assert_snapshot_unchanged(instance) do
|
41
|
-
test_result = run_as_test do
|
42
|
-
instance.stubs(:my_singleton_method).returns(:stubbed_return_value)
|
43
|
-
assert_equal :stubbed_return_value, instance.send(:my_singleton_method)
|
44
|
-
end
|
45
|
-
assert_passed(test_result)
|
46
|
-
end
|
47
|
-
assert_equal :original_return_value, instance.send(:my_singleton_method)
|
48
|
-
end
|
49
|
-
|
50
|
-
def test_should_stub_private_method_and_leave_it_unchanged_after_test
|
51
|
-
instance = Class.new.new
|
52
|
-
class << instance
|
53
|
-
def my_singleton_method
|
54
|
-
:original_return_value
|
55
|
-
end
|
56
|
-
private :my_singleton_method
|
57
|
-
end
|
58
|
-
assert_snapshot_unchanged(instance) do
|
59
|
-
test_result = run_as_test do
|
60
|
-
instance.stubs(:my_singleton_method).returns(:stubbed_return_value)
|
61
|
-
assert_equal :stubbed_return_value, instance.send(:my_singleton_method)
|
62
|
-
end
|
63
|
-
assert_passed(test_result)
|
64
|
-
end
|
65
|
-
assert_equal :original_return_value, instance.send(:my_singleton_method)
|
66
|
-
end
|
67
|
-
end
|
@@ -1,70 +0,0 @@
|
|
1
|
-
require File.expand_path('../acceptance_test_helper', __FILE__)
|
2
|
-
|
3
|
-
class StubInstanceMethodDefinedOnSuperclassTest < Mocha::TestCase
|
4
|
-
include AcceptanceTest
|
5
|
-
|
6
|
-
def setup
|
7
|
-
setup_acceptance_test
|
8
|
-
end
|
9
|
-
|
10
|
-
def teardown
|
11
|
-
teardown_acceptance_test
|
12
|
-
end
|
13
|
-
|
14
|
-
def test_should_stub_public_method_and_leave_it_unchanged_after_test
|
15
|
-
superklass = Class.new do
|
16
|
-
def my_superclass_method
|
17
|
-
:original_return_value
|
18
|
-
end
|
19
|
-
public :my_superclass_method
|
20
|
-
end
|
21
|
-
klass = Class.new(superklass)
|
22
|
-
instance = klass.new
|
23
|
-
assert_snapshot_unchanged(instance) do
|
24
|
-
test_result = run_as_test do
|
25
|
-
instance.stubs(:my_superclass_method).returns(:new_return_value)
|
26
|
-
assert_equal :new_return_value, instance.my_superclass_method
|
27
|
-
end
|
28
|
-
assert_passed(test_result)
|
29
|
-
end
|
30
|
-
assert_equal :original_return_value, instance.my_superclass_method
|
31
|
-
end
|
32
|
-
|
33
|
-
def test_should_stub_protected_method_and_leave_it_unchanged_after_test
|
34
|
-
superklass = Class.new do
|
35
|
-
def my_superclass_method
|
36
|
-
:original_return_value
|
37
|
-
end
|
38
|
-
protected :my_superclass_method
|
39
|
-
end
|
40
|
-
klass = Class.new(superklass)
|
41
|
-
instance = klass.new
|
42
|
-
assert_snapshot_unchanged(instance) do
|
43
|
-
test_result = run_as_test do
|
44
|
-
instance.stubs(:my_superclass_method).returns(:new_return_value)
|
45
|
-
assert_equal :new_return_value, instance.send(:my_superclass_method)
|
46
|
-
end
|
47
|
-
assert_passed(test_result)
|
48
|
-
end
|
49
|
-
assert_equal :original_return_value, instance.send(:my_superclass_method)
|
50
|
-
end
|
51
|
-
|
52
|
-
def test_should_stub_private_method_and_leave_it_unchanged_after_test
|
53
|
-
superklass = Class.new do
|
54
|
-
def my_superclass_method
|
55
|
-
:original_return_value
|
56
|
-
end
|
57
|
-
private :my_superclass_method
|
58
|
-
end
|
59
|
-
klass = Class.new(superklass)
|
60
|
-
instance = klass.new
|
61
|
-
assert_snapshot_unchanged(instance) do
|
62
|
-
test_result = run_as_test do
|
63
|
-
instance.stubs(:my_superclass_method).returns(:new_return_value)
|
64
|
-
assert_equal :new_return_value, instance.send(:my_superclass_method)
|
65
|
-
end
|
66
|
-
assert_passed(test_result)
|
67
|
-
end
|
68
|
-
assert_equal :original_return_value, instance.send(:my_superclass_method)
|
69
|
-
end
|
70
|
-
end
|
@@ -1,38 +0,0 @@
|
|
1
|
-
require File.expand_path('../acceptance_test_helper', __FILE__)
|
2
|
-
|
3
|
-
unless Mocha::PRE_RUBY_V19
|
4
|
-
class StubMethodDefinedOnModuleAndAliasedTest < Mocha::TestCase
|
5
|
-
include AcceptanceTest
|
6
|
-
|
7
|
-
def setup
|
8
|
-
setup_acceptance_test
|
9
|
-
end
|
10
|
-
|
11
|
-
def teardown
|
12
|
-
teardown_acceptance_test
|
13
|
-
end
|
14
|
-
|
15
|
-
def test_stubbing_class_method_defined_by_aliasing_module_instance_method
|
16
|
-
mod = Module.new do
|
17
|
-
def module_instance_method
|
18
|
-
'module-instance-method'
|
19
|
-
end
|
20
|
-
end
|
21
|
-
|
22
|
-
klass = Class.new do
|
23
|
-
extend mod
|
24
|
-
class << self
|
25
|
-
alias_method :aliased_module_instance_method, :module_instance_method
|
26
|
-
end
|
27
|
-
end
|
28
|
-
|
29
|
-
assert_snapshot_unchanged(klass) do
|
30
|
-
test_result = run_as_test do
|
31
|
-
klass.stubs(:aliased_module_instance_method).returns('stubbed-aliased-module-instance-method')
|
32
|
-
assert_equal 'stubbed-aliased-module-instance-method', klass.aliased_module_instance_method
|
33
|
-
end
|
34
|
-
assert_passed(test_result)
|
35
|
-
end
|
36
|
-
end
|
37
|
-
end
|
38
|
-
end
|