client-api 0.3.0 → 0.3.1

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c4f4fc9b992556d30a2b18109f3311b4ad7537c4899cf28bdf6b4546b3be92a2
4
- data.tar.gz: 52a54136c51d74c7ec5150f8e839fb41ee29bee4accad87e80d14c08927b42a7
3
+ metadata.gz: d151a6541ddc08498bd506b21fd8578a436d2b2745aa222e962197cd301079eb
4
+ data.tar.gz: c8554dae87838761e44411c182621cb00aeb98845bf78d3bcb087848005dfe8a
5
5
  SHA512:
6
- metadata.gz: 05412312db15d9542baaefdda445d2c4f0124c62cff3fd3ec7a08ea9556449c559c9cfd3c7c6451818237ad2a806a49e3db1a88798e03b3c080749d6dd6ffdbb
7
- data.tar.gz: 56e2dc60bdfb115ee4a45fd0c22d4e4ad08d38f5c1a08daf95bcb1debdaf848cef0e2deaa63cb1dfaaed41b46071182f252b717aa2feac19df4f05a9f0a647cb
6
+ metadata.gz: 459b30e070200f9770b9de1f510969d83a90730429d18e71df2c9f3858d64761b36ff16d9146adad5a7058dbd25189a898acaef8f338ee3b2245295284e8a1a6
7
+ data.tar.gz: b2b6943c386cd7985ad2794fd1bce6c1794001445dd9a910af56befe6862d2532296ae847764c04357a45849635bde07569384e095e7743e974b22e193655191
@@ -99,8 +99,13 @@ module ClientApi
99
99
  def header(options = {})
100
100
  mod_headers = options[:headers] || {}
101
101
  authorization = basic_encode(:username => basic_auth['Username'], :password => basic_auth['Password'])
102
- headers['Authorization'] = basic_encode(:username => basic_auth['Username'], :password => basic_auth['Password']) if authorization != "Basic Og=="
103
- headers.merge(mod_headers)
102
+ if headers == nil || headers == ""
103
+ @headers = {}
104
+ else
105
+ @headers = headers
106
+ end
107
+ @headers['Authorization'] = authorization if authorization != "Basic Og=="
108
+ @headers.merge(mod_headers)
104
109
  end
105
110
 
106
111
  def pre_logger(options = {})
@@ -6,7 +6,7 @@ module ClientApi
6
6
  options.map do |data|
7
7
  raise('key is not given!') if data[:key].nil?
8
8
  raise('operator is not given!') if data[:operator].nil?
9
- raise('value (or) type is not given!') if data[:value].nil? && data[:type].nil?
9
+ raise('value / type / size is not given!') if data[:value].nil? && data[:type].nil? && data[:size].nil?
10
10
 
11
11
  @resp = JSON.parse(res.to_json)
12
12
  key = data[:key].split("->")
@@ -19,9 +19,10 @@ module ClientApi
19
19
  value ||= data[:value]
20
20
  operator = data[:operator]
21
21
  type ||= data[:type]
22
+ size ||= data[:size]
22
23
 
23
24
  case operator
24
- when '=', '==', 'eql?', 'equal', 'equal?'
25
+ when '=', '==', 'eql', 'eql?', 'equal', 'equal?'
25
26
  # value validation
26
27
  expect(value).to eq(@resp), lambda {"[key]: \"#{data[:key]}\"".blue + "\n didn't match \n[value]: \"#{data[:value]}\"\n"} if value != nil
27
28
 
@@ -32,7 +33,15 @@ module ClientApi
32
33
  expect(datatype(type, value)).to eq(@resp.class), lambda {"[key]: \"#{data[:key]}\"".blue + "\n datatype shouldn't be \n[type]: \"#{data[:type]}\"\n"}
33
34
  end
34
35
 
35
- when '!', '!=', '!eql?', 'not equal', '!equal?'
36
+ if size != nil
37
+ begin
38
+ expect(size).to eq(@resp.count), lambda {"[key]: \"#{data[:key]}\"".blue + "\n" + "size didn't match" + "\n\n" + "[ actual size ]: #{@resp.count}" + "\n" + "[expected size]: #{size}".green}
39
+ rescue NoMethodError
40
+ expect(size).to eq(0), lambda {"[key]: \"#{data[:key]}\"".blue + "\n" + "size didn't match" + "\n\n" + "[ actual size ]: 0" + "\n" + "[expected size]: #{size}".green}
41
+ end
42
+ end
43
+
44
+ when '!', '!=', '!eql', '!eql?', 'not eql', 'not equal', '!equal?'
36
45
  # value validation
37
46
  expect(value).not_to eq(@resp), lambda {"[key]: \"#{data[:key]}\"".blue + "\n didn't match \n[value]: \"#{data[:value]}\"\n"} if value != nil
38
47
 
@@ -43,11 +52,19 @@ module ClientApi
43
52
  expect(datatype(type, value)).not_to eq(@resp.class), lambda {"[key]: \"#{data[:key]}\"".blue + "\n datatype shouldn't be \n[type]: \"#{data[:type]}\"\n"}
44
53
  end
45
54
 
55
+ if size != nil
56
+ begin
57
+ expect(size).not_to eq(@resp.count), lambda {"[key]: \"#{data[:key]}\"".blue + "\n" + "size shouldn't match" + "\n\n" + "[ actual size ]: #{@resp.count}" + "\n" + "[size not expected]: #{size}".green}
58
+ rescue NoMethodError
59
+ expect(size).not_to eq(0), lambda {"[key]: \"#{data[:key]}\"".blue + "\n" + "size shouldn't match" + "\n\n" + "[ actual size ]: 0" + "\n" + "[size not expected]: #{size}".green}
60
+ end
61
+ end
62
+
46
63
  when '>', '>=', '<', '<=', 'greater than', 'greater than or equal to', 'less than', 'less than or equal to', 'lesser than', 'lesser than or equal to'
