Sha256: a582cb9e51475ba85abe01184fff538255cfde97cbcb81ca98d9eaa1386b70da

Contents?: true

Size: 1.62 KB

Versions: 2

Compression:

Stored size: 1.62 KB

Contents

require 'spec_helper'

describe Errawr::HTTP do
  ERRORS_4XX = [
    [400, :bad_request],
    [401, :unauthorized],
    [402, :payment_required],
    [403, :forbidden],
    [404, :not_found],
    [405, :method_not_allowed],
    [406, :not_acceptable],
    [407, :proxy_authentication_required],
    [408, :request_timeout],
    [409, :conflict],
    [410, :gone],
    [411, :length_required],
    [412, :precondition_failed],
    [413, :request_entity_too_large],
    [414, :request_uri_too_long],
    [415, :unsupported_media_type],
    [416, :requested_range_not_satisfiable],
    [417, :expectation_failed],
    [422, :unprocessable_entity],
    [423, :locked],
    [424, :failed_dependency],
    [426, :upgrade_required],
    [428, :precondition_required],
    [429, :too_many_requests],
    [431, :request_header_fields_too_large]
  ]
  
  ERRORS_5XX = [
    [500, :internal_server_error],
    [501, :not_implemented],
    [502, :bad_gateway],
    [503, :service_unavailable],
    [504, :gateway_timeout],
    [505, :http_version_not_supported],
    [506, :variant_also_negotiates],
    [507, :insufficient_storage],
    [508, :loop_detected],
    [510, :not_extended],
    [511, :network_authentication_required]
  ]
  
  ERRORS_4XX.each do |error|
    it "should define 4XX error #{error[0]}" do
      begin
        Errawr.error!(error[1])
      rescue => e
        e.context[:http_status].should == error[0]
      end
    end
  end
  
  ERRORS_5XX.each do |error|
    it "should define 5XX error #{error[0]}" do
      begin
        Errawr.error!(error[1])
      rescue => e
        e.context[:http_status].should == error[0]
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
errawr-http-1.0.1 spec/errawr_http_spec.rb
errawr-http-1.0.0 spec/errawr_http_spec.rb