rr 0.8.1 → 0.9.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/CHANGES CHANGED
@@ -1,3 +1,5 @@
1
+ - instance_of Doubles now apply to methods invoked in the subject's #initialize method.
2
+
1
3
  * 0.8.1
2
4
  - Fixed exception where the Subject uses method delegation via method_missing (e.g. certain ActiveRecord AssociationProxy methods)
3
5
 
data/README.rdoc CHANGED
@@ -330,6 +330,6 @@ to making it possible. We all are standing on the shoulders of giants.
330
330
  * Nick Kallen for documentation suggestions, bug reports, and patches
331
331
  * Nathan Sobo for various ideas and inspiration for cleaner and more expressive code
332
332
  * Parker Thompson for pairing with me
333
- * Phil Arnowsky for patches
333
+ * Phil Darnowsky for patches
334
334
  * Pivotal Labs for sponsoring RR development
335
335
  * Stephen Baker for Developing Rspec
data/VERSION.yml CHANGED
@@ -1,4 +1,4 @@
1
1
  ---
2
- :minor: 8
3
- :patch: 1
4
2
  :major: 0
3
+ :minor: 9
4
+ :patch: 0
data/lib/rr.rb CHANGED
@@ -17,6 +17,7 @@ require "#{dir}/rr/space"
17
17
  require "#{dir}/rr/double_injection"
18
18
  require "#{dir}/rr/hash_with_object_id_key"
19
19
  require "#{dir}/rr/recorded_calls"
20
+ require "#{dir}/rr/proc_from_block"
20
21
 
21
22
  require "#{dir}/rr/double_definitions/double_definition_creator_proxy"
22
23
  require "#{dir}/rr/double_definitions/double_definition_creator"
@@ -32,7 +32,8 @@ module RR
32
32
 
33
33
  def matches?(subject)
34
34
  @verification.subject = subject
35
- if error = RR::Space.instance.recorded_calls.match_error(@verification)
35
+ calls = RR::Space.instance.recorded_calls
36
+ if error = calls.match_error(@verification)
36
37
  @failure_message = error.message
37
38
  false
38
39
  else
data/lib/rr/double.rb CHANGED
@@ -181,7 +181,7 @@ module RR
181
181
  if implementation.is_a?(Method)
182
182
  implementation.call(*args, &block)
183
183
  else
184
- args << block if block
184
+ args << ProcFromBlock.new(&block) if block
185
185
  implementation.call(*args)
186
186
  end
187
187
  else
@@ -26,18 +26,22 @@ module RR
26
26
 
27
27
  protected
28
28
  def do_call
29
- class_handler = lambda do |return_value|
29
+ instance_of_subject_creator = DoubleDefinitionCreator.new
30
+ instance_of_subject_creator.strong if definition.verify_method_signature?
31
+ instance_of_subject_creator.stub(subject)
32
+ instance_of_subject_creator.create(:new) do |*args|
30
33
  #####
31
- double_injection = space.double_injection(return_value, method_name)
34
+ instance = subject.allocate
35
+ double_injection = space.double_injection(instance, method_name)
32
36
  Double.new(double_injection, definition)
33
37
  #####
34
- return_value
38
+ if args.last.is_a?(ProcFromBlock)
39
+ instance.__send__(:initialize, *args[0..(args.length-2)], &args.last)
40
+ else
41
+ instance.__send__(:initialize, *args)
42
+ end
43
+ instance
35
44
  end
36
-
37
- instance_of_subject_creator = DoubleDefinitionCreator.new
38
- instance_of_subject_creator.strong if definition.verify_method_signature?
39
- instance_of_subject_creator.stub.proxy(subject)
40
- instance_of_subject_creator.create(:new, &class_handler)
41
45
  end
42
46
  end
43
47
  end
@@ -1,41 +1,44 @@
1
1
  module RR
2
- class HashWithObjectIdKey < ::Hash #:nodoc:
3
- def initialize
4
- @keys = {}
5
- super do |hash, subject_object|
6
- hash.set_with_object_id(subject_object, {})
2
+ # TODO: Refactor to a side-effect-free strategy.
3
+ class HashWithObjectIdKey < ::Hash #:nodoc:
4
+ def initialize
5
+ @keys = {}
6
+ super do |hash, subject_object|
7
+ hash.set_with_object_id(subject_object, {})
8
+ end
7
9
  end
