完成新建变量表的功能测试

This commit is contained in:
2025-07-24 19:51:16 +08:00
parent 899e657053
commit 4e26685560
9 changed files with 163 additions and 6 deletions

View File

@@ -49,7 +49,8 @@ public class BaseServiceTest
services.AddTransient<IInitializeRepository, InitializeRepository>();
// 注册应用服务
services.AddTransient<IDeviceAppService, DeviceService>();
services.AddTransient<IDeviceAppService, DeviceAppService>();
services.AddTransient<IVariableTableAppService, VariableTableAppService>();
// services.AddTransient<IVariableAppService, VariableAppService>(); // 如果需要测试 VariableService取消此行注释
// ... 在这里注册所有其他的应用服务 ...

View File

@@ -6,12 +6,12 @@ using Microsoft.Extensions.DependencyInjection;
namespace DMS.Infrastructure.UnitTests.Services;
[TestSubject(typeof(DeviceService))]
public class DeviceServiceTest : BaseServiceTest // 继承基类
[TestSubject(typeof(DeviceAppService))]
public class DeviceAppServiceTest : BaseServiceTest // 继承基类
{
private readonly IDeviceAppService _deviceService;
public DeviceServiceTest() : base()
public DeviceAppServiceTest() : base()
{
// 从 IoC 容器中解析出需要测试的服务
// 使用 GetRequiredService 可以确保如果服务未注册,测试会立即失败,这通常是我们想要的。

View File

@@ -0,0 +1,31 @@
using DMS.Application.DTOs;
using DMS.Application.Interfaces;
using DMS.Application.Services;
using JetBrains.Annotations;
using Microsoft.Extensions.DependencyInjection;
namespace DMS.Infrastructure.UnitTests.Services;
[TestSubject(typeof(VariableTableAppService))]
public class VariableTableAppServiceTest : BaseServiceTest
{
private readonly IVariableTableAppService _variableTableAppService;
public VariableTableAppServiceTest()
{
_variableTableAppService = ServiceProvider.GetRequiredService<IVariableTableAppService>();
}
[Fact]
public async Task CreateVariableTableAsyncTest()
{
var dto = new CreateVariableTableWithMenuDto()
{
VariableTable = FakerHelper.FakeVariableTableDto(),
Menu = FakerHelper.FakeCreateMenuDto(),
DeviceId = 5
};
var addVarTable= await _variableTableAppService.CreateVariableTableAsync(dto);
Assert.NotEqual(addVarTable.Id, 0);
}
}