Sha256: 41ec984e16a447b041d4715ce46bfd22f60744a37106aeb6e3d21c60dbbb48cb

Contents?: true

Size: 876 Bytes

Versions: 1

Compression:

Stored size: 876 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(/Unknown Error/)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
hyperdrive-0.0.7 spec/hyperdrive/middleware/error_spec.rb