Sha256: 718a4ab8a2fabb9f3f9c0ede2a48b10c1c02bfd517b539a9e05ebf79e111cf6b

Contents?: true

Size: 477 Bytes

Versions: 9

Compression:

Stored size: 477 Bytes

Contents

describe "custom initializer" do
  before do
    class Test::Foo
      extend Dry::Initializer

      param :bar

      def initialize(*args)
        super
        @bar *= 3
      end
    end

    class Test::Baz < Test::Foo
      param :qux

      def initialize(*args)
        super
        @qux += 1
      end
    end
  end

  it "reloads the initializer" do
    baz = Test::Baz.new(5, 5)

    expect(baz.bar).to eq 15 # 5 * 3
    expect(baz.qux).to eq 6  # 5 + 1
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
dry-initializer-3.0.2 spec/custom_initializer_spec.rb
dry-initializer-3.0.1 spec/custom_initializer_spec.rb
dry-initializer-3.0.0 spec/custom_initializer_spec.rb
dry-initializer-2.5.0 spec/custom_initializer_spec.rb
dry-initializer-2.4.0 spec/custom_initializer_spec.rb
dry-initializer-2.3.0 spec/custom_initializer_spec.rb
dry-initializer-2.2.0 spec/custom_initializer_spec.rb
dry-initializer-2.1.0 spec/custom_initializer_spec.rb
dry-initializer-2.0.0 spec/custom_initializer_spec.rb