Sha256: 47d0c4b7be9e2aad1cfccc3a499f0d2e3d9fa4d7918e996b4426403cc9d217ab
Contents?: true
Size: 1.23 KB
Versions: 1
Compression:
Stored size: 1.23 KB
Contents
RSpec.describe ROM::HTTP::Commands::Delete do include_context 'setup' let(:relation) do Class.new(ROM::HTTP::Relation) do schema(:users) do attribute :id, ROM::Types::Int end def by_id(id) with_params(id: id) end end end let(:response) { double } let(:tuple) { double } let(:tuples) { double(first: tuple) } let(:command) do Class.new(ROM::HTTP::Commands::Delete) do register_as :delete relation :users result :one end end let(:dataset) do ROM::HTTP::Dataset.new( { uri: uri, headers: headers, request_handler: request_handler, response_handler: response_handler, name: :users }, request_method: :delete ) end before do configuration.register_relation(relation) configuration.register_command(command) allow(request_handler).to receive(:call).and_return(response) allow(response_handler).to receive(:call).and_return(tuples) end subject! { container.commands[:users].delete.call } it do expect(request_handler).to have_received(:call).with(dataset) expect(response_handler).to have_received(:call).with(response, dataset) is_expected.to eq(tuple) end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rom-http-0.7.0 | spec/integration/abstract/commands/delete_spec.rb |