无法将动态 table 实体转换为断言中的 System.threading 实体
Cannot convert Dynamic table entity to System.threading entity in assert
我正在尝试对我的函数实施断言,该函数在单独的项目中调用。调用的函数如下:
public async Task<List<DynamicTableEntity>> PopulateTable(
string documentId,
IEnumerable<string> lines,
JsonSchema schema,
string type,
string subType,
string format,
bool upsert ){var tableEntries = new List<DynamicTableEntity>( tableData.Count );
.....
return tableEntries; }
在某些情况下,它会抛出异常,我想使用 Xunit 框架进行测试。我的 TDD 代码是这样的:
public async Task UploadAndSchemaCheckOnMissingKey()
{
var table = await _tableStore.PopulateTable(null, lines, schema, "tableOutput", null, "test", false);
await Assert.ThrowsAsync<ArgumentException>(table);
}
我收到无法转换的错误 System.Collection.generic.List<table.DynamicEntity> to System.Func<System.Threading.tasks.task>
。
当我的测试用例抛出异常时,我应该如何处理?
你可以像这样使用它:
Func<Task> table = async() => await _tableStore.PopulateTable(null, lines, schema, "tableOutput", null, "test", false);
var ex = await Assert.ThrowsAsync<FormatException>(table);
Assert.Contains("expected error message", ex.Message);
我正在尝试对我的函数实施断言,该函数在单独的项目中调用。调用的函数如下:
public async Task<List<DynamicTableEntity>> PopulateTable(
string documentId,
IEnumerable<string> lines,
JsonSchema schema,
string type,
string subType,
string format,
bool upsert ){var tableEntries = new List<DynamicTableEntity>( tableData.Count );
.....
return tableEntries; }
在某些情况下,它会抛出异常,我想使用 Xunit 框架进行测试。我的 TDD 代码是这样的:
public async Task UploadAndSchemaCheckOnMissingKey()
{
var table = await _tableStore.PopulateTable(null, lines, schema, "tableOutput", null, "test", false);
await Assert.ThrowsAsync<ArgumentException>(table);
}
我收到无法转换的错误 System.Collection.generic.List<table.DynamicEntity> to System.Func<System.Threading.tasks.task>
。
当我的测试用例抛出异常时,我应该如何处理?
你可以像这样使用它:
Func<Task> table = async() => await _tableStore.PopulateTable(null, lines, schema, "tableOutput", null, "test", false);
var ex = await Assert.ThrowsAsync<FormatException>(table);
Assert.Contains("expected error message", ex.Message);