|
6 | 6 | RSpec.describe Metatron::Controllers::Ping do |
7 | 7 | include Rack::Test::Methods |
8 | 8 |
|
9 | | - let(:app) { Rack::Lint.new(described_class.new) } |
| 9 | + describe "as a class" do |
| 10 | + let(:app) { Rack::Lint.new(described_class) } |
10 | 11 |
|
11 | | - it "returns a 200 status" do |
12 | | - get "/" |
13 | | - expect(last_response.status).to eq(200) |
14 | | - end |
| 12 | + it "returns a 200 status" do |
| 13 | + get "/" |
| 14 | + expect(last_response.status).to eq(200) |
| 15 | + end |
15 | 16 |
|
16 | | - it "returns a JSON response body" do |
17 | | - get "/" |
18 | | - expect(last_response.body).to eq({ status: "up" }.to_json) |
19 | | - end |
| 17 | + it "returns a JSON response body" do |
| 18 | + get "/" |
| 19 | + expect(last_response.body).to eq({ status: "up" }.to_json) |
| 20 | + end |
20 | 21 |
|
21 | | - it "responds with JSON content-type header" do |
22 | | - get "/" |
23 | | - expect(last_response.headers["content-type"]).to eq("application/json") |
24 | | - end |
| 22 | + it "responds with JSON content-type header" do |
| 23 | + get "/" |
| 24 | + expect(last_response.headers["content-type"]).to eq("application/json") |
| 25 | + end |
25 | 26 |
|
26 | | - it "returns a 403 status for invalid request methods" do |
27 | | - post "/" |
28 | | - expect(last_response.status).to eq(403) |
| 27 | + it "returns a 403 status for invalid request methods" do |
| 28 | + post "/" |
| 29 | + expect(last_response.status).to eq(403) |
| 30 | + end |
| 31 | + |
| 32 | + it "returns allowed request methods on options request" do |
| 33 | + options "/" |
| 34 | + expect(last_response.headers["access-control-allow-methods"]).to eq(["GET"]) |
| 35 | + end |
29 | 36 | end |
30 | 37 |
|
31 | | - it "returns allowed request methods on options request" do |
32 | | - options "/" |
33 | | - expect(last_response.headers["access-control-allow-methods"]).to eq(["GET"]) |
| 38 | + describe "as an instance" do |
| 39 | + let(:app) { Rack::Lint.new(described_class.new) } |
| 40 | + |
| 41 | + it "returns a 200 status" do |
| 42 | + get "/" |
| 43 | + expect(last_response.status).to eq(200) |
| 44 | + end |
| 45 | + |
| 46 | + it "returns a JSON response body" do |
| 47 | + get "/" |
| 48 | + expect(last_response.body).to eq({ status: "up" }.to_json) |
| 49 | + end |
| 50 | + |
| 51 | + it "responds with JSON content-type header" do |
| 52 | + get "/" |
| 53 | + expect(last_response.headers["content-type"]).to eq("application/json") |
| 54 | + end |
| 55 | + |
| 56 | + it "returns a 403 status for invalid request methods" do |
| 57 | + post "/" |
| 58 | + expect(last_response.status).to eq(403) |
| 59 | + end |
| 60 | + |
| 61 | + it "returns allowed request methods on options request" do |
| 62 | + options "/" |
| 63 | + expect(last_response.headers["access-control-allow-methods"]).to eq(["GET"]) |
| 64 | + end |
34 | 65 | end |
35 | 66 | end |
0 commit comments