48 references to TrayIconStatus
Aspire.Tray.Tests (48)
LinuxTrayIconsTests.cs (8)
22
var path = icons.GetPath(Enum.Parse<
TrayIconStatus
>(status));
24
Assert.Equal(path, icons.GetPath(Enum.Parse<
TrayIconStatus
>(status)));
53
icons.GetPath(
TrayIconStatus
.Running), icons.GetPath(
TrayIconStatus
.Attention)));
55
source, icons.GetPath(
TrayIconStatus
.Connecting)));
86
Assert.Equal(source, icons.GetPath(
TrayIconStatus
.Idle));
87
rendered = icons.GetPath(
TrayIconStatus
.Running);
103
var error = Assert.Throws<InvalidOperationException>(() => icons.GetPath(
TrayIconStatus
.Running));
src\Aspire.Tray\Common\TrayIconStatus.cs (17)
22
public static
TrayIconStatus
Get(TrayViewState state) => state.Discovery switch
24
DiscoveryState.Connecting =>
TrayIconStatus
.Connecting,
25
DiscoveryState.Live when !state.HasActiveAppHosts =>
TrayIconStatus
.Idle,
26
DiscoveryState.Live => NeedsAttention(state) ?
TrayIconStatus
.Attention :
TrayIconStatus
.Running,
27
_ =>
TrayIconStatus
.Unavailable
31
public static bool IsDimmed(
TrayIconStatus
status) => status is
TrayIconStatus
.Connecting or
TrayIconStatus
.Unavailable;
34
public static bool HasBadge(
TrayIconStatus
status) => status is
TrayIconStatus
.Running or
TrayIconStatus
.Attention;
36
public static string Describe(
TrayIconStatus
status) => status switch
38
TrayIconStatus
.Running => "AppHosts running",
39
TrayIconStatus
.Attention => "AppHosts need attention",
40
TrayIconStatus
.Idle => "No AppHosts running",
41
TrayIconStatus
.Connecting => "Connecting to discovery",
src\Aspire.Tray\Linux\LinuxTrayApplication.cs (2)
35
private
TrayIconStatus
? _iconStatus;
331
var
status = TrayIconStatusRules.Get(state);
src\Aspire.Tray\Linux\LinuxTrayIcons.cs (5)
11
private readonly Dictionary<
TrayIconStatus
, string> _paths = [];
14
internal string GetPath(
TrayIconStatus
status)
20
if (status ==
TrayIconStatus
.Idle)
31
internal static void Render(string source, string destination,
TrayIconStatus
status)
59
var color = status ==
TrayIconStatus
.Running ? 0x269653 : 0xE58A00;
TrayIconStatusTests.cs (16)
13
Assert.Equal(
TrayIconStatus
.Idle, TrayIconStatusRules.Get(TrayPanelSamples.Empty()));
14
Assert.False(TrayIconStatusRules.HasBadge(
TrayIconStatus
.Idle));
15
Assert.False(TrayIconStatusRules.IsDimmed(
TrayIconStatus
.Idle));
24
Assert.Equal(
TrayIconStatus
.Running, TrayIconStatusRules.Get(state));
25
Assert.True(TrayIconStatusRules.HasBadge(
TrayIconStatus
.Running));
35
Assert.Equal(
TrayIconStatus
.Attention, TrayIconStatusRules.Get(state));
46
Assert.Equal(
TrayIconStatus
.Attention, TrayIconStatusRules.Get(failedStop));
47
Assert.Equal(
TrayIconStatus
.Attention, TrayIconStatusRules.Get(notice));
48
Assert.Equal(
TrayIconStatus
.Idle, TrayIconStatusRules.Get(noticeWhileIdle));
56
Assert.Equal(
TrayIconStatus
.Running, TrayIconStatusRules.Get(state));
60
[InlineData((int)DiscoveryState.Connecting, (int)
TrayIconStatus
.Connecting)]
61
[InlineData((int)DiscoveryState.Disconnected, (int)
TrayIconStatus
.Unavailable)]
62
[InlineData((int)DiscoveryState.Incompatible, (int)
TrayIconStatus
.Unavailable)]
63
[InlineData((int)DiscoveryState.LimitExceeded, (int)
TrayIconStatus
.Unavailable)]
67
var
status = TrayIconStatusRules.Get(state);
69
Assert.Equal((
TrayIconStatus
)expected, status);