Walk rows lows: TS @directory pins an I/O failure; C# pins commit-remove over a directory
Some checks failed
CultMesh portability and performance / ubuntu-latest reactive semantics and leases (pull_request) Has been cancelled
Some checks failed
CultMesh portability and performance / ubuntu-latest reactive semantics and leases (pull_request) Has been cancelled
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
08dc9cf0ae
commit
01bf40e942
2 changed files with 4 additions and 1 deletions
|
|
@ -2635,7 +2635,7 @@ test("SingleFileMessagePackBackingStore replaces a file exactly when it reads",
|
|||
assert.ok(!keys.includes(envelopes[0]!.key), `${vector} ${operation}`);
|
||||
}
|
||||
} else if (isDirectory) {
|
||||
await assert.rejects(run, `${vector} ${operation}`);
|
||||
await assert.rejects(run, (error) => !(error instanceof StoreUnreadableError), `${vector} ${operation}: an I/O failure, not a typed refusal`);
|
||||
assert.ok((await lstat(file)).isDirectory(), `${vector} ${operation} replaced the directory`);
|
||||
assert.deepEqual(await readdir(file), [], `${vector} ${operation} wrote into the directory`);
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -314,6 +314,9 @@ namespace GameCult.Caching.Tests
|
|||
Assert.That(() => cache.Commit(batch => batch.Upsert(typeof(IdDeck), new IdDeck { Name = "e" }, new CultRecordKey("e"))),
|
||||
Throws.TypeOf<IOException>().With.Message.Contains("directory"));
|
||||
|
||||
Assert.That(() => cache.Commit(batch => batch.Remove(new CultRecordKey("e"))),
|
||||
Throws.TypeOf<IOException>().With.Message.Contains("directory"));
|
||||
|
||||
Assert.That(Directory.GetFileSystemEntries(path), Is.Empty);
|
||||
Assert.That(Directory.GetFileSystemEntries(later), Is.Empty);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue