2024-12-24 18:12:26 +08:00

130 lines
3.7 KiB
C#

using NetAdmin.Domain.Dto.Sys.Api;
namespace UnitTests.Sys;
/// <summary>
/// 接口测试
/// </summary>
[SuppressMessage("Usage", "xUnit1026:Theory methods should use all of their parameters")]
[SuppressMessage("Usage", "xUnit1028:Test method must have valid return type")]
public class ApiTests(WebTestApplicationFactory<Startup> factory, ITestOutputHelper testOutputHelper)
: WebApiTestBase<Startup>(factory, testOutputHelper), IApiModule
{
/// <inheritdoc />
[InlineData(null)]
[Theory]
public async Task<int> BulkDeleteAsync(BulkReq<DelReq> req)
{
var rsp = await PostJsonAsync(typeof(ApiController), req);
Assert.True(rsp.IsSuccessStatusCode);
return 0;
}
/// <inheritdoc />
[InlineData(null)]
[Theory]
public async Task<long> CountAsync(QueryReq<QueryApiReq> req)
{
var rsp = await PostJsonAsync(typeof(ApiController), req);
Assert.True(rsp.IsSuccessStatusCode);
return 0;
}
/// <inheritdoc />
[InlineData(null)]
[Theory]
public async Task<IOrderedEnumerable<KeyValuePair<IImmutableDictionary<string, string>, int>>> CountByAsync(QueryReq<QueryApiReq> req)
{
var rsp = await PostJsonAsync(typeof(ApiController), req);
Assert.True(rsp.IsSuccessStatusCode);
return null;
}
/// <inheritdoc />
[InlineData(null)]
[Theory]
public async Task<QueryApiRsp> CreateAsync(CreateApiReq req)
{
var rsp = await PostJsonAsync(typeof(ApiController), req);
Assert.True(rsp.IsSuccessStatusCode);
return null;
}
/// <inheritdoc />
[InlineData(null)]
[Theory]
public async Task<int> DeleteAsync(DelReq req)
{
var rsp = await PostJsonAsync(typeof(ApiController), req);
Assert.True(rsp.IsSuccessStatusCode);
return 0;
}
/// <inheritdoc />
[InlineData(null)]
[Theory]
public async Task<QueryApiRsp> EditAsync(EditApiReq req)
{
var rsp = await PostJsonAsync(typeof(ApiController), req);
Assert.True(rsp.IsSuccessStatusCode);
return null;
}
/// <inheritdoc />
[InlineData(null)]
[Theory]
public async Task<IActionResult> ExportAsync(QueryReq<QueryApiReq> req)
{
var rsp = await PostJsonAsync(typeof(ApiController), req);
Assert.True(rsp.IsSuccessStatusCode);
return null;
}
/// <inheritdoc />
[InlineData(null)]
[Theory]
public async Task<QueryApiRsp> GetAsync(QueryApiReq req)
{
var rsp = await PostJsonAsync(typeof(ApiController), req);
Assert.True(rsp.IsSuccessStatusCode);
return null;
}
/// <inheritdoc />
[InlineData(null)]
[Theory]
public async Task<PagedQueryRsp<QueryApiRsp>> PagedQueryAsync(PagedQueryReq<QueryApiReq> req)
{
var rsp = await PostJsonAsync(typeof(ApiController), req);
Assert.True(rsp.IsSuccessStatusCode);
return null;
}
/// <inheritdoc />
[InlineData(null)]
[Theory]
public async Task<IEnumerable<QueryApiRsp>> PlainQueryAsync(QueryReq<QueryApiReq> req)
{
var rsp = await PostJsonAsync(typeof(ApiController), req);
Assert.True(rsp.IsSuccessStatusCode);
return null;
}
/// <inheritdoc />
[InlineData(null)]
[Theory]
public async Task<IEnumerable<QueryApiRsp>> QueryAsync(QueryReq<QueryApiReq> req)
{
var rsp = await PostJsonAsync(typeof(ApiController), req);
Assert.True(rsp.IsSuccessStatusCode);
return null;
}
/// <inheritdoc />
[Fact]
public async Task SyncAsync()
{
var rsp = await PostJsonAsync(typeof(ApiController));
Assert.True(rsp.IsSuccessStatusCode);
}
}