swagger_roar 0.0.1.pre.alpha.pre.12 → 0.0.1.pre.alpha.pre.13

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- OTYxZjQ4ZmU3ZDQ0MzhjZjEwYjUxMjI4MGFmYWI1ZmIxMWFkMDc0NA==
4
+ YWY5ZDJmMmRhYjAyZGYzZDk5ZjM5YjJjOGM4MGQwMTU0MDE4NDFkMw==
5
5
  data.tar.gz: !binary |-
6
- Njg2ZjllODBmMzQ1OGViY2Y4NzJhMzRiOTVkM2RkMGI5Y2ViMTg4Nw==
6
+ OTI2YWUwZTIwYWZlMDIzYjZlMGNkZmE1OWY4ZWQyYmVlMTNjYmE1Zg==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- NzE2OTQ5OGI1NmQzZWFmYzQ0NmJlYTg4NzMwMjQwYjIyOTkyOGE1YThhMzJl
10
- NThlMTdkZjYxMzU2YzhmYTAzMzk0MWY2NjUxN2ZkMWEzZWQ0NzBiM2I2ZThj
11
- NjI1MTQzNzkwMzNlODkxNjgzNTk0MGEzMDEyNDBlY2UxMzU3MjE=
9
+ ZWIzZjVhYTAzMjQ5YjY2OWE1NTI1NTM2MDc4ZmRmMDFhNmViMzhjYTNhMjgw
10
+ ZTljNTZmY2U2NjI1OTM0OGMyZWYxYjVkZThkYjJlMjZkNjNhZmNlMjg3ZWQ1
11
+ MGFjMzNiN2RhYzQxYTcyNmE1YTE5MzlkMzJmZTg3ZTgxOGNiNTg=
12
12
  data.tar.gz: !binary |-
13
- MDBkZDYzOTgxZmEyMmI3MzEyZjU2MTc2NTY2ZDAwOTQ3YzhjZjFlYzJmZjIz
14
- MTU2YThhMzRmZTFiNzA3YmM1Njk4OGRjZDhmMGE1NzgyN2YxNjBlNTU1ODkw
15
- ODU2N2ZhZDYxNjhiNTZkN2VkNzU3MDBhYWUxMjA2ODU5YTJlN2U=
13
+ MTRlM2E5OTVhMWI4ZWM1MDMzM2I2NjI4MGY5ZThiMTU1NzQ5ZjIxMDI3Yzdk
14
+ MGE3MDNhNTUzOTg0MWMzNGQ4ZGVhMTQ4YTUzMGU0ZWU4MWI4OGUwZjk3MjY0
15
+ YWNlMjEyN2RkYzAzN2FhNDNhMDEyNGRmODQ5OWM4ZTA0YzU1ZDM=
data/Guardfile CHANGED
@@ -2,23 +2,8 @@
2
2
  # More info at https://github.com/guard/guard#readme
3
3
 
4
4
  guard :rspec do
5
- watch(%r{^spec/.+_spec\.rb$})
6
- watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
5
+ watch(%r{^spec/.+\.rb$}) { "spec" }
6
+ watch(%r{^lib/(.+)\.rb$}) { "spec" }
7
7
  watch('spec/spec_helper.rb') { "spec" }
8
8
 
9
- # Rails example
10
- watch(%r{^app/(.+)\.rb$}) { |m| "spec/#{m[1]}_spec.rb" }
11
- watch(%r{^app/(.*)(\.erb|\.haml|\.slim)$}) { |m| "spec/#{m[1]}#{m[2]}_spec.rb" }
12
- watch(%r{^app/controllers/(.+)_(controller)\.rb$}) { |m| ["spec/routing/#{m[1]}_routing_spec.rb", "spec/#{m[2]}s/#{m[1]}_#{m[2]}_spec.rb", "spec/acceptance/#{m[1]}_spec.rb"] }
13
- watch(%r{^spec/support/(.+)\.rb$}) { "spec" }
14
- watch('config/routes.rb') { "spec/routing" }
15
- watch('app/controllers/application_controller.rb') { "spec/controllers" }
16
-
17
- # Capybara features specs
18
- watch(%r{^app/views/(.+)/.*\.(erb|haml|slim)$}) { |m| "spec/features/#{m[1]}_spec.rb" }
19
-
20
- # Turnip features and steps
21
- watch(%r{^spec/acceptance/(.+)\.feature$})
22
- watch(%r{^spec/acceptance/steps/(.+)_steps\.rb$}) { |m| Dir[File.join("**/#{m[1]}.feature")][0] || 'spec/acceptance' }
23
9
  end
