Sha256: f9d82a61df475215170ef05b2666d775c603f3d6983d621a3a7dce3f70af87fb

Contents?: true

Size: 1.12 KB

Versions: 37

Compression:

Stored size: 1.12 KB

Contents

require 'spec_helper'

module Startback
  class Context

    class MyContextSubClass < Context
    end

    describe Middleware do
      include Rack::Test::Methods

      def app
        opts = middleware_options
        Rack::Builder.new do
          use Middleware, opts
          run ->(env){
            ctx = env[Startback::Context::Middleware::RACK_ENV_KEY] 
            [200, {}, ctx.class.to_s]
          }
        end
      end

      context 'when used without option' do
        let(:middleware_options){ nil }

        it 'sets the default context class' do
          get '/'
          expect(last_response.status).to eql(200)
          expect(last_response.body).to eql("Startback::Context")
        end
      end

      context 'when specifying the context class' do
        let(:middleware_options){{
          context_class: MyContextSubClass
        }}

        it 'sets the default context class' do
          get '/'
          expect(last_response.status).to eql(200)
          expect(last_response.body).to eql("Startback::Context::MyContextSubClass")
        end
      end

    end
  end # module Web
end # module Startback

Version data entries

37 entries across 37 versions & 1 rubygems

Version Path
startback-0.12.0 spec/unit/context/test_middleware.rb
startback-0.11.5 spec/unit/context/test_middleware.rb
startback-0.11.4 spec/unit/context/test_middleware.rb
startback-0.11.3 spec/unit/context/test_middleware.rb
startback-0.11.0 spec/unit/context/test_middleware.rb
startback-0.10.1 spec/unit/context/test_middleware.rb
startback-0.10.0 spec/unit/context/test_middleware.rb
startback-0.9.1 spec/unit/context/test_middleware.rb
startback-0.9.0 spec/unit/context/test_middleware.rb
startback-0.8.3 spec/unit/context/test_middleware.rb
startback-0.8.2 spec/unit/context/test_middleware.rb
startback-0.8.1 spec/unit/context/test_middleware.rb
startback-0.8.0 spec/unit/context/test_middleware.rb
startback-0.7.6 spec/unit/context/test_middleware.rb
startback-0.7.5 spec/unit/context/test_middleware.rb
startback-0.7.4 spec/unit/context/test_middleware.rb
startback-0.7.3 spec/unit/context/test_middleware.rb
startback-0.7.2 spec/unit/context/test_middleware.rb
startback-0.7.1 spec/unit/context/test_middleware.rb
startback-0.7.0 spec/unit/context/test_middleware.rb