From 6f01d75830aa005a77be9f2245e65bed3f79c272 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Pacana?= Date: Sun, 26 Apr 2026 17:00:56 +0200 Subject: [PATCH] Use repository helper in event store tests - Route mock-based EventStore tests through with_repository so setup and verification happen consistently in one place - Express append expectations directly on the mock instead of relying on bespoke fake repository classes --- test/test_event_store.rb | 44 ++++++++++++++++++++-------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/test/test_event_store.rb b/test/test_event_store.rb index f37442a..dc06d0f 100644 --- a/test/test_event_store.rb +++ b/test/test_event_store.rb @@ -7,34 +7,28 @@ module En57 cover EventStore def test_append_event - repository = - Class - .new do - attr_reader :args, :kwargs - - def append(*args, **kwargs) - @args = args - @kwargs = kwargs - end - end - .new - - EventStore.new(repository).append([credit_topped_up]) + with_repository do |repository| + repository.expect( + :append, + nil, + [[credit_topped_up]], + fail_if: Query.all, + after: nil, + ) - assert_equal([[credit_topped_up]], repository.args) - assert_equal({ fail_if: Query.all, after: nil }, repository.kwargs) + EventStore.new(repository).append([credit_topped_up]) + end end def test_read_returns_scope_for_query_all - repository = Minitest::Mock.new - repository.expect(:read, [credit_topped_up], [Query.all]) + with_repository do |repository| + repository.expect(:read, [credit_topped_up], [Query.all]) - result = EventStore.new(repository).read + result = EventStore.new(repository).read - assert_instance_of(Scope, result) - assert_equal([credit_topped_up], result.each.to_a) - - repository.verify + assert_instance_of(Scope, result) + assert_equal([credit_topped_up], result.each.to_a) + end end def test_return_self_from_append @@ -104,6 +98,12 @@ module En57 private + def with_repository + repository = Minitest::Mock.new + yield repository + repository.verify + end + def credit_topped_up @credit_topped_up ||= Event.new(type: "CreditsToppedUp") end -- 2.51.2