24
-
@@ -3,21 +3,26 @@ require "swagger_roar/version"
3
3
  module SwaggerRoar
4
4
  def documentation
5
5
  Hash[
6
- attrs_hash.map { |k, v|
7
- [k.to_sym, v[:documentation]]
6
+ representable_attrs.keys.map { |k|
7
+ key_to_doc_entry(k)
8
8
  }
9
9
  ]
10
10
  end
11
11
 
12
12
  private
13
13
 
14
- def attrs_hash
15
- a = representable_attrs
16
- return a.to_h if a.respond_to? :to_h
17
- Hash[
18
- a.keys.map { |k|
19
- [k.to_sym, a[k]]
20
- }
21
- ]
14
+ def key_to_doc_entry(k)
15
+ [key_to_doc_key(k), key_to_doc(k)]
16
+ end
17
+
18
+ def key_to_doc_key(k)
19
+ return unless representable_attrs.has_key? k
20
+ definition = representable_attrs[k]
21
+ return definition[:as].evaluate({}).to_sym if definition[:as].present?
22
+ k.to_sym
23
+ end
24
+
25
+ def key_to_doc(k)
26
+ representable_attrs[k][:documentation]
22
27
  end
23
28
  end
@@ -1 +1,2 @@
1
1
  require "sample_mappings/single_propery_mapping"
2
+ require "sample_mappings/renamed_property_mapping"
@@ -0,0 +1,11 @@
1
+ module RenamedPropertyMapping
2
+ class GrapeEntity < Grape::Entity
3
+ expose :body, as: :post_body, documentation: {type: "String"}
4
+ end
5
+ module RoarRepresenter
6
+ include Roar::Representer::JSON
7
+ extend SwaggerRoar
8
+
9
+ property :body, as: :post_body, documentation: {type: "String"}
10
+ end
11
+ end
@@ -16,6 +16,6 @@ RSpec::Matchers.define :generate_swagger_documentation do
16
16
  end
17
17
 
18
18
  failure_message do |m|
19
- "expected that Roar doc would be #{roar_doc(m)}, but was #{grape_doc(m)}"
19
+ "expected that Roar doc would be #{grape_doc(m)}, but was #{roar_doc(m)}"
20
20
  end
21
21
  end
@@ -8,5 +8,8 @@ describe SwaggerRoar do
8
8
  it 'for single property mapping' do
9
9
  expect(SinglePropertyMapping).to generate_swagger_documentation
10
10
  end
11
+ it 'for renamed property mapping' do
12
+ expect(RenamedPropertyMapping).to generate_swagger_documentation
13
+ end
11
14
  end
12
15
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: swagger_roar
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1.pre.alpha.pre.12
4
+ version: 0.0.1.pre.alpha.pre.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yura Taras
@@ -112,6 +112,7 @@ files:
112
112
  - lib/swagger_roar.rb
113
113
  - lib/swagger_roar/version.rb
114
114
  - spec/sample_mappings.rb
115
+ - spec/sample_mappings/renamed_property_mapping.rb
115
116
  - spec/sample_mappings/single_propery_mapping.rb
116
117
  - spec/spec_helper.rb
117
118
  - spec/swagger_roar_spec.rb
@@ -143,6 +144,7 @@ specification_version: 4
143
144
  summary: Generate swagger model from roar specification
144
145
  test_files:
145
146
  - spec/sample_mappings.rb
147
+ - spec/sample_mappings/renamed_property_mapping.rb
146
148
  - spec/sample_mappings/single_propery_mapping.rb
147
149
  - spec/spec_helper.rb
148
150
  - spec/swagger_roar_spec.rb