8
- end
9
10
 
10
- alias_method :get_with_object_id, :[]
11
- def [](key)
12
- @keys[key.__id__] = key
13
- super(key.__id__)
14
- end
11
+ alias_method :get_with_object_id, :[]
15
12
 
16
- alias_method :set_with_object_id, :[]=
17
- def []=(key, value)
18
- @keys[key.__id__] = key
19
- super(key.__id__, value)
20
- end
13
+ def [](key)
14
+ @keys[key.__id__] = key
15
+ super(key.__id__)
16
+ end
21
17
 
22
- def each
23
- super do |object_id, value|
24
- yield @keys[object_id], value
18
+ alias_method :set_with_object_id, :[]=
19
+
20
+ def []=(key, value)
21
+ @keys[key.__id__] = key
22
+ super(key.__id__, value)
25
23
  end
26
- end
27
24
 
28
- def delete(key)
29
- @keys.delete(key.__id__)
30
- super(key.__id__)
31
- end
25
+ def each
26
+ super do |object_id, value|
27
+ yield @keys[object_id], value
28
+ end
29
+ end
32
30
 
33
- def keys
34
- @keys.values
35
- end
31
+ def delete(key)
32
+ @keys.delete(key.__id__)
33
+ super(key.__id__)
34
+ end
36
35
 
37
- def include?(key)
38
- super(key.__id__)
36
+ def keys
37
+ @keys.values
38
+ end
39
+
40
+ def include?(key)
41
+ super(key.__id__)
42
+ end
39
43
  end
40
- end
41
44
  end
@@ -0,0 +1,7 @@
1
+ module RR
2
+ class ProcFromBlock < Proc
3
+ def ==(other)
4
+ Proc.new(&self) == other
5
+ end
6
+ end
7
+ end
data/lib/rr/space.rb CHANGED
@@ -39,7 +39,7 @@ module RR
39
39
  end
40
40
 
41
41
  def double_injection_exists?(subject, method_name)
42
- !!@double_injections[subject][method_name.to_sym]
42
+ @double_injections.include?(subject) && @double_injections[subject].include?(method_name.to_sym)
43
43
  end
44
44
 
45
45
  # Registers the ordered Double to be verified.
@@ -1,6 +1,17 @@
1
1
  require File.expand_path("#{File.dirname(__FILE__)}/spec_helper")
2
2
 
3
3
  class HighLevelSpec
4
+ attr_reader :initialize_arguments
5
+
6
+ def initialize(*args)
7
+ @initialize_arguments = args
8
+ yield if block_given?
9
+ method_run_in_initialize
10
+ end
11
+
12
+ def method_run_in_initialize
13
+
14
+ end
4
15
  end
5
16
 
6
17
  describe "RR" do
@@ -251,6 +262,25 @@ describe "RR" do
251
262
  stub(subject).__send__(:==) {:equality}
252
263
  (subject == 55).should == :equality
253
264
  end
265
+
266
+ it "stubs methods invoked in #initialize while passing along the #initialize arg" do
267
+ method_run_in_initialize_stubbed = false
268
+ stub.instance_of(HighLevelSpec) do |o|
269
+ o.method_run_in_initialize {method_run_in_initialize_stubbed = true}
270
+ end
271
+ HighLevelSpec.new
272
+ method_run_in_initialize_stubbed.should be_true
273
+ end
274
+
275
+ it "passed the arguments and block passed to #initialize" do
276
+ block_called = false
277
+ stub.instance_of(HighLevelSpec) do |o|
278
+ o.method_run_in_initialize
279
+ end
280
+ instance = HighLevelSpec.new(1, 2) {block_called = true}
281
+ instance.initialize_arguments.should == [1, 2]
282
+ block_called.should be_true
283
+ end
254
284
  end
255
285
 
256
286
  describe "RR recorded_calls" do
@@ -0,0 +1,14 @@
1
+ require File.expand_path("#{File.dirname(__FILE__)}/spec_helper")
2
+
3
+ module RR
4
+ describe ProcFromBlock do
5
+ describe "#==" do
6
+ it "acts the same as #== on a Proc" do
7
+ original_proc = lambda {}
8
+ Proc.new(&original_proc).should == original_proc
9
+
10
+ ProcFromBlock.new(&original_proc).should == original_proc
11
+ end
12
+ end
13
+ end
14
+ end
@@ -707,9 +707,10 @@ module RR
707
707
  :new_return_value
