matahari 0.3.1 → 0.3.2

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.
@@ -2,6 +2,7 @@ $:.unshift(File.dirname(__FILE__)) unless
2
2
  $:.include?(File.dirname(__FILE__)) || $:.include?(File.expand_path(File.dirname(__FILE__)))
3
3
 
4
4
  require 'matahari/spy'
5
+ require 'matahari/invocation'
5
6
  require 'matahari/invocation_matcher'
6
7
  require 'matahari/adapters/matahari_methods'
7
8
  require 'matahari/adapters/rspec'
@@ -0,0 +1,14 @@
1
+ module Matahari
2
+ class Invocation
3
+ attr_reader :method, :args
4
+
5
+ def initialize(method, args)
6
+ @method = method
7
+ @args = args.flatten(1)
8
+ end
9
+
10
+ def ==(other)
11
+ self.method == other.method && self.args == other.args
12
+ end
13
+ end
14
+ end
@@ -13,7 +13,7 @@ module Matahari
13
13
 
14
14
  def matches?(subject)
15
15
  @subject = subject
16
- @invocations_of_method = subject.invocations.select {|i| i[:method] == @call_to_verify}
16
+ @invocations_of_method = subject.invocations.select {|i| i.method == @call_to_verify}
17
17
  verifying_args = @args_to_verify.size != 0
18
18
 
19
19
  match_passes?(verifying_args)
@@ -56,7 +56,7 @@ module Matahari
56
56
 
57
57
  def matching_calls(verifying_args=true)
58
58
  @matching_calls ||= if verifying_args
59
- @invocations_of_method.select {|i| i[:args].flatten === @args_to_verify}.size
59
+ @invocations_of_method.select {|i| i.args === @args_to_verify}.size
60
60
  else
61
61
  @invocations_of_method.size
62
62
  end
@@ -41,7 +41,7 @@ module Matahari
41
41
 
42
42
  private
43
43
  def record_invocation(sym, *args)
44
- @invocations << {:method => sym, :args => args}
44
+ @invocations << Matahari::Invocation.new(sym, args)
45
45
  end
46
46
  end
47
47
  end
@@ -1,3 +1,3 @@
1
1
  module Matahari
2
- VERSION = "0.3.1"
2
+ VERSION = "0.3.2"
3
3
  end
metadata CHANGED
@@ -1,87 +1,72 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: matahari
3
- version: !ruby/object:Gem::Version
4
- prerelease: false
5
- segments:
6
- - 0
7
- - 3
8
- - 1
9
- version: 0.3.1
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.3.2
5
+ prerelease:
10
6
  platform: ruby
11
- authors:
7
+ authors:
12
8
  - Tom Stuart
13
9
  autorequire:
14
10
  bindir: bin
15
11
  cert_chain: []
16
-
17
- date: 2011-06-29 00:00:00 +01:00
12
+ date: 2011-07-15 00:00:00.000000000 +01:00
18
13
  default_executable:
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
21
16
  name: rspec
22
- prerelease: false
23
- requirement: &id001 !ruby/object:Gem::Requirement
17
+ requirement: &2153269900 !ruby/object:Gem::Requirement
24
18
  none: false
25
- requirements:
26
- - - ">="
27
- - !ruby/object:Gem::Version
28
- segments:
29
- - 0
30
- version: "0"
19
+ requirements:
20
+ - - ! '>='
21
+ - !ruby/object:Gem::Version
22
+ version: '0'
31
23
  type: :development
32
- version_requirements: *id001
33
- - !ruby/object:Gem::Dependency
34
- name: cucumber
35
24
  prerelease: false
36
- requirement: &id002 !ruby/object:Gem::Requirement
25
+ version_requirements: *2153269900
26
+ - !ruby/object:Gem::Dependency
27
+ name: cucumber
28
+ requirement: &2153269480 !ruby/object:Gem::Requirement
37
29
  none: false
38
- requirements:
39
- - - ">="
40
- - !ruby/object:Gem::Version
41
- segments:
42
- - 0
43
- version: "0"
30
+ requirements:
31
+ - - ! '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
44
34
  type: :development
45
- version_requirements: *id002
46
- - !ruby/object:Gem::Dependency
47
- name: aruba
48
35
  prerelease: false
49
- requirement: &id003 !ruby/object:Gem::Requirement
36
+ version_requirements: *2153269480
37
+ - !ruby/object:Gem::Dependency
38
+ name: aruba
39
+ requirement: &2153269060 !ruby/object:Gem::Requirement
50
40
  none: false
51
- requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- segments:
55
- - 0
56
- version: "0"
41
+ requirements:
42
+ - - ! '>='
43
+ - !ruby/object:Gem::Version
44
+ version: '0'
57
45
  type: :development
58
- version_requirements: *id003
59
- - !ruby/object:Gem::Dependency
60
- name: rake
61
46
  prerelease: false
62
- requirement: &id004 !ruby/object:Gem::Requirement
47
+ version_requirements: *2153269060
48
+ - !ruby/object:Gem::Dependency
49
+ name: rake
50
+ requirement: &2153268640 !ruby/object:Gem::Requirement
63
51
  none: false
64
- requirements:
65
- - - ">="
66
- - !ruby/object:Gem::Version
67
- segments:
68
- - 0
69
- version: "0"
52
+ requirements:
53
+ - - ! '>='
54
+ - !ruby/object:Gem::Version
55
+ version: '0'
70
56
  type: :development
71
- version_requirements: *id004
57
+ prerelease: false
58
+ version_requirements: *2153268640
72
59
  description: Matahari provides test spies for Ruby
73
- email:
60
+ email:
74
61
  - tom@therye.org
75
62
  executables: []
76
-
77
63
  extensions: []
78
-
79
64
  extra_rdoc_files: []
80
-
81
- files:
65
+ files:
82
66
  - lib/matahari/adapters/matahari_methods.rb
83
67
  - lib/matahari/adapters/rspec.rb
84
68
  - lib/matahari/adapters/test_unit.rb
69
+ - lib/matahari/invocation.rb
85
70
  - lib/matahari/invocation_matcher.rb
86
71
  - lib/matahari/spy.rb
87
72
  - lib/matahari/version.rb
@@ -90,37 +75,28 @@ files:
90
75
  has_rdoc: true
91
76
  homepage: https://github.com/mortice/matahari
92
77
  licenses: []
93
-
94
78
  post_install_message:
95
- rdoc_options:
79
+ rdoc_options:
96
80
  - --main
97
81
  - README.rdoc
98
- require_paths:
82
+ require_paths:
99
83
  - lib
100
- required_ruby_version: !ruby/object:Gem::Requirement
84
+ required_ruby_version: !ruby/object:Gem::Requirement
101
85
  none: false
102
- requirements:
103
- - - ">="
104
- - !ruby/object:Gem::Version
105
- segments:
106
- - 0
107
- version: "0"
108
- required_rubygems_version: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ! '>='
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ required_rubygems_version: !ruby/object:Gem::Requirement
109
91
  none: false
110
- requirements:
111
- - - ">="
112
- - !ruby/object:Gem::Version
113
- segments:
114
- - 1
115
- - 3
116
- - 6
92
+ requirements:
93
+ - - ! '>='
94
+ - !ruby/object:Gem::Version
117
95
  version: 1.3.6
118
96
  requirements: []
119
-
120
97
  rubyforge_project:
121
- rubygems_version: 1.3.7
98
+ rubygems_version: 1.6.2
122
99
  signing_key:
123
100
  specification_version: 3
124
101
  summary: Test spy library, inspired by Mockito and RR
125
102
  test_files: []
126
-