When true
enables tests which check if the Journal properly rejects
writes of objects which are not java.lang.Serializable
.
When true
enables tests which check if the Journal properly rejects
writes of objects which are not java.lang.Serializable
.
Override in order to customize timeouts used for expectMsg, in order to tune the awaits to your journal's perf
Implicitly converts an object of type String
to a StringMayWrapper
,
to enable may
methods to be invokable on that object.
Implicitly converts an object of type String
to a StringMayWrapper
,
to enable may
methods to be invokable on that object.
Number of messages sent to the PersistentActor under test for each test iteration
Configurable number of frames to be shown when a MAY test fails (is canceled).
Configurable number of frames to be shown when a MAY test fails (is canceled).
Defaults to 3
.
Must be geater than 0
.
Executes a block of code multiple times (no warm-up)
Number of measurement iterations each test will be run.
Overridable hook that is called before populating the journal for the next test case.
Overridable hook that is called before populating the journal for the next
test case. pid
is the persistenceId
that will be used in the test.
This method may be needed to clean pre-existing events from the log.
Implementation may override and return false if it does not
support atomic writes of several events, as emitted by persistAll
.
Implementation may override and return false if it does not
support atomic writes of several events, as emitted by persistAll
.
When true
enables tests which check if the Journal properly serialize and
deserialize events.
When true
enables tests which check if the Journal properly serialize and
deserialize events.
(journalPerfSpec: org.scalatest.Assertions.Equalizer[JournalPerfSpec]).!==(literalNull)
(journalPerfSpec: org.scalatest.Assertions.Equalizer[JournalPerfSpec]).!==(spread)
(journalPerfSpec: org.scalatest.Assertions.Equalizer[JournalPerfSpec]).!==(rightSide)(equality)
(journalPerfSpec: org.scalactic.TripleEquals.Equalizer[JournalPerfSpec]).!==(literalNull)
(journalPerfSpec: org.scalactic.TripleEquals.Equalizer[JournalPerfSpec]).!==(spread)
(journalPerfSpec: org.scalactic.TripleEquals.Equalizer[JournalPerfSpec]).!==(rightSide)(equality)
(journalPerfSpec: org.scalatest.Matchers.Equalizer[JournalPerfSpec]).!==(literalNull)
(journalPerfSpec: org.scalatest.Matchers.Equalizer[JournalPerfSpec]).!==(spread)
(journalPerfSpec: org.scalatest.Matchers.Equalizer[JournalPerfSpec]).!==(rightSide)(equality)
(journalPerfSpec: org.scalatest.Assertions.Equalizer[JournalPerfSpec]).===(literalNull)
(journalPerfSpec: org.scalatest.Assertions.Equalizer[JournalPerfSpec]).===(spread)
(journalPerfSpec: org.scalatest.Assertions.Equalizer[JournalPerfSpec]).===(rightSide)(equality)
(journalPerfSpec: org.scalactic.TripleEquals.Equalizer[JournalPerfSpec]).===(literalNull)
(journalPerfSpec: org.scalactic.TripleEquals.Equalizer[JournalPerfSpec]).===(spread)
(journalPerfSpec: org.scalactic.TripleEquals.Equalizer[JournalPerfSpec]).===(rightSide)(equality)
(journalPerfSpec: org.scalatest.Matchers.Equalizer[JournalPerfSpec]).===(literalNull)
(journalPerfSpec: org.scalatest.Matchers.Equalizer[JournalPerfSpec]).===(spread)
(journalPerfSpec: org.scalatest.Matchers.Equalizer[JournalPerfSpec]).===(rightSide)(equality)
(journalPerfSpec: org.scalatest.Assertions.Equalizer[JournalPerfSpec]).leftSide
(journalPerfSpec: org.scalactic.TripleEquals.Equalizer[JournalPerfSpec]).leftSide
(journalPerfSpec: org.scalatest.Matchers.Equalizer[JournalPerfSpec]).leftSide
The parameterless execute method has been deprecated and will be removed in a future version of ScalaTest. Please invoke execute with empty parens instead: execute().
(Since version 2.5.5) Use expectNoMessage instead
(Since version 2.5.5) Use expectNoMessage instead
The trap method is no longer needed for demos in the REPL, which now abreviates stack traces, and will be removed in a future version of ScalaTest
This spec measures execution times of the basic operations that an akka.persistence.PersistentActor provides, using the provided Journal (plugin).
It is *NOT* meant to be a comprehensive benchmark, but rather aims to help plugin developers to easily determine if their plugin's performance is roughly as expected. It also validates the plugin still works under "more messages" scenarios.
In case your journal plugin needs some kind of setup or teardown, override the
beforeAll
orafterAll
methods (don't forget to callsuper
in your overridden methods).For a Java and JUnit consumable version of the TCK please refer to akka.persistence.japi.journal.JavaJournalPerfSpec.
akka.persistence.journal.JournalSpec