matahari 0.3.1 → 0.3.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -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
-