tests: fix up test project after major refactor

This commit is contained in:
Stevan Freeborn
2025-05-18 12:23:00 -05:00
parent 9af7522c29
commit bb1fadeac0
3 changed files with 37 additions and 10 deletions
@@ -2,9 +2,7 @@ using WebSocket = System.Net.WebSockets.WebSocket;
namespace StevesBot.Worker.Tests.Integration.Infrastructure; namespace StevesBot.Worker.Tests.Integration.Infrastructure;
# pragma warning disable CA1001 public sealed class TestWebSocketServer : IAsyncLifetime, IDisposable
public sealed class TestWebSocketServer : IAsyncLifetime
{ {
private readonly IWebHost _host; private readonly IWebHost _host;
private readonly CancellationTokenSource _echoCts = new(); private readonly CancellationTokenSource _echoCts = new();
@@ -111,4 +109,9 @@ public sealed class TestWebSocketServer : IAsyncLifetime
webSocket.Dispose(); webSocket.Dispose();
} }
} }
public void Dispose()
{
_host.Dispose();
}
} }
@@ -6,6 +6,7 @@ public sealed class DiscordGatewayClientTests : IDisposable
private readonly Mock<IWebSocketFactory> _mockWebSocketFactory = new(); private readonly Mock<IWebSocketFactory> _mockWebSocketFactory = new();
private readonly Mock<ILogger<DiscordGatewayClient>> _mockLogger = new(); private readonly Mock<ILogger<DiscordGatewayClient>> _mockLogger = new();
private readonly Mock<TimeProvider> _mockTimeProvider = new(); private readonly Mock<TimeProvider> _mockTimeProvider = new();
private readonly Mock<IServiceScopeFactory> _mockServiceScopeFactory = new();
private readonly DiscordClientOptions _options = new(); private readonly DiscordClientOptions _options = new();
private readonly DiscordGatewayClient _discordGatewayClient; private readonly DiscordGatewayClient _discordGatewayClient;
@@ -20,7 +21,8 @@ public sealed class DiscordGatewayClientTests : IDisposable
_mockWebSocketFactory.Object, _mockWebSocketFactory.Object,
_mockLogger.Object, _mockLogger.Object,
_mockDiscordRestClient.Object, _mockDiscordRestClient.Object,
_mockTimeProvider.Object _mockTimeProvider.Object,
_mockServiceScopeFactory.Object
); );
} }
@@ -32,7 +34,8 @@ public sealed class DiscordGatewayClientTests : IDisposable
_mockWebSocketFactory.Object, _mockWebSocketFactory.Object,
_mockLogger.Object, _mockLogger.Object,
_mockDiscordRestClient.Object, _mockDiscordRestClient.Object,
_mockTimeProvider.Object _mockTimeProvider.Object,
_mockServiceScopeFactory.Object
); );
act.Should().Throw<ArgumentNullException>(); act.Should().Throw<ArgumentNullException>();
@@ -46,7 +49,8 @@ public sealed class DiscordGatewayClientTests : IDisposable
null!, null!,
_mockLogger.Object, _mockLogger.Object,
_mockDiscordRestClient.Object, _mockDiscordRestClient.Object,
_mockTimeProvider.Object _mockTimeProvider.Object,
_mockServiceScopeFactory.Object
); );
act.Should().Throw<ArgumentNullException>(); act.Should().Throw<ArgumentNullException>();
@@ -60,7 +64,8 @@ public sealed class DiscordGatewayClientTests : IDisposable
_mockWebSocketFactory.Object, _mockWebSocketFactory.Object,
null!, null!,
_mockDiscordRestClient.Object, _mockDiscordRestClient.Object,
_mockTimeProvider.Object _mockTimeProvider.Object,
_mockServiceScopeFactory.Object
); );
act.Should().Throw<ArgumentNullException>(); act.Should().Throw<ArgumentNullException>();
@@ -74,7 +79,8 @@ public sealed class DiscordGatewayClientTests : IDisposable
_mockWebSocketFactory.Object, _mockWebSocketFactory.Object,
_mockLogger.Object, _mockLogger.Object,
null!, null!,
_mockTimeProvider.Object _mockTimeProvider.Object,
_mockServiceScopeFactory.Object
); );
act.Should().Throw<ArgumentNullException>(); act.Should().Throw<ArgumentNullException>();
@@ -88,6 +94,22 @@ public sealed class DiscordGatewayClientTests : IDisposable
_mockWebSocketFactory.Object, _mockWebSocketFactory.Object,
_mockLogger.Object, _mockLogger.Object,
_mockDiscordRestClient.Object, _mockDiscordRestClient.Object,
null!,
_mockServiceScopeFactory.Object
);
act.Should().Throw<ArgumentNullException>();
}
[Fact]
public void Constructor_WhenCalledAndServiceScopeFactoryIsNull_ItShouldThrowArgumentNullException()
{
var act = () => new DiscordGatewayClient(
_options,
_mockWebSocketFactory.Object,
_mockLogger.Object,
_mockDiscordRestClient.Object,
_mockTimeProvider.Object,
null! null!
); );
+4 -2
View File
@@ -16,8 +16,10 @@ global using Moq;
global using RichardSzalay.MockHttp; global using RichardSzalay.MockHttp;
global using StevesBot.Worker.Discord; global using StevesBot.Worker.Discord.Gateway;
global using StevesBot.Worker.Discord.Events; global using StevesBot.Worker.Discord.Gateway.Events;
global using StevesBot.Worker.Discord.Rest;
global using StevesBot.Worker.Discord.Shared;
global using StevesBot.Worker.Tests.Integration.Infrastructure; global using StevesBot.Worker.Tests.Integration.Infrastructure;
global using StevesBot.Worker.Threading; global using StevesBot.Worker.Threading;
global using StevesBot.Worker.WebSockets; global using StevesBot.Worker.WebSockets;