quinoa 0.0.11 → 0.0.12

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ca78ca9a7145903febd11f41319a4ab5788c4d96
4
- data.tar.gz: 9328cbc86f97b6b6c94ba0a3e998e92c498e05c0
3
+ metadata.gz: e9134ab658e1dd3179dc1457e998629e11f2d854
4
+ data.tar.gz: 1686da5cbd70f796996f5b2b0f2260fbfe5d181a
5
5
  SHA512:
6
- metadata.gz: '081cb739b5a70aaa723fb3a6218823c4038d0ed8234784f22b96275f08fa299a524b0b590a21e8806ccfadd9eadce1ed03aa19663fff40d63d09597ba92fc843'
7
- data.tar.gz: 65bd1981b810bec653c87f0b999ecc81f1ca3a7f193d14cd3bb5cc0bc4dc0003f12b87cb350a2e60f51b2826197cd5d6882d41661b21639f035fd107206696b4
6
+ metadata.gz: 8e31a232a1511cd4d3e8108b322972e618874ead066b90a3d208ded964089741ebd3185a85801f7a3e3c016c53711936de953c9297135f57b8ce1c30af7541b8
7
+ data.tar.gz: 6f8cb0f6cbfe7580bf60098bf89bf7cf8fe427dcb5bedf6d0225db1ec1053d4e27602c68bc9f8988a98bb3ea4912c89caa8b64ee602464e4ba22d70326f4bc2b
@@ -2,3 +2,5 @@ language: ruby
2
2
  rvm:
3
3
  - 2.2.0
4
4
  - 2.3.0
5
+
6
+ after_script: bundle exec codeclimate-test-reporter
@@ -1,17 +1,18 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- quinoa (0.0.11)
4
+ quinoa (0.0.12)
5
5
  rest-client (~> 2.0.0)
6
6
  rspec (~> 3.5.0)
7
7
 
8
8
  GEM
9
9
  remote: http://rubygems.org/
10
10
  specs:
11
- addressable (2.4.0)
12
- builder (3.2.2)
13
- codeclimate-test-reporter (0.6.0)
14
- simplecov (>= 0.7.1, < 1.0.0)
11
+ addressable (2.5.0)
12
+ public_suffix (~> 2.0, >= 2.0.2)
13
+ builder (3.2.3)
14
+ codeclimate-test-reporter (1.0.5)
15
+ simplecov
15
16
  coderay (1.1.1)
16
17
  crack (0.4.3)
17
18
  safe_yaml (~> 1.0.0)
@@ -26,15 +27,15 @@ GEM
26
27
  cucumber-core (1.5.0)
27
28
  gherkin (~> 4.0)
28
29
  cucumber-wire (0.0.1)
29
- diff-lcs (1.2.5)
30
+ diff-lcs (1.3)
30
31
  docile (1.1.5)
31
- domain_name (0.5.20160826)
32
+ domain_name (0.5.20161129)
32
33
  unf (>= 0.0.5, < 1.0.0)
33
34
  gherkin (4.0.0)
34
- hashdiff (0.3.0)
35
+ hashdiff (0.3.2)
35
36
  http-cookie (1.0.3)
36
37
  domain_name (~> 0.5)
37
- json (2.0.2)
38
+ json (2.0.3)
38
39
  method_source (0.8.2)
39
40
  mime-types (3.1)
40
41
  mime-types-data (~> 3.2015)
@@ -48,7 +49,8 @@ GEM
48
49
  coderay (~> 1.1.0)
49
50
  method_source (~> 0.8.1)
50
51
  slop (~> 3.4)
51
- rake (11.3.0)
52
+ public_suffix (2.0.5)
53
+ rake (12.0.0)
52
54
  rest-client (2.0.0)
53
55
  http-cookie (>= 1.0.2, < 2.0)
54
56
  mime-types (>= 1.16, < 4.0)
@@ -67,16 +69,19 @@ GEM
67
69
  rspec-support (~> 3.5.0)
68
70
  rspec-support (3.5.0)
69
71
  safe_yaml (1.0.4)
70
- simplecov (0.12.0)
72
+ simplecov (0.13.0)
71
73
  docile (~> 1.1.0)
72
74
  json (>= 1.8, < 3)
73
75
  simplecov-html (~> 0.10.0)
74
76
  simplecov-html (0.10.0)
77
+ simplecov-json (0.2)
78
+ json
79
+ simplecov
75
80
  slop (3.6.0)
76
81
  unf (0.1.4)
77
82
  unf_ext
78
83
  unf_ext (0.0.7.2)
79
- webmock (2.1.0)
84
+ webmock (2.3.2)
80
85
  addressable (>= 2.3.6)
