Sha256: f7bde99e4a9b266dcee097d94b949d7db116fe8c8645530380af47e6f390d41a

Contents?: true

Size: 1.26 KB

Versions: 1

Compression:

Stored size: 1.26 KB

Contents

# frozen_string_literal: true

require 'spec_helper'

RSpec.describe DynamodbRecord::Persistence, :vcr do
  it 'saves record' do
    user = User.new(id: 'hguzman60@gmail.com')
    user.save
    expect(user.new_record).to be_falsy
    expect(user.id).to eq('hguzman60@gmail.com')
  end

  it 'does not overwrite existing record' do
    user = User.new(id: 'hguzman10@gmail.com', balance: 100)
    expect(user.save).to be_falsy

    user = User.find('hguzman10@gmail.com')
    expect(user.balance).to_not eq(100)
  end

  it 'updates record' do
    user = User.find('hguzman10@gmail.com')
    user.balance = 60
    user.save
    user = User.find('hguzman10@gmail.com')
    expect(user.balance).to eq(60)
  end

  describe '#destroy' do
    context 'when no range key' do
      it 'destroys record' do
        user = User.find('hguzman50@gmail.com')
        user.destroy
        user = User.find('hguzman50@gmail.com')
        expect(user).to be_nil
      end
    end

    # context 'when there is range key' do
    #   it 'destroys record' do
    #     authorization = Authorization.find!('hguzman10@gmail.com', '1')
    #     authorization.destroy
    #     authorization = Authorization.find('hguzman10@gmail.com', '1')
    #     expect(authorization).to be_nil
    #   end
    # end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
dynamodb_record-0.4.1 spec/dynamodb_record/persistence_spec.rb