Class: JSONAPI::Grader::Server::EmptyCollectionScenario

Inherits:
Scenario
  • Object
show all
Defined in:
lib/jsonapi/grader/server/scenarii/empty_collection.rb

Instance Method Summary collapse

Methods inherited from Scenario

#endpoint

Instance Method Details

#call(host) ⇒ Object



24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/jsonapi/grader/server/scenarii/empty_collection.rb', line 24

def call(host)
  uri = URI("#{host}/empty_collection")
  res = Net::HTTP.start(uri.hostname, uri.port) do |http|
    req = Net::HTTP::Get.new(uri)
    req['Accept'] = 'application/vnd.api+json'

    http.request(req)
  end

  unless res['Content-Type'] == 'application/vnd.api+json'
    fail 'Expected Content-Type header to equal application/vnd.api+json'
  end

  body = JSON.parse(res.body)
  unless body['data'] == []
    fail 'Expected empty collection'
  end
end

#descriptionObject



12
13
14
# File 'lib/jsonapi/grader/server/scenarii/empty_collection.rb', line 12

def description
  'The endpoint /empty_collection should return an empty collection.'
end

#nameObject



8
9
10
# File 'lib/jsonapi/grader/server/scenarii/empty_collection.rb', line 8

def name
  'empty_collection'
end

#requiredObject



20
21
22
# File 'lib/jsonapi/grader/server/scenarii/empty_collection.rb', line 20

def required
  true
end

#scoreObject



16
17
18
# File 'lib/jsonapi/grader/server/scenarii/empty_collection.rb', line 16

def score
  100
end