grape-swagger-representable 0.1.3 → 0.1.4

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
  SHA1:
3
- metadata.gz: 0ab7b354592c96fe931677e1449e6002bf5ac146
4
- data.tar.gz: 2333f1e79b6d50e27f919f92e7f4eded97f67b54
3
+ metadata.gz: d7283878859bdf4efc4eaf2a05f148a00d96359f
4
+ data.tar.gz: ce3cc382572534160da8b25c31576f2a71ed25e9
5
5
  SHA512:
6
- metadata.gz: a02cd96aed6e8a4e5e51e5a76c1453e6286bf49a112d758c4e4bc5f0088a788875db5093f14bc18c12536622b05911c4903d8b7215ff3ef24eedbfcf9239e547
7
- data.tar.gz: 399e267e2b45384577476cdc10fdc2ba9d18a06dc34fd173502776f486d56e1951649e9cdaf1a45a6eb0b59a182934b98a06cb3fe1712961aab46750d11d05ed
6
+ metadata.gz: a2c0676215a1460294fd72349fc0f169c37723b402998a44f61c7cc7fe1312fe2ff850e0138cd5547627ecccd0b342d2ee15455ad057b6f17cf23bb41df9d7b1
7
+ data.tar.gz: c07328b18c497f3ecef7d4aeef82e08444cb4568d63c99e31453f395f303560a69bd640424889a29899890c48662af0abbb2e9c7cc3fc46108ca73d3b9cfac02
data/.travis.yml CHANGED
@@ -1,17 +1,21 @@
1
- language: ruby
1
+ before_install:
2
+ - gem update --system
3
+ - gem install bundler
2
4
 
3
- cache: bundler
5
+ rvm:
6
+ - 2.4.0
7
+ - 2.3.3
8
+ - 2.2.6
4
9
 
5
10
  matrix:
11
+ fast_finish: true
12
+
6
13
  include:
7
- - rvm: 2.3.0
8
- - rvm: 2.2
9
- - rvm: 2.1
10
14
  - rvm: ruby-head
11
15
  - rvm: jruby-head
12
- - rvm: jruby-19mode
13
16
  - rvm: rbx-2
17
+
14
18
  allow_failures:
15
19
  - rvm: ruby-head
16
20
  - rvm: jruby-head
17
- before_install: gem install bundler -v 1.12.1
21
+ - rvm: rbx-2
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # GrapeSwagger::Representable [![Build Status](https://travis-ci.org/Bugagazavr/grape-swagger-representable.svg)](https://travis-ci.org/Bugagazavr/grape-swagger-representable)
1
+ # GrapeSwagger::Representable [![Build Status](https://travis-ci.org/ruby-grape/grape-swagger-representable.svg)](https://travis-ci.org/ruby-grape/grape-swagger-representable)
2
2
 
3
3
  A simple grape-swagger adapter to allow parse representers as response model
4
4
 
@@ -18,7 +18,7 @@ Gem::Specification.new do |s|
18
18
  s.executables = s.files.grep(%r{^exe/}) { |f| File.basename(f) }
19
19
  s.require_paths = ['lib']
20
20
 
21
- s.add_runtime_dependency 'grape-swagger', '>= 0.20.2'
21
+ s.add_runtime_dependency 'grape-swagger', '>= 0.20.4'
22
22
  s.add_runtime_dependency 'representable'
23
23
 
24
24
  s.add_development_dependency 'bundler', '~> 1.12'
@@ -20,17 +20,17 @@ module GrapeSwagger
20
20
  documentation = property[:documentation] ? property[:documentation].dup : {}
21
21
 
22
22
  if property[:decorator] && property[:nested]
23
- representer_mapping(property[:decorator], documentation, is_a_collection, false, property[:nested])
23
+ representer_mapping(property[:decorator], documentation, property, is_a_collection, false, property[:nested])
24
24
  elsif property[:decorator]
25
- representer_mapping(property[:decorator], documentation, is_a_collection, true)
25
+ representer_mapping(property[:decorator], documentation, property, is_a_collection, true)
26
26
  elsif property[:nested]
27
- representer_mapping(property[:nested], documentation, is_a_collection)
27
+ representer_mapping(property[:nested], documentation, property, is_a_collection)
28
28
  else
29
29
  memo = {
30
- description: documentation[:desc] || ''
30
+ description: documentation[:desc] || property[:desc] || ''
31
31
  }
32
32
 
33
- data_type = GrapeSwagger::DocMethods::DataType.call(documentation[:type])
33
+ data_type = GrapeSwagger::DocMethods::DataType.call(documentation[:type] || property[:type])
34
34
  if GrapeSwagger::DocMethods::DataType.primitive?(data_type)
35
35
  data = GrapeSwagger::DocMethods::DataType.mapping(data_type)
36
36
  memo[:type] = data.first
@@ -39,7 +39,8 @@ module GrapeSwagger
39
39
  memo[:type] = data_type
40
40
  end
41
41
 
42
- memo[:enum] = documentation[:values] if documentation[:values].is_a?(Array)
42
+ values = documentation[:values] || property[:values] || nil
43
+ memo[:enum] = values if values.is_a?(Array)
43
44
 
44
45
  if is_a_collection || documentation[:is_array]
45
46
  memo = {
@@ -52,7 +53,7 @@ module GrapeSwagger
52
53
  end
53
54
  end
54
55
 
55
- def representer_mapping(representer, documentation, is_a_collection = false, is_a_decorator = false, nested = nil)
56
+ def representer_mapping(representer, documentation, property, is_a_collection = false, is_a_decorator = false, nested = nil)
56
57
  if nested.nil? && is_a_decorator
57
58
  name = endpoint.send(:expose_params_from_model, representer)
58
59
 
@@ -62,12 +63,12 @@ module GrapeSwagger
62
63
  items: {
63
64
  '$ref' => "#/definitions/#{name}"
64
65
  },
65
- description: documentation[:desc] || ''
66
+ description: documentation[:desc] || property[:desc] || ''
66
67
  }
67
68
  else
68
69
  {
69
70
  '$ref' => "#/definitions/#{name}",
70
- description: documentation[:desc] || ''
71
+ description: documentation[:desc] || property[:desc] || ''
71
72
  }
72
73
  end
73
74
  else
@@ -81,13 +82,13 @@ module GrapeSwagger
81
82
  type: :object,
82
83
  properties: attributes
83
84
  },
84
- description: documentation[:desc] || ''
85
+ description: documentation[:desc] || property[:desc] || ''
85
86
  }
86
87
  else
87
88
  {
88
89
  type: :object,
89
90
  properties: attributes,
90
- description: documentation[:desc] || ''
91
+ description: documentation[:desc] || property[:desc] || ''
91
92
  }
92
93
  end
93
94
  end
@@ -1,5 +1,5 @@
1
1
  module GrapeSwagger
2
2
  module Representable
3
- VERSION = '0.1.3'.freeze
3
+ VERSION = '0.1.4'.freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: grape-swagger-representable
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kirill Zaitsev
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-05-16 00:00:00.000000000 Z
11
+ date: 2017-03-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: grape-swagger
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 0.20.2
19
+ version: 0.20.4
20
20
  type: :runtime
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.20.2
26
+ version: 0.20.4
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: representable
29
29
  requirement: !ruby/object:Gem::Requirement