json_schemer-rails 0.2.1 → 0.3.0

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
  SHA256:
3
- metadata.gz: 77c81c7c80271e2b5e26bc866b38593ca1eeff094f996c24c1ee8f5787d564ec
4
- data.tar.gz: d7cdb7d8fb4142af9f2ec1a949bba233d382148006345ad965bba33ca0db2fdc
3
+ metadata.gz: af5445cb33d06b18e3c7ec42d5f0bb3f4433fa8e29c02dbef15172db16af5e9d
4
+ data.tar.gz: 4ec577c0e591f567a692f59a886296ed427ea3a2391ce82980943333d61bdb75
5
5
  SHA512:
6
- metadata.gz: d1f840c50c982558552db45fd93d280ed5c3eeabeafe79fc8f448f3fdb08518c2c95042fea1feb3743207937d4583ac84135e738768bd0a0614087c14a181def
7
- data.tar.gz: f1da4bc65e3d3648ed173d22e31dd2dedec905e74602c05a50c699e2069f6e707fdca94c23635be493b06accfe4ea2f924e9e4714de1f1147d6d53e591fe994b
6
+ metadata.gz: 5832076aa9cfe94d16a520e4cebb078015ef04b7ed239174d80c3a8e0f964532fe0739a907aaae63808c8c311dbbc898d1bf50d33181daccac22fa42c271fb7e
7
+ data.tar.gz: b5b98efcfa4c69860b6c464134647cc03778bb9ad54c793be4e440cff84d1cfd666bc6977b80b46ec56c3bb0bb2338d83ea94dbcf2c5c18e5b0cd2ed4268a94c
@@ -5,7 +5,7 @@ module JsonSchemer
5
5
  # Mixin for controllers.
6
6
  # usage:
7
7
  # include JsonSchemer::Rails::Controller
8
- # before_actoin :validate_from_openapi
8
+ # before_action :validate_from_openapi
9
9
  module Controller
10
10
  def validate_from_openapi
11
11
  # This is going to cast any parameters to their specified types
@@ -8,12 +8,13 @@ module JsonSchemer
8
8
  module Rails
9
9
  # This validates a request against the OpenAPI specification
10
10
  class OpenApiValidator
11
- def initialize(request, open_api_filename: "openapi.yml")
11
+ def initialize(request, open_api_filename: "openapi.yml", ref_resolver: nil)
12
12
  @request = request
13
13
  @open_api_filename = open_api_filename
14
+ @ref_resolver = ref_resolver
14
15
  end
15
16
 
16
- attr_reader :request
17
+ attr_reader :request, :ref_resolver
17
18
 
18
19
  def validate_body
19
20
  return unless should_validate_body?
@@ -63,7 +64,11 @@ module JsonSchemer
63
64
  end
64
65
 
65
66
  def document
66
- @document ||= JSONSchemer.openapi(open_api_struct)
67
+ @document ||= JSONSchemer.openapi(open_api_struct, **options)
68
+ end
69
+
70
+ def options
71
+ { ref_resolver: }.compact
67
72
  end
68
73
 
69
74
  def open_api_struct
@@ -2,6 +2,6 @@
2
2
 
3
3
  module JsonSchemer
4
4
  module Rails
5
- VERSION = "0.2.1"
5
+ VERSION = "0.3.0"
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: json_schemer-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Coyne