Sha256: 562023b2d8d9935e3ddff3c415cb9e7ff77603beff6b680f9db7c7dce616d13c

Contents?: true

Size: 1.02 KB

Versions: 5

Compression:

Stored size: 1.02 KB

Contents

require "hanami"

RSpec.describe "App view / Context / Request", :app_integration do
  before do
    module TestApp
      class App < Hanami::App
      end
    end

    Hanami.prepare

    module TestApp
      module Views
        class Context < Hanami::View::Context
        end
      end
    end
  end

  let(:context_class) { TestApp::Views::Context }

  subject(:context) {
    context_class.new(request: request)
  }

  let(:request) { double(:request) }

  describe "#request" do
    it "is the provided request" do
      expect(context.request).to be request
    end
  end

  describe "#session" do
    let(:session) { double(:session) }

    before do
      allow(request).to receive(:session) { session }
    end

    it "is the request's session" do
      expect(context.session).to be session
    end
  end

  describe "#flash" do
    let(:flash) { double(:flash) }

    before do
      allow(request).to receive(:flash) { flash }
    end

    it "is the request's flash" do
      expect(context.flash).to be flash
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
hanami-2.2.1 spec/integration/view/context/request_spec.rb
hanami-2.2.0 spec/integration/view/context/request_spec.rb
hanami-2.2.0.rc1 spec/integration/view/context/request_spec.rb
hanami-2.2.0.beta2 spec/integration/view/context/request_spec.rb
hanami-2.2.0.beta1 spec/integration/view/context/request_spec.rb