Skip to content

Commit 300a93e

Browse files
committed
testcontainer
1 parent 34fbcd4 commit 300a93e

2 files changed

Lines changed: 17 additions & 3 deletions

File tree

Core.TaskProcessor.Tests/Core.TaskProcessor.Tests.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
<ItemGroup>
99
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="10.0.0" />
1010
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="18.0.1" />
11+
<PackageReference Include="Testcontainers.Redis" Version="4.10.0" />
1112
<PackageReference Include="xunit.v3" Version="3.2.2" />
1213
<PackageReference Include="xunit.v3.extensibility.core" Version="3.2.2" />
1314
<PackageReference Include="xunit.runner.visualstudio" Version="3.1.5">

Core.TaskProcessor.Tests/ProcessorTests.cs

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,30 @@
11
using Newtonsoft.Json;
2+
using Testcontainers.Redis;
23
using Xunit;
34

45
namespace Core.TaskProcessor.Tests;
56

6-
public class ProcessorTests
7+
public class ProcessorTests : IAsyncLifetime
78
{
89
private readonly ITestOutputHelper _output;
9-
private readonly TaskProcessor _processor;
10+
private TaskProcessor _processor = null!;
11+
private readonly RedisContainer _redisContainer = new RedisBuilder("valkey/valkey:9-alpine").Build();
1012

1113
public ProcessorTests(ITestOutputHelper output)
1214
{
1315
_output = output;
16+
}
17+
18+
public async ValueTask InitializeAsync()
19+
{
20+
await _redisContainer.StartAsync();
21+
1422
_processor = new TaskProcessor(new TaskProcessorOptions
1523
{
1624
Prefix = "{dev}",
1725
MaxWorkers = 2,
1826
Queues = new[] { "q1", "q2[fair]", "q3" },
19-
Redis = "localhost:6379,abortConnect=false",
27+
Redis = _redisContainer.GetConnectionString() + ",abortConnect=false",
2028
Retries = 3,
2129
Deadletter = true,
2230
OnTaskStart = info =>
@@ -41,6 +49,11 @@ public ProcessorTests(ITestOutputHelper output)
4149
};
4250
}
4351

52+
public async ValueTask DisposeAsync()
53+
{
54+
await _redisContainer.DisposeAsync();
55+
}
56+
4457
[Fact]
4558
public async Task EnqueueFairness()
4659
{

0 commit comments

Comments
 (0)