81
86
  crack (>= 0.3.2)
82
87
  hashdiff
@@ -85,14 +90,15 @@ PLATFORMS
85
90
  ruby
86
91
 
87
92
  DEPENDENCIES
88
- codeclimate-test-reporter (~> 0.6.0)
93
+ codeclimate-test-reporter (~> 1.0.5)
89
94
  cucumber (~> 2.4.0)
90
95
  nyan-cat-formatter (~> 0.11)
91
96
  pry (~> 0.10.4)
92
97
  quinoa!
93
- rake (~> 11.3.0)
94
- simplecov (~> 0.12.0)
95
- webmock (~> 2.1.0)
98
+ rake (~> 12.0.0)
99
+ simplecov (~> 0.13.0)
100
+ simplecov-json (~> 0.2)
101
+ webmock (~> 2.3.2)
96
102
 
97
103
  BUNDLED WITH
98
104
  1.13.6
data/changelog CHANGED
@@ -1,4 +1,9 @@
1
- 0.0.10: Adding first version of expectations and report api
1
+ 0.0.12: Adding put method
2
+ - adding put method
3
+ - small code improvements
4
+ - updating development dependencies
5
+
6
+ 0.0.11: Adding first version of expectations and report api
2
7
  - adding report
3
8
  - adding expectations
4
9
 
@@ -18,51 +18,31 @@ module Quinoa
18
18
  self.url = url
19
19
  end
20
20
 
21
+ def put! url=nil
22
+ p_methods("put", url)
23
+ end
24
+
21
25
  def post! url=nil
22
- begin
23
- if url == nil
24
- get_time {
25
- RestClient.post(
26
- self.url + self.path,
27
- self.body,
28
- {:accept => self.accept,
29
- :content_type => self.content_type,
30
- :authorization => self.authorization}.merge!(self.custom_headers)
31
- )
32
- }
33
- else
34
- get_time {
35
- RestClient.post(
36
- url,
37
- self.body,
38
- {:accept => self.accept,
39
- :content_type => self.content_type,
40
- :authorization => self.authorization}.merge!(self.custom_headers)
41
- )
42
- }
43
- end
44
- rescue => e
45
- self.response = e.response
46
- end
26
+ p_methods("post", url)
47
27
  end
48
28
 
49
29
  def get! url=nil
50
30
  begin
51
31
  if url == nil
