mocha 0.10.5 → 0.11.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.
- data/COPYING.rdoc +1 -1
- data/README.rdoc +6 -4
- data/RELEASE.rdoc +12 -0
- data/Rakefile +29 -60
- data/doc/Mocha.html +112 -0
- data/doc/Mocha/API.html +898 -0
- data/doc/Mocha/ClassMethods.html +246 -0
- data/doc/Mocha/Configuration.html +471 -0
- data/doc/Mocha/Expectation.html +2570 -0
- data/doc/Mocha/Mock.html +830 -0
- data/doc/Mocha/ObjectMethods.html +668 -0
- data/doc/Mocha/ParameterMatchers.html +2715 -0
- data/doc/Mocha/ParameterMatchers/AllOf.html +137 -0
- data/doc/Mocha/ParameterMatchers/AnyOf.html +137 -0
- data/doc/Mocha/ParameterMatchers/AnyParameters.html +136 -0
- data/doc/Mocha/ParameterMatchers/Anything.html +136 -0
- data/doc/Mocha/ParameterMatchers/Base.html +419 -0
- data/doc/Mocha/ParameterMatchers/Equals.html +137 -0
- data/doc/Mocha/ParameterMatchers/HasEntries.html +137 -0
- data/doc/Mocha/ParameterMatchers/HasEntry.html +137 -0
- data/doc/Mocha/ParameterMatchers/HasKey.html +137 -0
- data/doc/Mocha/ParameterMatchers/HasValue.html +137 -0
- data/doc/Mocha/ParameterMatchers/Includes.html +137 -0
- data/doc/Mocha/ParameterMatchers/InstanceOf.html +137 -0
- data/doc/Mocha/ParameterMatchers/IsA.html +136 -0
- data/doc/Mocha/ParameterMatchers/KindOf.html +137 -0
- data/doc/Mocha/ParameterMatchers/Not.html +137 -0
- data/doc/Mocha/ParameterMatchers/Optionally.html +136 -0
- data/doc/Mocha/ParameterMatchers/QueryStringMatches.html +136 -0
- data/doc/Mocha/ParameterMatchers/RegexpMatches.html +137 -0
- data/doc/Mocha/ParameterMatchers/RespondsWith.html +137 -0
- data/doc/Mocha/ParameterMatchers/YamlEquivalent.html +137 -0
- data/doc/Mocha/Sequence.html +133 -0
- data/doc/Mocha/StateMachine.html +510 -0
- data/doc/Mocha/StateMachine/State.html +125 -0
- data/doc/Mocha/StateMachine/StatePredicate.html +125 -0
- data/doc/Mocha/StubbingError.html +134 -0
- data/doc/Mocha/UnexpectedInvocation.html +124 -0
- data/doc/_index.html +481 -0
- data/doc/class_list.html +47 -0
- data/doc/css/common.css +1 -0
- data/doc/css/full_list.css +55 -0
- data/doc/css/style.css +322 -0
- data/doc/file.COPYING.html +72 -0
- data/doc/file.MIT-LICENSE.html +86 -0
- data/doc/file.README.html +153 -0
- data/doc/file.RELEASE.html +933 -0
- data/doc/file.misc.html +108 -0
- data/doc/file.mocha.html +90 -0
- data/doc/file.stubba.html +129 -0
- data/doc/file_list.html +67 -0
- data/doc/frames.html +13 -0
- data/doc/index.html +153 -0
- data/doc/js/app.js +205 -0
- data/doc/js/full_list.js +173 -0
- data/doc/js/jquery.js +16 -0
- data/doc/method_list.html +510 -0
- data/doc/top-level-namespace.html +105 -0
- data/lib/mocha/any_instance_method.rb +16 -11
- data/lib/mocha/api.rb +120 -106
- data/lib/mocha/argument_iterator.rb +6 -6
- data/lib/mocha/backtrace_filter.rb +1 -1
- data/lib/mocha/cardinality.rb +21 -21
- data/lib/mocha/central.rb +8 -8
- data/lib/mocha/change_state_side_effect.rb +5 -5
- data/lib/mocha/class_method.rb +14 -19
- data/lib/mocha/configuration.rb +47 -37
- data/lib/mocha/deprecation.rb +8 -8
- data/lib/mocha/exception_raiser.rb +7 -7
- data/lib/mocha/expectation.rb +173 -77
- data/lib/mocha/expectation_error.rb +2 -2
- data/lib/mocha/expectation_list.rb +11 -11
- data/lib/mocha/in_state_ordering_constraint.rb +5 -5
- data/lib/mocha/inspect.rb +8 -8
- data/lib/mocha/instance_method.rb +1 -17
- data/lib/mocha/integration.rb +9 -9
- data/lib/mocha/integration/mini_test/assertion_counter.rb +9 -9
- data/lib/mocha/integration/mini_test/exception_translation.rb +6 -6
- data/lib/mocha/integration/mini_test/version_13.rb +6 -6
- data/lib/mocha/integration/mini_test/version_140.rb +6 -6
- data/lib/mocha/integration/mini_test/version_141.rb +6 -6
- data/lib/mocha/integration/mini_test/version_142_to_172.rb +7 -7
- data/lib/mocha/integration/mini_test/version_200.rb +7 -7
- data/lib/mocha/integration/test_unit/assertion_counter.rb +10 -10
- data/lib/mocha/integration/test_unit/gem_version_200.rb +6 -6
- data/lib/mocha/integration/test_unit/gem_version_201_to_202.rb +6 -6
- data/lib/mocha/integration/test_unit/ruby_version_185_and_below.rb +6 -6
- data/lib/mocha/integration/test_unit/ruby_version_186_and_above.rb +6 -6
- data/lib/mocha/is_a.rb +1 -1
- data/lib/mocha/logger.rb +6 -6
- data/lib/mocha/method_matcher.rb +7 -7
- data/lib/mocha/mock.rb +85 -48
- data/lib/mocha/mockery.rb +47 -33
- data/lib/mocha/module_method.rb +2 -2
- data/lib/mocha/multiple_yields.rb +9 -9
- data/lib/mocha/names.rb +18 -18
- data/lib/mocha/no_yields.rb +7 -7
- data/lib/mocha/object.rb +104 -75
- data/lib/mocha/parameter_matchers.rb +3 -3
- data/lib/mocha/parameter_matchers/all_of.rb +22 -12
- data/lib/mocha/parameter_matchers/any_of.rb +23 -12
- data/lib/mocha/parameter_matchers/any_parameters.rb +15 -8
- data/lib/mocha/parameter_matchers/anything.rb +20 -11
- data/lib/mocha/parameter_matchers/base.rb +35 -27
- data/lib/mocha/parameter_matchers/equals.rb +23 -12
- data/lib/mocha/parameter_matchers/has_entries.rb +22 -12
- data/lib/mocha/parameter_matchers/has_entry.rb +31 -13
- data/lib/mocha/parameter_matchers/has_key.rb +21 -11
- data/lib/mocha/parameter_matchers/has_value.rb +21 -11
- data/lib/mocha/parameter_matchers/includes.rb +15 -5
- data/lib/mocha/parameter_matchers/instance_of.rb +23 -12
- data/lib/mocha/parameter_matchers/is_a.rb +23 -12
- data/lib/mocha/parameter_matchers/kind_of.rb +23 -12
- data/lib/mocha/parameter_matchers/not.rb +22 -12
- data/lib/mocha/parameter_matchers/object.rb +5 -3
- data/lib/mocha/parameter_matchers/optionally.rb +24 -12
- data/lib/mocha/parameter_matchers/query_string.rb +14 -3
- data/lib/mocha/parameter_matchers/regexp_matches.rb +21 -11
- data/lib/mocha/parameter_matchers/responds_with.rb +17 -6
- data/lib/mocha/parameter_matchers/yaml_equivalent.rb +16 -6
- data/lib/mocha/parameters_matcher.rb +8 -8
- data/lib/mocha/pretty_parameters.rb +7 -7
- data/lib/mocha/return_values.rb +11 -11
- data/lib/mocha/sequence.rb +23 -14
- data/lib/mocha/single_return_value.rb +7 -7
- data/lib/mocha/single_yield.rb +9 -9
- data/lib/mocha/standalone.rb +1 -1
- data/lib/mocha/state_machine.rb +61 -46
- data/lib/mocha/stubbing_error.rb +8 -5
- data/lib/mocha/thrower.rb +2 -2
- data/lib/mocha/unexpected_invocation.rb +9 -6
- data/lib/mocha/version.rb +1 -1
- data/lib/mocha/yield_parameters.rb +10 -10
- data/lib/mocha_standalone.rb +1 -1
- data/mocha.gemspec +4 -7
- data/test/acceptance/acceptance_test_helper.rb +10 -10
- data/test/acceptance/api_test.rb +20 -20
- data/test/acceptance/bug_18914_test.rb +12 -12
- data/test/acceptance/bug_21465_test.rb +6 -6
- data/test/acceptance/bug_21563_test.rb +5 -5
- data/test/acceptance/exception_rescue_test.rb +1 -1
- data/test/acceptance/expected_invocation_count_test.rb +17 -17
- data/test/acceptance/failure_messages_test.rb +13 -13
- data/test/acceptance/minitest_test.rb +39 -39
- data/test/acceptance/mocha_example_test.rb +26 -26
- data/test/acceptance/mocha_test_result_test.rb +13 -13
- data/test/acceptance/mock_test.rb +5 -5
- data/test/acceptance/mock_with_initializer_block_test.rb +5 -5
- data/test/acceptance/mocked_methods_dispatch_test.rb +4 -4
- data/test/acceptance/multiple_expectations_failure_message_test.rb +2 -2
- data/test/acceptance/optional_parameters_test.rb +5 -5
- data/test/acceptance/parameter_matcher_test.rb +18 -18
- data/test/acceptance/partial_mocks_test.rb +9 -9
- data/test/acceptance/raise_exception_test.rb +1 -1
- data/test/acceptance/return_value_test.rb +5 -5
- data/test/acceptance/sequence_test.rb +29 -29
- data/test/acceptance/states_test.rb +17 -17
- data/test/acceptance/stub_any_instance_method_test.rb +13 -13
- data/test/acceptance/stub_class_method_defined_on_active_record_association_proxy_test.rb +7 -7
- data/test/acceptance/stub_everything_test.rb +5 -5
- data/test/acceptance/stub_instance_method_defined_on_singleton_class_test.rb +1 -1
- data/test/acceptance/stub_module_method_test.rb +17 -17
- data/test/acceptance/stub_test.rb +5 -5
- data/test/acceptance/stubba_example_test.rb +24 -24
- data/test/acceptance/stubba_test_result_test.rb +11 -11
- data/test/acceptance/stubbing_error_backtrace_test.rb +6 -6
- data/test/acceptance/stubbing_frozen_object_test.rb +88 -0
- data/test/acceptance/stubbing_method_unnecessarily_test.rb +9 -9
- data/test/acceptance/stubbing_nil_test.rb +59 -0
- data/test/acceptance/stubbing_non_existent_any_instance_method_test.rb +13 -13
- data/test/acceptance/stubbing_non_existent_class_method_test.rb +15 -15
- data/test/acceptance/stubbing_non_existent_instance_method_test.rb +14 -14
- data/test/acceptance/stubbing_non_public_any_instance_method_test.rb +13 -13
- data/test/acceptance/stubbing_non_public_class_method_test.rb +12 -12
- data/test/acceptance/stubbing_non_public_instance_method_test.rb +12 -12
- data/test/acceptance/stubbing_on_non_mock_object_test.rb +9 -9
- data/test/acceptance/stubbing_same_class_method_on_parent_and_child_classes_test.rb +35 -0
- data/test/acceptance/throw_test.rb +1 -1
- data/test/deprecation_disabler.rb +1 -1
- data/test/execution_point.rb +7 -7
- data/test/method_definer.rb +1 -1
- data/test/mini_test_result.rb +21 -21
- data/test/simple_counter.rb +5 -5
- data/test/test_helper.rb +1 -1
- data/test/test_runner.rb +22 -24
- data/test/test_unit_result.rb +20 -0
- data/test/unit/any_instance_method_test.rb +28 -32
- data/test/unit/array_inspect_test.rb +3 -3
- data/test/unit/backtrace_filter_test.rb +3 -3
- data/test/unit/cardinality_test.rb +12 -12
- data/test/unit/central_test.rb +18 -18
- data/test/unit/change_state_side_effect_test.rb +12 -12
- data/test/unit/class_method_test.rb +33 -91
- data/test/unit/date_time_inspect_test.rb +4 -4
- data/test/unit/exception_raiser_test.rb +5 -5
- data/test/unit/expectation_list_test.rb +7 -7
- data/test/unit/expectation_test.rb +66 -66
- data/test/unit/hash_inspect_test.rb +4 -4
- data/test/unit/in_state_ordering_constraint_test.rb +13 -13
- data/test/unit/method_matcher_test.rb +3 -3
- data/test/unit/mock_test.rb +40 -40
- data/test/unit/mockery_test.rb +25 -25
- data/test/unit/multiple_yields_test.rb +2 -2
- data/test/unit/no_yields_test.rb +2 -2
- data/test/unit/object_inspect_test.rb +4 -4
- data/test/unit/object_test.rb +15 -15
- data/test/unit/parameter_matchers/all_of_test.rb +6 -6
- data/test/unit/parameter_matchers/any_of_test.rb +6 -6
- data/test/unit/parameter_matchers/anything_test.rb +5 -5
- data/test/unit/parameter_matchers/has_entries_test.rb +10 -10
- data/test/unit/parameter_matchers/has_entry_test.rb +13 -13
- data/test/unit/parameter_matchers/has_key_test.rb +11 -11
- data/test/unit/parameter_matchers/has_value_test.rb +12 -12
- data/test/unit/parameter_matchers/includes_test.rb +4 -4
- data/test/unit/parameter_matchers/not_test.rb +6 -6
- data/test/unit/parameter_matchers/regexp_matches_test.rb +9 -9
- data/test/unit/parameter_matchers/responds_with_test.rb +6 -6
- data/test/unit/parameter_matchers/stub_matcher.rb +4 -4
- data/test/unit/parameter_matchers/yaml_equivalent_test.rb +6 -6
- data/test/unit/parameters_matcher_test.rb +16 -16
- data/test/unit/return_values_test.rb +5 -5
- data/test/unit/sequence_test.rb +10 -10
- data/test/unit/single_return_value_test.rb +3 -3
- data/test/unit/single_yield_test.rb +2 -2
- data/test/unit/state_machine_test.rb +19 -19
- data/test/unit/string_inspect_test.rb +2 -2
- data/test/unit/thrower_test.rb +1 -1
- data/test/unit/yield_parameters_test.rb +11 -11
- metadata +113 -101
@@ -17,146 +17,146 @@ else
|
|
17
17
|
end
|
18
18
|
|
19
19
|
if defined?(MiniTest)
|
20
|
-
|
20
|
+
|
21
21
|
# monkey-patch MiniTest now that it has hopefully been loaded
|
22
22
|
require 'mocha/integration/mini_test'
|
23
23
|
|
24
24
|
class MiniTestSampleTest < MiniTest::Unit::TestCase
|
25
|
-
|
25
|
+
|
26
26
|
def test_mocha_with_fulfilled_expectation
|
27
27
|
mockee = mock()
|
28
28
|
mockee.expects(:blah)
|
29
29
|
mockee.blah
|
30
30
|
end
|
31
|
-
|
31
|
+
|
32
32
|
def test_mocha_with_unfulfilled_expectation
|
33
33
|
mockee = mock()
|
34
34
|
mockee.expects(:blah)
|
35
35
|
end
|
36
|
-
|
36
|
+
|
37
37
|
def test_mocha_with_unexpected_invocation
|
38
38
|
mockee = mock()
|
39
39
|
mockee.blah
|
40
40
|
end
|
41
|
-
|
41
|
+
|
42
42
|
def test_stubba_with_fulfilled_expectation
|
43
43
|
stubbee = Class.new { define_method(:blah) {} }.new
|
44
44
|
stubbee.expects(:blah)
|
45
45
|
stubbee.blah
|
46
46
|
end
|
47
|
-
|
47
|
+
|
48
48
|
def test_stubba_with_unfulfilled_expectation
|
49
49
|
stubbee = Class.new { define_method(:blah) {} }.new
|
50
50
|
stubbee.expects(:blah)
|
51
51
|
end
|
52
|
-
|
52
|
+
|
53
53
|
def test_mocha_with_matching_parameter
|
54
54
|
mockee = mock()
|
55
55
|
mockee.expects(:blah).with(has_key(:wibble))
|
56
56
|
mockee.blah(:wibble => 1)
|
57
57
|
end
|
58
|
-
|
58
|
+
|
59
59
|
def test_mocha_with_non_matching_parameter
|
60
60
|
mockee = mock()
|
61
61
|
mockee.expects(:blah).with(has_key(:wibble))
|
62
62
|
mockee.blah(:wobble => 2)
|
63
63
|
end
|
64
|
-
|
64
|
+
|
65
65
|
end
|
66
66
|
|
67
67
|
class MiniTestTest < Test::Unit::TestCase
|
68
|
-
|
68
|
+
|
69
69
|
def setup
|
70
70
|
@output = StringIO.new
|
71
71
|
MiniTest::Unit.output = @output
|
72
72
|
@runner = MiniTest::Unit.new
|
73
73
|
end
|
74
|
-
|
74
|
+
|
75
75
|
attr_reader :runner
|
76
|
-
|
76
|
+
|
77
77
|
def test_should_pass_mocha_test
|
78
|
-
|
79
|
-
|
78
|
+
run_test_method :test_mocha_with_fulfilled_expectation
|
79
|
+
|
80
80
|
assert_equal 0, runner.failures
|
81
81
|
assert_equal 0, runner.errors
|
82
82
|
assert_equal 1, runner.assertion_count
|
83
83
|
end
|
84
84
|
|
85
85
|
def test_should_fail_mocha_test_due_to_unfulfilled_expectation
|
86
|
-
|
87
|
-
|
86
|
+
run_test_method :test_mocha_with_unfulfilled_expectation
|
87
|
+
|
88
88
|
assert_equal 1, runner.failures
|
89
89
|
assert_equal 0, runner.errors
|
90
90
|
assert_equal 1, runner.assertion_count
|
91
91
|
assert_not_all_expectation_were_satisfied
|
92
92
|
end
|
93
|
-
|
93
|
+
|
94
94
|
def test_should_fail_mocha_test_due_to_unexpected_invocation
|
95
|
-
|
96
|
-
|
95
|
+
run_test_method :test_mocha_with_unexpected_invocation
|
96
|
+
|
97
97
|
assert_equal 1, runner.failures
|
98
98
|
assert_equal 0, runner.errors
|
99
99
|
assert_equal 0, runner.assertion_count
|
100
100
|
assert_unexpected_invocation
|
101
101
|
end
|
102
|
-
|
102
|
+
|
103
103
|
def test_should_pass_stubba_test
|
104
|
-
|
105
|
-
|
104
|
+
run_test_method :test_stubba_with_fulfilled_expectation
|
105
|
+
|
106
106
|
assert_equal 0, runner.failures
|
107
107
|
assert_equal 0, runner.errors
|
108
108
|
assert_equal 1, runner.assertion_count
|
109
109
|
end
|
110
|
-
|
110
|
+
|
111
111
|
def test_should_fail_stubba_test_due_to_unfulfilled_expectation
|
112
|
-
|
113
|
-
|
112
|
+
run_test_method :test_stubba_with_unfulfilled_expectation
|
113
|
+
|
114
114
|
assert_equal 1, runner.failures
|
115
115
|
assert_equal 0, runner.errors
|
116
116
|
assert_equal 1, runner.assertion_count
|
117
117
|
assert_not_all_expectation_were_satisfied
|
118
118
|
end
|
119
|
-
|
119
|
+
|
120
120
|
def test_should_pass_mocha_test_with_matching_parameter
|
121
|
-
|
122
|
-
|
121
|
+
run_test_method :test_mocha_with_matching_parameter
|
122
|
+
|
123
123
|
assert_equal 0, runner.failures
|
124
124
|
assert_equal 0, runner.errors
|
125
125
|
assert_equal 1, runner.assertion_count
|
126
126
|
end
|
127
|
-
|
127
|
+
|
128
128
|
def test_should_fail_mocha_test_with_non_matching_parameter
|
129
|
-
|
130
|
-
|
129
|
+
run_test_method :test_mocha_with_non_matching_parameter
|
130
|
+
|
131
131
|
assert_equal 1, runner.failures
|
132
132
|
assert_equal 0, runner.errors
|
133
133
|
assert_equal 0, runner.assertion_count # unexpected invocation occurs before expectation is verified
|
134
134
|
assert_unexpected_invocation
|
135
135
|
end
|
136
|
-
|
136
|
+
|
137
137
|
private
|
138
138
|
|
139
|
-
def
|
139
|
+
def run_test_method(method_name)
|
140
140
|
run_method = (MiniTest::Unit::VERSION >= "2.1.0") ? :_run : :run
|
141
141
|
runner.send(run_method, ["-n", method_name.to_s])
|
142
142
|
end
|
143
|
-
|
143
|
+
|
144
144
|
def output
|
145
145
|
@output.rewind
|
146
146
|
@output.read
|
147
147
|
end
|
148
|
-
|
148
|
+
|
149
149
|
def assert_unexpected_invocation
|
150
150
|
assert_match Regexp.new('unexpected invocation'), output, "MiniTest output:\n#{output}"
|
151
151
|
end
|
152
|
-
|
152
|
+
|
153
153
|
def assert_not_all_expectation_were_satisfied
|
154
154
|
assert_match Regexp.new('not all expectations were satisfied'), output, "MiniTest output:\n#{output}"
|
155
155
|
end
|
156
|
-
|
156
|
+
|
157
157
|
end
|
158
|
-
|
158
|
+
|
159
159
|
else
|
160
160
|
$stderr.puts "MiniTest is not available, so MiniTestAdapterTest has not been run."
|
161
161
|
end
|
162
|
-
end
|
162
|
+
end
|
@@ -2,97 +2,97 @@ require File.expand_path('../../test_helper', __FILE__)
|
|
2
2
|
require 'mocha'
|
3
3
|
|
4
4
|
class MochaExampleTest < Test::Unit::TestCase
|
5
|
-
|
5
|
+
|
6
6
|
class Rover
|
7
|
-
|
7
|
+
|
8
8
|
def initialize(left_track, right_track, steps_per_metre, steps_per_degree)
|
9
9
|
@left_track, @right_track, @steps_per_metre, @steps_per_degree = left_track, right_track, steps_per_metre, steps_per_degree
|
10
10
|
end
|
11
|
-
|
11
|
+
|
12
12
|
def forward(metres)
|
13
13
|
@left_track.step(metres * @steps_per_metre)
|
14
14
|
@right_track.step(metres * @steps_per_metre)
|
15
15
|
wait
|
16
16
|
end
|
17
|
-
|
17
|
+
|
18
18
|
def backward(metres)
|
19
19
|
forward(-metres)
|
20
20
|
end
|
21
|
-
|
21
|
+
|
22
22
|
def left(degrees)
|
23
23
|
@left_track.step(-degrees * @steps_per_degree)
|
24
24
|
@right_track.step(+degrees * @steps_per_degree)
|
25
25
|
wait
|
26
26
|
end
|
27
|
-
|
27
|
+
|
28
28
|
def right(degrees)
|
29
29
|
left(-degrees)
|
30
30
|
end
|
31
|
-
|
31
|
+
|
32
32
|
def wait
|
33
33
|
while (@left_track.moving? or @right_track.moving?); end
|
34
34
|
end
|
35
|
-
|
35
|
+
|
36
36
|
end
|
37
|
-
|
37
|
+
|
38
38
|
def test_should_step_both_tracks_forward_ten_steps
|
39
39
|
left_track = mock('left_track')
|
40
40
|
right_track = mock('right_track')
|
41
41
|
steps_per_metre = 5
|
42
42
|
rover = Rover.new(left_track, right_track, steps_per_metre, nil)
|
43
|
-
|
43
|
+
|
44
44
|
left_track.expects(:step).with(10)
|
45
45
|
right_track.expects(:step).with(10)
|
46
|
-
|
46
|
+
|
47
47
|
left_track.stubs(:moving?).returns(false)
|
48
48
|
right_track.stubs(:moving?).returns(false)
|
49
|
-
|
49
|
+
|
50
50
|
rover.forward(2)
|
51
51
|
end
|
52
|
-
|
52
|
+
|
53
53
|
def test_should_step_both_tracks_backward_ten_steps
|
54
54
|
left_track = mock('left_track')
|
55
55
|
right_track = mock('right_track')
|
56
56
|
steps_per_metre = 5
|
57
57
|
rover = Rover.new(left_track, right_track, steps_per_metre, nil)
|
58
|
-
|
58
|
+
|
59
59
|
left_track.expects(:step).with(-10)
|
60
60
|
right_track.expects(:step).with(-10)
|
61
|
-
|
61
|
+
|
62
62
|
left_track.stubs(:moving?).returns(false)
|
63
63
|
right_track.stubs(:moving?).returns(false)
|
64
|
-
|
64
|
+
|
65
65
|
rover.backward(2)
|
66
66
|
end
|
67
|
-
|
67
|
+
|
68
68
|
def test_should_step_left_track_forwards_five_steps_and_right_track_backwards_five_steps
|
69
69
|
left_track = mock('left_track')
|
70
70
|
right_track = mock('right_track')
|
71
71
|
steps_per_degree = 5.0 / 90.0
|
72
72
|
rover = Rover.new(left_track, right_track, nil, steps_per_degree)
|
73
|
-
|
73
|
+
|
74
74
|
left_track.expects(:step).with(+5)
|
75
75
|
right_track.expects(:step).with(-5)
|
76
|
-
|
76
|
+
|
77
77
|
left_track.stubs(:moving?).returns(false)
|
78
78
|
right_track.stubs(:moving?).returns(false)
|
79
|
-
|
79
|
+
|
80
80
|
rover.right(90)
|
81
81
|
end
|
82
|
-
|
82
|
+
|
83
83
|
def test_should_step_left_track_backwards_five_steps_and_right_track_forwards_five_steps
|
84
84
|
left_track = mock('left_track')
|
85
85
|
right_track = mock('right_track')
|
86
86
|
steps_per_degree = 5.0 / 90.0
|
87
87
|
rover = Rover.new(left_track, right_track, nil, steps_per_degree)
|
88
|
-
|
88
|
+
|
89
89
|
left_track.expects(:step).with(-5)
|
90
90
|
right_track.expects(:step).with(+5)
|
91
|
-
|
91
|
+
|
92
92
|
left_track.stubs(:moving?).returns(false)
|
93
93
|
right_track.stubs(:moving?).returns(false)
|
94
|
-
|
94
|
+
|
95
95
|
rover.left(90)
|
96
96
|
end
|
97
|
-
|
98
|
-
end
|
97
|
+
|
98
|
+
end
|
@@ -3,13 +3,13 @@ require 'mocha'
|
|
3
3
|
require 'execution_point'
|
4
4
|
|
5
5
|
class MochaTestResultTest < Test::Unit::TestCase
|
6
|
-
|
6
|
+
|
7
7
|
include AcceptanceTest
|
8
|
-
|
8
|
+
|
9
9
|
def setup
|
10
10
|
setup_acceptance_test
|
11
11
|
end
|
12
|
-
|
12
|
+
|
13
13
|
def teardown
|
14
14
|
teardown_acceptance_test
|
15
15
|
end
|
@@ -22,14 +22,14 @@ class MochaTestResultTest < Test::Unit::TestCase
|
|
22
22
|
end
|
23
23
|
assert_equal 1, test_result.assertion_count
|
24
24
|
end
|
25
|
-
|
25
|
+
|
26
26
|
def test_should_include_assertions_in_assertion_count
|
27
27
|
test_result = run_as_test do
|
28
28
|
assert true
|
29
29
|
end
|
30
30
|
assert_equal 1, test_result.assertion_count
|
31
31
|
end
|
32
|
-
|
32
|
+
|
33
33
|
def test_should_not_include_stubbing_expectation_verification_in_assertion_count
|
34
34
|
test_result = run_as_test do
|
35
35
|
object = mock()
|
@@ -38,7 +38,7 @@ class MochaTestResultTest < Test::Unit::TestCase
|
|
38
38
|
end
|
39
39
|
assert_equal 0, test_result.assertion_count
|
40
40
|
end
|
41
|
-
|
41
|
+
|
42
42
|
def test_should_include_expectation_verification_failure_in_failure_count
|
43
43
|
test_result = run_as_test do
|
44
44
|
object = mock()
|
@@ -46,7 +46,7 @@ class MochaTestResultTest < Test::Unit::TestCase
|
|
46
46
|
end
|
47
47
|
assert_equal 1, test_result.failure_count
|
48
48
|
end
|
49
|
-
|
49
|
+
|
50
50
|
def test_should_include_unexpected_verification_failure_in_failure_count
|
51
51
|
test_result = run_as_test do
|
52
52
|
object = mock()
|
@@ -54,24 +54,24 @@ class MochaTestResultTest < Test::Unit::TestCase
|
|
54
54
|
end
|
55
55
|
assert_equal 1, test_result.failure_count
|
56
56
|
end
|
57
|
-
|
57
|
+
|
58
58
|
def test_should_include_assertion_failure_in_failure_count
|
59
59
|
test_result = run_as_test do
|
60
60
|
flunk
|
61
61
|
end
|
62
62
|
assert_equal 1, test_result.failure_count
|
63
63
|
end
|
64
|
-
|
64
|
+
|
65
65
|
def test_should_display_backtrace_indicating_line_number_where_unexpected_method_was_called
|
66
66
|
execution_point = nil
|
67
67
|
test_result = run_as_test do
|
68
68
|
object = mock()
|
69
|
-
execution_point = ExecutionPoint.current; object.message
|
69
|
+
execution_point = ExecutionPoint.current; object.message
|
70
70
|
end
|
71
71
|
assert_equal 1, test_result.failure_count
|
72
72
|
assert_equal execution_point, ExecutionPoint.new(test_result.failures[0].location)
|
73
73
|
end
|
74
|
-
|
74
|
+
|
75
75
|
def test_should_display_backtrace_indicating_line_number_where_failing_assertion_was_called
|
76
76
|
execution_point = nil
|
77
77
|
test_result = run_as_test do
|
@@ -80,5 +80,5 @@ class MochaTestResultTest < Test::Unit::TestCase
|
|
80
80
|
assert_equal 1, test_result.failure_count
|
81
81
|
assert_equal execution_point, ExecutionPoint.new(test_result.failures[0].location)
|
82
82
|
end
|
83
|
-
|
84
|
-
end
|
83
|
+
|
84
|
+
end
|
@@ -2,17 +2,17 @@ require File.expand_path('../acceptance_test_helper', __FILE__)
|
|
2
2
|
require 'mocha'
|
3
3
|
|
4
4
|
class MockTest < Test::Unit::TestCase
|
5
|
-
|
5
|
+
|
6
6
|
include AcceptanceTest
|
7
|
-
|
7
|
+
|
8
8
|
def setup
|
9
9
|
setup_acceptance_test
|
10
10
|
end
|
11
|
-
|
11
|
+
|
12
12
|
def teardown
|
13
13
|
teardown_acceptance_test
|
14
14
|
end
|
15
|
-
|
15
|
+
|
16
16
|
def test_should_build_mock_and_explicitly_add_an_expectation_which_is_satisfied
|
17
17
|
test_result = run_as_test do
|
18
18
|
foo = mock()
|
@@ -97,4 +97,4 @@ class MockTest < Test::Unit::TestCase
|
|
97
97
|
assert_failed(test_result)
|
98
98
|
end
|
99
99
|
|
100
|
-
end
|
100
|
+
end
|
@@ -2,17 +2,17 @@ require File.expand_path('../acceptance_test_helper', __FILE__)
|
|
2
2
|
require 'mocha'
|
3
3
|
|
4
4
|
class MockWithInitializerBlockTest < Test::Unit::TestCase
|
5
|
-
|
5
|
+
|
6
6
|
include AcceptanceTest
|
7
|
-
|
7
|
+
|
8
8
|
def setup
|
9
9
|
setup_acceptance_test
|
10
10
|
end
|
11
|
-
|
11
|
+
|
12
12
|
def teardown
|
13
13
|
teardown_acceptance_test
|
14
14
|
end
|
15
|
-
|
15
|
+
|
16
16
|
def test_should_expect_two_method_invocations_and_receive_both_of_them
|
17
17
|
test_result = run_as_test do
|
18
18
|
mock = mock() do
|
@@ -48,4 +48,4 @@ class MockWithInitializerBlockTest < Test::Unit::TestCase
|
|
48
48
|
assert_passed(test_result)
|
49
49
|
end
|
50
50
|
|
51
|
-
end
|
51
|
+
end
|