create_tests 0.3.3 → 0.4.0

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.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/create_tests.rb +26 -10
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 49fbb65d02d8bf9d802f70d413303e316b9c46fa211a017522b3213f1dc48769
4
- data.tar.gz: 6f0b871b9259314405a1d6e0aceb73d31ba06598b1749b4aaf59f6c062e2c52d
3
+ metadata.gz: 49fff370e741943d13f9bbf6063d4ea9c63fcaaaa7c9819c3a51a6f8556c9b9c
4
+ data.tar.gz: cfda6076decbdbd19c65b9b486fcc6b5fa889d2897ac3f386bc3500933ec61df
5
5
  SHA512:
6
- metadata.gz: 8dac1591866b29fa2256906aa0faa70cd073846ca64bed1e55f78af0da8321b32ebf2fe48f5ff970ee12ee8c6bd91685a2ed06190621c66a7dbe58a47d174745
7
- data.tar.gz: 7a5ffb99360cc30a0eeaf08d388fb4152382291df5b8fb3f661126fef8316666db9a5c3292ebbf5223bce5defc7a505251ea3f1e9f8bbb7c32eb069c73d6f843
6
+ metadata.gz: 5763164de955aa939d5eb76dfc0426982c7374f232f175a5e584217c356a41f00f17aeeb0735dfe46f9762c077147fdc7f40158e77d3ab3b30da550aac7f53c0
7
+ data.tar.gz: 7ad3f60f12089de03bf6fcb5fea6fe90716cacd8ba83461c5e21b01594a8aeb78035a7e0f342596aa2157fc26fb31085bc9629483ac16ef4836c7117fe6b7eb7
data/lib/create_tests.rb CHANGED
@@ -340,30 +340,46 @@ class CreateTests
340
340
  tests[title] += "end\n"
341
341
 
342
342
  if params.size > 0
343
- missing_param = ""
343
+ empty_param = ""
344
344
  params.each do |p|
345
345
  r = req_txt.gsub(/#{p}([),])/, '""\1')
346
- missing_param += "
346
+ empty_param += "
347
347
  request = #{r}
348
348
  resp = @http.#{request[:method]}(request)
349
349
  expect(resp.code).to be_between('400', '499')\n"
350
350
  if request.key?(:responses) and (request[:responses].keys.select{|c| c.to_s.to_i>=400&&c.to_s.to_i<=499}).size>0
351
- missing_param += "expect(resp.message).to match /\#{request.responses[resp.code.to_sym].message}/i\n"
351
+ empty_param += "expect(resp.message).to match /\#{request.responses[resp.code.to_sym].message}/i\n"
352
352
  end
353
353
  end
354
- missing_param += "end\n"
355
- tests["it 'returns error if required parameter missing' "] = "do\n#{missing_param}"
354
+ empty_param += "end\n"
355
+ tests["it 'returns error if required parameter empty' "] = "do\n#{empty_param}"
356
356
  end
357
357
 
358
358
  if request.key?(:data) and request.key?(:data_required)
359
+ empty_param_data = ""
360
+ empty_param_data += "
361
+ @request[:data_required].each do |p|
362
+ request = @request.deep_copy
363
+ request.values_for[p] = ''
364
+ resp = @http.#{request[:method]}(request)
365
+ expect(resp.code).not_to be_between('200', '299')
366
+ if request.responses.key?(resp.code.to_sym)
367
+ expect(resp.message).to match /\#{request.responses[resp.code.to_sym].message}/i
368
+ end
369
+ end
370
+ "
371
+ empty_param_data += "end\n"
372
+ tests["it 'returns error if required parameter on data empty' do\n"] = empty_param_data
373
+
359
374
  missing_param_data = ""
360
375
  missing_param_data += "
361
376
  @request[:data_required].each do |p|
362
- @request.values_for = { p => '' }
363
- resp = @http.#{request[:method]}(@request)
364
- expect(resp.code).not_to be_between('200', '299')
365
- if @request.responses.key?(resp.code.to_sym)
366
- expect(resp.message).to match /\#{@request.responses[resp.code.to_sym].message}/i
377
+ request = @request.deep_copy
378
+ NiceHash.delete_nested(request[:data], p)
379
+ resp = @http.#{request[:method]}(request)
380
+ expect(resp.code).not_to be_between('200', '299')
381
+ if request.responses.key?(resp.code.to_sym)
382
+ expect(resp.message).to match /\#{request.responses[resp.code.to_sym].message}/i
367
383
  end
368
384
  end
369
385
  "
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: create_tests
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.3
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mario Ruiz
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-03-26 00:00:00.000000000 Z
11
+ date: 2019-06-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rufo