class Fitting::Records::TestUnit::Request
Public Class Methods
new(tested_request, all_documented_requests)
click to toggle source
# File lib/fitting/records/test_unit/request.rb, line 7 def initialize(tested_request, all_documented_requests) @tested_request = tested_request @all_documented_requests = all_documented_requests end
Public Instance Methods
body()
click to toggle source
# File lib/fitting/records/test_unit/request.rb, line 20 def body @body ||= @tested_request.body end
documented?()
click to toggle source
# File lib/fitting/records/test_unit/request.rb, line 44 def documented? @documented ||= documented_requests.present? end
documented_requests()
click to toggle source
# File lib/fitting/records/test_unit/request.rb, line 36 def documented_requests @documented_requests ||= @all_documented_requests.inject([]) do |res, documented_request| next res unless @tested_request.method == documented_request.method && documented_request.path.match(@tested_request.path.to_s) res.push(documented_request) end end
documented_responses()
click to toggle source
# File lib/fitting/records/test_unit/request.rb, line 48 def documented_responses @documented_responses ||= documented_requests.inject([]) do |res, documented_request| documented_request.responses.map do |documented_response| next unless documented_response['status'] == response.status.to_s res.push(documented_response) end end.flatten.compact end
invalid_json_schemas()
click to toggle source
# File lib/fitting/records/test_unit/request.rb, line 78 def invalid_json_schemas @invalid_json_schemas ||= response_json_schemas.inject([]) do |res, json_schema| next res if JSON::Validator.validate(json_schema, response.body) res.push( json_schema: json_schema, fully_validate: JSON::Validator.fully_validate(json_schema, response.body) ) end.flatten end
method()
click to toggle source
# File lib/fitting/records/test_unit/request.rb, line 12 def method @method ||= @tested_request.method end
path()
click to toggle source
# File lib/fitting/records/test_unit/request.rb, line 16 def path @path ||= @tested_request.path end
response()
click to toggle source
# File lib/fitting/records/test_unit/request.rb, line 24 def response @response ||= @tested_request.response end
response_documented?()
click to toggle source
# File lib/fitting/records/test_unit/request.rb, line 57 def response_documented? @response_documented ||= documented_responses.present? end
response_json_schemas()
click to toggle source
# File lib/fitting/records/test_unit/request.rb, line 61 def response_json_schemas @response_json_schemas ||= documented_responses.inject([]) do |res, documented_response| res.push(documented_response['json_schemas']) end.flatten end
response_json_schemas?()
click to toggle source
# File lib/fitting/records/test_unit/request.rb, line 67 def response_json_schemas? @response_json_schemas_present ||= response_json_schemas.present? end
test_file_path()
click to toggle source
# File lib/fitting/records/test_unit/request.rb, line 32 def test_file_path @test_file_path ||= @tested_request.group end
test_path()
click to toggle source
# File lib/fitting/records/test_unit/request.rb, line 28 def test_path @test_path ||= @tested_request.title end
valid_json_schemas()
click to toggle source
# File lib/fitting/records/test_unit/request.rb, line 71 def valid_json_schemas @valid_json_schemas ||= response_json_schemas.inject([]) do |res, json_schema| next res unless JSON::Validator.validate(json_schema, response.body) res.push(json_schema) end.flatten end
valid_json_schemas?()
click to toggle source
# File lib/fitting/records/test_unit/request.rb, line 88 def valid_json_schemas? @valid_json_schemas_present ||= valid_json_schemas.present? end