Sha256: 8aa85dbef9d3226b63e6a3c55988d1de1408c9416013a6b34a703ecf146d63ac

Contents?: true

Size: 1.13 KB

Versions: 1

Compression:

Stored size: 1.13 KB

Contents

require 'test_helper'
require 'ostruct'

describe Outpost::Expectations::ResponseCode do
  class SubjectCode
    class << self
      attr_reader :expectation, :evaluation_method

      def expect(expectation, evaluation_method)
        @expectation       = expectation
        @evaluation_method = evaluation_method
      end

    end
    extend Outpost::Expectations::ResponseCode
  end

  it "should return true when response codes match" do
    assert SubjectCode.evaluate_response_code(scout_mock, 200)
  end

  it "should return false when response codes doesn't match" do
    refute SubjectCode.evaluate_response_code(scout_mock, 404)
  end

  it "should convert types accordinly" do
    assert SubjectCode.evaluate_response_code(scout_mock, "200")
  end

  it "should set expectation correctly" do
    assert_equal :response_code, SubjectCode.expectation
  end

  it "should set evaluation method correctly" do
    assert_equal SubjectCode.method(:evaluate_response_code),
      SubjectCode.evaluation_method
  end

  private
  def scout_mock
    @scout_mock ||= OpenStruct.new.tap do |scout_mock|
      scout_mock.response_code = 200
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
outpost-0.1.0 test/outpost/expectations/response_code_test.rb