Sha256: 689f696e515ede8f591764315bc665a33af5847730a0aa00e2112300938f7931

Contents?: true

Size: 874 Bytes

Versions: 2

Compression:

Stored size: 874 Bytes

Contents

# encoding: utf-8

require 'spec_helper'

describe Hyperdrive::Middleware::Error do
  before do
    get '/'
  end

  context "Known Error" do
    def app
      Rack::Builder.new do
        use Hyperdrive::Middleware::Error
        run ->(env) { raise Hyperdrive::Errors::MethodNotAllowed.new('GET') }
      end
    end

    it "traps errors" do
      last_response.status.must_equal 405
    end

    it "returns a formatted error message" do
      last_response.body.must_match(/error/)
    end
  end

  context "Unknown Error" do
    def app
      Rack::Builder.new do
        use Hyperdrive::Middleware::Error
        run ->(env) { raise 'Woah there, fella!' }
      end
    end

    it "traps errors" do
      last_response.status.must_equal 500
    end

    it "returns a formatted error message" do
      last_response.body.must_match(/UnknownError/)
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
hyperdrive-0.0.25 spec/hyperdrive/middleware/error_spec.rb
hyperdrive-0.0.24 spec/hyperdrive/middleware/error_spec.rb