Sha256: daf6da82d06138b68b26285cde46cb483b7a4a22f9838928f614a17e0c653e1d

Contents?: true

Size: 476 Bytes

Versions: 29

Compression:

Stored size: 476 Bytes

Contents

describe "memoization" do
  it "memoizes a value with complex internal logic" do
    klass = Class.new do
      def memoized_value(dependency: nil)
        @memoized_value ||= begin
                              return nil if dependency.nil?

                              dependency.call
                            end
      end
    end

    expect(klass.new.memoized_value(dependency: proc { :value })).to eq :value
    expect(klass.new.memoized_value).to eq nil
  end
end

Version data entries

29 entries across 29 versions & 1 rubygems

Version Path
opal-1.8.3.rc1 spec/opal/core/language/memoization_spec.rb
opal-1.8.2 spec/opal/core/language/memoization_spec.rb
opal-1.8.1 spec/opal/core/language/memoization_spec.rb
opal-1.8.0 spec/opal/core/language/memoization_spec.rb
opal-1.8.0.beta1 spec/opal/core/language/memoization_spec.rb
opal-1.7.4 spec/opal/core/language/memoization_spec.rb
opal-1.8.0.alpha1 spec/opal/core/language/memoization_spec.rb
opal-1.7.3 spec/opal/core/language/memoization_spec.rb
opal-1.7.2 spec/opal/core/language/memoization_spec.rb
opal-1.7.1 spec/opal/core/language/memoization_spec.rb
opal-1.7.0 spec/opal/core/language/memoization_spec.rb
opal-1.7.0.rc1 spec/opal/core/language/memoization_spec.rb
opal-1.6.1 spec/opal/core/language/memoization_spec.rb
opal-1.6.0 spec/opal/core/language/memoization_spec.rb
opal-1.6.0.rc1 spec/opal/core/language/memoization_spec.rb
opal-1.6.0.alpha1 spec/opal/core/language/memoization_spec.rb
opal-1.5.1 spec/opal/core/language/memoization_spec.rb
opal-1.5.0 spec/opal/core/language/memoization_spec.rb
opal-1.5.0.rc1 spec/opal/core/language/memoization_spec.rb
opal-1.4.1 spec/opal/core/language/memoization_spec.rb