47
64
  message = 'is not greater than (or) equal to' if operator == '>=' || operator == 'greater than or equal to'
48
65
  message = 'is not greater than' if operator == '>' || operator == 'greater than'
49
- message = 'is not lesser than' if operator == '<=' || operator == 'less than or equal to'
50
- message = 'is not lesser than (or) equal to' if operator == '<' || operator == 'less than' || operator == 'lesser than'
66
+ message = 'is not lesser than (or) equal to' if operator == '<=' || operator == 'less than or equal to'
67
+ message = 'is not lesser than' if operator == '<' || operator == 'less than' || operator == 'lesser than'
51
68
 
52
69
  # value validation
53
70
  expect(@resp.to_i.public_send(operator, value)).to eq(true), "[key]: \"#{data[:key]}\"".blue + "\n #{message} \n[value]: \"#{data[:value]}\"\n" if value != nil
@@ -55,6 +72,14 @@ module ClientApi
55
72
  # datatype validation
56
73
  expect(datatype(type, value)).to eq(@resp.class), lambda {"[key]: \"#{data[:key]}\"".blue + "\n datatype shouldn't be \n[type]: \"#{data[:type]}\"\n"} if type != nil
57
74
 
75
+ if size != nil
76
+ begin
77
+ expect(@resp.count.to_i.public_send(operator, size)).to eq(true), lambda {"[key]: \"#{data[:key]}\"".blue + "\n" + "#{message} #{size}" + "\n\n" + "[ actual size ]: #{@resp.count}" + "\n" + "expected size to be #{operator} #{size}".green}
78
+ rescue NoMethodError
79
+ expect(0.public_send(operator, size)).to eq(true), lambda {"[key]: \"#{data[:key]}\"".blue + "\n" + "#{message} #{size}" + "\n\n" + "[ actual size ]: 0" + "\n" + "expected size to be #{operator} #{size}".green}
80
+ end
81
+ end
82
+
58
83
  when 'contains', 'has', 'contains?', 'has?', 'include', 'include?'
59
84
  # value validation
60
85
  expect(@resp.to_s).to include(value.to_s), lambda {"[key]: \"#{data[:key]} => #{@resp}\"".blue + "\n not contains \n[value]: \"#{data[:value]}\"\n"} if value != nil
@@ -66,6 +91,14 @@ module ClientApi
66
91
  expect(datatype(type, value)).to eq(@resp.class), lambda {"[key]: \"#{data[:key]}\"".blue + "\n datatype shouldn't be \n[type]: \"#{data[:type]}\"\n"}
67
92
  end
68
93
 
94
+ if size != nil
95
+ begin
96
+ expect(@resp.count.to_s).to include(size.to_s), lambda {"[key]: \"#{data[:key]} => #{@resp}\"".blue + "\n"+ "size not contains #{size}"+ "\n\n" + "[ actual size ]: #{@resp.count}" + "\n" + "expected size to contain: #{size}".green}
97
+ rescue NoMethodError
98
+ expect(0.to_s).to include(size.to_s), lambda {"[key]: \"#{data[:key]} => #{@resp}\"".blue + "\n"+ "size not contains #{size}"+ "\n\n" + "[ actual size ]: 0" + "\n" + "expected size to contain: #{size}".green}
99
+ end
100
+ end
101
+
69
102
  when 'not contains', '!contains', 'not include', '!include'
70
103
  # value validation
71
104
  expect(@resp.to_s).not_to include(value.to_s), lambda {"[key]: \"#{data[:key]} => #{@resp}\"".blue + "\n should not contain \n[value]: \"#{data[:value]}\"\n"} if value != nil
@@ -77,6 +110,14 @@ module ClientApi
77
110
  expect(datatype(type, value)).not_to eq(@resp.class), lambda {"[key]: \"#{data[:key]}\"".blue + "\n datatype shouldn't be \n[type]: \"#{data[:type]}\"\n"}
78
111
  end
79
112
 
113
+ if size != nil
114
+ begin
115
+ expect(@resp.count.to_s).not_to include(size.to_s), lambda {"[key]: \"#{data[:key]} => #{@resp}\"".blue + "\n"+ "size should not contain #{size}"+ "\n\n" + "[ actual size ]: #{@resp.count}" + "\n" + "expected size not to contain: #{size}".green}
116
+ rescue NoMethodError
117
+ expect(0.to_s).not_to include(size.to_s), lambda {"[key]: \"#{data[:key]} => #{@resp}\"".blue + "\n"+ "size should not contain #{size}"+ "\n\n" + "[ actual size ]: 0" + "\n" + "expected size not to contain: #{size}".green}
118
+ end
119
+ end
120
+
80
121
  else
81
122
  raise('operator not matching')
82
123
  end
@@ -1,3 +1,3 @@
1
1
  module ClientApi
2
- VERSION = "0.3.0".freeze
2
+ VERSION = "0.3.1".freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: client-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Prashanth Sams
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-11-03 00:00:00.000000000 Z
11
+ date: 2019-11-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -134,6 +134,6 @@ requirements: []
134
134
  rubygems_version: 3.0.4
135
135
  signing_key:
136
136
  specification_version: 4
137
- summary: HTTP Rest Api client for RSpec test automation framework that binds within
138
- itself
137
+ summary: HTTP REST API client for testing application APIs based on the ruby’s RSpec
138
+ framework that binds a complete api automation framework setup within itself
139
139
  test_files: []