Sha256: 2be8f1a1528545cd0d717f5bd353260115cfb338df36472fe169716877d86ead

Contents?: true

Size: 1.28 KB

Versions: 10

Compression:

Stored size: 1.28 KB

Contents

shared_examples :transform_value do
  it 'allows to bypass transformer with :raw' do
    store['key'] = 'value'
    load_value(store.load('key', raw: true)).should == 'value'

    store.store('key', 'value', raw: true)
    store.load('key', raw: true).should == 'value'
    store.delete('key', raw: true).should == 'value'
  end

  it 'allows to bypass transformer with raw syntactic sugar' do
    store['key'] = 'value'
    load_value(store.raw.load('key')).should == 'value'

    store.raw.store('key', 'value')
    store.raw['key'].should == 'value'
    store.raw.load('key').should == 'value'
    store.raw.delete('key').should == 'value'

    store.raw['key'] = 'value2'
    store.raw['key'].should == 'value2'
  end

  it 'returns unmarshalled value' do
    store.store('key', 'unmarshalled value', raw: true)
    store.load('key', raw: true).should == 'unmarshalled value'
  end

  it 'might raise exception on invalid value' do
    store.store('key', 'unmarshalled value', raw: true)

    begin
      store['key'].should == load_value('unmarshalled value')
      store.delete('key').should == load_value('unmarshalled value')
    rescue Exception => ex
      expect do
        store['key']
      end.to raise_error
      expect do
        store.delete('key')
      end.to raise_error
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
moneta-1.5.2 spec/features/transform_value.rb
moneta-1.5.1 spec/features/transform_value.rb
moneta-1.5.0 spec/features/transform_value.rb
moneta-1.4.2 spec/features/transform_value.rb
moneta-1.4.1 spec/features/transform_value.rb
moneta-1.4.0 spec/features/transform_value.rb
moneta-1.3.0 spec/features/transform_value.rb
moneta-1.2.0 spec/features/transform_value.rb
moneta-1.1.1 spec/features/transform_value.rb
moneta-1.1.0 spec/features/transform_value.rb