Sha256: 6f9f3be6243901951324743dc1ce32855a6b495f8f17842772048a8dca76cf94
Contents?: true
Size: 839 Bytes
Versions: 1
Compression:
Stored size: 839 Bytes
Contents
require 'rom' require 'rom/memory' RSpec.describe ROM::Plugins::Relation::Instrumentation do subject(:relation) do relation_class.new(dataset, notifications: notifications) end let(:dataset) do double(:dataset) end let(:relation_class) do Class.new(ROM::Memory::Relation) do schema(:users) do attribute :name, ROM::Types::String end use :instrumentation instrument def all self end end end let(:notifications) { spy(:notifications) } it 'uses notifications API when materializing a relation' do relation.to_a expect(notifications).to have_received(:instrument).with(:memory, name: :users) end it 'instruments custom methods' do relation.all expect(notifications).to have_received(:instrument).with(:memory, name: :users) end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rom-3.1.0 | spec/unit/rom/plugins/relation/instrumentation_spec.rb |