test:添加线程db单元测试

This commit is contained in:
橙子
2024-05-29 23:42:56 +08:00
parent ef220a5b36
commit a2d9326826
3 changed files with 117 additions and 1 deletions

View File

@@ -0,0 +1,110 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Uow;
using Xunit;
using Yi.Framework.Rbac.Application.Contracts.IServices;
using Yi.Framework.Rbac.Domain.Entities;
using Yi.Framework.Rbac.Domain.Shared.Consts;
using Yi.Framework.SqlSugarCore.Abstractions;
namespace Yi.Abp.Test.Demo
{
public class ThreadDb_Test : YiAbpTestBase
{
/// <summary>
/// 并发
/// </summary>
/// <returns></returns>
[Fact]
public async Task Repository_Test()
{
try
{
var rep = GetRequiredService<ISqlSugarRepository<UserAggregateRoot>>();
List<Task> tasks = new List<Task>();
for (int i = 0; i < 10; i++)
{
tasks.Add(Task.Run(async () =>
{
await rep.GetListAsync();
}));
}
await Task.WhenAll(tasks);
await Console.Out.WriteLineAsync("成功");
}
catch
(Exception ex)
{
Console.WriteLine(ex.ToString());
}
}
/// <summary>
/// 工作单元
/// </summary>
/// <returns></returns>
[Fact]
public async Task Uow_In_Test()
{
try
{
var rep = GetRequiredService<ISqlSugarRepository<UserAggregateRoot>>();
List<Task> tasks = new List<Task>();
for (int i = 0; i < 10; i++)
{
tasks.Add(Task.Run(async () =>
{
using (var uow = GetRequiredService<IUnitOfWorkManager>().Begin(true, true))
{
await rep.GetListAsync();
await uow.CompleteAsync();
}
}));
}
await Task.WhenAll(tasks);
await Console.Out.WriteLineAsync("成功");
}
catch
(Exception ex)
{
Console.WriteLine(ex.ToString());
}
}
/// <summary>
/// 工作单元
/// </summary>
/// <returns></returns>
[Fact]
public async Task Uow_Out_Test()
{
try
{
var rep = GetRequiredService<ISqlSugarRepository<UserAggregateRoot>>();
List<Task> tasks = new List<Task>();
using (var uow = GetRequiredService<IUnitOfWorkManager>().Begin(true, true))
{
for (int i = 0; i < 10; i++)
{
tasks.Add(Task.Run(async () =>
{
await rep.GetListAsync();
await uow.CompleteAsync();
}));
}
}
await Task.WhenAll(tasks);
await Console.Out.WriteLineAsync("成功");
}
catch
(Exception ex)
{
Console.WriteLine(ex.ToString());
}
}
}
}

View File

@@ -6,9 +6,15 @@
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
<None Remove="appsettings.Development.json" />
<None Remove="appsettings.json" />
</ItemGroup>
<ItemGroup>
<Content Include="appsettings.Development.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<ExcludeFromSingleFile>true</ExcludeFromSingleFile>
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="appsettings.json">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
<ExcludeFromSingleFile>true</ExcludeFromSingleFile>

View File

@@ -40,7 +40,7 @@ namespace Yi.Abp.Test
protected virtual void ConfigureAppConfiguration(IConfigurationBuilder configurationBuilder)
{
configurationBuilder.AddJsonFile("appsettings.json");
//configurationBuilder.AddJsonFile("appsettings.Development.json");
configurationBuilder.AddJsonFile("appsettings.Development.json");
}
}