Module: Committee::Test::Methods
- Defined in:
- lib/committee/test/methods.rb
Instance Method Summary collapse
- #assert_schema_conform ⇒ Object
- #committee_options ⇒ Object
- #request_object ⇒ Object
- #response_data ⇒ Object
- #validate_response?(status) ⇒ Boolean
Instance Method Details
#assert_schema_conform ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
# File 'lib/committee/test/methods.rb', line 3 def assert_schema_conform @schema ||= Committee::Middleware::Base.get_schema() @router ||= @schema.build_router() v = @router.build_schema_validator(request_object) unless v.link_exist? response = "`#{request_object.request_method} #{request_object.path_info}` undefined in schema." raise Committee::InvalidResponse.new(response) end status, headers, body = response_data v.response_validate(status, headers, [body], true) if validate_response?(status) end |
#committee_options ⇒ Object
18 19 20 |
# File 'lib/committee/test/methods.rb', line 18 def raise "please set options" end |
#request_object ⇒ Object
22 23 24 |
# File 'lib/committee/test/methods.rb', line 22 def request_object raise "please set object like 'last_request'" end |
#response_data ⇒ Object
26 27 28 |
# File 'lib/committee/test/methods.rb', line 26 def response_data raise "please set response data like 'last_response.status, last_response.headers, last_response.body'" end |
#validate_response?(status) ⇒ Boolean
30 31 32 |
# File 'lib/committee/test/methods.rb', line 30 def validate_response?(status) Committee::Middleware::ResponseValidation.validate?(status, .fetch(:validate_success_only, false)) end |