Make it possible to test a projector by directly calling a function on the projector module, passing an Ecto.Multi struct, an event, and its metadata.
Examples
Test a projector by projecting a single event:
{:ok, _changes} =
Ecto.Multi.new()
|> MyApp.ExampleProjector.project(event, metadata)
|> MyApp.Repo.transaction()
Test a projector by reducing a list of events:
multi =
Enum.reduce(events, Ecto.Multi.new(), fn event, multi ->
MyApp.ExampleProjector.project(multi, event, metadata)
end)
{:ok, _changes} = MyApp.Repo.transaction(multi)
Make it possible to test a projector by directly calling a function on the projector module, passing an
Ecto.Multistruct, an event, and its metadata.Examples
Test a projector by projecting a single event:
Test a projector by reducing a list of events: