Sha256: 7336b40a9c90b548d740c600e27596eff30668de3d41be10405aad1776768a24

Contents?: true

Size: 725 Bytes

Versions: 1

Compression:

Stored size: 725 Bytes

Contents

require 'spec_helper'

describe 'Commands / Delete' do
  include_context 'users and tasks'

  subject(:users) { rom.commands.users }

  before do
    setup.relation(:users) do
      def by_name(name)
        where(name: name)
      end
    end

    setup.commands(:users) do
      define(:delete)
    end

    rom.relations.users.insert(id: 2, name: 'Jane')
  end

  it 'deletes all tuples' do
    result = users.try { delete }

    expect(result.value.to_a)
      .to match_array([{ id: 1, name: 'Piotr' }, { id: 2, name: 'Jane' }])
  end

  it 'deletes all tuples in a restricted relation' do
    result = users.try { delete(:by_name, 'Jane') }

    expect(result.value).to match_array([{ id: 2, name: 'Jane' }])
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rom-sql-0.3.1 spec/integration/commands/delete_spec.rb