237 references to Snapshot
Aspire.Hosting (51)
ApplicationModel\ResourceNotificationService.cs (16)
130
re => re.
Snapshot
.State?.Text is { Length: > 0 } stateText && targetStates.Contains(stateText, StringComparers.ResourceState),
134
var finalState = resourceEvent.
Snapshot
.State!.Text!;
150
re => re.ResourceId == resourceId && re.
Snapshot
.HealthStatus == HealthStatus.Healthy,
159
re => re.ResourceId == resourceId && re.
Snapshot
.ResourceReadyEvent is not null,
164
await resourceEvent.
Snapshot
.ResourceReadyEvent!.EventTask.WaitAsync(cancellationToken).ConfigureAwait(false);
227
re => ShouldYield(waitBehavior, re.
Snapshot
),
231
if (resourceEvent.
Snapshot
.HealthStatus != HealthStatus.Healthy)
241
re => re.ResourceId == resourceEvent.ResourceId && re.
Snapshot
.ResourceReadyEvent is not null,
246
await resourceEvent.
Snapshot
.ResourceReadyEvent!.EventTask.WaitAsync(cancellationToken).ConfigureAwait(false);
288
re => re.ResourceId == resourceId && IsKnownTerminalState(re.
Snapshot
),
291
var snapshot = resourceEvent.
Snapshot
;
347
re => re.ResourceId == resourceId && IsContinuableState(waitBehavior, re.
Snapshot
),
350
var snapshot = resourceEvent.
Snapshot
;
591
if (versionsSeen.TryGetValue(item.ResourceId, out var maxVersionSeen) && item.
Snapshot
.Version <= maxVersionSeen)
884
if (TryGetCurrentState(resourceName, out var evt) && evt.
Snapshot
!= null)
886
var snapshot = evt.
Snapshot
;
Ats\NotificationExports.cs (4)
141
State = resourceEvent.
Snapshot
.State?.Text,
142
StateStyle = resourceEvent.
Snapshot
.State?.Style,
143
HealthStatus = resourceEvent.
Snapshot
.HealthStatus?.ToString(),
144
ExitCode = resourceEvent.
Snapshot
.ExitCode
Backchannel\AppHostRpcTarget.cs (4)
118
var healthStatus = CustomResourceSnapshot.ComputeHealthStatus(resourceEvent.
Snapshot
.HealthReports, resourceEvent.
Snapshot
.State?.Text);
123
Type = resourceEvent.
Snapshot
.ResourceType,
124
State = resourceEvent.
Snapshot
.State?.Text ?? "Unknown",
Backchannel\AuxiliaryBackchannelRpcTarget.cs (12)
280
State = resourceEvent.
Snapshot
.State?.Text,
281
HealthStatus = resourceEvent.
Snapshot
.HealthStatus?.ToString()
289
re => re.
Snapshot
.State?.Text == KnownResourceStates.Running || KnownResourceStates.TerminalStates.Contains(re.
Snapshot
.State?.Text) || re.
Snapshot
.ExitCode is not null,
292
var state = resourceEvent.
Snapshot
.State?.Text;
299
HealthStatus = resourceEvent.
Snapshot
.HealthStatus?.ToString(),
308
re => KnownResourceStates.TerminalStates.Contains(re.
Snapshot
.State?.Text) || re.
Snapshot
.ExitCode is not null,
314
State = resourceEvent.
Snapshot
.State?.Text,
315
HealthStatus = resourceEvent.
Snapshot
.HealthStatus?.ToString()
507
var snapshot = resourceEvent.
Snapshot
;
Dashboard\DashboardServiceData.cs (1)
72
var snapshot = CreateResourceSnapshot(@event.Resource, @event.ResourceId, timestamp, @event.
Snapshot
);
Devcontainers\Codespaces\CodespacesResourceUrlRewriterService.cs (2)
32
foreach (var originalUrlSnapshot in resourceEvent.
Snapshot
.Urls)
57
var transformedUrls = from originalUrl in resourceEvent.
Snapshot
.Urls
DistributedApplication.cs (1)
617
results.Add(new() { Resource = resource, Snapshot = resourceEvent?.
Snapshot
});
Exec\ExecResourceManager.cs (2)
133
if ((exitCode = resourceEvent?.
Snapshot
?.ExitCode) is not null)
144
if (resourceEvent?.
Snapshot
.State == KnownResourceStates.FailedToStart)
Health\ResourceHealthCheckService.cs (7)
42
if (resourceEvent.
Snapshot
.State?.Text == KnownResourceStates.Running)
73
else if (KnownResourceStates.TerminalStates.Contains(resourceEvent.
Snapshot
.State?.Text))
179
if (ContainsAnyHealthReportChange(report, currentEvent.
Snapshot
.HealthReports))
381
if (currentEvent.
Snapshot
.Version <= previousEvent.
Snapshot
.Version)
385
if (currentEvent.
Snapshot
.State?.Text == previousEvent.
Snapshot
.State?.Text)
Orchestrator\ApplicationOrchestrator.cs (2)
108
e => e.
Snapshot
.State?.Text != KnownResourceStates.Waiting,
497
previousState = previousResourceEvent.
Snapshot
.State?.Text;
Aspire.Hosting.Azure.Tests (1)
AzureBicepProvisionerTests.cs (1)
73
var parentProperty = resourceEvent.
Snapshot
.Properties.FirstOrDefault(x => x.Name == KnownProperties.Resource.ParentName)?.Value?.ToString();
Aspire.Hosting.Containers.Tests (2)
DockerSocketBindMountTests.cs (2)
42
e => KnownResourceStates.TerminalStates.Contains(e.
Snapshot
.State?.Text),
45
Assert.Equal(KnownResourceStates.Exited, state.
Snapshot
.State);
Aspire.Hosting.DotnetTool.Tests (2)
DotnetToolFunctionalTests.cs.cs (2)
29
Assert.Equal(resourceState.
Snapshot
.ExitCode, 0);
51
Assert.NotEqual(resourceState.
Snapshot
.ExitCode, 0);
Aspire.Hosting.MySql.Tests (2)
MySqlFunctionalTests.cs (2)
605
return evt.
Snapshot
.Properties.FirstOrDefault(x => x.Name == "container.id")?.Value != null;
608
return resourceEvent.
Snapshot
.Properties.FirstOrDefault(x => x.Name == "container.id")?.Value?.ToString();
Aspire.Hosting.PostgreSQL.Tests (2)
PostgresFunctionalTests.cs (2)
582
return evt.
Snapshot
.Properties.FirstOrDefault(x => x.Name == "container.id")?.Value != null;
585
return resourceEvent.
Snapshot
.Properties.FirstOrDefault(x => x.Name == "container.id")?.Value?.ToString();
Aspire.Hosting.Qdrant.Tests (1)
QdrantFunctionalTests.cs (1)
282
await app.ResourceNotifications.WaitForResourceAsync(resource.Resource.Name, (re => re.
Snapshot
.HealthStatus == HealthStatus.Healthy), cts.Token);
Aspire.Hosting.Tests (172)
Codespaces\CodespacesUrlRewriterTests.cs (3)
83
var match = re.
Snapshot
.Urls.Length > 0 && re.
Snapshot
.Urls[0].Url.Contains("app.github.dev");
89
resourceEvent.
Snapshot
.Urls,
DistributedApplicationTests.cs (46)
145
var resourceEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.Waiting, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
149
await rns.WaitForResourceAsync(dependentResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.Running, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
153
await rns.WaitForResourceAsync(dependentResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.Finished, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
157
await rns.WaitForResourceAsync(dependentResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.Waiting, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
161
await rns.WaitForResourceAsync(dependentResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.Running, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
191
var notStartedResourceEvent = await rns.WaitForResourceAsync(notStartedResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.NotStarted, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
192
var dependentResourceEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.Waiting, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
195
Assert.Contains("TestProject.ServiceA.csproj", notStartedResourceEvent.
Snapshot
.Properties.Single(p => p.Name == "project.path").Value?.ToString());
196
Assert.Contains("TestProject.ServiceB.csproj", dependentResourceEvent.
Snapshot
.Properties.Single(p => p.Name == "project.path").Value?.ToString());
198
Assert.Collection(notStartedResourceEvent.
Snapshot
.Urls, u =>
204
Assert.Collection(dependentResourceEvent.
Snapshot
.Urls, u =>
213
var runningResourceEvent = await rns.WaitForResourceAsync(notStartedResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.Running, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
214
Assert.Collection(runningResourceEvent.
Snapshot
.Urls, u =>
221
var dependentResourceRunningEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.Running, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
222
Assert.Collection(dependentResourceRunningEvent.
Snapshot
.Urls, u =>
230
await rns.WaitForResourceAsync(notStartedResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.Finished, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
234
await rns.WaitForResourceAsync(notStartedResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.Running, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
285
await rns.WaitForResourceAsync(normalResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.Running, token).DefaultTimeout(TestConstants.DefaultOrchestratorTestTimeout);
288
await rns.WaitForResourceAsync(explicitStartResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.NotStarted, token).DefaultTimeout(TestConstants.DefaultOrchestratorTestTimeout);
328
var notStartedResourceEvent = await rns.WaitForResourceAsync(explicitStartResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.NotStarted, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
337
await rns.WaitForResourceAsync(explicitStartResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.Running, token).DefaultTimeout(TestConstants.DefaultOrchestratorTestTimeout);
400
var notStartedResourceEvent = await rns.WaitForResourceAsync(notStartedResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.NotStarted, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
401
var dependentResourceEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.Waiting, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
403
Assert.Collection(notStartedResourceEvent.
Snapshot
.Urls, u =>
408
Assert.Collection(dependentResourceEvent.
Snapshot
.Urls, u =>
416
Assert.Equal(RedisImageSource, notStartedResourceEvent.
Snapshot
.Properties.Single(p => p.Name == "container.image").Value?.ToString());
417
Assert.Contains("TestProject.ServiceB.csproj", dependentResourceEvent.
Snapshot
.Properties.Single(p => p.Name == "project.path").Value?.ToString());
421
var runningResourceEvent = await rns.WaitForResourceAsync(notStartedResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.Running, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
422
Assert.Collection(runningResourceEvent.
Snapshot
.Urls, u =>
428
var dependentRunningResourceEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.Running, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
429
Assert.Collection(dependentRunningResourceEvent.
Snapshot
.Urls, u =>
437
await rns.WaitForResourceAsync(notStartedResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.Exited, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
441
await rns.WaitForResourceAsync(notStartedResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.Running, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
483
notStartedResourceEvent = await rns.WaitForResourceAsync(notStartedResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.NotStarted, token).DefaultTimeout(TestConstants.ExtraLongTimeoutTimeSpan);
484
dependentResourceEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.Waiting, token).DefaultTimeout(TestConstants.ExtraLongTimeoutTimeSpan);
486
Assert.Collection(notStartedResourceEvent.
Snapshot
.Urls, u =>
491
Assert.Collection(dependentResourceEvent.
Snapshot
.Urls, u =>
499
Assert.Equal(RedisImageSource, notStartedResourceEvent.
Snapshot
.Properties.Single(p => p.Name == "container.image").Value?.ToString());
500
Assert.Contains("TestProject.ServiceB.csproj", dependentResourceEvent.
Snapshot
.Properties.Single(p => p.Name == "project.path").Value?.ToString());
506
var runningResourceEvent = await rns.WaitForResourceAsync(notStartedResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.Running, token).DefaultTimeout(TestConstants.ExtraLongTimeoutTimeSpan);
507
Assert.Collection(runningResourceEvent.
Snapshot
.Urls, u =>
513
var dependentRunningResourceEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.Running, token).DefaultTimeout(TestConstants.ExtraLongTimeoutTimeSpan);
514
Assert.Collection(dependentRunningResourceEvent.
Snapshot
.Urls, u =>
522
await rns.WaitForResourceAsync(notStartedResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.Exited, token).DefaultTimeout(TestConstants.ExtraLongTimeoutTimeSpan);
529
await rns.WaitForResourceAsync(notStartedResourceName, e => e.
Snapshot
.State?.Text == KnownResourceStates.Running, token).DefaultTimeout(TestConstants.ExtraLongTimeoutTimeSpan);
962
var dependentRunningResourceEvent = await rns.WaitForResourceAsync(container.Resource.Name, e => e.
Snapshot
.State?.Text == KnownResourceStates.Running).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
ExternalServiceTests.cs (6)
323
e => e.
Snapshot
.State?.Text == KnownResourceStates.FailedToStart
327
Assert.Equal(KnownResourceStates.FailedToStart, resourceEvent.
Snapshot
.State?.Text);
350
e => e.
Snapshot
.State?.Text == KnownResourceStates.FailedToStart
354
Assert.Equal(KnownResourceStates.FailedToStart, resourceEvent.
Snapshot
.State?.Text);
377
e => e.
Snapshot
.State?.Text == KnownResourceStates.Running
381
Assert.Equal(KnownResourceStates.Running, resourceEvent.
Snapshot
.State?.Text);
Health\ResourceHealthCheckServiceTests.cs (24)
38
var startingEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.
Snapshot
.State?.Text == KnownResourceStates.Starting).DefaultTimeout();
39
Assert.Null(startingEvent.
Snapshot
.HealthStatus);
47
Assert.Equal(HealthStatus.Healthy, healthyEvent.
Snapshot
.HealthStatus);
78
var startingEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.
Snapshot
.State?.Text == KnownResourceStates.Starting).DefaultTimeout();
79
Assert.Null(startingEvent.
Snapshot
.HealthStatus);
86
var runningEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.
Snapshot
.State?.Text == KnownResourceStates.Running).DefaultTimeout();
88
Assert.Equal(HealthStatus.Unhealthy, runningEvent.
Snapshot
.HealthStatus);
121
var startingEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.
Snapshot
.State?.Text == KnownResourceStates.Starting).DefaultTimeout();
122
Assert.Null(startingEvent.
Snapshot
.HealthStatus);
130
e => e.
Snapshot
.State?.Text == KnownResourceStates.Running && e.
Snapshot
.HealthReports.Single().Status == HealthStatus.Unhealthy).DefaultTimeout();
132
Assert.Equal(HealthStatus.Unhealthy, runningEvent.
Snapshot
.HealthStatus);
133
Assert.Equal("Error calling HealthCheckService.", runningEvent.
Snapshot
.HealthReports.Single().Description);
587
var startingEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.
Snapshot
.State?.Text == KnownResourceStates.Starting).DefaultTimeout();
588
Assert.Null(startingEvent.
Snapshot
.HealthStatus);
596
var runningEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.
Snapshot
.State?.Text == KnownResourceStates.Running).DefaultTimeout();
597
Assert.Equal(HealthStatus.Unhealthy, runningEvent.
Snapshot
.HealthStatus);
604
Assert.Equal(HealthStatus.Healthy, healthyEvent.
Snapshot
.HealthStatus);
633
var startingEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.
Snapshot
.State?.Text == KnownResourceStates.Starting).DefaultTimeout();
634
Assert.Null(startingEvent.
Snapshot
.HealthStatus);
641
var runningEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.
Snapshot
.State?.Text == KnownResourceStates.Running).DefaultTimeout();
643
Assert.Equal(HealthStatus.Unhealthy, runningEvent.
Snapshot
.HealthStatus);
649
var unhealthyEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.
Snapshot
.HealthStatus == HealthStatus.Unhealthy).DefaultTimeout();
650
Assert.Equal(HealthStatus.Unhealthy, unhealthyEvent.
Snapshot
.HealthStatus);
Orchestrator\ApplicationOrchestratorTests.cs (19)
58
childParentResourceId = item.
Snapshot
.Properties.SingleOrDefault(p => p.Name == KnownProperties.Resource.ParentName)?.Value?.ToString();
106
childParentResourceId = item.
Snapshot
.Properties.SingleOrDefault(p => p.Name == KnownProperties.Resource.ParentName)?.Value?.ToString();
207
childParentResourceId = item.
Snapshot
.Properties.SingleOrDefault(p => p.Name == KnownProperties.Resource.ParentName)?.Value?.ToString();
211
nestedChildParentResourceId = item.
Snapshot
.Properties.SingleOrDefault(p => p.Name == KnownProperties.Resource.ParentName)?.Value?.ToString();
215
child2ParentResourceId = item.
Snapshot
.Properties.SingleOrDefault(p => p.Name == KnownProperties.Resource.ParentName)?.Value?.ToString();
276
childParentResourceId = item.
Snapshot
.Properties.SingleOrDefault(p => p.Name == KnownProperties.Resource.ParentName)?.Value?.ToString();
324
projectBParentResourceId = item.
Snapshot
.Properties.SingleOrDefault(p => p.Name == KnownProperties.Resource.ParentName)?.Value?.ToString();
437
var connectionStringProp = item.
Snapshot
.Properties.SingleOrDefault(p => p.Name == KnownProperties.Resource.ConnectionString);
631
var parentState = resourceNotificationService.TryGetCurrentState("parent-container-dcp", out var parentEvent) ? parentEvent.
Snapshot
.State?.Text : null;
632
var childContainerState = resourceNotificationService.TryGetCurrentState(childContainer.Resource.Name, out var childContainerEvent) ? childContainerEvent.
Snapshot
.State?.Text : null;
633
var customChildState = resourceNotificationService.TryGetCurrentState(customChild.Resource.Name, out var customChildEvent) ? customChildEvent.
Snapshot
.State?.Text : null;
678
var parentState = resourceNotificationService.TryGetCurrentState("parent-container-dcp", out var parentEvent) ? parentEvent.
Snapshot
.State?.Text : null;
679
var childProjectState = resourceNotificationService.TryGetCurrentState(childProject.Resource.Name, out var childProjectEvent) ? childProjectEvent.
Snapshot
.State?.Text : null;
680
var customChildState = resourceNotificationService.TryGetCurrentState(customChild.Resource.Name, out var customChildEvent) ? customChildEvent.
Snapshot
.State?.Text : null;
727
childParentResourceId = item.
Snapshot
.Properties.SingleOrDefault(p => p.Name == KnownProperties.Resource.ParentName)?.Value?.ToString();
731
child2ParentResourceId = item.
Snapshot
.Properties.SingleOrDefault(p => p.Name == KnownProperties.Resource.ParentName)?.Value?.ToString();
784
childParentResourceId = item.
Snapshot
.Properties.SingleOrDefault(p => p.Name == KnownProperties.Resource.ParentName)?.Value?.ToString();
788
child2ParentResourceId = item.
Snapshot
.Properties.SingleOrDefault(p => p.Name == KnownProperties.Resource.ParentName)?.Value?.ToString();
838
childProjectParentResourceId = item.
Snapshot
.Properties.SingleOrDefault(p => p.Name == KnownProperties.Resource.ParentName)?.Value?.ToString();
Orchestrator\ParameterProcessorTests.cs (8)
89
updates.Add((resourceEvent.Resource, resourceEvent.
Snapshot
));
261
Assert.Equal(KnownResourceStates.Running, updates.Current.
Snapshot
.State?.Text);
262
Assert.Equal("value1", updates.Current.
Snapshot
.Properties.FirstOrDefault(p => p.Name == KnownProperties.Parameter.Value)?.Value);
265
Assert.Equal(KnownResourceStates.Running, updates.Current.
Snapshot
.State?.Text);
266
Assert.Equal("value2", updates.Current.
Snapshot
.Properties.FirstOrDefault(p => p.Name == KnownProperties.Parameter.Value)?.Value);
269
Assert.Equal(KnownResourceStates.Running, updates.Current.
Snapshot
.State?.Text);
270
Assert.Equal("secretValue", updates.Current.
Snapshot
.Properties.FirstOrDefault(p => p.Name == KnownProperties.Parameter.Value)?.Value);
271
Assert.True(updates.Current.
Snapshot
.Properties.FirstOrDefault(p => p.Name == KnownProperties.Parameter.Value)?.IsSensitive ?? false);
ResourceNotificationTests.cs (28)
85
Assert.Equal(expectedResourceType, resourceEvent.
Snapshot
.ResourceType);
126
Assert.Equal("CustomResource", c.
Snapshot
.ResourceType);
127
Assert.Equal("value", c.
Snapshot
.Properties.Single(p => p.Name == "A").Value);
128
Assert.Null(c.
Snapshot
.HealthStatus);
134
Assert.Equal("CustomResource", c.
Snapshot
.ResourceType);
135
Assert.Equal("value", c.
Snapshot
.Properties.Single(p => p.Name == "B").Value);
136
Assert.Null(c.
Snapshot
.HealthStatus);
181
Assert.Equal("CustomResource", c.
Snapshot
.ResourceType);
182
Assert.Equal("value", c.
Snapshot
.Properties.Single(p => p.Name == "A").Value);
188
Assert.Equal("CustomResource", c.
Snapshot
.ResourceType);
189
Assert.Equal("value", c.
Snapshot
.Properties.Single(p => p.Name == "B").Value);
195
Assert.Equal("CustomResource", c.
Snapshot
.ResourceType);
196
Assert.Equal("value", c.
Snapshot
.Properties.Single(p => p.Name == "C").Value);
529
Assert.Equal("ExistingIcon", firstEvent.
Snapshot
.IconName);
530
Assert.Equal(IconVariant.Filled, firstEvent.
Snapshot
.IconVariant);
534
Assert.Equal("ExistingIcon", secondEvent.
Snapshot
.IconName);
535
Assert.Equal(IconVariant.Filled, secondEvent.
Snapshot
.IconVariant);
536
Assert.Equal("Running", secondEvent.
Snapshot
.State?.Text);
571
Assert.Equal("LastIcon", value.
Snapshot
.IconName);
572
Assert.Equal(IconVariant.Regular, value.
Snapshot
.IconVariant);
573
Assert.Equal("Starting", value.
Snapshot
.State?.Text);
607
Assert.Equal("AnnotationIcon", value.
Snapshot
.IconName);
608
Assert.Equal(IconVariant.Regular, value.
Snapshot
.IconVariant);
609
Assert.Equal("Starting", value.
Snapshot
.State?.Text);
648
Assert.Equal(Microsoft.Extensions.Diagnostics.HealthChecks.HealthStatus.Healthy, resourceEvent.
Snapshot
.HealthStatus);
649
Assert.NotNull(resourceEvent.
Snapshot
.ResourceReadyEvent);
650
Assert.True(resourceEvent.
Snapshot
.ResourceReadyEvent.EventTask.IsCompletedSuccessfully);
716
Assert.Equal(Microsoft.Extensions.Diagnostics.HealthChecks.HealthStatus.Healthy, resourceEvent.
Snapshot
.HealthStatus);
WithHttpCommandTests.cs (12)
426
e => e.
Snapshot
.State?.Text == KnownResourceStates.Starting).DefaultTimeout();
428
Assert.Equal(ResourceCommandState.Disabled, startingEvent.
Snapshot
.Commands.First(c => c.Name == "mycommand").State);
439
e => e.
Snapshot
.State?.Text == KnownResourceStates.Running &&
440
e.
Snapshot
.Commands.First(c => c.Name == "mycommand").State == ResourceCommandState.Enabled).DefaultTimeout();
442
Assert.Equal(ResourceCommandState.Enabled, runningEvent.
Snapshot
.Commands.First(c => c.Name == "mycommand").State);
482
e => e.
Snapshot
.State?.Text == KnownResourceStates.Running &&
483
e.
Snapshot
.Commands.First(c => c.Name == "mycommand").State == ResourceCommandState.Hidden).DefaultTimeout();
485
Assert.Equal(ResourceCommandState.Hidden, runningEvent.
Snapshot
.Commands.First(c => c.Name == "mycommand").State);
497
e => e.
Snapshot
.Commands.First(c => c.Name == "mycommand").State == ResourceCommandState.Enabled).DefaultTimeout();
500
Assert.Equal(ResourceCommandState.Enabled, enabledEvent.
Snapshot
.Commands.First(c => c.Name == "mycommand").State);
538
e => e.
Snapshot
.State?.Text == KnownResourceStates.Running &&
539
e.
Snapshot
.Commands.FirstOrDefault(c => c.Name == commandName)?.State == ResourceCommandState.Enabled).DefaultTimeout();
WithUrlsTests.cs (26)
388
e => e.
Snapshot
.Urls.Length > 0,
393
Assert.Single(resourceEvent.
Snapshot
.Urls, s => s.Name == httpEndpoint.EndpointName && s.IsInactive && s.Url == "https://example.com");
415
e => e.
Snapshot
.Urls.Length > 0,
420
Assert.Collection(resourceEvent.
Snapshot
.Urls,
448
e => e.
Snapshot
.State == KnownResourceStates.Running,
453
Assert.Equal(2, resourceEvent.
Snapshot
.Urls.Length);
454
Assert.Collection(resourceEvent.
Snapshot
.Urls,
482
if (notification.Resource == servicea.Resource && notification.
Snapshot
.Urls.Length > 0)
484
urlSnapshots.Add(notification.
Snapshot
.Urls.ToArray());
485
testOutputHelper.WriteLine($"Captured snapshot #{urlSnapshots.Count}: State={notification.
Snapshot
.State}, URLs: {FormatUrls(notification.
Snapshot
.Urls)}");
488
if (notification.
Snapshot
.State == KnownResourceStates.Running &&
489
notification.
Snapshot
.Urls.All(u => !u.IsInactive))
600
if (notification.Resource == custom.Resource && notification.
Snapshot
.Urls.Length > 0)
602
urlSnapshots.Add(notification.
Snapshot
.Urls.ToArray());
603
testOutputHelper.WriteLine($"Captured snapshot #{urlSnapshots.Count}: State={notification.
Snapshot
.State}, URLs: {FormatUrls(notification.
Snapshot
.Urls)}");
606
if (notification.
Snapshot
.State == KnownResourceStates.Running &&
607
notification.
Snapshot
.Urls.All(u => !u.IsInactive))
678
e => e.
Snapshot
.State == KnownResourceStates.Running && e.
Snapshot
.Urls.Length > 1,
683
Assert.Collection(resourceEvent.
Snapshot
.Urls,
980
e => e.
Snapshot
.State == KnownResourceStates.Running
981
&& e.
Snapshot
.Urls.Length == resourceB.Resource.GetEndpoints().ToArray().Length + 1
982
&& e.
Snapshot
.Urls.All(u => !u.IsInactive),
988
var crossResourceUrl = resourceEvent.
Snapshot
.Urls.FirstOrDefault(u => u.DisplayProperties.DisplayName == "API Docs");
Aspire.Playground.Tests (2)
Infrastructure\DistributedApplicationExtensions.cs (2)
107
return Task.WhenAll(applicationModel.Resources.Select(r => app.ResourceNotifications.WaitForResourceAsync(r.Name, r => targetStates?.Contains(r.
Snapshot
.State?.Text, StringComparer.OrdinalIgnoreCase) is true || r.
Snapshot
.IsHidden, cancellationToken)));
Testing.Tests (2)
WaitFailures.cs (2)
156
await app.ResourceNotifications.WaitForResourceAsync(nginx.Resource.Name, x => x.
Snapshot
.HealthReports.All(x => x.Status.HasValue), cts.Token);
176
await app.ResourceNotifications.WaitForResourceAsync(nginx.Resource.Name, x => x.
Snapshot
.HealthStatus == HealthStatus.Healthy, cts.Token);