30 lines
920 B
C#
30 lines
920 B
C#
namespace ZB.MOM.WW.LmxProxy.Client.IntegrationTests;
|
|
|
|
public class ConnectionTests : IntegrationTestBase
|
|
{
|
|
[Fact]
|
|
public async Task ConnectAndDisconnect_Succeeds()
|
|
{
|
|
// Client is connected in InitializeAsync
|
|
Assert.True(await Client!.IsConnectedAsync());
|
|
await Client.DisconnectAsync();
|
|
Assert.False(await Client.IsConnectedAsync());
|
|
}
|
|
|
|
[Fact]
|
|
public async Task ConnectWithInvalidApiKey_Fails()
|
|
{
|
|
using var badClient = CreateClient(InvalidApiKey);
|
|
var ex = await Assert.ThrowsAsync<Grpc.Core.RpcException>(
|
|
() => badClient.ConnectAsync());
|
|
Assert.Equal(Grpc.Core.StatusCode.Unauthenticated, ex.StatusCode);
|
|
}
|
|
|
|
[Fact]
|
|
public async Task DoubleConnect_IsIdempotent()
|
|
{
|
|
await Client!.ConnectAsync(); // Already connected — should be no-op
|
|
Assert.True(await Client.IsConnectedAsync());
|
|
}
|
|
}
|