mocha 0.5.5 → 0.5.6
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/Rakefile +3 -1
- data/examples/misc.rb +44 -36
- data/examples/stubba.rb +1 -1
- data/lib/mocha/auto_verify.rb +38 -31
- data/lib/mocha/central.rb +1 -1
- data/lib/mocha/class_method.rb +5 -1
- data/lib/mocha/expectation.rb +63 -61
- data/lib/mocha/expectation_error.rb +9 -0
- data/lib/mocha/expectation_list.rb +11 -10
- data/lib/mocha/method_matcher.rb +21 -0
- data/lib/mocha/missing_expectation.rb +5 -15
- data/lib/mocha/mock.rb +28 -26
- data/lib/mocha/parameter_matchers.rb +17 -1
- data/lib/mocha/parameter_matchers/all_of.rb +6 -3
- data/lib/mocha/parameter_matchers/any_of.rb +6 -3
- data/lib/mocha/parameter_matchers/any_parameters.rb +40 -0
- data/lib/mocha/parameter_matchers/anything.rb +5 -2
- data/lib/mocha/parameter_matchers/base.rb +15 -0
- data/lib/mocha/parameter_matchers/equals.rb +42 -0
- data/lib/mocha/parameter_matchers/has_entries.rb +42 -0
- data/lib/mocha/parameter_matchers/has_entry.rb +20 -4
- data/lib/mocha/parameter_matchers/has_key.rb +5 -2
- data/lib/mocha/parameter_matchers/has_value.rb +5 -2
- data/lib/mocha/parameter_matchers/includes.rb +5 -2
- data/lib/mocha/parameter_matchers/instance_of.rb +5 -2
- data/lib/mocha/parameter_matchers/is_a.rb +42 -0
- data/lib/mocha/parameter_matchers/kind_of.rb +5 -2
- data/lib/mocha/parameter_matchers/not.rb +42 -0
- data/lib/mocha/parameter_matchers/object.rb +9 -0
- data/lib/mocha/parameter_matchers/optionally.rb +33 -0
- data/lib/mocha/parameter_matchers/regexp_matches.rb +5 -2
- data/lib/mocha/parameters_matcher.rb +37 -0
- data/lib/mocha/pretty_parameters.rb +1 -1
- data/lib/mocha/return_values.rb +7 -4
- data/lib/mocha/sequence.rb +42 -0
- data/lib/mocha/yield_parameters.rb +3 -3
- data/test/acceptance/expected_invocation_count_acceptance_test.rb +8 -8
- data/test/acceptance/mock_with_initializer_block_acceptance_test.rb +44 -0
- data/test/acceptance/optional_parameters_acceptance_test.rb +63 -0
- data/test/acceptance/parameter_matcher_acceptance_test.rb +38 -2
- data/test/acceptance/partial_mocks_acceptance_test.rb +40 -0
- data/test/acceptance/sequence_acceptance_test.rb +179 -0
- data/test/integration/mocha_test_result_integration_test.rb +3 -3
- data/test/integration/stubba_integration_test.rb +2 -2
- data/test/integration/stubba_test_result_integration_test.rb +2 -2
- data/test/test_runner.rb +2 -2
- data/test/unit/any_instance_method_test.rb +2 -0
- data/test/unit/auto_verify_test.rb +10 -3
- data/test/unit/central_test.rb +1 -1
- data/test/unit/class_method_test.rb +4 -0
- data/test/unit/expectation_error_test.rb +24 -0
- data/test/unit/expectation_list_test.rb +6 -0
- data/test/unit/expectation_test.rb +111 -27
- data/test/unit/method_matcher_test.rb +23 -0
- data/test/unit/missing_expectation_test.rb +24 -27
- data/test/unit/mock_test.rb +29 -22
- data/test/unit/object_inspect_test.rb +4 -2
- data/test/unit/parameter_matchers/all_of_test.rb +2 -2
- data/test/unit/parameter_matchers/any_of_test.rb +2 -2
- data/test/unit/parameter_matchers/anything_test.rb +2 -2
- data/test/unit/parameter_matchers/has_entries_test.rb +30 -0
- data/test/unit/parameter_matchers/has_entry_test.rb +20 -5
- data/test/unit/parameter_matchers/has_key_test.rb +2 -2
- data/test/unit/parameter_matchers/has_value_test.rb +2 -2
- data/test/unit/parameter_matchers/includes_test.rb +2 -2
- data/test/unit/parameter_matchers/instance_of_test.rb +2 -2
- data/test/unit/parameter_matchers/is_a_test.rb +25 -0
- data/test/unit/parameter_matchers/kind_of_test.rb +3 -3
- data/test/unit/parameter_matchers/not_test.rb +26 -0
- data/test/unit/parameter_matchers/regexp_matches_test.rb +2 -2
- data/test/unit/parameter_matchers/stub_matcher.rb +2 -1
- data/test/unit/parameters_matcher_test.rb +121 -0
- data/test/unit/sequence_test.rb +104 -0
- metadata +35 -6
- data/test/unit/pretty_parameters_test.rb +0 -32
@@ -1,8 +1,11 @@
|
|
1
|
+
require 'mocha/parameter_matchers/base'
|
2
|
+
|
1
3
|
module Mocha
|
2
4
|
|
3
5
|
module ParameterMatchers
|
4
6
|
|
5
7
|
# :call-seq: has_entry(key, value) -> parameter_matcher
|
8
|
+
# has_entry(key => value) -> parameter_matcher
|
6
9
|
#
|
7
10
|
# Matches +Hash+ containing entry with +key+ and +value+.
|
8
11
|
# object = mock()
|
@@ -11,20 +14,33 @@ module Mocha
|
|
11
14
|
# # no error raised
|
12
15
|
#
|
13
16
|
# object = mock()
|
17
|
+
# object.expects(:method_1).with(has_entry('key_1' => 1))
|
18
|
+
# object.method_1('key_1' => 1, 'key_2' => 2)
|
19
|
+
# # no error raised
|
20
|
+
#
|
21
|
+
# object = mock()
|
14
22
|
# object.expects(:method_1).with(has_entry('key_1', 1))
|
15
23
|
# object.method_1('key_1' => 2, 'key_2' => 1)
|
16
24
|
# # error raised, because method_1 was not called with Hash containing entry: 'key_1' => 1
|
17
|
-
|
25
|
+
#
|
26
|
+
# object = mock()
|
27
|
+
# object.expects(:method_1).with(has_entry('key_1' => 1))
|
28
|
+
# object.method_1('key_1' => 2, 'key_2' => 1)
|
29
|
+
# # error raised, because method_1 was not called with Hash containing entry: 'key_1' => 1
|
30
|
+
def has_entry(*options)
|
31
|
+
key, value = options.shift, options.shift
|
32
|
+
key, value = key.to_a[0][0..1] if key.is_a?(Hash)
|
18
33
|
HasEntry.new(key, value)
|
19
34
|
end
|
20
|
-
|
21
|
-
class HasEntry # :nodoc:
|
35
|
+
|
36
|
+
class HasEntry < Base # :nodoc:
|
22
37
|
|
23
38
|
def initialize(key, value)
|
24
39
|
@key, @value = key, value
|
25
40
|
end
|
26
41
|
|
27
|
-
def
|
42
|
+
def matches?(available_parameters)
|
43
|
+
parameter = available_parameters.shift
|
28
44
|
parameter[@key] == @value
|
29
45
|
end
|
30
46
|
|
@@ -1,3 +1,5 @@
|
|
1
|
+
require 'mocha/parameter_matchers/base'
|
2
|
+
|
1
3
|
module Mocha
|
2
4
|
|
3
5
|
module ParameterMatchers
|
@@ -18,13 +20,14 @@ module Mocha
|
|
18
20
|
HasKey.new(key)
|
19
21
|
end
|
20
22
|
|
21
|
-
class HasKey # :nodoc:
|
23
|
+
class HasKey < Base # :nodoc:
|
22
24
|
|
23
25
|
def initialize(key)
|
24
26
|
@key = key
|
25
27
|
end
|
26
28
|
|
27
|
-
def
|
29
|
+
def matches?(available_parameters)
|
30
|
+
parameter = available_parameters.shift
|
28
31
|
parameter.keys.include?(@key)
|
29
32
|
end
|
30
33
|
|
@@ -1,3 +1,5 @@
|
|
1
|
+
require 'mocha/parameter_matchers/base'
|
2
|
+
|
1
3
|
module Mocha
|
2
4
|
|
3
5
|
module ParameterMatchers
|
@@ -18,13 +20,14 @@ module Mocha
|
|
18
20
|
HasValue.new(value)
|
19
21
|
end
|
20
22
|
|
21
|
-
class HasValue # :nodoc:
|
23
|
+
class HasValue < Base # :nodoc:
|
22
24
|
|
23
25
|
def initialize(value)
|
24
26
|
@value = value
|
25
27
|
end
|
26
28
|
|
27
|
-
def
|
29
|
+
def matches?(available_parameters)
|
30
|
+
parameter = available_parameters.shift
|
28
31
|
parameter.values.include?(@value)
|
29
32
|
end
|
30
33
|
|
@@ -1,3 +1,5 @@
|
|
1
|
+
require 'mocha/parameter_matchers/base'
|
2
|
+
|
1
3
|
module Mocha
|
2
4
|
|
3
5
|
module ParameterMatchers
|
@@ -16,13 +18,14 @@ module Mocha
|
|
16
18
|
Includes.new(item)
|
17
19
|
end
|
18
20
|
|
19
|
-
class Includes # :nodoc:
|
21
|
+
class Includes < Base # :nodoc:
|
20
22
|
|
21
23
|
def initialize(item)
|
22
24
|
@item = item
|
23
25
|
end
|
24
26
|
|
25
|
-
def
|
27
|
+
def matches?(available_parameters)
|
28
|
+
parameter = available_parameters.shift
|
26
29
|
return parameter.include?(@item)
|
27
30
|
end
|
28
31
|
|
@@ -1,3 +1,5 @@
|
|
1
|
+
require 'mocha/parameter_matchers/base'
|
2
|
+
|
1
3
|
module Mocha
|
2
4
|
|
3
5
|
module ParameterMatchers
|
@@ -18,13 +20,14 @@ module Mocha
|
|
18
20
|
InstanceOf.new(klass)
|
19
21
|
end
|
20
22
|
|
21
|
-
class InstanceOf # :nodoc:
|
23
|
+
class InstanceOf < Base # :nodoc:
|
22
24
|
|
23
25
|
def initialize(klass)
|
24
26
|
@klass = klass
|
25
27
|
end
|
26
28
|
|
27
|
-
def
|
29
|
+
def matches?(available_parameters)
|
30
|
+
parameter = available_parameters.shift
|
28
31
|
parameter.instance_of?(@klass)
|
29
32
|
end
|
30
33
|
|
@@ -0,0 +1,42 @@
|
|
1
|
+
require 'mocha/parameter_matchers/base'
|
2
|
+
|
3
|
+
module Mocha
|
4
|
+
|
5
|
+
module ParameterMatchers
|
6
|
+
|
7
|
+
# :call-seq: is_a(klass) -> parameter_matcher
|
8
|
+
#
|
9
|
+
# Matches any object that is a +klass+
|
10
|
+
# object = mock()
|
11
|
+
# object.expects(:method_1).with(is_a(Integer))
|
12
|
+
# object.method_1(99)
|
13
|
+
# # no error raised
|
14
|
+
#
|
15
|
+
# object = mock()
|
16
|
+
# object.expects(:method_1).with(is_a(Integer))
|
17
|
+
# object.method_1('string')
|
18
|
+
# # error raised, because method_1 was not called with an Integer
|
19
|
+
def is_a(klass)
|
20
|
+
IsA.new(klass)
|
21
|
+
end
|
22
|
+
|
23
|
+
class IsA < Base # :nodoc:
|
24
|
+
|
25
|
+
def initialize(klass)
|
26
|
+
@klass = klass
|
27
|
+
end
|
28
|
+
|
29
|
+
def matches?(available_parameters)
|
30
|
+
parameter = available_parameters.shift
|
31
|
+
parameter.is_a?(@klass)
|
32
|
+
end
|
33
|
+
|
34
|
+
def mocha_inspect
|
35
|
+
"is_a(#{@klass.mocha_inspect})"
|
36
|
+
end
|
37
|
+
|
38
|
+
end
|
39
|
+
|
40
|
+
end
|
41
|
+
|
42
|
+
end
|
@@ -1,3 +1,5 @@
|
|
1
|
+
require 'mocha/parameter_matchers/base'
|
2
|
+
|
1
3
|
module Mocha
|
2
4
|
|
3
5
|
module ParameterMatchers
|
@@ -18,13 +20,14 @@ module Mocha
|
|
18
20
|
KindOf.new(klass)
|
19
21
|
end
|
20
22
|
|
21
|
-
class KindOf # :nodoc:
|
23
|
+
class KindOf < Base # :nodoc:
|
22
24
|
|
23
25
|
def initialize(klass)
|
24
26
|
@klass = klass
|
25
27
|
end
|
26
28
|
|
27
|
-
def
|
29
|
+
def matches?(available_parameters)
|
30
|
+
parameter = available_parameters.shift
|
28
31
|
parameter.kind_of?(@klass)
|
29
32
|
end
|
30
33
|
|
@@ -0,0 +1,42 @@
|
|
1
|
+
require 'mocha/parameter_matchers/base'
|
2
|
+
|
3
|
+
module Mocha
|
4
|
+
|
5
|
+
module ParameterMatchers
|
6
|
+
|
7
|
+
# :call-seq: Not(matcher) -> parameter_matcher
|
8
|
+
#
|
9
|
+
# Matches if +matcher+ does not match.
|
10
|
+
# object = mock()
|
11
|
+
# object.expects(:method_1).with(Not(includes(1)))
|
12
|
+
# object.method_1([0, 2, 3])
|
13
|
+
# # no error raised
|
14
|
+
#
|
15
|
+
# object = mock()
|
16
|
+
# object.expects(:method_1).with(Not(includes(1)))
|
17
|
+
# object.method_1([0, 1, 2, 3])
|
18
|
+
# # error raised, because method_1 was not called with object not including 1
|
19
|
+
def Not(matcher)
|
20
|
+
Not.new(matcher)
|
21
|
+
end
|
22
|
+
|
23
|
+
class Not < Base # :nodoc:
|
24
|
+
|
25
|
+
def initialize(matcher)
|
26
|
+
@matcher = matcher
|
27
|
+
end
|
28
|
+
|
29
|
+
def matches?(available_parameters)
|
30
|
+
parameter = available_parameters.shift
|
31
|
+
!@matcher.matches?([parameter])
|
32
|
+
end
|
33
|
+
|
34
|
+
def mocha_inspect
|
35
|
+
"Not(#{@matcher.mocha_inspect})"
|
36
|
+
end
|
37
|
+
|
38
|
+
end
|
39
|
+
|
40
|
+
end
|
41
|
+
|
42
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
module Mocha
|
2
|
+
|
3
|
+
module ParameterMatchers
|
4
|
+
|
5
|
+
def optionally(*matchers)
|
6
|
+
Optionally.new(*matchers)
|
7
|
+
end
|
8
|
+
|
9
|
+
class Optionally < Base # :nodoc:
|
10
|
+
|
11
|
+
def initialize(*parameters)
|
12
|
+
@matchers = parameters.map { |parameter| parameter.to_matcher }
|
13
|
+
end
|
14
|
+
|
15
|
+
def matches?(available_parameters)
|
16
|
+
index = 0
|
17
|
+
while (available_parameters.length > 0) && (index < @matchers.length) do
|
18
|
+
matcher = @matchers[index]
|
19
|
+
return false unless matcher.matches?(available_parameters)
|
20
|
+
index += 1
|
21
|
+
end
|
22
|
+
return true
|
23
|
+
end
|
24
|
+
|
25
|
+
def mocha_inspect
|
26
|
+
"optionally(#{@matchers.map { |matcher| matcher.mocha_inspect }.join(", ") })"
|
27
|
+
end
|
28
|
+
|
29
|
+
end
|
30
|
+
|
31
|
+
end
|
32
|
+
|
33
|
+
end
|
@@ -1,3 +1,5 @@
|
|
1
|
+
require 'mocha/parameter_matchers/base'
|
2
|
+
|
1
3
|
module Mocha
|
2
4
|
|
3
5
|
module ParameterMatchers
|
@@ -19,13 +21,14 @@ module Mocha
|
|
19
21
|
RegexpMatches.new(regexp)
|
20
22
|
end
|
21
23
|
|
22
|
-
class RegexpMatches # :nodoc:
|
24
|
+
class RegexpMatches < Base # :nodoc:
|
23
25
|
|
24
26
|
def initialize(regexp)
|
25
27
|
@regexp = regexp
|
26
28
|
end
|
27
29
|
|
28
|
-
def
|
30
|
+
def matches?(available_parameters)
|
31
|
+
parameter = available_parameters.shift
|
29
32
|
parameter =~ @regexp
|
30
33
|
end
|
31
34
|
|
@@ -0,0 +1,37 @@
|
|
1
|
+
require 'mocha/inspect'
|
2
|
+
require 'mocha/parameter_matchers'
|
3
|
+
|
4
|
+
module Mocha
|
5
|
+
|
6
|
+
class ParametersMatcher
|
7
|
+
|
8
|
+
def initialize(expected_parameters = [ParameterMatchers::AnyParameters.new], &matching_block)
|
9
|
+
@expected_parameters, @matching_block = expected_parameters, matching_block
|
10
|
+
end
|
11
|
+
|
12
|
+
def match?(actual_parameters = [])
|
13
|
+
if @matching_block
|
14
|
+
return @matching_block.call(*actual_parameters)
|
15
|
+
else
|
16
|
+
return parameters_match?(actual_parameters)
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
def parameters_match?(actual_parameters)
|
21
|
+
matchers.all? { |matcher| matcher.matches?(actual_parameters) } && (actual_parameters.length == 0)
|
22
|
+
end
|
23
|
+
|
24
|
+
def mocha_inspect
|
25
|
+
signature = matchers.mocha_inspect
|
26
|
+
signature = signature.gsub(/^\[|\]$/, '')
|
27
|
+
signature = signature.gsub(/^\{|\}$/, '') if matchers.length == 1
|
28
|
+
"(#{signature})"
|
29
|
+
end
|
30
|
+
|
31
|
+
def matchers
|
32
|
+
@expected_parameters.map { |parameter| parameter.to_matcher }
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
36
|
+
|
37
|
+
end
|
data/lib/mocha/return_values.rb
CHANGED
@@ -15,10 +15,13 @@ module Mocha # :nodoc:
|
|
15
15
|
end
|
16
16
|
|
17
17
|
def next
|
18
|
-
case @values.
|
19
|
-
|
20
|
-
|
21
|
-
|
18
|
+
case @values.length
|
19
|
+
when 0
|
20
|
+
nil
|
21
|
+
when 1
|
22
|
+
@values.first.evaluate
|
23
|
+
else
|
24
|
+
@values.shift.evaluate
|
22
25
|
end
|
23
26
|
end
|
24
27
|
|
@@ -0,0 +1,42 @@
|
|
1
|
+
module Mocha # :nodoc:
|
2
|
+
|
3
|
+
class Sequence
|
4
|
+
|
5
|
+
class InSequenceOrderingConstraint
|
6
|
+
|
7
|
+
def initialize(sequence, index)
|
8
|
+
@sequence, @index = sequence, index
|
9
|
+
end
|
10
|
+
|
11
|
+
def allows_invocation_now?
|
12
|
+
@sequence.satisfied_to_index?(@index)
|
13
|
+
end
|
14
|
+
|
15
|
+
def mocha_inspect
|
16
|
+
"in sequence #{@sequence.mocha_inspect}"
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
20
|
+
|
21
|
+
def initialize(name)
|
22
|
+
@name = name
|
23
|
+
@expectations = []
|
24
|
+
end
|
25
|
+
|
26
|
+
def constrain_as_next_in_sequence(expectation)
|
27
|
+
index = @expectations.length
|
28
|
+
@expectations << expectation
|
29
|
+
expectation.add_ordering_constraint(InSequenceOrderingConstraint.new(self, index))
|
30
|
+
end
|
31
|
+
|
32
|
+
def satisfied_to_index?(index)
|
33
|
+
@expectations[0...index].all? { |expectation| expectation.satisfied? }
|
34
|
+
end
|
35
|
+
|
36
|
+
def mocha_inspect
|
37
|
+
"#{@name.mocha_inspect}"
|
38
|
+
end
|
39
|
+
|
40
|
+
end
|
41
|
+
|
42
|
+
end
|
@@ -11,9 +11,9 @@ module Mocha # :nodoc:
|
|
11
11
|
end
|
12
12
|
|
13
13
|
def next_invocation
|
14
|
-
case @parameter_groups.
|
15
|
-
when 0
|
16
|
-
when 1
|
14
|
+
case @parameter_groups.length
|
15
|
+
when 0; NoYields.new
|
16
|
+
when 1; @parameter_groups.first
|
17
17
|
else @parameter_groups.shift
|
18
18
|
end
|
19
19
|
end
|
@@ -23,7 +23,7 @@ class ExpectedInvocationCountAcceptanceTest < Test::Unit::TestCase
|
|
23
23
|
end
|
24
24
|
assert_failed(test_result)
|
25
25
|
failure_messages = test_result.failures.map { |failure| failure.message }
|
26
|
-
assert_equal ['#<Mock:mock>.method - expected calls: 0, actual calls: 1'], failure_messages
|
26
|
+
assert_equal ['#<Mock:mock>.method(any_parameters) - expected calls: 0, actual calls: 1'], failure_messages
|
27
27
|
end
|
28
28
|
|
29
29
|
def test_should_pass_if_method_is_expected_twice_and_is_called_twice
|
@@ -43,7 +43,7 @@ class ExpectedInvocationCountAcceptanceTest < Test::Unit::TestCase
|
|
43
43
|
end
|
44
44
|
assert_failed(test_result)
|
45
45
|
failure_messages = test_result.failures.map { |failure| failure.message }
|
46
|
-
assert_equal ['#<Mock:mock>.method - expected calls: 2, actual calls: 1'], failure_messages
|
46
|
+
assert_equal ['#<Mock:mock>.method(any_parameters) - expected calls: 2, actual calls: 1'], failure_messages
|
47
47
|
end
|
48
48
|
|
49
49
|
def test_should_fail_if_method_is_expected_twice_but_is_called_three_times
|
@@ -54,7 +54,7 @@ class ExpectedInvocationCountAcceptanceTest < Test::Unit::TestCase
|
|
54
54
|
end
|
55
55
|
assert_failed(test_result)
|
56
56
|
failure_messages = test_result.failures.map { |failure| failure.message }
|
57
|
-
assert_equal ['#<Mock:mock>.method - expected calls: 2, actual calls: 3'], failure_messages
|
57
|
+
assert_equal ['#<Mock:mock>.method(any_parameters) - expected calls: 2, actual calls: 3'], failure_messages
|
58
58
|
end
|
59
59
|
|
60
60
|
def test_should_pass_if_method_is_expected_between_two_and_four_times_and_is_called_twice
|
@@ -92,7 +92,7 @@ class ExpectedInvocationCountAcceptanceTest < Test::Unit::TestCase
|
|
92
92
|
end
|
93
93
|
assert_failed(test_result)
|
94
94
|
failure_messages = test_result.failures.map { |failure| failure.message }
|
95
|
-
assert_equal ['#<Mock:mock>.method - expected calls: 2..4, actual calls: 1'], failure_messages
|
95
|
+
assert_equal ['#<Mock:mock>.method(any_parameters) - expected calls: 2..4, actual calls: 1'], failure_messages
|
96
96
|
end
|
97
97
|
|
98
98
|
def test_should_fail_if_method_is_expected_between_two_and_four_times_and_is_called_five_times
|
@@ -103,7 +103,7 @@ class ExpectedInvocationCountAcceptanceTest < Test::Unit::TestCase
|
|
103
103
|
end
|
104
104
|
assert_failed(test_result)
|
105
105
|
failure_messages = test_result.failures.map { |failure| failure.message }
|
106
|
-
assert_equal ['#<Mock:mock>.method - expected calls: 2..4, actual calls: 5'], failure_messages
|
106
|
+
assert_equal ['#<Mock:mock>.method(any_parameters) - expected calls: 2..4, actual calls: 5'], failure_messages
|
107
107
|
end
|
108
108
|
|
109
109
|
def test_should_pass_if_method_is_expected_at_least_once_and_is_called_once
|
@@ -132,7 +132,7 @@ class ExpectedInvocationCountAcceptanceTest < Test::Unit::TestCase
|
|
132
132
|
end
|
133
133
|
assert_failed(test_result)
|
134
134
|
failure_messages = test_result.failures.map { |failure| failure.message }
|
135
|
-
assert_equal ['#<Mock:mock>.method - expected calls: at least 1, actual calls: 0'], failure_messages
|
135
|
+
assert_equal ['#<Mock:mock>.method(any_parameters) - expected calls: at least 1, actual calls: 0'], failure_messages
|
136
136
|
end
|
137
137
|
|
138
138
|
def test_should_pass_if_method_is_expected_at_most_once_and_is_never_called
|
@@ -161,7 +161,7 @@ class ExpectedInvocationCountAcceptanceTest < Test::Unit::TestCase
|
|
161
161
|
end
|
162
162
|
assert_failed(test_result)
|
163
163
|
failure_messages = test_result.failures.map { |failure| failure.message }
|
164
|
-
assert_equal ['#<Mock:mock>.method - expected calls: at most 1, actual calls: 2'], failure_messages
|
164
|
+
assert_equal ['#<Mock:mock>.method(any_parameters) - expected calls: at most 1, actual calls: 2'], failure_messages
|
165
165
|
end
|
166
166
|
|
167
167
|
def test_should_pass_if_method_is_never_expected_and_is_never_called_even_if_everything_is_stubbed
|
@@ -181,7 +181,7 @@ class ExpectedInvocationCountAcceptanceTest < Test::Unit::TestCase
|
|
181
181
|
end
|
182
182
|
assert_failed(test_result)
|
183
183
|
failure_messages = test_result.failures.map { |failure| failure.message }
|
184
|
-
assert_equal ['#<Mock:stub>.method - expected calls: 0, actual calls: 1'], failure_messages
|
184
|
+
assert_equal ['#<Mock:stub>.method(any_parameters) - expected calls: 0, actual calls: 1'], failure_messages
|
185
185
|
end
|
186
186
|
|
187
187
|
end
|