ruby_event_store 2.3.0 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. checksums.yaml +4 -4
  2. data/lib/ruby_event_store/batch_enumerator.rb +3 -3
  3. data/lib/ruby_event_store/broker.rb +5 -4
  4. data/lib/ruby_event_store/client.rb +47 -45
  5. data/lib/ruby_event_store/composed_dispatcher.rb +1 -3
  6. data/lib/ruby_event_store/correlated_commands.rb +4 -15
  7. data/lib/ruby_event_store/errors.rb +11 -11
  8. data/lib/ruby_event_store/event.rb +6 -14
  9. data/lib/ruby_event_store/expected_version.rb +3 -7
  10. data/lib/ruby_event_store/in_memory_repository.rb +42 -31
  11. data/lib/ruby_event_store/instrumented_dispatcher.rb +3 -4
  12. data/lib/ruby_event_store/instrumented_repository.rb +3 -4
  13. data/lib/ruby_event_store/link_by_metadata.rb +4 -21
  14. data/lib/ruby_event_store/mappers/default.rb +6 -4
  15. data/lib/ruby_event_store/mappers/encryption_key.rb +7 -16
  16. data/lib/ruby_event_store/mappers/encryption_mapper.rb +6 -6
  17. data/lib/ruby_event_store/mappers/null_mapper.rb +0 -1
  18. data/lib/ruby_event_store/mappers/pipeline.rb +3 -10
  19. data/lib/ruby_event_store/mappers/pipeline_mapper.rb +1 -0
  20. data/lib/ruby_event_store/mappers/transformation/domain_event.rb +21 -21
  21. data/lib/ruby_event_store/mappers/transformation/encryption.rb +21 -25
  22. data/lib/ruby_event_store/mappers/transformation/event_class_remapper.rb +6 -5
  23. data/lib/ruby_event_store/mappers/transformation/stringify_metadata_keys.rb +6 -5
  24. data/lib/ruby_event_store/mappers/transformation/symbolize_metadata_keys.rb +6 -5
  25. data/lib/ruby_event_store/mappers/transformation/upcast.rb +2 -6
  26. data/lib/ruby_event_store/metadata.rb +43 -14
  27. data/lib/ruby_event_store/projection.rb +10 -18
  28. data/lib/ruby_event_store/record.rb +14 -26
  29. data/lib/ruby_event_store/serialized_record.rb +14 -26
  30. data/lib/ruby_event_store/serializers/yaml.rb +17 -0
  31. data/lib/ruby_event_store/spec/broker_lint.rb +27 -17
  32. data/lib/ruby_event_store/spec/event_lint.rb +1 -1
  33. data/lib/ruby_event_store/spec/event_repository_lint.rb +522 -556
  34. data/lib/ruby_event_store/spec/mapper_lint.rb +2 -2
  35. data/lib/ruby_event_store/spec/subscriptions_lint.rb +23 -22
  36. data/lib/ruby_event_store/specification.rb +20 -16
  37. data/lib/ruby_event_store/specification_reader.rb +2 -3
  38. data/lib/ruby_event_store/specification_result.rb +52 -46
  39. data/lib/ruby_event_store/stream.rb +3 -7
  40. data/lib/ruby_event_store/subscriptions.rb +13 -14
  41. data/lib/ruby_event_store/transform_keys.rb +1 -1
  42. data/lib/ruby_event_store/version.rb +1 -1
  43. data/lib/ruby_event_store.rb +1 -0
  44. metadata +6 -18
@@ -1,6 +1,6 @@
1
1
  RSpec.shared_examples :broker do |broker_klass|
2
2
  let(:event) { instance_double(::RubyEventStore::Event, event_type: "EventType") }
3
- let(:record) { instance_double(::RubyEventStore::Record) }
3
+ let(:record) { instance_double(::RubyEventStore::Record) }
4
4
  let(:handler) { HandlerClass.new }
