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

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,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