Sha256: f73e6bbb157d3105a2abb8e2c41e07a79ea36a01d8a3ee0a1162c37f6e340bf6

Contents?: true

Size: 981 Bytes

Versions: 5

Compression:

Stored size: 981 Bytes

Contents

require File.dirname(__FILE__) + '/base'

require 'taps/server'
require 'pp'

describe Taps::Server do
  def app
    Taps::Server.new
  end

  before do
    Taps::Config.login = 'taps'
    Taps::Config.password = 'tpass'

    @app = Taps::Server
    @auth_header = "Basic " + ["taps:tpass"].pack("m*")
  end

  it "asks for http basic authentication" do
    get '/'
    last_response.status.should == 401
  end

  it "verifies the client taps version" do
    get('/', { }, { 'HTTP_AUTHORIZATION' => @auth_header, 'HTTP_TAPS_VERSION' => Taps.version })
    last_response.status.should == 200
  end

  it "yells loudly if the client taps version doesn't match" do
    get('/', { }, { 'HTTP_AUTHORIZATION' => @auth_header, 'HTTP_TAPS_VERSION' => '0.0.1' })
    last_response.status.should == 417
  end

  it "allows healthcheck to be accessed w/o HTTP_TAPS_VERSION" do
    get('/health', { }, { 'HTTP_AUTHORIZATION' => @auth_header })
    last_response.status.should == 200
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
taps2-0.5.5 spec/server_spec.rb
taps2-0.5.4 spec/server_spec.rb
taps2-0.5.3 spec/server_spec.rb
taps2-0.5.2 spec/server_spec.rb
taps2-0.5.1 spec/server_spec.rb