5
5
  let(:subscriptions) { ::RubyEventStore::Subscriptions.new }
6
6
  let(:dispatcher) { ::RubyEventStore::Dispatcher.new }
@@ -32,26 +32,36 @@ RSpec.shared_examples :broker do |broker_klass|
32
32
  end
33
33
 
34
34
  specify "raise error when no subscriber" do
35
- expect { broker.add_subscription(nil, [])}.to raise_error(RubyEventStore::SubscriberNotExist, "subscriber must be first argument or block")
36
- expect { broker.add_global_subscription(nil)}.to raise_error(RubyEventStore::SubscriberNotExist), "subscriber must be first argument or block"
37
- expect { broker.add_thread_subscription(nil, []).call}.to raise_error(RubyEventStore::SubscriberNotExist), "subscriber must be first argument or block"
38
- expect { broker.add_thread_global_subscription(nil).call}.to raise_error(RubyEventStore::SubscriberNotExist), "subscriber must be first argument or block"
35
+ expect { broker.add_subscription(nil, []) }.to raise_error(
36
+ RubyEventStore::SubscriberNotExist,
37
+ "subscriber must be first argument or block"
38
+ )
39
+ expect { broker.add_global_subscription(nil) }.to raise_error(RubyEventStore::SubscriberNotExist),
40
+ "subscriber must be first argument or block"
41
+ expect { broker.add_thread_subscription(nil, []).call }.to raise_error(RubyEventStore::SubscriberNotExist),
42
+ "subscriber must be first argument or block"
43
+ expect { broker.add_thread_global_subscription(nil).call }.to raise_error(RubyEventStore::SubscriberNotExist),
44
+ "subscriber must be first argument or block"
39
45
  end
40
46
 
41
47
  specify "raise error when wrong subscriber" do
42
48
  allow(dispatcher).to receive(:verify).and_return(false)
43
- expect do
44
- broker.add_subscription(HandlerClass, [])
45
- end.to raise_error(RubyEventStore::InvalidHandler, /Handler HandlerClass is invalid for dispatcher .*Dispatcher/)
46
- expect do
47
- broker.add_global_subscription(HandlerClass)
48
- end.to raise_error(RubyEventStore::InvalidHandler, /is invalid for dispatcher/)
49
- expect do
50
- broker.add_thread_subscription(HandlerClass, [])
51
- end.to raise_error(RubyEventStore::InvalidHandler, /is invalid for dispatcher/)
52
- expect do
53
- broker.add_thread_global_subscription(HandlerClass)
54
- end.to raise_error(RubyEventStore::InvalidHandler, /is invalid for dispatcher/)
49
+ expect { broker.add_subscription(HandlerClass, []) }.to raise_error(
50
+ RubyEventStore::InvalidHandler,
51
+ /Handler HandlerClass is invalid for dispatcher .*Dispatcher/
52
+ )
53
+ expect { broker.add_global_subscription(HandlerClass) }.to raise_error(
54
+ RubyEventStore::InvalidHandler,
55
+ /is invalid for dispatcher/
56
+ )
57
+ expect { broker.add_thread_subscription(HandlerClass, []) }.to raise_error(
58
+ RubyEventStore::InvalidHandler,
59
+ /is invalid for dispatcher/
60
+ )
61
+ expect { broker.add_thread_global_subscription(HandlerClass) }.to raise_error(
62
+ RubyEventStore::InvalidHandler,
63
+ /is invalid for dispatcher/
64
+ )
55
65
  end
56
66
 
57
67
  specify "verify and add - local subscriptions" do
@@ -23,7 +23,7 @@ RSpec.shared_examples :event do |event_class, data, metadata|
23
23
  end
24
24
 
25
25
  it "exposes given event_id to string" do
26
- event = event_class.new(event_id: 1234567890)
26
+ event = event_class.new(event_id: 1_234_567_890)
27
27
  expect(event.event_id).to eq "1234567890"
28
28
  end
29
29