708
708
  end
709
709
  passed_in_block_arg = nil
710
- @return_value = subject.foobar(1, 2) do |arg|
710
+ @block = lambda do |arg|
711
711
  passed_in_block_arg = arg
712
712
  end
713
+ @return_value = subject.foobar(1, 2, &@block)
713
714
  @passed_in_block_arg = passed_in_block_arg
714
715
 
715
716
  @args = actual_args
@@ -722,9 +723,14 @@ module RR
722
723
  describe "#subject.method_name being called" do
723
724
  it "returns the return value of the block" do
724
725
  @return_value.should == :new_return_value
726
+ end
727
+
728
+ it "passes an array of the args with the block appended as a ProcFromBlock around the original block" do
725
729
  @args.length.should == 3
726
730
  @args[0..1].should == [1, 2]
727
- @args[2].should be_instance_of(Proc)
731
+ @args[2].should be_instance_of(ProcFromBlock)
732
+ @block.should == Proc.new(&@block)
733
+ @args[2].should == @block
728
734
  end
729
735
  end
730
736
  end
@@ -6,6 +6,7 @@ class RspecExampleSuite
6
6
  puts "Running Rspec Example Suite"
7
7
  dir = File.dirname(__FILE__)
8
8
  Dir["#{dir}/rr/rspec/**/*_spec.rb"].each do |file|
9
+ # puts "require '#{file}'"
9
10
  require file
10
11
  end
11
12
  end
data/spec/spec_helper.rb CHANGED
@@ -2,6 +2,7 @@ dir = File.dirname(__FILE__)
2
2
  require "#{dir}/environment_fixture_setup"
3
3
  require "#{dir}/rr/expectations/times_called_expectation/times_called_expectation_helper"
4
4
  require "#{dir}/rr/adapters/rr_methods_spec_helper"
5
+ ARGV.push("--format", "nested") unless ARGV.include?("--format")
5
6
 
6
7
  Spec::Runner.configure do |config|
7
8
  config.mock_with RR::Adapters::Rspec
data/spec/spec_suite.rb CHANGED
@@ -6,17 +6,21 @@ class ExampleSuite
6
6
  end
7
7
 
8
8
  def run_core_examples
9
- system("ruby #{dir}/core_spec_suite.rb --options #{dir}/spec.opts") || raise("Core suite Failed")
9
+ system("ruby #{dir}/core_spec_suite.rb #{spec_opts}") || raise("Core suite Failed")
10
10
  end
11
11
 
12
12
  def run_rspec_examples
13
- system("ruby #{dir}/rspec_spec_suite.rb --options #{dir}/spec.opts") || raise("Rspec suite Failed")
13
+ system("ruby #{dir}/rspec_spec_suite.rb #{spec_opts}") || raise("Rspec suite Failed")
14
14
  end
15
15
 
16
16
  def run_test_unit_examples
17
17
  system("ruby #{dir}/test_unit_spec_suite.rb") || raise("Test::Unit suite Failed")
18
18
  end
19
19
 
20
+ def spec_opts
21
+ File.read("#{dir}/spec.opts").split("\n").join(" ")
22
+ end
23
+
20
24
  def dir
21
25
  File.dirname(__FILE__)
22
26
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rr
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.1
4
+ version: 0.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brian Takita
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-03-29 00:00:00 -07:00
12
+ date: 2009-04-25 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies: []
15
15
 
@@ -20,140 +20,142 @@ executables: []
20
20
  extensions: []
21
21
 
22
22
  extra_rdoc_files:
23
- - README.rdoc
24
23
  - CHANGES
24
+ - README.rdoc
25
25
  files:
26
- - VERSION.yml
26
+ - CHANGES
27
27
  - README.rdoc
28
28
  - Rakefile
