ShiftedSchedulerType

PackageFCQRS
Akka.NET's default scheduler on real time, telling a time moved by `Shift`. FCQRS stamps commands and events with the scheduler's `Now`, and `IActor.TimeProvider` tells the same time. A test that lets time pass sets `Shift`, and every aggregate decision and every reader of `TimeProvider` sees the later time without the test waiting for it. Timers keep running on real time, so command timeouts, saga handshakes and cluster sharding behave as they do in production. `ObservingScheduler` is the choice when a test must control when timers fire instead. Set it with `akka.scheduler.implementation = "FCQRS.Scheduler+ShiftedScheduler, FCQRS"` and reach it as `api.System.Scheduler :?> ShiftedScheduler`. A shift back makes later commands carry earlier dates than earlier ones; a test that does so must not compare dates across it.

Specification

Kind
Type
Members
3
Examples
0
``.ctor``Signature
ShiftedScheduler(config, log)
ShiftSignature
this.Shift
NowSignature
this.Now

Summary

NameSignatureSynopsis
``.ctor``ShiftedScheduler(config, log)No description available.
Shiftthis.ShiftHow far the time told is from real time.
Nowthis.NowReal time moved by `Shift`.

``.ctor``

ShiftedScheduler(config, log)
Member

Parameters

NameTypeDescription
configConfig
logILoggingAdapter

Returns

ShiftedScheduler

Shift

this.Shift
Member
How far the time told is from real time.

Returns

TimeSpan

Now

this.Now
Member
Real time moved by `Shift`.

Returns

DateTimeOffset