Sha256: 61b95e6722ffecdb18b72b3e13a6303a5715d0cbfc53089c956d5ca6225fbd39

Contents?: true

Size: 1.23 KB

Versions: 11

Compression:

Stored size: 1.23 KB

Contents

# frozen_string_literal: true

describe StatusController, type: :controller do
  describe '#show' do
    context 'when request status code 200' do
      let(:status) { 200 }

      let(:expected_response) do
        { message: 'You requested status code: 200' }.to_json
      end

      it 'returns 200 OK' do
        get '/status/:status', status: status
        expect(response.status).to eq status
        expect(response.body).to eq expected_response
      end
    end

    context 'when request status code 400' do
      let(:status) { 400 }

      let(:expected_response) do
        { message: 'You requested status code: 400' }.to_json
      end

      it 'returns 400 Bad request' do
        get '/status/:status', status: status
        expect(response.status).to eq status
        expect(response.body).to eq expected_response
      end
    end

    context 'when request status code 500' do
      let(:status) { 500 }

      let(:expected_response) do
        { message: 'You requested status code: 500' }.to_json
      end

      it 'returns 500 Internal server error' do
        get '/status/:status', status: status
        expect(response.status).to eq status
        expect(response.body).to eq expected_response
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
my_api_client-0.23.0 my_api/spec/controllers/status_controller_spec.rb
my_api_client-0.22.0 my_api/spec/controllers/status_controller_spec.rb
my_api_client-0.21.0 my_api/spec/controllers/status_controller_spec.rb
my_api_client-0.20.0 my_api/spec/controllers/status_controller_spec.rb
my_api_client-0.19.0 my_api/spec/controllers/status_controller_spec.rb
my_api_client-0.18.0 my_api/spec/controllers/status_controller_spec.rb
my_api_client-0.17.0 my_api/spec/controllers/status_controller_spec.rb
my_api_client-0.16.1 my_api/spec/controllers/status_controller_spec.rb
my_api_client-0.16.0 my_api/spec/controllers/status_controller_spec.rb
my_api_client-0.15.0 my_api/spec/controllers/status_controller_spec.rb
my_api_client-0.14.0 my_api/spec/controllers/status_controller_spec.rb