29
- - CHANGES
30
- - lib/rr/double_injection.rb
31
- - lib/rr/hash_with_object_id_key.rb
32
- - lib/rr/wildcard_matchers/hash_including.rb
33
- - lib/rr/wildcard_matchers/range.rb
34
- - lib/rr/wildcard_matchers/satisfy.rb
35
- - lib/rr/wildcard_matchers/regexp.rb
36
- - lib/rr/wildcard_matchers/duck_type.rb
37
- - lib/rr/wildcard_matchers/is_a.rb
38
- - lib/rr/wildcard_matchers/numeric.rb
39
- - lib/rr/wildcard_matchers/boolean.rb
40
- - lib/rr/wildcard_matchers/anything.rb
41
- - lib/rr/errors/subject_does_not_implement_method_error.rb
42
- - lib/rr/errors/subject_has_different_arity_error.rb
43
- - lib/rr/errors/rr_error.rb
44
- - lib/rr/errors/double_order_error.rb
45
- - lib/rr/errors/double_not_found_error.rb
46
- - lib/rr/errors/times_called_error.rb
47
- - lib/rr/errors/double_definition_error.rb
48
- - lib/rr/errors/argument_equality_error.rb
49
- - lib/rr/errors/spy_verification_errors/invocation_count_error.rb
50
- - lib/rr/errors/spy_verification_errors/spy_verification_error.rb
51
- - lib/rr/errors/spy_verification_errors/double_injection_not_found_error.rb
29
+ - VERSION.yml
30
+ - lib/rr.rb
31
+ - lib/rr/adapters/rr_methods.rb
52
32
  - lib/rr/adapters/rspec.rb
53
33
  - lib/rr/adapters/test_unit.rb
54
- - lib/rr/adapters/rr_methods.rb
55
- - lib/rr/times_called_matchers/proc_matcher.rb
56
- - lib/rr/times_called_matchers/at_most_matcher.rb
57
- - lib/rr/times_called_matchers/times_called_matcher.rb
58
- - lib/rr/times_called_matchers/non_terminal.rb
59
- - lib/rr/times_called_matchers/terminal.rb
60
- - lib/rr/times_called_matchers/range_matcher.rb
61
- - lib/rr/times_called_matchers/at_least_matcher.rb
62
- - lib/rr/times_called_matchers/any_times_matcher.rb
63
- - lib/rr/times_called_matchers/integer_matcher.rb
64
- - lib/rr/double_matches.rb
65
34
  - lib/rr/double.rb
66
- - lib/rr/spy_verification.rb
67
- - lib/rr/space.rb
68
- - lib/rr/spy_verification_proxy.rb
69
- - lib/rr/expectations/argument_equality_expectation.rb
70
- - lib/rr/expectations/any_argument_expectation.rb
71
- - lib/rr/expectations/times_called_expectation.rb
72
- - lib/rr/wildcard_matchers.rb
73
- - lib/rr/double_definitions/strategies/implementation/strongly_typed_reimplementation.rb
74
- - lib/rr/double_definitions/strategies/implementation/reimplementation.rb
75
- - lib/rr/double_definitions/strategies/implementation/proxy.rb
35
+ - lib/rr/double_definitions/child_double_definition_creator.rb
36
+ - lib/rr/double_definitions/double_definition.rb
37
+ - lib/rr/double_definitions/double_definition_creator.rb
38
+ - lib/rr/double_definitions/double_definition_creator_proxy.rb
76
39
  - lib/rr/double_definitions/strategies/implementation/implementation_strategy.rb
77
- - lib/rr/double_definitions/strategies/strategy.rb
78
- - lib/rr/double_definitions/strategies/scope/instance_of_class.rb
40
+ - lib/rr/double_definitions/strategies/implementation/proxy.rb
41
+ - lib/rr/double_definitions/strategies/implementation/reimplementation.rb
42
+ - lib/rr/double_definitions/strategies/implementation/strongly_typed_reimplementation.rb
79
43
  - lib/rr/double_definitions/strategies/scope/instance.rb
44
+ - lib/rr/double_definitions/strategies/scope/instance_of_class.rb
80
45
  - lib/rr/double_definitions/strategies/scope/scope_strategy.rb
81
- - lib/rr/double_definitions/strategies/verification/stub.rb
46
+ - lib/rr/double_definitions/strategies/strategy.rb
82
47
  - lib/rr/double_definitions/strategies/verification/dont_allow.rb
83
- - lib/rr/double_definitions/strategies/verification/verification_strategy.rb
84
48
  - lib/rr/double_definitions/strategies/verification/mock.rb
