feat(adminui): add connection-health signal to in-process broadcaster + bridges
This commit is contained in:
@@ -48,4 +48,52 @@ public sealed class InProcessBroadcasterTests
|
||||
var broadcaster = new InProcessBroadcaster<int>();
|
||||
Should.NotThrow(() => broadcaster.Publish(42));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void New_broadcaster_is_not_connected()
|
||||
{
|
||||
var broadcaster = new InProcessBroadcaster<string>();
|
||||
|
||||
broadcaster.IsConnected.ShouldBeFalse();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void SetConnected_true_flips_state_and_raises_once()
|
||||
{
|
||||
var broadcaster = new InProcessBroadcaster<string>();
|
||||
var raised = new List<bool>();
|
||||
broadcaster.ConnectionStateChanged += raised.Add;
|
||||
|
||||
broadcaster.SetConnected(true);
|
||||
|
||||
broadcaster.IsConnected.ShouldBeTrue();
|
||||
raised.ShouldBe([true]);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void SetConnected_same_value_does_not_raise()
|
||||
{
|
||||
var broadcaster = new InProcessBroadcaster<string>();
|
||||
var raised = new List<bool>();
|
||||
broadcaster.ConnectionStateChanged += raised.Add;
|
||||
|
||||
broadcaster.SetConnected(true);
|
||||
broadcaster.SetConnected(true);
|
||||
|
||||
raised.ShouldBe([true]);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void SetConnected_false_after_true_raises_false()
|
||||
{
|
||||
var broadcaster = new InProcessBroadcaster<string>();
|
||||
var raised = new List<bool>();
|
||||
broadcaster.ConnectionStateChanged += raised.Add;
|
||||
|
||||
broadcaster.SetConnected(true);
|
||||
broadcaster.SetConnected(false);
|
||||
|
||||
broadcaster.IsConnected.ShouldBeFalse();
|
||||
raised[^1].ShouldBeFalse();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user