swagger_model 0.2.2 → 0.2.3

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: cf57cf03d80813be9a9cae114628a6e95952bcec
4
- data.tar.gz: 6e63d664c107c4b00f0ae4e089d1e1a497e11dc5
3
+ metadata.gz: 6c83e98e2dee62c14c2cdd92a0e081d39f6c17e5
4
+ data.tar.gz: ce9dad2994461111e429ea2572234d31115300c5
5
5
  SHA512:
6
- metadata.gz: c3dca478b40875ba2b859f8d34208895b3c07a347d261be7378c33c8e2cf0354f41f98f24a5ca1fef90eb97942763c54ce8ddcc3f47d70e7770dcece897f1181
7
- data.tar.gz: 4249ff16b6ecb9793ae363ac39e9b2667bff5ed8f9345bb70e4623afa996ed9b3384fa36b09636efd62edb343de014999acd2252873e8025973cf126818310e7
6
+ metadata.gz: c4b92d50a0e51c08eb8987c9669cf9e0b0d105ed90747ff323d2dd579b0be376ec68a7c5372bd22d506d0bc864484bd838c7e3a19c155cd93acbab2f5f13b0bc
7
+ data.tar.gz: 37bc53349d8aff2afd01ddacc40cf1c219cc0cefc1dc58cdfa906392b402eecda80c051f86b3e1f7ccd39a63c889f744c8c9c64ec1898ec34cbc7bdee9c56ed9
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- swagger_model (0.2.2)
4
+ swagger_model (0.2.3)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -1,3 +1,3 @@
1
1
  module SwaggerModel
2
- VERSION = "0.2.2"
2
+ VERSION = "0.2.3"
3
3
  end
data/lib/swagger_model.rb CHANGED
@@ -22,7 +22,7 @@ module SwaggerModel
22
22
  case type_class
23
23
  when 'Hash'
24
24
  if value.has_key?('id') && value.has_key?('type')
25
- model_name = ActiveSupport::Inflector.classify(value['type'])
25
+ model_name = ActiveSupport::Inflector.classify(value['type'].gsub('-', '_'))
26
26
  model[model_name] = {}
27
27
  object = parse_object(value, model, model_name)
28
28
  properties = object['properties']
@@ -72,8 +72,14 @@ module SwaggerModel
72
72
  end
73
73
  end
74
74
  when 'Array'
75
- obj['type'] = 'array'
76
- obj['items'] = parse_array(value, model, root_key)
75
+ if key == 'included'
76
+ obj['type'] = 'array'
77
+ obj['items'] = {}
78
+ obj['items']['oneOf'] = parse_array_with_multi_model(value, model, root_key)
79
+ else
80
+ obj['type'] = 'array'
81
+ obj['items'] = parse_array(value, model, root_key)
82
+ end
77
83
  when 'String'
78
84
  obj['type'] = 'string'
79
85
  obj['example'] = value
@@ -103,6 +109,14 @@ module SwaggerModel
103
109
  get_property(nil, value, model, root_key)
104
110
  end
105
111
 
112
+ def self.parse_array_with_multi_model(items, model, root_key)
113
+ types = []
114
+ items.each do |value|
115
+ types.push(get_property(nil, value, model, root_key))
116
+ end
117
+ types
118
+ end
119
+
106
120
  def self.parse_object(res, model, root_key)
107
121
  keys = res.keys
108
122
  m = {}
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: swagger_model
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - marumemomo