caseblocks_api 0.2.2 → 0.2.3

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.2
1
+ 0.2.3
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "caseblocks_api"
8
- s.version = "0.2.2"
8
+ s.version = "0.2.3"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Mark Provan"]
12
- s.date = "2012-10-09"
12
+ s.date = "2012-10-21"
13
13
  s.email = "development@emergeadapt.com"
14
14
  s.extra_rdoc_files = [
15
15
  "LICENSE.txt",
@@ -29,7 +29,7 @@ Gem::Specification.new do |s|
29
29
  "lib/caseblocks_api.rb",
30
30
  "lib/caseblocks_api/authentication_exception.rb",
31
31
  "lib/caseblocks_api/bucket_results.rb",
32
- "lib/caseblocks_api/find_by_property.rb",
32
+ "lib/caseblocks_api/finder.rb",
33
33
  "lib/caseblocks_api/update_case.rb",
34
34
  "spec/caseblocks_api_spec.rb",
35
35
  "spec/lib/caseblocks_api/bucket_results_spec.rb",
@@ -41,7 +41,7 @@ Gem::Specification.new do |s|
41
41
  s.homepage = "http://github.com/EmergeAdapt/caseblocks_api"
42
42
  s.licenses = ["MIT"]
43
43
  s.require_paths = ["lib"]
44
- s.rubygems_version = "1.8.15"
44
+ s.rubygems_version = "1.8.23"
45
45
  s.summary = "Ruby wrapper for CaseBlocks API"
46
46
 
47
47
  if s.respond_to? :specification_version then
@@ -5,7 +5,7 @@ require "caseblocks_api/authentication_exception"
5
5
 
6
6
  module CaseblocksAPI
7
7
  require 'caseblocks_api/bucket_results'
8
- require 'caseblocks_api/find_by_property'
8
+ require 'caseblocks_api/finder'
9
9
  require 'caseblocks_api/update_case'
10
10
 
11
11
  class Client
@@ -0,0 +1,28 @@
1
+ require 'caseblocks_api'
2
+ require 'active_support/inflector'
3
+
4
+ module CaseblocksAPI
5
+ class Finder
6
+ def initialize(client)
7
+ @client = client
8
+ end
9
+
10
+ def execute_single(case_type, property_name, value)
11
+ @client.get("/case_blocks/#{case_type}", {query: {search: true, property: property_name, value: value}})
12
+ end
13
+
14
+ def execute_multiple(case_type, properties)
15
+ @client.get("/case_blocks/#{case_type}", {query: {search: true, properties: properties}})
16
+ end
17
+ end
18
+
19
+ class Client
20
+ def find_by_property(case_type, property_name, value)
21
+ Finder.new(self.class).execute_single(case_type, property_name, value)
22
+ end
23
+
24
+ def find_by_properties(case_type, properties)
25
+ Finder.new(self.class).execute_multiple(case_type, properties)
26
+ end
27
+ end
28
+ end
@@ -13,6 +13,3 @@ describe CaseblocksAPI::BucketResults do
13
13
 
14
14
  end
15
15
 
16
- def test
17
- [].each { |a| j}
18
- end
@@ -1,16 +1,27 @@
1
1
  require 'spec_helper'
2
2
 
3
3
 
4
- describe CaseblocksAPI::FindByProperty do
4
+ describe CaseblocksAPI::Finder do
5
5
 
6
- Given(:client){ FakeHttpParty.new }
7
- Given(:property_name){"order_number"}
8
- Given(:value){ "2000391" }
9
- Given(:case_type){'tyre_shopper_order'}
10
- Given(:find_by_property){ CaseblocksAPI::FindByProperty.new(client) }
11
- When(:result){ find_by_property.execute(case_type, property_name, value) }
12
- Then{ expect(result).to eql client.result}
13
- Then{ expect(client.requested_url).to eql '/case_blocks/tyre_shopper_order' }
14
- Then{ expect(client.params).to eql({query: {search: true, property: property_name, value: value}}) }
6
+ Given (:client) { FakeHttpParty.new }
7
+ Given (:case_type) { 'the_case_type' }
8
+
9
+ context "find by a single property" do
10
+ Given (:property_name) { "order_number" }
11
+ Given (:value) { "2000391" }
12
+ Given (:find_by_property) { CaseblocksAPI::Finder.new(client) }
13
+ When (:result) { find_by_property.execute_single(case_type, property_name, value) }
14
+ Then { expect(result).to eql client.result}
15
+ Then { expect(client.requested_url).to eql "/case_blocks/#{case_type}" }
16
+ Then { expect(client.params).to eql({query: {search: true, property: property_name, value: value}}) }
17
+ end
18
+
19
+ context "finding by multiple properties" do
20
+ Given (:properties) { {order_number: '12334', client_surname: 'Smith'} }
21
+ Given (:find_by_properties) { CaseblocksAPI::Finder.new(client) }
22
+ When (:result) { find_by_properties.execute_multiple(case_type, properties) }
23
+ Then { expect(client.requested_url).to eql "/case_blocks/#{case_type}" }
24
+ Then { expect(client.params).to eql({query: {search: true, properties: properties}}) }
25
+ end
15
26
 
16
27
  end
data/spec/spec_helper.rb CHANGED
@@ -1,5 +1,6 @@
1
1
  require 'rspec'
2
2
  require 'rspec/given'
3
+ require 'pry'
3
4
  require 'caseblocks_api'
4
5
 
5
6
  Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: caseblocks_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-10-09 00:00:00.000000000 Z
12
+ date: 2012-10-21 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: httparty
16
- requirement: &70165094843440 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,15 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70165094843440
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
25
30
  - !ruby/object:Gem::Dependency
26
31
  name: activesupport
27
- requirement: &70165094842580 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
28
33
  none: false
29
34
  requirements:
30
35
  - - ! '>='
@@ -32,10 +37,15 @@ dependencies:
32
37
  version: '0'
33
38
  type: :runtime
34
39
  prerelease: false
35
- version_requirements: *70165094842580
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
36
46
  - !ruby/object:Gem::Dependency
37
47
  name: pry
38
- requirement: &70165094841800 !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
39
49
  none: false
40
50
  requirements:
41
51
  - - ! '>='
@@ -43,10 +53,15 @@ dependencies:
43
53
  version: '0'
44
54
  type: :development
45
55
  prerelease: false
46
- version_requirements: *70165094841800
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
47
62
  - !ruby/object:Gem::Dependency
48
63
  name: webmock
49
- requirement: &70165094841040 !ruby/object:Gem::Requirement
64
+ requirement: !ruby/object:Gem::Requirement
50
65
  none: false
51
66
  requirements:
52
67
  - - ! '>='
@@ -54,10 +69,15 @@ dependencies:
54
69
  version: '0'
55
70
  type: :development
56
71
  prerelease: false
57
- version_requirements: *70165094841040
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
58
78
  - !ruby/object:Gem::Dependency
59
79
  name: rspec-given
60
- requirement: &70165090595620 !ruby/object:Gem::Requirement
80
+ requirement: !ruby/object:Gem::Requirement
61
81
  none: false
62
82
  requirements:
63
83
  - - ! '>='
@@ -65,10 +85,15 @@ dependencies:
65
85
  version: '0'
66
86
  type: :development
67
87
  prerelease: false
68
- version_requirements: *70165090595620
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
69
94
  - !ruby/object:Gem::Dependency
70
95
  name: rspec
71
- requirement: &70165090594780 !ruby/object:Gem::Requirement
96
+ requirement: !ruby/object:Gem::Requirement
72
97
  none: false
73
98
  requirements:
74
99
  - - ~>
@@ -76,10 +101,15 @@ dependencies:
76
101
  version: '2.11'
77
102
  type: :development
78
103
  prerelease: false
79
- version_requirements: *70165090594780
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ~>
108
+ - !ruby/object:Gem::Version
109
+ version: '2.11'
80
110
  - !ruby/object:Gem::Dependency
81
111
  name: rdoc
82
- requirement: &70165090593800 !ruby/object:Gem::Requirement
112
+ requirement: !ruby/object:Gem::Requirement
83
113
  none: false
84
114
  requirements:
85
115
  - - ~>
@@ -87,10 +117,15 @@ dependencies:
87
117
  version: '3.12'
88
118
  type: :development
89
119
  prerelease: false
90
- version_requirements: *70165090593800
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ~>
124
+ - !ruby/object:Gem::Version
125
+ version: '3.12'
91
126
  - !ruby/object:Gem::Dependency
92
127
  name: bundler
93
- requirement: &70165090593240 !ruby/object:Gem::Requirement
128
+ requirement: !ruby/object:Gem::Requirement
94
129
  none: false
95
130
  requirements:
96
131
  - - ! '>='
@@ -98,10 +133,15 @@ dependencies:
98
133
  version: '0'
99
134
  type: :development
100
135
  prerelease: false
101
- version_requirements: *70165090593240
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ! '>='
140
+ - !ruby/object:Gem::Version
141
+ version: '0'
102
142
  - !ruby/object:Gem::Dependency
103
143
  name: jeweler
104
- requirement: &70165090592480 !ruby/object:Gem::Requirement
144
+ requirement: !ruby/object:Gem::Requirement
105
145
  none: false
106
146
  requirements:
107
147
  - - ~>
@@ -109,10 +149,15 @@ dependencies:
109
149
  version: 1.8.4
110
150
  type: :development
111
151
  prerelease: false
112
- version_requirements: *70165090592480
152
+ version_requirements: !ruby/object:Gem::Requirement
153
+ none: false
154
+ requirements:
155
+ - - ~>
156
+ - !ruby/object:Gem::Version
157
+ version: 1.8.4
113
158
  - !ruby/object:Gem::Dependency
114
159
  name: guard-rspec
115
- requirement: &70165090591760 !ruby/object:Gem::Requirement
160
+ requirement: !ruby/object:Gem::Requirement
116
161
  none: false
117
162
  requirements:
118
163
  - - ! '>='
@@ -120,7 +165,12 @@ dependencies:
120
165
  version: '0'
121
166
  type: :development
122
167
  prerelease: false
123
- version_requirements: *70165090591760
168
+ version_requirements: !ruby/object:Gem::Requirement
169
+ none: false
170
+ requirements:
171
+ - - ! '>='
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
124
174
  description:
125
175
  email: development@emergeadapt.com
126
176
  executables: []
@@ -142,7 +192,7 @@ files:
142
192
  - lib/caseblocks_api.rb
143
193
  - lib/caseblocks_api/authentication_exception.rb
144
194
  - lib/caseblocks_api/bucket_results.rb
145
- - lib/caseblocks_api/find_by_property.rb
195
+ - lib/caseblocks_api/finder.rb
146
196
  - lib/caseblocks_api/update_case.rb
147
197
  - spec/caseblocks_api_spec.rb
148
198
  - spec/lib/caseblocks_api/bucket_results_spec.rb
@@ -165,7 +215,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
165
215
  version: '0'
166
216
  segments:
167
217
  - 0
168
- hash: -4358537317869269911
218
+ hash: -4066504400286969574
169
219
  required_rubygems_version: !ruby/object:Gem::Requirement
170
220
  none: false
171
221
  requirements:
@@ -174,7 +224,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
174
224
  version: '0'
175
225
  requirements: []
176
226
  rubyforge_project:
177
- rubygems_version: 1.8.15
227
+ rubygems_version: 1.8.23
178
228
  signing_key:
179
229
  specification_version: 3
180
230
  summary: Ruby wrapper for CaseBlocks API
@@ -1,20 +0,0 @@
1
- require 'caseblocks_api'
2
- require 'active_support/inflector'
3
-
4
- module CaseblocksAPI
5
- class FindByProperty
6
- def initialize(client)
7
- @client = client
8
- end
9
-
10
- def execute(case_type, property_name, value)
11
- @client.get("/case_blocks/#{case_type}", {query: {search: true, property: property_name, value: value}})
12
- end
13
- end
14
-
15
- class Client
16
- def find_by_property(case_type, property_name, value)
17
- FindByProperty.new(self.class).execute(case_type, property_name, value)
18
- end
19
- end
20
- end