Sha256: 47d504a2e88d5947a885097b4503e07f158281bc7f926d50b926598f211208a3

Contents?: true

Size: 1.1 KB

Versions: 11

Compression:

Stored size: 1.1 KB

Contents

# frozen_string_literal: true

require "hanami"
require "hanami/settings"

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

      class Settings < Hanami::Settings
      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 }

  describe "#settings" do
    it "is the app settings by default" do
      expect(context.settings).to be TestApp::App["settings"]
    end

    context "injected settings" do
      subject(:context) {
        context_class.new(settings: settings)
      }

      let(:settings) { double(:settings) }

      it "is the injected settings" do
        expect(context.settings).to be settings
      end

      context "rebuilt context" do
        subject(:new_context) { context.with }

        it "retains the injected settings" do
          expect(new_context.settings).to be settings
        end
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
hanami-2.1.0.beta2.1 spec/integration/view/context/settings_spec.rb
hanami-2.1.0.beta2 spec/integration/view/context/settings_spec.rb
hanami-2.1.0.beta1 spec/integration/view/context/settings_spec.rb
hanami-2.0.3 spec/integration/view/context/settings_spec.rb
hanami-2.0.2 spec/integration/view/context/settings_spec.rb
hanami-2.0.1 spec/integration/view/context/settings_spec.rb
hanami-2.0.0 spec/integration/view/context/settings_spec.rb
hanami-2.0.0.rc1 spec/integration/view/context/settings_spec.rb
hanami-2.0.0.beta4 spec/integration/view/context/settings_spec.rb
hanami-2.0.0.beta3 spec/integration/view/context/settings_spec.rb
hanami-2.0.0.beta2 spec/new_integration/view/context/settings_spec.rb