Sha256: 61d2d2bd93d91af50ca48937f31e9c1db6e42c9ea7ad13b562773b116433d617

Contents?: true

Size: 1.24 KB

Versions: 12

Compression:

Stored size: 1.24 KB

Contents

# frozen_string_literal: true

require 'spec_helper'

describe CXML::Status do
  describe 'instance' do
    it { should respond_to :code }
    it { should respond_to :text }
    it { should respond_to :xml_lang }
    it { should respond_to :success? }
    it { should respond_to :failure? }
  end

  describe '#initialize' do
    it 'assigns attributes from hash' do
      hash = { 'xml_lang' => 'en-US', 'code' => '200', 'text' => 'OK' }
      status = CXML::Status.new(hash)

      status.code.should eq(200)
      status.xml_lang.should eq('en-US')
      status.text.should eq('OK')
    end
  end

  describe '#success?' do
    it 'returns true on 2xx codes' do
      CXML::Status.new('code' => '200').success?.should be true
      CXML::Status.new('code' => '201').success?.should be true
      CXML::Status.new('code' => '281').success?.should be true
    end

    it 'returns false on non 2xx codes' do
      CXML::Status.new('code' => '400').success?.should be false
      CXML::Status.new('code' => '475').success?.should be false
      CXML::Status.new('code' => '500').success?.should be false
    end
  end

  describe '#failure?' do
    it 'returns false on 2xx codes' do
      CXML::Status.new('code' => '200').failure?.should be false
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
cxml-ruby-0.8.2 spec/status_spec.rb
cxml-ruby-0.8.1 spec/status_spec.rb
cxml-ruby-0.8.0 spec/status_spec.rb
cxml-ruby-0.7.0 spec/status_spec.rb
cxml-ruby-0.6.1 spec/status_spec.rb
cxml-ruby-0.6.0 spec/status_spec.rb
cxml-ruby-0.5.0 spec/status_spec.rb
cxml-ruby-0.4.1 spec/status_spec.rb
cxml-ruby-0.4.0 spec/status_spec.rb
cxml-ruby-0.3.0 spec/status_spec.rb
cxml-ruby-0.2.1 spec/status_spec.rb
cxml-ruby-0.2.0 spec/status_spec.rb