52
- get_time {
32
+ get_time {
53
33
  RestClient.get(
54
- self.url + self.path,
55
- {:accept => self.accept,
34
+ self.url + self.path,
35
+ {:accept => self.accept,
56
36
  :authorization => self.authorization}.merge!(self.custom_headers)
57
- )
37
+ )
58
38
  }
59
39
  else
60
- get_time {
61
- RestClient.get(
62
- url,
63
- {:accept => self.accept,
40
+ get_time {
41
+ RestClient.get(
42
+ url,
43
+ {:accept => self.accept,
64
44
  :authorization => self.authorization}.merge!(self.custom_headers)
65
- )
45
+ )
66
46
  }
67
47
  end
68
48
  rescue => e
@@ -90,7 +70,7 @@ module Quinoa
90
70
  self.response.headers[:location]
91
71
  end
92
72
 
93
- def add_custom_header custom_header_name, custom_header_value
73
+ def add_custom_header custom_header_name, custom_header_value
94
74
  self.custom_headers.merge! custom_header_name.to_sym => custom_header_value.to_s
95
75
  end
96
76
 
@@ -121,11 +101,11 @@ module Quinoa
121
101
 
122
102
  self.assertions.merge! get_assertion_record(
123
103
  assertion_item,
124
- expectation_map[:value],
104
+ expectation_map[:value],
125
105
  check_attribute?(
126
106
  assertion_item,
127
- expectation_map[:value],
128
- expectation_map[:compare_using]),
107
+ expectation_map[:value],
108
+ expectation_map[:compare_using]),
129
109
  expectation_map[:level])
130
110
  end
131
111
  end
@@ -143,6 +123,36 @@ module Quinoa
143
123
  end
144
124
 
145
125
  private
126
+ def p_methods method_name, url=nil
127
+ meth = RestClient.method(method_name)
128
+ begin
129
+ if url == nil
130
+ get_time {
131
+ meth.call(
132
+ self.url + self.path,
133
+ self.body,
134
+ {:accept => self.accept,
135
+ :content_type => self.content_type,
136
+ :authorization => self.authorization}.merge!(self.custom_headers)
137
+ )
138
+ }
139
+ else
140
+ get_time {
141
+ meth.call(
142
+ url,
143
+ self.body,
144
+ {:accept => self.accept,
145
+ :content_type => self.content_type,
146
+ :authorization => self.authorization}.merge!(self.custom_headers)
147
+ )
148
+ }
149
+ end
150
+ rescue => e
151
+ self.response = e.response
152
+ end
153
+ end
154
+
155
+
146
156
  def add_expectation attribute, value, comparison = "eq", level = :warn
147
157
  self.expectations.merge! attribute.to_sym => {:compare_using => comparison, :value => value, :level => level}
148
158
  end
@@ -1,3 +1,3 @@
1
1
  module Quinoa
2
- VERSION = "0.0.11"
2
+ VERSION = "0.0.12"
3
3
  end
@@ -21,13 +21,14 @@ Gem::Specification.new do |s|
21
21
 
22
22
  s.require_paths = ["lib"]
23
23
 
24
- s.add_development_dependency 'simplecov', '~> 0.12.0'
25
- s.add_development_dependency 'codeclimate-test-reporter', '~> 0.6.0'
24
+ s.add_development_dependency 'simplecov', '~> 0.13.0'
25
+ s.add_development_dependency 'simplecov-json', '~> 0.2'
26
+ s.add_development_dependency 'codeclimate-test-reporter', '~> 1.0.5'
26
27
  s.add_development_dependency 'pry', '~> 0.10.4'
27
- s.add_development_dependency 'rake', '~> 11.3.0'
28
+ s.add_development_dependency 'rake', '~> 12.0.0'
28
29
  s.add_development_dependency 'nyan-cat-formatter', '~> 0.11'
29
30
  s.add_development_dependency 'cucumber', '~> 2.4.0'
30
- s.add_development_dependency 'webmock', '~> 2.1.0'
31
+ s.add_development_dependency 'webmock', '~> 2.3.2'
31
32
 
32
33
  s.add_dependency 'rest-client', '~> 2.0.0'
33
34
  s.add_dependency 'rspec', '~> 3.5.0'
@@ -101,7 +101,7 @@ describe Quinoa do
101
101
  expect(@service.custom_headers).to eq Hash[:"my-company-custom-header" => "text", :"my-foo-custom-header" => "foo"]
102
102
  end
103
103
 
104
- ["post", "get"].each do |method|
104
+ ["post", "get", "put"].each do |method|
105
105
  it "Should be present in the #{method} requests" do
106
106
  # For this mock order matters
107
107
  stub_request(:any, "http://www.camiloribeiro.com").
@@ -133,7 +133,7 @@ describe Quinoa do
133
133
  end
134
134
  end
135
135
 
136
- describe "overwiting the entire url to post and get" do
136
+ describe "overwiting the entire url to post, put get" do
137
137
 
138
138
  before(:each) do
139
139
  stub_request(:any, "http://www.bugbang.com.br/foo").
@@ -168,6 +168,17 @@ describe Quinoa do
168
168
  expect(@service.authorization).to eq "token !#€%&/()="
169
169
  expect(@service.response.code).to eq(200)
170
170
  end
171
+
172
+ it "should overwite for put" do
173
+ @service.put! "http://www.bugbang.com.br/foo"
174
+
175
+ # explicity
176
+ expect(@service.response.headers[:accept]).to eq("application/xml")
177
+ expect(@service.response.headers[:content_type]).to eq("application/json")
178
+ expect(@service.response.body).to eq("simple response")
179
+ expect(@service.authorization).to eq "token !#€%&/()="
180
+ expect(@service.response.code).to eq(200)
181
+ end
171
182
  end
172
183
 
173
184
 
@@ -206,6 +217,24 @@ describe Quinoa do
206
217
  expect(@service.response_code).to eq(200)
207
218
  end
208
219
 
220
+ it "should put" do
221
+ @service.put!
222
+
223
+ # explicity
224
+ expect(@service.response.headers[:accept]).to eq("application/xml")
225
+ expect(@service.response.headers[:content_type]).to eq("application/json")
226
+ expect(@service.response.body).to eq("simple response")
227
+ expect(@service.authorization).to eq "token !#€%&/()="
228
+ expect(@service.response.code).to eq(200)
229
+
230
+ # natural
231
+ expect(@service.response_accept).to eq("application/xml")
232
+ expect(@service.response_content_type).to eq("application/json")
233
+ expect(@service.response_body).to eq("simple response")
234
+ expect(@service.authorization).to eq "token !#€%&/()="
235
+ expect(@service.response_code).to eq(200)
236
+ end
237
+
209
238
  it "should get" do
210
239
  @service.get!
211
240
 
@@ -261,6 +290,22 @@ describe Quinoa do
261
290
  expect(@service.response_code).to eq(code)
262
291
  end
263
292
 
293
+ it "should put" do
294
+ @service.put!
295
+
296
+ # explicity
297
+ expect(@service.response.headers[:accept]).to eq("application/xml")
298
+ expect(@service.response.headers[:content_type]).to eq("application/json")
299
+ expect(@service.response.body).to eq("simple response")
300
+ expect(@service.response.code).to eq(code)
301
+
302
+ # natural
303
+ expect(@service.response_accept).to eq("application/xml")
304
+ expect(@service.response_content_type).to eq("application/json")
305
+ expect(@service.response_body).to eq("simple response")
306
+ expect(@service.response_code).to eq(code)
307
+ end
308
+
264
309
  it "should get" do
265
310
  @service.get!
266
311
 
@@ -314,6 +359,24 @@ describe Quinoa do
314
359
  expect(@service.response_code).to eq(code)
315
360
  end
316
361
 
362
+ it "should put" do
363
+ @service.put!
364
+
365
+ # explicity
366
+ expect(@service.response.headers[:accept]).to eq("application/xml")
367
+ expect(@service.response.headers[:content_type]).to eq("application/json")
368
+ expect(@service.response.body).to eq("simple response")
369
+ expect(@service.response.headers[:location]).to eq("http://www.bugbang.com.br")
370
+ expect(@service.response.code).to eq(code)
371
+
372
+ # natural
373
+ expect(@service.response_accept).to eq("application/xml")
374
+ expect(@service.response_content_type).to eq("application/json")
375
+ expect(@service.response_body).to eq("simple response")
376
+ expect(@service.response_location).to eq("http://www.bugbang.com.br")
377
+ expect(@service.response_code).to eq(code)
378
+ end
379
+
317
380
  it "should get" do
318
381
 
319
382
  @service.get!
@@ -1,7 +1,12 @@
1
1
  require 'rspec'
2
2
  require 'webmock/rspec'
3
3
  require 'simplecov'
4
+ require 'simplecov-json'
4
5
 
6
+ SimpleCov.formatters = [
7
+ SimpleCov::Formatter::HTMLFormatter,
8
+ SimpleCov::Formatter::JSONFormatter,
9
+ ]
5
10
  SimpleCov.start
6
11
 
7
12
  RSpec.configure do |config|
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: quinoa
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.11
4
+ version: 0.0.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Camilo Ribeiro
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-10-23 00:00:00.000000000 Z
11
+ date: 2017-02-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: simplecov
@@ -16,28 +16,42 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.12.0
19
+ version: 0.13.0
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 0.12.0
26
+ version: 0.13.0
27
+ - !ruby/object:Gem::Dependency
28
+ name: simplecov-json
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '0.2'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '0.2'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: codeclimate-test-reporter
29
43
  requirement: !ruby/object:Gem::Requirement
30
44
  requirements:
31
45
  - - "~>"
32
46
  - !ruby/object:Gem::Version
33
- version: 0.6.0
47
+ version: 1.0.5
34
48
  type: :development
35
49
  prerelease: false
36
50
  version_requirements: !ruby/object:Gem::Requirement
37
51
  requirements:
38
52
  - - "~>"
39
53
  - !ruby/object:Gem::Version
40
- version: 0.6.0
54
+ version: 1.0.5
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: pry
43
57
  requirement: !ruby/object:Gem::Requirement
@@ -58,14 +72,14 @@ dependencies:
58
72
  requirements:
59
73
  - - "~>"
60
74
  - !ruby/object:Gem::Version
61
- version: 11.3.0
75
+ version: 12.0.0
62
76
  type: :development
63
77
  prerelease: false
64
78
  version_requirements: !ruby/object:Gem::Requirement
65
79
  requirements:
66
80
  - - "~>"
67
81
  - !ruby/object:Gem::Version
68
- version: 11.3.0
82
+ version: 12.0.0
69
83
  - !ruby/object:Gem::Dependency
70
84
  name: nyan-cat-formatter
71
85
  requirement: !ruby/object:Gem::Requirement
@@ -100,14 +114,14 @@ dependencies:
100
114
  requirements:
101
115
  - - "~>"
102
116
  - !ruby/object:Gem::Version
103
- version: 2.1.0
117
+ version: 2.3.2
104
118
  type: :development
105
119
  prerelease: false
106
120
  version_requirements: !ruby/object:Gem::Requirement
107
121
  requirements:
108
122
  - - "~>"
109
123
  - !ruby/object:Gem::Version
110
- version: 2.1.0
124
+ version: 2.3.2
111
125
  - !ruby/object:Gem::Dependency
112
126
  name: rest-client
113
127
  requirement: !ruby/object:Gem::Requirement