9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
# File 'lib/api-tester/modules/missing_resource.rb', line 9
def self.go(contract)
reports = []
contract.endpoints.each do |endpoint|
endpoint.path_params.each do |path_param|
bad_resource = endpoint.relative_url.gsub("{#{path_param}}", 'gibberish')
bad_endpoint = ApiTester::Endpoint.new name: 'Bad Resource',
relative_url: bad_resource
method = ApiTester::Method.new verb: ApiTester::SupportedVerbs::GET,
response: ApiTester::Response.new(
status_code: 200
),
request: ApiTester::Request.new
response = bad_endpoint.call base_url: contract.base_url + bad_resource,
method: method,
payload: {},
headers: contract.
test = MissingResourceTest.new response,
{},
endpoint.not_found_response,
bad_resource,
ApiTester::SupportedVerbs::GET
test.check
end
end
reports
end
|