Skip to content

Commit f5c4e63

Browse files
authored
Fix unit tests related to the Persistence DateTime bug (#7352)
* Fix unit tests related to the Persistence DateTime bug * Refactor additional method calls
1 parent 5db9d86 commit f5c4e63

File tree

5 files changed

+23
-12
lines changed

5 files changed

+23
-12
lines changed

src/core/Akka.Persistence.TCK.Tests/LocalSnapshotStoreSpec.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ protected override void AfterAll()
4242
public void LocalSnapshotStore_can_snapshot_actors_with_PersistenceId_containing_invalid_path_characters()
4343
{
4444
var pid = @"p\/:*?-1";
45-
SnapshotStore.Tell(new SaveSnapshot(new SnapshotMetadata(pid, 1, Sys.Scheduler.Now.DateTime), "sample data"), TestActor);
45+
SnapshotStore.Tell(new SaveSnapshot(new SnapshotMetadata(pid, 1, Sys.Scheduler.DateTimeNow), "sample data"), TestActor);
4646
ExpectMsg<SaveSnapshotSuccess>();
4747

4848
SnapshotStore.Tell(new LoadSnapshot(pid, SnapshotSelectionCriteria.Latest, long.MaxValue), TestActor);

src/core/Akka.Persistence.TCK/Query/PersistenceIdsSpec.cs

+2-1
Original file line numberDiff line numberDiff line change
@@ -247,7 +247,8 @@ protected IActorRef WriteSnapshot(string persistenceId, int n)
247247
ExpectMsg($"{persistenceId}-{i}-done");
248248
}
249249

250-
var metadata = new SnapshotMetadata(persistenceId, n + 10, Sys.Scheduler.Now.DateTime);
250+
var metadata = new SnapshotMetadata(persistenceId, n + 10, Sys.Scheduler.DateTimeNow);
251+
metadata.Timestamp.Kind.Should().Be(DateTimeKind.Utc);
251252
SnapshotStore.Tell(new SaveSnapshot(metadata, $"s-{n}"), _senderProbe.Ref);
252253
_senderProbe.ExpectMsg<SaveSnapshotSuccess>();
253254

src/core/Akka.Persistence.TCK/Serialization/SnapshotStoreSerializationSpec.cs

+10-5
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,8 @@ public virtual void SnapshotStore_should_serialize_Payload()
6969

7070
var snapshot = new Test.MySnapshot("a");
7171

72-
var metadata = new SnapshotMetadata(Pid, 1, Sys.Scheduler.Now.DateTime);
72+
var metadata = new SnapshotMetadata(Pid, 1, Sys.Scheduler.DateTimeNow);
73+
metadata.Timestamp.Kind.Should().Be(DateTimeKind.Utc);
7374
SnapshotStore.Tell(new SaveSnapshot(metadata, snapshot), probe.Ref);
7475
probe.ExpectMsg<SaveSnapshotSuccess>();
7576

@@ -85,7 +86,8 @@ public virtual void SnapshotStore_should_serialize_Payload_with_string_manifest(
8586

8687
var snapshot = new Test.MySnapshot2("a");
8788

88-
var metadata = new SnapshotMetadata(Pid, 1, Sys.Scheduler.Now.DateTime);
89+
var metadata = new SnapshotMetadata(Pid, 1, Sys.Scheduler.DateTimeNow);
90+
metadata.Timestamp.Kind.Should().Be(DateTimeKind.Utc);
8991
SnapshotStore.Tell(new SaveSnapshot(metadata, snapshot), probe.Ref);
9092
probe.ExpectMsg<SaveSnapshotSuccess>();
9193

@@ -107,7 +109,8 @@ public virtual void SnapshotStore_should_serialize_AtLeastOnceDeliverySnapshot()
107109
};
108110
var atLeastOnceDeliverySnapshot = new AtLeastOnceDeliverySnapshot(17, unconfirmed);
109111

110-
var metadata = new SnapshotMetadata(Pid, 2, Sys.Scheduler.Now.DateTime);
112+
var metadata = new SnapshotMetadata(Pid, 2, Sys.Scheduler.DateTimeNow);
113+
metadata.Timestamp.Kind.Should().Be(DateTimeKind.Utc);
111114
SnapshotStore.Tell(new SaveSnapshot(metadata, atLeastOnceDeliverySnapshot), probe.Ref);
112115
probe.ExpectMsg<SaveSnapshotSuccess>();
113116

@@ -123,7 +126,8 @@ public virtual void SnapshotStore_should_serialize_AtLeastOnceDeliverySnapshot_w
123126
var unconfirmed = Array.Empty<UnconfirmedDelivery>();
124127
var atLeastOnceDeliverySnapshot = new AtLeastOnceDeliverySnapshot(13, unconfirmed);
125128

126-
var metadata = new SnapshotMetadata(Pid, 2, Sys.Scheduler.Now.DateTime);
129+
var metadata = new SnapshotMetadata(Pid, 2, Sys.Scheduler.DateTimeNow);
130+
metadata.Timestamp.Kind.Should().Be(DateTimeKind.Utc);
127131
SnapshotStore.Tell(new SaveSnapshot(metadata, atLeastOnceDeliverySnapshot), probe.Ref);
128132
probe.ExpectMsg<SaveSnapshotSuccess>();
129133

@@ -138,7 +142,8 @@ public virtual void SnapshotStore_should_serialize_PersistentFSMSnapshot()
138142

139143
var persistentFSMSnapshot = new PersistentFSM.PersistentFSMSnapshot<string>("mystate", "mydata", TimeSpan.FromDays(4));
140144

141-
var metadata = new SnapshotMetadata(Pid, 2, Sys.Scheduler.Now.DateTime);
145+
var metadata = new SnapshotMetadata(Pid, 2, Sys.Scheduler.DateTimeNow);
146+
metadata.Timestamp.Kind.Should().Be(DateTimeKind.Utc);
142147
SnapshotStore.Tell(new SaveSnapshot(metadata, persistentFSMSnapshot), probe.Ref);
143148
probe.ExpectMsg<SaveSnapshotSuccess>();
144149

src/core/Akka.Persistence.TCK/Snapshot/SnapshotStoreSaveSnapshotSpec.cs

+4-2
Original file line numberDiff line numberDiff line change
@@ -138,14 +138,16 @@ public async Task MultipleSnapshotsWithSameSeqNo()
138138
var snapshotStore = persistence.SnapshotStoreFor(null);
139139
var snap = new TestPayload(SenderProbe.Ref);
140140

141-
var metadata = new SnapshotMetadata(PersistenceId, 3, DateTime.Now);
141+
var metadata = new SnapshotMetadata(PersistenceId, 3, DateTime.UtcNow);
142+
metadata.Timestamp.Kind.Should().Be(DateTimeKind.Utc);
142143
snapshotStore.Tell(new SaveSnapshot(metadata, snap), SenderProbe);
143144
var success = await SenderProbe.ExpectMsgAsync<SaveSnapshotSuccess>(10.Minutes());
144145
success.Metadata.PersistenceId.Should().Be(metadata.PersistenceId);
145146
success.Metadata.Timestamp.Should().Be(metadata.Timestamp);
146147
success.Metadata.SequenceNr.Should().Be(metadata.SequenceNr);
147148

148-
metadata = new SnapshotMetadata(PersistenceId, 3, DateTime.Now);
149+
metadata = new SnapshotMetadata(PersistenceId, 3, DateTime.UtcNow);
150+
metadata.Timestamp.Kind.Should().Be(DateTimeKind.Utc);
149151
snapshotStore.Tell(new SaveSnapshot(metadata, 3), SenderProbe);
150152
success = await SenderProbe.ExpectMsgAsync<SaveSnapshotSuccess>();
151153
success.Metadata.PersistenceId.Should().Be(metadata.PersistenceId);

src/core/Akka.Persistence.TCK/Snapshot/SnapshotStoreSpec.cs

+6-3
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,8 @@ private IEnumerable<SnapshotMetadata> WriteSnapshots()
102102
{
103103
for (int i = 1; i <= 5; i++)
104104
{
105-
var metadata = new SnapshotMetadata(Pid, i + 10, Sys.Scheduler.Now.DateTime);
105+
var metadata = new SnapshotMetadata(Pid, i + 10, Sys.Scheduler.DateTimeNow);
106+
metadata.Timestamp.Kind.Should().Be(DateTimeKind.Utc);
106107
SnapshotStore.Tell(new SaveSnapshot(metadata, $"s-{i}"), _senderProbe.Ref);
107108
yield return _senderProbe.ExpectMsg<SaveSnapshotSuccess>().Metadata;
108109
}
@@ -312,7 +313,8 @@ public virtual void SnapshotStore_should_save_and_overwrite_snapshot_with_same_s
312313
[Fact]
313314
public virtual void SnapshotStore_should_save_bigger_size_snapshot()
314315
{
315-
var metadata = new SnapshotMetadata(Pid, 100, Sys.Scheduler.Now.DateTime);
316+
var metadata = new SnapshotMetadata(Pid, 100, Sys.Scheduler.DateTimeNow);
317+
metadata.Timestamp.Kind.Should().Be(DateTimeKind.Utc);
316318
var bigSnapshot = new byte[SnapshotByteSizeLimit];
317319
new Random().NextBytes(bigSnapshot);
318320
SnapshotStore.Tell(new SaveSnapshot(metadata, bigSnapshot), _senderProbe.Ref);
@@ -326,7 +328,8 @@ public virtual void ShouldSerializeSnapshots()
326328
if (!SupportsSerialization) return;
327329

328330
var probe = CreateTestProbe();
329-
var metadata = new SnapshotMetadata(Pid, 100L, Sys.Scheduler.Now.DateTime);
331+
var metadata = new SnapshotMetadata(Pid, 100L, Sys.Scheduler.DateTimeNow);
332+
metadata.Timestamp.Kind.Should().Be(DateTimeKind.Utc);
330333
var snap = new TestPayload(probe.Ref);
331334

332335
SnapshotStore.Tell(new SaveSnapshot(metadata, snap), _senderProbe.Ref);

0 commit comments

Comments
 (0)