Sha256: 696e466ef44f3e89cd75dbb24168cf4aa01b12cdac08e802d538d44abf51b4df

Contents?: true

Size: 771 Bytes

Versions: 5

Compression:

Stored size: 771 Bytes

Contents

require 'rom/elasticsearch/relation'

RSpec.describe ROM::Elasticsearch::Relation, '#delete' do
  subject(:relation) { relations[:users] }

  include_context 'users'

  before do
    relation.command(:create).(id: 1, name: 'Jane')
    relation.command(:create).(id: 2, name: 'John')

    relation.refresh
  end

  it 'deletes all data' do
    relation.delete

    expect(relation.refresh.to_a).to be_empty
  end

  it 'deletes all data from a relation restricted by id' do
    relation.get(2).delete

    expect(relation.refresh.to_a).to eql([{ id: 1, name: 'Jane' }])
  end

  it 'deletes all data from a relation restricted by a query' do
    relation.query(match: { name: 'Jane' }).delete

    expect(relation.refresh.to_a).to eql([{ id: 2, name: 'John' }])
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
rom-elasticsearch-0.3.0 spec/unit/rom/elasticsearch/relation/delete_spec.rb
rom-elasticsearch-0.2.1 spec/unit/rom/elasticsearch/relation/delete_spec.rb
rom-elasticsearch-0.2.0 spec/unit/rom/elasticsearch/relation/delete_spec.rb
rom-elasticsearch-0.1.1 spec/unit/rom/elasticsearch/relation/delete_spec.rb
rom-elasticsearch-0.1.0 spec/unit/rom/elasticsearch/relation/delete_spec.rb