Sha256: 3b5addf61249c5db804d86e4e30e303ecf4832fa71a42ffe00406f79e2ed6b73

Contents?: true

Size: 1.28 KB

Versions: 1

Compression:

Stored size: 1.28 KB

Contents

module DataStoreExamples
  
  it 'Get/Set value' do
    data_store.set 'test_key', 123
    data_store.get('test_key').must_equal 123
  end

  it 'Key not found' do
    data_store.get('test_key').must_be_nil
  end

  it 'Keys' do
    data_store.keys.must_be_empty
    data_store.set 'test_key', 123
    data_store.keys.must_equal ['test_key']
  end

  it 'Merge' do
    data_store.set 'a:1', 0
    data_store.merge 'a', '1' => 1, '2' => 2

    data_store.get('a:1').must_equal 1
    data_store.get('a:2').must_equal 2
  end

  it 'To hash' do
    data_store.set 'a', 0
    data_store.set 'a:1', 1
    data_store.set 'a:2', 2
    data_store.set 'b:3', 3

    data_store.to_hash('a').must_equal '1' => 1, '2' => 2
  end

  it 'Nested keys' do
    data_store.set 'a', 0
    data_store.set 'a:1', 1
    data_store.set 'a:2', 2
    data_store.set 'b:3', 3

    data_store.keys('a').must_equal_contents %w(a a:1 a:2)
    data_store.keys('a:').must_equal_contents %w(a:1 a:2)
  end

  it 'Clear' do
    data_store.set 'test_key', 123
    data_store.clear
    data_store.keys.must_be_empty
  end

  it 'Nested clear' do
    data_store.set 'a', 0
    data_store.set 'a:1', 1
    data_store.set 'a:2', 2
    data_store.set 'b:3', 3

    data_store.clear 'a:'

    data_store.keys.must_equal_contents %w(a b:3)
  end
  
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
asynchronic-0.1.0 spec/data_store/data_store_examples.rb