Sha256: 58b23744cff231fee15b6389e966ade3720a1e3740279863ed7bba323cb9fef0

Contents?: true

Size: 1.48 KB

Versions: 5

Compression:

Stored size: 1.48 KB

Contents

require 'spec_helper'

describe 'base spec' do
  it 'when request is made response should be set' do
    mock_get('simple_get')
    get '/simple_get'
    expect(response).to_not be(nil)
  end

  it 'when request is made headers should be set' do
    mock_get('simple_get')
    get '/simple_get'
    expect(headers).to_not be(nil)    
  end

  it 'when request is made headers should be hash with indifferent access' do
    mock_get('simple_get', {'Content-Type' => 'application/json'})
    get '/simple_get'
    expect(headers).to be_kind_of(Hash)
    expect(headers[:content_type]).to eq('application/json')
    expect(headers['content_type']).to eq('application/json')
  end 

  it 'when request is made body should be set' do
    mock_get('simple_get')
    get '/simple_get'
    expect(body).to_not be(nil)   
  end

  it 'when request is made json body should be symbolized hash' do
    mock_get('simple_get')
    get '/simple_get'
    expect(json_body).to be_kind_of(Hash)
    expect(json_body.first[0]).to be_kind_of(Symbol)    
  end

  it 'should error on invalid JSON' do
    mock_get('invalid_get')
    expect{get '/invalid_get'}.to raise_error
  end

  it 'should handle a 500 error on get' do
    mock_get('simple_get', {}, [500, "Internal Server Error"])
    get '/simple_get'
    expect(json_body).to_not be(nil)
  end

  it 'should handle a 500 error on post' do
    mock_post('simple_post', {}, [500, "Internal Server Error"])
    post '/simple_post', {}
    expect(json_body).to_not be(nil)
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
airborne-0.1.11 spec/airborne/base_spec.rb
airborne-0.1.10 spec/airborne/base_spec.rb
airborne-0.1.9 spec/airborne/base_spec.rb
airborne-0.1.8 spec/airborne/base_spec.rb
airborne-0.1.7 spec/airborne/base_spec.rb