85
- - lib/rr/double_definitions/double_definition_creator.rb
86
- - lib/rr/double_definitions/double_definition_creator_proxy.rb
87
- - lib/rr/double_definitions/double_definition.rb
88
- - lib/rr/double_definitions/child_double_definition_creator.rb
49
+ - lib/rr/double_definitions/strategies/verification/stub.rb
50
+ - lib/rr/double_definitions/strategies/verification/verification_strategy.rb
51
+ - lib/rr/double_injection.rb
52
+ - lib/rr/double_matches.rb
53
+ - lib/rr/errors/argument_equality_error.rb
54
+ - lib/rr/errors/double_definition_error.rb
55
+ - lib/rr/errors/double_not_found_error.rb
56
+ - lib/rr/errors/double_order_error.rb
57
+ - lib/rr/errors/rr_error.rb
58
+ - lib/rr/errors/spy_verification_errors/double_injection_not_found_error.rb
59
+ - lib/rr/errors/spy_verification_errors/invocation_count_error.rb
60
+ - lib/rr/errors/spy_verification_errors/spy_verification_error.rb
61
+ - lib/rr/errors/subject_does_not_implement_method_error.rb
62
+ - lib/rr/errors/subject_has_different_arity_error.rb
63
+ - lib/rr/errors/times_called_error.rb
64
+ - lib/rr/expectations/any_argument_expectation.rb
65
+ - lib/rr/expectations/argument_equality_expectation.rb
66
+ - lib/rr/expectations/times_called_expectation.rb
67
+ - lib/rr/hash_with_object_id_key.rb
68
+ - lib/rr/proc_from_block.rb
89
69
  - lib/rr/recorded_calls.rb
90
- - lib/rr.rb
91
- - spec/test_unit_spec_suite.rb
92
- - spec/rspec_spec_suite.rb
93
- - spec/spec_suite.rb
70
+ - lib/rr/space.rb
71
+ - lib/rr/spy_verification.rb
72
+ - lib/rr/spy_verification_proxy.rb
73
+ - lib/rr/times_called_matchers/any_times_matcher.rb
74
+ - lib/rr/times_called_matchers/at_least_matcher.rb
75
+ - lib/rr/times_called_matchers/at_most_matcher.rb
76
+ - lib/rr/times_called_matchers/integer_matcher.rb
77
+ - lib/rr/times_called_matchers/non_terminal.rb
78
+ - lib/rr/times_called_matchers/proc_matcher.rb
79
+ - lib/rr/times_called_matchers/range_matcher.rb
80
+ - lib/rr/times_called_matchers/terminal.rb
81
+ - lib/rr/times_called_matchers/times_called_matcher.rb
82
+ - lib/rr/wildcard_matchers.rb
83
+ - lib/rr/wildcard_matchers/anything.rb
84
+ - lib/rr/wildcard_matchers/boolean.rb
85
+ - lib/rr/wildcard_matchers/duck_type.rb
86
+ - lib/rr/wildcard_matchers/hash_including.rb
87
+ - lib/rr/wildcard_matchers/is_a.rb
88
+ - lib/rr/wildcard_matchers/numeric.rb
89
+ - lib/rr/wildcard_matchers/range.rb
90
+ - lib/rr/wildcard_matchers/regexp.rb
91
+ - lib/rr/wildcard_matchers/satisfy.rb
94
92
  - spec/core_spec_suite.rb
95
- - spec/spec_helper.rb
96
- - spec/rr/wildcard_matchers/anything_spec.rb
97
- - spec/rr/wildcard_matchers/numeric_spec.rb
98
- - spec/rr/wildcard_matchers/is_a_spec.rb
99
- - spec/rr/wildcard_matchers/regexp_spec.rb
100
- - spec/rr/wildcard_matchers/duck_type_spec.rb
101
- - spec/rr/wildcard_matchers/boolean_spec.rb
102
- - spec/rr/wildcard_matchers/range_spec.rb
103
- - spec/rr/space/hash_with_object_id_key_spec.rb
104
- - spec/rr/space/space_spec.rb
105
- - spec/rr/rspec/rspec_backtrace_tweaking_spec.rb
106
- - spec/rr/rspec/invocation_matcher_spec.rb
107
- - spec/rr/rspec/rspec_backtrace_tweaking_spec_fixture.rb
108
- - spec/rr/rspec/rspec_usage_spec.rb
109
- - spec/rr/rspec/rspec_adapter_spec.rb
110
- - spec/rr/test_unit/test_unit_backtrace_test.rb
111
- - spec/rr/test_unit/test_unit_integration_test.rb
112
- - spec/rr/test_unit/test_helper.rb
113
- - spec/rr/errors/rr_error_spec.rb
114
- - spec/rr/adapters/rr_methods_creator_spec.rb
115
- - spec/rr/adapters/rr_methods_times_matcher_spec.rb
116
- - spec/rr/adapters/rr_methods_spec_helper.rb
93
+ - spec/environment_fixture_setup.rb
94
+ - spec/high_level_spec.rb
95
+ - spec/proc_from_block_spec.rb
117
96
  - spec/rr/adapters/rr_methods_argument_matcher_spec.rb
