Sha256: e995188ae6ceec79bc5c986c10b3d4d7a4fdbf714a2b8ae5b0bfbbb1fdb81cf1

Contents?: true

Size: 881 Bytes

Versions: 4

Compression:

Stored size: 881 Bytes

Contents

require 'spec_helper'

describe Zeppelin::Middleware::ResponseRaiseError do
  subject do
    Faraday.new do |b|
      b.use(described_class)
      b.adapter :test do |stub|
        stub.get('ok')        { [200, { 'Content-Type' => 'text/html' }, '<body></body>'] }
        stub.get('not-found') { [404, { 'X-Reason' => 'because' }, 'keep looking'] }
        stub.get('error')     { [500, { 'X-Error' => 'bailout' }, 'fail' ] }
      end
    end
  end

  it 'does nothing when the response is successful' do
    expect {
      subject.get('ok')
    }.to_not raise_error
  end

  it 'raises an error when the resource was not found' do
    expect {
      subject.get('not-found')
    }.to raise_error(Zeppelin::ResourceNotFound)
  end

  it 'raises an error when a client error occurs' do
    expect {
      subject.get('error')
    }.to raise_error(Zeppelin::ClientError)
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
zeppelin-0.8.2 spec/middleware/response_raise_error_spec.rb
zeppelin-0.8.1 spec/middleware/response_raise_error_spec.rb
zeppelin-0.7.0 spec/middleware/response_raise_error_spec.rb
zeppelin-0.6.0 spec/middleware/response_raise_error_spec.rb