Class JournalSpec

  • All Implemented Interfaces:
    java.io.Serializable, CapabilityFlags, JournalCapabilityFlags, MayVerb, OptionalTests, TestKitBase, org.scalactic.Explicitly, org.scalactic.Tolerance, org.scalactic.TripleEquals, org.scalactic.TripleEqualsSupport, org.scalatest.Alerting, org.scalatest.Assertions, org.scalatest.BeforeAndAfterAll, org.scalatest.BeforeAndAfterEach, org.scalatest.Documenting, org.scalatest.Informing, org.scalatest.matchers.dsl.MatcherWords, org.scalatest.matchers.should.Matchers, org.scalatest.Notifying, org.scalatest.Suite, org.scalatest.SuiteMixin, org.scalatest.TestRegistration, org.scalatest.TestSuite, org.scalatest.verbs.CanVerb, org.scalatest.verbs.MustVerb, org.scalatest.verbs.ShouldVerb, org.scalatest.wordspec.AnyWordSpecLike
    Direct Known Subclasses:
    JavaJournalSpec, JournalPerfSpec

    public abstract class JournalSpec
    extends PluginSpec
    implements MayVerb, OptionalTests, JournalCapabilityFlags
    This spec aims to verify custom pekko-persistence Journal implementations. Plugin authors are highly encouraged to include it in their plugin's test suites.

    In case your journal plugin needs some kind of setup or teardown, override the beforeAll or afterAll methods (don't forget to call super in your overridden methods).

    For a Java and JUnit consumable version of the TCK please refer to pekko.persistence.japi.journal.JavaJournalSpec.

    See Also:
    pekko.persistence.journal.JournalPerfSpec, pekko.persistence.japi.journal.JavaJournalPerfSpec, Serialized Form
    • Constructor Detail

      • JournalSpec

        public JournalSpec​(com.typesafe.config.Config config)
    • Method Detail

      • config

        public static com.typesafe.config.Config config()
      • beforeEach

        protected void beforeEach()
        Specified by:
        beforeEach in interface org.scalatest.BeforeAndAfterEach
        Overrides:
        beforeEach in class PluginSpec
      • preparePersistenceId

        public void preparePersistenceId​(java.lang.String pid)
        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.
      • supportsAtomicPersistAllOfSeveralEvents

        public boolean supportsAtomicPersistAllOfSeveralEvents()
        Implementation may override and return false if it does not support atomic writes of several events, as emitted by persistAll.
      • replayedMessage$default$2

        public boolean replayedMessage$default$2()
      • writeMessages

        public void writeMessages​(int fromSnr,
                                  int toSnr,
                                  java.lang.String pid,
                                  ActorRef sender,
                                  java.lang.String writerUuid)