mirror of
https://github.com/GeWuYou/GFramework.git
synced 2026-05-12 22:03:30 +08:00
refactor(game-tests): 简化异步异常断言包装
- 简化 YAML 配置加载测试中的 Assert.ThrowsAsync Task 包装 - 简化持久化测试中的异步异常断言包装并保持原有断言语义
This commit is contained in:
parent
09cbd16d3a
commit
9b20a07c0a
@ -74,7 +74,7 @@ public sealed class YamlConfigLoaderDependentSchemasTests
|
|||||||
var loader = CreateMonsterRewardLoader();
|
var loader = CreateMonsterRewardLoader();
|
||||||
var registry = CreateRegistry();
|
var registry = CreateRegistry();
|
||||||
|
|
||||||
var exception = Assert.ThrowsAsync<ConfigLoadException>(async () => await loader.LoadAsync(registry).ConfigureAwait(false));
|
var exception = Assert.ThrowsAsync<ConfigLoadException>(() => loader.LoadAsync(registry));
|
||||||
|
|
||||||
Assert.Multiple(() =>
|
Assert.Multiple(() =>
|
||||||
{
|
{
|
||||||
@ -174,7 +174,7 @@ public sealed class YamlConfigLoaderDependentSchemasTests
|
|||||||
var loader = CreateMonsterRewardLoader();
|
var loader = CreateMonsterRewardLoader();
|
||||||
var registry = CreateRegistry();
|
var registry = CreateRegistry();
|
||||||
|
|
||||||
var exception = Assert.ThrowsAsync<ConfigLoadException>(async () => await loader.LoadAsync(registry).ConfigureAwait(false));
|
var exception = Assert.ThrowsAsync<ConfigLoadException>(() => loader.LoadAsync(registry));
|
||||||
|
|
||||||
Assert.Multiple(() =>
|
Assert.Multiple(() =>
|
||||||
{
|
{
|
||||||
@ -220,7 +220,7 @@ public sealed class YamlConfigLoaderDependentSchemasTests
|
|||||||
var loader = CreateMonsterRewardLoader();
|
var loader = CreateMonsterRewardLoader();
|
||||||
var registry = CreateRegistry();
|
var registry = CreateRegistry();
|
||||||
|
|
||||||
var exception = Assert.ThrowsAsync<ConfigLoadException>(async () => await loader.LoadAsync(registry).ConfigureAwait(false));
|
var exception = Assert.ThrowsAsync<ConfigLoadException>(() => loader.LoadAsync(registry));
|
||||||
|
|
||||||
Assert.Multiple(() =>
|
Assert.Multiple(() =>
|
||||||
{
|
{
|
||||||
@ -264,7 +264,7 @@ public sealed class YamlConfigLoaderDependentSchemasTests
|
|||||||
var loader = CreateMonsterRewardLoader();
|
var loader = CreateMonsterRewardLoader();
|
||||||
var registry = CreateRegistry();
|
var registry = CreateRegistry();
|
||||||
|
|
||||||
var exception = Assert.ThrowsAsync<ConfigLoadException>(async () => await loader.LoadAsync(registry).ConfigureAwait(false));
|
var exception = Assert.ThrowsAsync<ConfigLoadException>(() => loader.LoadAsync(registry));
|
||||||
|
|
||||||
Assert.Multiple(() =>
|
Assert.Multiple(() =>
|
||||||
{
|
{
|
||||||
|
|||||||
@ -105,7 +105,7 @@ public sealed class YamlConfigLoaderIfThenElseTests
|
|||||||
var loader = CreateMonsterRewardLoader();
|
var loader = CreateMonsterRewardLoader();
|
||||||
var registry = CreateRegistry();
|
var registry = CreateRegistry();
|
||||||
|
|
||||||
var exception = Assert.ThrowsAsync<ConfigLoadException>(async () => await loader.LoadAsync(registry).ConfigureAwait(false));
|
var exception = Assert.ThrowsAsync<ConfigLoadException>(() => loader.LoadAsync(registry));
|
||||||
|
|
||||||
Assert.Multiple(() =>
|
Assert.Multiple(() =>
|
||||||
{
|
{
|
||||||
@ -170,7 +170,7 @@ public sealed class YamlConfigLoaderIfThenElseTests
|
|||||||
var loader = CreateMonsterRewardLoader();
|
var loader = CreateMonsterRewardLoader();
|
||||||
var registry = CreateRegistry();
|
var registry = CreateRegistry();
|
||||||
|
|
||||||
var exception = Assert.ThrowsAsync<ConfigLoadException>(async () => await loader.LoadAsync(registry).ConfigureAwait(false));
|
var exception = Assert.ThrowsAsync<ConfigLoadException>(() => loader.LoadAsync(registry));
|
||||||
|
|
||||||
Assert.Multiple(() =>
|
Assert.Multiple(() =>
|
||||||
{
|
{
|
||||||
@ -263,7 +263,7 @@ public sealed class YamlConfigLoaderIfThenElseTests
|
|||||||
static config => config.Id);
|
static config => config.Id);
|
||||||
var registry = CreateRegistry();
|
var registry = CreateRegistry();
|
||||||
|
|
||||||
var exception = Assert.ThrowsAsync<ConfigLoadException>(async () => await loader.LoadAsync(registry).ConfigureAwait(false));
|
var exception = Assert.ThrowsAsync<ConfigLoadException>(() => loader.LoadAsync(registry));
|
||||||
|
|
||||||
Assert.Multiple(() =>
|
Assert.Multiple(() =>
|
||||||
{
|
{
|
||||||
@ -304,7 +304,7 @@ public sealed class YamlConfigLoaderIfThenElseTests
|
|||||||
var loader = CreateMonsterRewardLoader();
|
var loader = CreateMonsterRewardLoader();
|
||||||
var registry = CreateRegistry();
|
var registry = CreateRegistry();
|
||||||
|
|
||||||
var exception = Assert.ThrowsAsync<ConfigLoadException>(async () => await loader.LoadAsync(registry).ConfigureAwait(false));
|
var exception = Assert.ThrowsAsync<ConfigLoadException>(() => loader.LoadAsync(registry));
|
||||||
|
|
||||||
Assert.Multiple(() =>
|
Assert.Multiple(() =>
|
||||||
{
|
{
|
||||||
@ -345,7 +345,7 @@ public sealed class YamlConfigLoaderIfThenElseTests
|
|||||||
var loader = CreateMonsterRewardLoader();
|
var loader = CreateMonsterRewardLoader();
|
||||||
var registry = CreateRegistry();
|
var registry = CreateRegistry();
|
||||||
|
|
||||||
var exception = Assert.ThrowsAsync<ConfigLoadException>(async () => await loader.LoadAsync(registry).ConfigureAwait(false));
|
var exception = Assert.ThrowsAsync<ConfigLoadException>(() => loader.LoadAsync(registry));
|
||||||
|
|
||||||
Assert.Multiple(() =>
|
Assert.Multiple(() =>
|
||||||
{
|
{
|
||||||
@ -393,7 +393,7 @@ public sealed class YamlConfigLoaderIfThenElseTests
|
|||||||
var loader = CreateMonsterRewardLoader();
|
var loader = CreateMonsterRewardLoader();
|
||||||
var registry = CreateRegistry();
|
var registry = CreateRegistry();
|
||||||
|
|
||||||
var exception = Assert.ThrowsAsync<ConfigLoadException>(async () => await loader.LoadAsync(registry).ConfigureAwait(false));
|
var exception = Assert.ThrowsAsync<ConfigLoadException>(() => loader.LoadAsync(registry));
|
||||||
|
|
||||||
Assert.Multiple(() =>
|
Assert.Multiple(() =>
|
||||||
{
|
{
|
||||||
|
|||||||
@ -43,7 +43,7 @@ public class PersistenceTests
|
|||||||
var loaded = await storage.ReadAsync<TestSimpleData>("folder/item").ConfigureAwait(false);
|
var loaded = await storage.ReadAsync<TestSimpleData>("folder/item").ConfigureAwait(false);
|
||||||
Assert.That(loaded.Value, Is.EqualTo(saved.Value));
|
Assert.That(loaded.Value, Is.EqualTo(saved.Value));
|
||||||
|
|
||||||
Assert.ThrowsAsync<ArgumentException>(async () => await storage.WriteAsync("../escape", new TestSimpleData()).ConfigureAwait(false));
|
Assert.ThrowsAsync<ArgumentException>(() => storage.WriteAsync("../escape", new TestSimpleData()));
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@ -185,7 +185,7 @@ public class PersistenceTests
|
|||||||
var repository = new SaveRepository<TestVersionedSaveData>(storage, config)
|
var repository = new SaveRepository<TestVersionedSaveData>(storage, config)
|
||||||
.RegisterMigration(new TestSaveMigrationV1ToV2());
|
.RegisterMigration(new TestSaveMigrationV1ToV2());
|
||||||
|
|
||||||
var exception = Assert.ThrowsAsync<InvalidOperationException>(async () => await repository.LoadAsync(1).ConfigureAwait(false));
|
var exception = Assert.ThrowsAsync<InvalidOperationException>(() => repository.LoadAsync(1));
|
||||||
Assert.That(exception!.Message, Does.Contain("from version 2"));
|
Assert.That(exception!.Message, Does.Contain("from version 2"));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -218,7 +218,7 @@ public class PersistenceTests
|
|||||||
var repository = new SaveRepository<TestVersionedSaveData>(storage, config)
|
var repository = new SaveRepository<TestVersionedSaveData>(storage, config)
|
||||||
.RegisterMigration(new TestSaveMigrationV1ToV2ReturningV3());
|
.RegisterMigration(new TestSaveMigrationV1ToV2ReturningV3());
|
||||||
|
|
||||||
var exception = Assert.ThrowsAsync<InvalidOperationException>(async () => await repository.LoadAsync(1).ConfigureAwait(false));
|
var exception = Assert.ThrowsAsync<InvalidOperationException>(() => repository.LoadAsync(1));
|
||||||
var persisted = await storage.ReadAsync<TestVersionedSaveData>("saves/slot_1/save").ConfigureAwait(false);
|
var persisted = await storage.ReadAsync<TestVersionedSaveData>("saves/slot_1/save").ConfigureAwait(false);
|
||||||
|
|
||||||
Assert.Multiple(() =>
|
Assert.Multiple(() =>
|
||||||
@ -270,7 +270,7 @@ public class PersistenceTests
|
|||||||
repository.RegisterMigration(new TestSaveMigrationV2ToV3());
|
repository.RegisterMigration(new TestSaveMigrationV2ToV3());
|
||||||
continueMigration.Set();
|
continueMigration.Set();
|
||||||
|
|
||||||
var exception = Assert.ThrowsAsync<InvalidOperationException>(async () => await loadTask.ConfigureAwait(false));
|
var exception = Assert.ThrowsAsync<InvalidOperationException>(() => loadTask);
|
||||||
var persisted = await storage.ReadAsync<TestVersionedSaveData>("saves/slot_1/save").ConfigureAwait(false);
|
var persisted = await storage.ReadAsync<TestVersionedSaveData>("saves/slot_1/save").ConfigureAwait(false);
|
||||||
|
|
||||||
Assert.Multiple(() =>
|
Assert.Multiple(() =>
|
||||||
@ -593,7 +593,7 @@ public class PersistenceTests
|
|||||||
|
|
||||||
throwingStorage.ThrowOnWrite = true;
|
throwingStorage.ThrowOnWrite = true;
|
||||||
Assert.ThrowsAsync<InvalidOperationException>(
|
Assert.ThrowsAsync<InvalidOperationException>(
|
||||||
async () => await repository.SaveAsync(primaryLocation, new TestSimpleData { Value = 99 }).ConfigureAwait(false));
|
() => repository.SaveAsync(primaryLocation, new TestSimpleData { Value = 99 }));
|
||||||
|
|
||||||
var cachedAfterFailure = await repository.LoadAsync<TestSimpleData>(primaryLocation).ConfigureAwait(false);
|
var cachedAfterFailure = await repository.LoadAsync<TestSimpleData>(primaryLocation).ConfigureAwait(false);
|
||||||
Assert.That(cachedAfterFailure.Value, Is.EqualTo(1));
|
Assert.That(cachedAfterFailure.Value, Is.EqualTo(1));
|
||||||
@ -656,7 +656,7 @@ public class PersistenceTests
|
|||||||
|
|
||||||
throwingStorage.ThrowOnWrite = true;
|
throwingStorage.ThrowOnWrite = true;
|
||||||
Assert.ThrowsAsync<InvalidOperationException>(
|
Assert.ThrowsAsync<InvalidOperationException>(
|
||||||
async () => await repository.DeleteAsync(secondaryLocation).ConfigureAwait(false));
|
() => repository.DeleteAsync(secondaryLocation));
|
||||||
|
|
||||||
Assert.That(await repository.ExistsAsync(secondaryLocation).ConfigureAwait(false), Is.True);
|
Assert.That(await repository.ExistsAsync(secondaryLocation).ConfigureAwait(false), Is.True);
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user