97
+ - spec/rr/adapters/rr_methods_creator_spec.rb
118
98
  - spec/rr/adapters/rr_methods_space_spec.rb
119
- - spec/rr/times_called_matchers/integer_matcher_spec.rb
120
- - spec/rr/times_called_matchers/any_times_matcher_spec.rb
121
- - spec/rr/times_called_matchers/range_matcher_spec.rb
122
- - spec/rr/times_called_matchers/proc_matcher_spec.rb
123
- - spec/rr/times_called_matchers/times_called_matcher_spec.rb
124
- - spec/rr/times_called_matchers/at_least_matcher_spec.rb
125
- - spec/rr/times_called_matchers/at_most_matcher_spec.rb
126
- - spec/rr/double_spec.rb
127
- - spec/rr/double_injection/double_injection_spec.rb
128
- - spec/rr/double_injection/double_injection_reset_spec.rb
129
- - spec/rr/double_injection/double_injection_has_original_method_spec.rb
99
+ - spec/rr/adapters/rr_methods_spec_helper.rb
100
+ - spec/rr/adapters/rr_methods_times_matcher_spec.rb
101
+ - spec/rr/double_definitions/child_double_definition_creator_spec.rb
102
+ - spec/rr/double_definitions/double_definition_creator_proxy_spec.rb
103
+ - spec/rr/double_definitions/double_definition_creator_spec.rb
104
+ - spec/rr/double_definitions/double_definition_spec.rb
130
105
  - spec/rr/double_injection/double_injection_bind_spec.rb
131
106
  - spec/rr/double_injection/double_injection_dispatching_spec.rb
107
+ - spec/rr/double_injection/double_injection_has_original_method_spec.rb
108
+ - spec/rr/double_injection/double_injection_reset_spec.rb
109
+ - spec/rr/double_injection/double_injection_spec.rb
132
110
  - spec/rr/double_injection/double_injection_verify_spec.rb
111
+ - spec/rr/double_spec.rb
112
+ - spec/rr/errors/rr_error_spec.rb
113
+ - spec/rr/expectations/any_argument_expectation_spec.rb
133
114
  - spec/rr/expectations/anything_argument_equality_expectation_spec.rb
115
+ - spec/rr/expectations/argument_equality_expectation_spec.rb
116
+ - spec/rr/expectations/boolean_argument_equality_expectation_spec.rb
117
+ - spec/rr/expectations/hash_including_argument_equality_expectation_spec.rb
118
+ - spec/rr/expectations/hash_including_spec.rb
134
119
  - spec/rr/expectations/satisfy_argument_equality_expectation_spec.rb
135
- - spec/rr/expectations/any_argument_expectation_spec.rb
136
- - spec/rr/expectations/times_called_expectation/times_called_expectation_spec.rb
120
+ - spec/rr/expectations/satisfy_spec.rb
121
+ - spec/rr/expectations/times_called_expectation/times_called_expectation_any_times_spec.rb
137
122
  - spec/rr/expectations/times_called_expectation/times_called_expectation_at_least_spec.rb
138
- - spec/rr/expectations/times_called_expectation/times_called_expectation_proc_spec.rb
139
123
  - spec/rr/expectations/times_called_expectation/times_called_expectation_at_most_spec.rb
140
- - spec/rr/expectations/times_called_expectation/times_called_expectation_any_times_spec.rb
141
- - spec/rr/expectations/times_called_expectation/times_called_expectation_range_spec.rb
142
- - spec/rr/expectations/times_called_expectation/times_called_expectation_integer_spec.rb
143
124
  - spec/rr/expectations/times_called_expectation/times_called_expectation_helper.rb
144
- - spec/rr/expectations/hash_including_argument_equality_expectation_spec.rb
145
- - spec/rr/expectations/satisfy_spec.rb
146
- - spec/rr/expectations/hash_including_spec.rb
147
- - spec/rr/expectations/argument_equality_expectation_spec.rb
148
- - spec/rr/expectations/boolean_argument_equality_expectation_spec.rb
149
- - spec/rr/double_definitions/child_double_definition_creator_spec.rb
150
- - spec/rr/double_definitions/double_definition_creator_spec.rb
151
- - spec/rr/double_definitions/double_definition_creator_proxy_spec.rb
152
- - spec/rr/double_definitions/double_definition_spec.rb
125
+ - spec/rr/expectations/times_called_expectation/times_called_expectation_integer_spec.rb
126
+ - spec/rr/expectations/times_called_expectation/times_called_expectation_proc_spec.rb
127
+ - spec/rr/expectations/times_called_expectation/times_called_expectation_range_spec.rb
128
+ - spec/rr/expectations/times_called_expectation/times_called_expectation_spec.rb
129
+ - spec/rr/rspec/invocation_matcher_spec.rb
130
+ - spec/rr/rspec/rspec_adapter_spec.rb
131
+ - spec/rr/rspec/rspec_backtrace_tweaking_spec.rb
132
+ - spec/rr/rspec/rspec_backtrace_tweaking_spec_fixture.rb
133
+ - spec/rr/rspec/rspec_usage_spec.rb
134
+ - spec/rr/space/hash_with_object_id_key_spec.rb
135
+ - spec/rr/space/space_spec.rb
136
+ - spec/rr/test_unit/test_helper.rb
137
+ - spec/rr/test_unit/test_unit_backtrace_test.rb
138
+ - spec/rr/test_unit/test_unit_integration_test.rb
139
+ - spec/rr/times_called_matchers/any_times_matcher_spec.rb
140
+ - spec/rr/times_called_matchers/at_least_matcher_spec.rb
141
+ - spec/rr/times_called_matchers/at_most_matcher_spec.rb
142
+ - spec/rr/times_called_matchers/integer_matcher_spec.rb
143
+ - spec/rr/times_called_matchers/proc_matcher_spec.rb
144
+ - spec/rr/times_called_matchers/range_matcher_spec.rb
145
+ - spec/rr/times_called_matchers/times_called_matcher_spec.rb
146
+ - spec/rr/wildcard_matchers/anything_spec.rb
147
+ - spec/rr/wildcard_matchers/boolean_spec.rb
148
+ - spec/rr/wildcard_matchers/duck_type_spec.rb
149
+ - spec/rr/wildcard_matchers/is_a_spec.rb
150
+ - spec/rr/wildcard_matchers/numeric_spec.rb
151
+ - spec/rr/wildcard_matchers/range_spec.rb
152
+ - spec/rr/wildcard_matchers/regexp_spec.rb
153
153
  - spec/rr_spec.rb
154
- - spec/high_level_spec.rb
154
+ - spec/rspec_spec_suite.rb
155
+ - spec/spec_helper.rb
156
+ - spec/spec_suite.rb
155
157
  - spec/spy_verification_spec.rb
156
- - spec/environment_fixture_setup.rb
158
+ - spec/test_unit_spec_suite.rb
157
159
  has_rdoc: true
158
160
  homepage: http://pivotallabs.com
159
161
  post_install_message:
@@ -162,8 +164,6 @@ rdoc_options:
162
164
  - README.rdoc
163
165
  - --inline-source
164
166
  - --line-numbers
165
- - --inline-source
166
- - --charset=UTF-8
167
167
  require_paths:
168
168
  - lib
169
169
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -186,6 +186,7 @@ signing_key:
186
186
  specification_version: 2
187
187
  summary: RR (Double Ruby) is a double framework that features a rich selection of double techniques and a terse syntax. http://xunitpatterns.com/Test%20Double.html
188
188
  test_files:
189
- - spec/rr_spec.rb
190
- - spec/high_level_spec.rb
191
189
  - spec/spy_verification_spec.rb
190
+ - spec/high_level_spec.rb
191
+ - spec/rr_spec.rb
192
+ - spec/proc_from_block_spec.rb