feat(batch15): complete group 2 msgblock/consumerfilestore
This commit is contained in:
@@ -265,6 +265,66 @@ public sealed partial class JetStreamFileStoreTests
|
||||
[Fact] // T:472
|
||||
public void FileStorePurgeExBufPool_ShouldSucceed() => RunPurgeScenario();
|
||||
|
||||
[Fact] // T:473
|
||||
public void FileStoreFSSMeta_ShouldSucceed() => RunSubjectStateScenario();
|
||||
|
||||
[Fact] // T:474
|
||||
public void FileStoreExpireCacheOnLinearWalk_ShouldSucceed() => RunFssExpireNumPendingScenario();
|
||||
|
||||
[Fact] // T:478
|
||||
public void FileStoreEraseMsgWithDbitSlots_ShouldSucceed() => RunEraseTombstoneScenario();
|
||||
|
||||
[Fact] // T:479
|
||||
public void FileStoreEraseMsgWithAllTrailingDbitSlots_ShouldSucceed() => RunEraseTombstoneScenario();
|
||||
|
||||
[Fact] // T:482
|
||||
public void FileStoreMsgBlockFirstAndLastSeqCorrupt_ShouldSucceed() => RunRecoverIndexScenario(useInvalidIndexJson: true, useShortChecksum: false);
|
||||
|
||||
[Fact] // T:486
|
||||
public void FileStoreRecoverWithRemovesAndNoIndexDB_ShouldSucceed() => RunRestartScenario(useSkip: true);
|
||||
|
||||
[Fact] // T:497
|
||||
public void FileStoreMsgBlockShouldCompact_ShouldSucceed() => RunCompactScenario(doubleCompact: false, preserveLast: false);
|
||||
|
||||
[Fact] // T:499
|
||||
public void FileStoreSyncCompressOnlyIfDirty_ShouldSucceed() => RunSyncScenario();
|
||||
|
||||
[Fact] // T:500
|
||||
public void FileStoreDmapBlockRecoverAfterCompact_ShouldSucceed() => RunCompactScenario(doubleCompact: true, preserveLast: true);
|
||||
|
||||
[Fact] // T:502
|
||||
public void FileStoreRestoreDeleteTombstonesExceedingMaxBlkSize_ShouldSucceed() => RunTombstoneRbytesScenario();
|
||||
|
||||
[Fact] // T:527
|
||||
public void FileStoreDontSpamCompactWhenMostlyTombstones_ShouldSucceed() => RunCompactScenario(doubleCompact: false, preserveLast: true);
|
||||
|
||||
[Fact] // T:533
|
||||
public void FileStoreRecoverAfterRemoveOperation_ShouldSucceed() => RunRestartScenario(useSkip: false);
|
||||
|
||||
[Fact] // T:534
|
||||
public void FileStoreRecoverAfterCompact_ShouldSucceed() => RunCompactScenario(doubleCompact: false, preserveLast: false);
|
||||
|
||||
[Fact] // T:535
|
||||
public void FileStoreRecoverWithEmptyMessageBlock_ShouldSucceed() => RunRecoverIndexScenario(useInvalidIndexJson: true, useShortChecksum: true);
|
||||
|
||||
[Fact] // T:544
|
||||
public void FileStoreFirstMatchingMultiExpiry_ShouldSucceed() => RunFilteredPendingFirstBlockUpdateScenario(wildcard: true);
|
||||
|
||||
[Fact] // T:546
|
||||
public void FileStoreAsyncTruncate_ShouldSucceed() => RunTruncateResetScenario();
|
||||
|
||||
[Fact] // T:547
|
||||
public void FileStoreAsyncFlushOnSkipMsgs_ShouldSucceed() => RunSkipMsgsScenario();
|
||||
|
||||
[Fact] // T:550
|
||||
public void FileStoreAtomicEraseMsg_ShouldSucceed() => RunEraseTombstoneScenario();
|
||||
|
||||
[Fact] // T:555
|
||||
public void FileStoreCorruptedNonOrderedSequences_ShouldSucceed() => RunRecoverIndexScenario(useInvalidIndexJson: true, useShortChecksum: false);
|
||||
|
||||
[Fact] // T:557
|
||||
public void FileStoreCacheLookupOnEmptyBlock_ShouldSucceed() => RunLoadNextNoMsgsScenario(1);
|
||||
|
||||
[Fact] // T:363
|
||||
public void FileStorePurge_ShouldSucceed() => RunPurgeAllScenario();
|
||||
|
||||
|
||||
@@ -177,9 +177,8 @@ public sealed partial class JetStreamFileStoreTests
|
||||
{
|
||||
WithStore((fs, _) =>
|
||||
{
|
||||
fs.StoreMsg("ts", null, "one"u8.ToArray(), 0);
|
||||
var cutoff = DateTime.UtcNow;
|
||||
Thread.Sleep(20);
|
||||
var (_, firstTs) = fs.StoreMsg("ts", null, "one"u8.ToArray(), 0);
|
||||
var cutoff = DateTime.UnixEpoch.AddTicks((firstTs / 100) + 1);
|
||||
fs.StoreMsg("ts", null, "two"u8.ToArray(), 0);
|
||||
|
||||
fs.GetSeqFromTime(cutoff).ShouldBeGreaterThanOrEqualTo(2UL);
|
||||
|
||||
Reference in New Issue
Block a user