open_api_import 0.10.5 → 0.10.9
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 +4 -4
- data/lib/open_api_import.rb +22 -7
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4e1707e266a2104ec005d5c7d5081ffd51c9a012bf1bc6320403377c934998d3
|
4
|
+
data.tar.gz: 1babbe0d881bd6f1823935cf6d66447cfa8f5a91df4106e9d87f1ac0fe792aac
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: efb801027685d7156f499f110028ffae75fac89032598bc447d2b1c6e1f4acd7fe61905a509e3d6faa4d5d74348257faa98adc3c69d6c1e90f5719a55b1dfac7
|
7
|
+
data.tar.gz: 7bf47753113ba141a5e7798f40caa958f27534082484286d483d03fbcf8a1f6881c4ddb3cb1111154790a21bcee77eecfbc366e2af8b75ae261507985f3c3dd4
|
data/lib/open_api_import.rb
CHANGED
@@ -369,11 +369,22 @@ class OpenApiImport
|
|
369
369
|
end
|
370
370
|
end
|
371
371
|
if dpv.keys.include?(:description)
|
372
|
-
description_parameters << "# #{dpk}: (#{dpv[:type]}) #{dpv[:description]}"
|
372
|
+
description_parameters << "# #{dpk}: (#{dpv[:type]}) #{dpv[:description].split("\n").join("\n#\t\t\t")}"
|
373
373
|
end
|
374
374
|
|
375
375
|
data_pattern += get_patterns(dpk,dpv)
|
376
376
|
data_pattern.uniq!
|
377
|
+
dpkeys = []
|
378
|
+
data_pattern.reject! do |dp|
|
379
|
+
dpkey = dp.scan(/^'[\w\.]+'/)
|
380
|
+
|
381
|
+
if dpkeys.include?(dpkey)
|
382
|
+
true
|
383
|
+
else
|
384
|
+
dpkeys << dpkey
|
385
|
+
false
|
386
|
+
end
|
387
|
+
end
|
377
388
|
|
378
389
|
if dpv.keys.include?(:readOnly) and dpv[:readOnly] == true
|
379
390
|
data_read_only << dpk
|
@@ -389,7 +400,8 @@ class OpenApiImport
|
|
389
400
|
end
|
390
401
|
|
391
402
|
#todo: consider check default and insert it
|
392
|
-
|
403
|
+
#todo: remove array from here and add the option to get_examples for the case thisisthekey: ['xxxx']
|
404
|
+
if dpv.key?(:type) and dpv[:type]!='array'
|
393
405
|
params_data << get_examples({dpk => dpv}, :only_value, true).join
|
394
406
|
params_data[-1].chop!.chop! if params_data[-1].to_s[-2..-1]==', '
|
395
407
|
params_data.pop if params_data[-1].match?(/^\s*$/im)
|
@@ -400,7 +412,6 @@ class OpenApiImport
|
|
400
412
|
params_data << "#{dpk}: #{valv}"
|
401
413
|
end
|
402
414
|
}
|
403
|
-
|
404
415
|
if params_data.size > 0
|
405
416
|
if data_examples_all_of == true and data_examples.size > 0
|
406
417
|
data_examples[0]+=params_data
|
@@ -716,17 +727,19 @@ class OpenApiImport
|
|
716
727
|
end
|
717
728
|
|
718
729
|
if val.key?(:items) and val[:items].key?(:enum)
|
730
|
+
#before we were getting in all these cases a random value from the enum, now we are getting the first position by default
|
731
|
+
#the reason is to avoid confusion later in case we want to compare two swaggers and verify the changes
|
719
732
|
if type==:only_value
|
720
733
|
if val[:items][:enum][0].is_a?(String)
|
721
|
-
example << " [\"" + val[:items][:enum]
|
734
|
+
example << " [\"" + val[:items][:enum][0] + "\"] "
|
722
735
|
else
|
723
|
-
example << " [" + val[:items][:enum]
|
736
|
+
example << " [" + val[:items][:enum][0] + "] "
|
724
737
|
end
|
725
738
|
else
|
726
739
|
if val[:items][:enum][0].is_a?(String)
|
727
|
-
example << " #{prop.to_sym}: [\"" + val[:items][:enum]
|
740
|
+
example << " #{prop.to_sym}: [\"" + val[:items][:enum][0] + "\"], "
|
728
741
|
else
|
729
|
-
example << " #{prop.to_sym}: [" + val[:items][:enum]
|
742
|
+
example << " #{prop.to_sym}: [" + val[:items][:enum][0] + "], "
|
730
743
|
end
|
731
744
|
end
|
732
745
|
else
|
@@ -912,6 +925,8 @@ class OpenApiImport
|
|
912
925
|
if dpv[:pattern].include?('\\\\/')
|
913
926
|
#for cases like this: ^[^\.\\/:*?"<>|][^\\/:*?"<>|]{0,13}[^\.\\/:*?"<>|]?$
|
914
927
|
data_pattern << "'#{dpk}': /#{dpv[:pattern].to_s.gsub('\/','/')}/"
|
928
|
+
elsif dpv[:pattern].include?('\\x')
|
929
|
+
data_pattern << "'#{dpk}': /#{dpv[:pattern].to_s.gsub('\\x','\\u')}/"
|
915
930
|
else
|
916
931
|
data_pattern << "'#{dpk}': /#{dpv[:pattern].to_s}/"
|
917
932
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: open_api_import
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.10.
|
4
|
+
version: 0.10.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mario Ruiz
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-08-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: oas_parser
|
@@ -44,14 +44,14 @@ dependencies:
|
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '1.
|
47
|
+
version: '1.17'
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '1.
|
54
|
+
version: '1.17'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: rspec
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|