Skip to content

Commit 5029999

Browse files
CaitieM20Copilotradical
authored
Caitie/update test templates (#10662)
* updating test templates to dispose of resources correctly * comment out code * making sure comment lines weren't unnecessarily changed * Update src/Aspire.ProjectTemplates/templates/aspire-xunit/9.4/IntegrationTest1.cs Co-authored-by: Copilot <[email protected]> * integrating feedback * Add missing tests for 9.4 * cleanup --------- Co-authored-by: Copilot <[email protected]> Co-authored-by: Ankit Jain <[email protected]>
1 parent cabc7ec commit 5029999

File tree

7 files changed

+50
-51
lines changed

7 files changed

+50
-51
lines changed

src/Aspire.ProjectTemplates/templates/aspire-mstest/9.4/IntegrationTest1.cs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ namespace Aspire.Tests._1;
55
[TestClass]
66
public class IntegrationTest1
77
{
8+
public TestContext TestContext { get; set; }
9+
810
private static readonly TimeSpan DefaultTimeout = TimeSpan.FromSeconds(30);
911

1012
// Instructions:
@@ -20,7 +22,7 @@ public class IntegrationTest1
2022
// public async Task GetWebResourceRootReturnsOkStatusCode()
2123
// {
2224
// // Arrange
23-
// var cancellationToken = new CancellationTokenSource(DefaultTimeout).Token;
25+
// var cancellationToken = TestContext.CancellationTokenSource.Token;
2426
// var appHost = await DistributedApplicationTestingBuilder.CreateAsync<Projects.MyAspireApp_AppHost>();
2527
// appHost.Services.AddLogging(logging =>
2628
// {
@@ -38,9 +40,9 @@ public class IntegrationTest1
3840
// await app.StartAsync(cancellationToken).WaitAsync(DefaultTimeout, cancellationToken);
3941
//
4042
// // Act
41-
// var httpClient = app.CreateHttpClient("webfrontend");
43+
// using var httpClient = app.CreateHttpClient("webfrontend");
4244
// await app.ResourceNotifications.WaitForResourceHealthyAsync("webfrontend", cancellationToken).WaitAsync(DefaultTimeout, cancellationToken);
43-
// var response = await httpClient.GetAsync("/", cancellationToken);
45+
// using var response = await httpClient.GetAsync("/", cancellationToken);
4446
//
4547
// // Assert
4648
// Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);

src/Aspire.ProjectTemplates/templates/aspire-mstest/9.5/IntegrationTest1.cs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ namespace Aspire.Tests._1;
55
[TestClass]
66
public class IntegrationTest1
77
{
8+
public TestContext TestContext { get; set; }
89
private static readonly TimeSpan DefaultTimeout = TimeSpan.FromSeconds(30);
910

1011
// Instructions:
@@ -20,7 +21,7 @@ public class IntegrationTest1
2021
// public async Task GetWebResourceRootReturnsOkStatusCode()
2122
// {
2223
// // Arrange
23-
// var cancellationToken = new CancellationTokenSource(DefaultTimeout).Token;
24+
// var cancellationToken = TestContext.CancellationTokenSource.Token;
2425
// var appHost = await DistributedApplicationTestingBuilder.CreateAsync<Projects.MyAspireApp_AppHost>();
2526
// appHost.Services.AddLogging(logging =>
2627
// {
@@ -38,9 +39,9 @@ public class IntegrationTest1
3839
// await app.StartAsync(cancellationToken).WaitAsync(DefaultTimeout, cancellationToken);
3940
//
4041
// // Act
41-
// var httpClient = app.CreateHttpClient("webfrontend");
42+
// using var httpClient = app.CreateHttpClient("webfrontend");
4243
// await app.ResourceNotifications.WaitForResourceHealthyAsync("webfrontend", cancellationToken).WaitAsync(DefaultTimeout, cancellationToken);
43-
// var response = await httpClient.GetAsync("/", cancellationToken);
44+
// using var response = await httpClient.GetAsync("/", cancellationToken);
4445
//
4546
// // Assert
4647
// Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);

src/Aspire.ProjectTemplates/templates/aspire-nunit/9.4/IntegrationTest1.cs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@ public class IntegrationTest1
1919
// public async Task GetWebResourceRootReturnsOkStatusCode()
2020
// {
2121
// // Arrange
22-
// var cancellationToken = TestContext.CurrentContext.CancellationToken;
22+
// using var cts = new CancellationTokenSource(DefaultTimeout);
23+
// var cancellationToken = cts.Token;
2324
// var appHost = await DistributedApplicationTestingBuilder.CreateAsync<Projects.MyAspireApp_AppHost>();
2425
// appHost.Services.AddLogging(logging =>
2526
// {
@@ -37,9 +38,9 @@ public class IntegrationTest1
3738
// await app.StartAsync(cancellationToken).WaitAsync(DefaultTimeout, cancellationToken);
3839
//
3940
// // Act
40-
// var httpClient = app.CreateHttpClient("webfrontend");
41+
// using var httpClient = app.CreateHttpClient("webfrontend");
4142
// await app.ResourceNotifications.WaitForResourceHealthyAsync("webfrontend", cancellationToken).WaitAsync(DefaultTimeout, cancellationToken);
42-
// var response = await httpClient.GetAsync("/", cancellationToken);
43+
// using var response = await httpClient.GetAsync("/", cancellationToken);
4344
//
4445
// // Assert
4546
// Assert.That(response.StatusCode, Is.EqualTo(HttpStatusCode.OK));

src/Aspire.ProjectTemplates/templates/aspire-nunit/9.5/IntegrationTest1.cs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@ public class IntegrationTest1
1919
// public async Task GetWebResourceRootReturnsOkStatusCode()
2020
// {
2121
// // Arrange
22-
// var cancellationToken = TestContext.CurrentContext.CancellationToken;
22+
// using var cts = new CancellationTokenSource(DefaultTimeout);
23+
// var cancellationToken = cts.Token;
2324
// var appHost = await DistributedApplicationTestingBuilder.CreateAsync<Projects.MyAspireApp_AppHost>();
2425
// appHost.Services.AddLogging(logging =>
2526
// {
@@ -37,9 +38,9 @@ public class IntegrationTest1
3738
// await app.StartAsync(cancellationToken).WaitAsync(DefaultTimeout, cancellationToken);
3839
//
3940
// // Act
40-
// var httpClient = app.CreateHttpClient("webfrontend");
41+
// using var httpClient = app.CreateHttpClient("webfrontend");
4142
// await app.ResourceNotifications.WaitForResourceHealthyAsync("webfrontend", cancellationToken).WaitAsync(DefaultTimeout, cancellationToken);
42-
// var response = await httpClient.GetAsync("/", cancellationToken);
43+
// using var response = await httpClient.GetAsync("/", cancellationToken);
4344
//
4445
// // Assert
4546
// Assert.That(response.StatusCode, Is.EqualTo(HttpStatusCode.OK));

src/Aspire.ProjectTemplates/templates/aspire-xunit/9.4/IntegrationTest1.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ public class IntegrationTest1
2020
// {
2121
// // Arrange
2222
#if (XUnitVersion == "v2")
23-
// var cancellationToken = new CancellationTokenSource(DefaultTimeout).Token;
23+
// var cancellationToken = CancellationToken.None;
2424
#else // XunitVersion v3 or v3mtp
2525
// var cancellationToken = TestContext.Current.CancellationToken;
2626
#endif
@@ -42,9 +42,9 @@ public class IntegrationTest1
4242
// await app.StartAsync(cancellationToken).WaitAsync(DefaultTimeout, cancellationToken);
4343
//
4444
// // Act
45-
// var httpClient = app.CreateHttpClient("webfrontend");
45+
// using var httpClient = app.CreateHttpClient("webfrontend");
4646
// await app.ResourceNotifications.WaitForResourceHealthyAsync("webfrontend", cancellationToken).WaitAsync(DefaultTimeout, cancellationToken);
47-
// var response = await httpClient.GetAsync("/", cancellationToken);
47+
// using var response = await httpClient.GetAsync("/", cancellationToken);
4848
//
4949
// // Assert
5050
// Assert.Equal(HttpStatusCode.OK, response.StatusCode);

src/Aspire.ProjectTemplates/templates/aspire-xunit/9.5/IntegrationTest1.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ public class IntegrationTest1
2020
// {
2121
// // Arrange
2222
#if (XUnitVersion == "v2")
23-
// var cancellationToken = new CancellationTokenSource(DefaultTimeout).Token;
23+
// var cancellationToken = CancellationToken.None;
2424
#else // XunitVersion v3 or v3mtp
2525
// var cancellationToken = TestContext.Current.CancellationToken;
2626
#endif
@@ -42,9 +42,9 @@ public class IntegrationTest1
4242
// await app.StartAsync(cancellationToken).WaitAsync(DefaultTimeout, cancellationToken);
4343
//
4444
// // Act
45-
// var httpClient = app.CreateHttpClient("webfrontend");
45+
// using var httpClient = app.CreateHttpClient("webfrontend");
4646
// await app.ResourceNotifications.WaitForResourceHealthyAsync("webfrontend", cancellationToken).WaitAsync(DefaultTimeout, cancellationToken);
47-
// var response = await httpClient.GetAsync("/", cancellationToken);
47+
// using var response = await httpClient.GetAsync("/", cancellationToken);
4848
//
4949
// // Assert
5050
// Assert.Equal(HttpStatusCode.OK, response.StatusCode);

tests/Aspire.Templates.Tests/NewUpAndBuildSupportProjectTemplatesTests.cs

Lines changed: 27 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ namespace Aspire.Templates.Tests;
77

88
public abstract class NewUpAndBuildSupportProjectTemplatesBase(ITestOutputHelper testOutput) : TemplateTestsBase(testOutput)
99
{
10+
public const string AspireVersionNext = "9.5";
11+
1012
[Trait("category", "basic-build")]
1113
protected async Task CanNewAndBuildActual(string templateName, string extraTestCreationArgs, TestSdk sdk, TestTargetFramework tfm, string? error)
1214
{
@@ -61,7 +63,7 @@ protected async Task CanNewAndBuildActual(string templateName, string extraTestC
6163
}
6264
}
6365

64-
public class NUnit_NewUpAndBuildSupportProjectTemplatesTests(ITestOutputHelper testOutput) : NewUpAndBuildSupportProjectTemplatesBase(testOutput)
66+
public class NUnit_AspireVersionCurrent_NewUpAndBuildSupportProjectTemplatesTests(ITestOutputHelper testOutput) : NewUpAndBuildSupportProjectTemplatesBase(testOutput)
6567
{
6668
[Theory]
6769
[MemberData(nameof(TestDataForNewAndBuildTemplateTests), arguments: ["aspire-nunit", ""])]
@@ -71,12 +73,18 @@ public Task CanNewAndBuild(string templateName, string extraTestCreationArgs, Te
7173
}
7274
}
7375

74-
public class XUnit_Default_NewUpAndBuildSupportProjectTemplatesTests : NewUpAndBuildSupportProjectTemplatesBase
76+
public class NUnit_AspireVersionNext_NewUpAndBuildSupportProjectTemplatesTests(ITestOutputHelper testOutput) : NewUpAndBuildSupportProjectTemplatesBase(testOutput)
7577
{
76-
public XUnit_Default_NewUpAndBuildSupportProjectTemplatesTests(ITestOutputHelper testOutput) : base(testOutput)
78+
[Theory]
79+
[MemberData(nameof(TestDataForNewAndBuildTemplateTests), arguments: ["aspire-nunit", $"--aspire-version {AspireVersionNext}"])]
80+
public Task CanNewAndBuild(string templateName, string extraTestCreationArgs, TestSdk sdk, TestTargetFramework tfm, string? error)
7781
{
82+
return CanNewAndBuildActual(templateName, extraTestCreationArgs, sdk, tfm, error);
7883
}
84+
}
7985

86+
public class XUnit_Default_NewUpAndBuildSupportProjectTemplatesTests(ITestOutputHelper testOutput) : NewUpAndBuildSupportProjectTemplatesBase(testOutput)
87+
{
8088
[Theory]
8189
[MemberData(nameof(TestDataForNewAndBuildTemplateTests), arguments: ["aspire-xunit", ""])]
8290
public Task CanNewAndBuild(string templateName, string extraTestCreationArgs, TestSdk sdk, TestTargetFramework tfm, string? error)
@@ -85,12 +93,8 @@ public Task CanNewAndBuild(string templateName, string extraTestCreationArgs, Te
8593
}
8694
}
8795

88-
public class XUnit_V2_NewUpAndBuildSupportProjectTemplatesTests : NewUpAndBuildSupportProjectTemplatesBase
96+
public class XUnit_V2_NewUpAndBuildSupportProjectTemplatesTests(ITestOutputHelper testOutput) : NewUpAndBuildSupportProjectTemplatesBase(testOutput)
8997
{
90-
public XUnit_V2_NewUpAndBuildSupportProjectTemplatesTests(ITestOutputHelper testOutput) : base(testOutput)
91-
{
92-
}
93-
9498
[Theory]
9599
[MemberData(nameof(TestDataForNewAndBuildTemplateTests), arguments: ["aspire-xunit", "--xunit-version v2"])]
96100
public Task CanNewAndBuild(string templateName, string extraTestCreationArgs, TestSdk sdk, TestTargetFramework tfm, string? error)
@@ -99,12 +103,8 @@ public Task CanNewAndBuild(string templateName, string extraTestCreationArgs, Te
99103
}
100104
}
101105

102-
public class XUnit_V3_NewUpAndBuildSupportProjectTemplatesTests : NewUpAndBuildSupportProjectTemplatesBase
106+
public class XUnit_V3_NewUpAndBuildSupportProjectTemplatesTests(ITestOutputHelper testOutput) : NewUpAndBuildSupportProjectTemplatesBase(testOutput)
103107
{
104-
public XUnit_V3_NewUpAndBuildSupportProjectTemplatesTests(ITestOutputHelper testOutput) : base(testOutput)
105-
{
106-
}
107-
108108
[Theory]
109109
[MemberData(nameof(TestDataForNewAndBuildTemplateTests), arguments: ["aspire-xunit", "--xunit-version v3"])]
110110
public Task CanNewAndBuild(string templateName, string extraTestCreationArgs, TestSdk sdk, TestTargetFramework tfm, string? error)
@@ -113,12 +113,8 @@ public Task CanNewAndBuild(string templateName, string extraTestCreationArgs, Te
113113
}
114114
}
115115

116-
public class XUnit_V3MTP_NewUpAndBuildSupportProjectTemplatesTests : NewUpAndBuildSupportProjectTemplatesBase
116+
public class XUnit_V3MTP_NewUpAndBuildSupportProjectTemplatesTests(ITestOutputHelper testOutput) : NewUpAndBuildSupportProjectTemplatesBase(testOutput)
117117
{
118-
public XUnit_V3MTP_NewUpAndBuildSupportProjectTemplatesTests(ITestOutputHelper testOutput) : base(testOutput)
119-
{
120-
}
121-
122118
[Theory]
123119
[MemberData(nameof(TestDataForNewAndBuildTemplateTests), arguments: ["aspire-xunit", "--xunit-version v3mtp"])]
124120
public Task CanNewAndBuild(string templateName, string extraTestCreationArgs, TestSdk sdk, TestTargetFramework tfm, string? error)
@@ -127,42 +123,40 @@ public Task CanNewAndBuild(string templateName, string extraTestCreationArgs, Te
127123
}
128124
}
129125

130-
public class XUnit_AspireVersion93_NewUpAndBuildSupportProjectTemplatesTests : NewUpAndBuildSupportProjectTemplatesBase
126+
public class XUnit_AspireVersion_Current_NewUpAndBuildSupportProjectTemplatesTests(ITestOutputHelper testOutput) : NewUpAndBuildSupportProjectTemplatesBase(testOutput)
131127
{
132-
public XUnit_AspireVersion93_NewUpAndBuildSupportProjectTemplatesTests(ITestOutputHelper testOutput) : base(testOutput)
133-
{
134-
}
135-
136128
[Theory]
137-
[MemberData(nameof(TestDataForNewAndBuildTemplateTests), arguments: ["aspire-xunit", "--aspire-version 9.4"])]
129+
[MemberData(nameof(TestDataForNewAndBuildTemplateTests), arguments: ["aspire-xunit", ""])]
138130
public Task CanNewAndBuild(string templateName, string extraTestCreationArgs, TestSdk sdk, TestTargetFramework tfm, string? error)
139131
{
140132
return CanNewAndBuildActual(templateName, extraTestCreationArgs, sdk, tfm, error);
141133
}
142134
}
143135

144-
public class XUnit_AspireVersion94_NewUpAndBuildSupportProjectTemplatesTests : NewUpAndBuildSupportProjectTemplatesBase
136+
public class XUnit_AspireVersion_Next_NewUpAndBuildSupportProjectTemplatesTests(ITestOutputHelper testOutput) : NewUpAndBuildSupportProjectTemplatesBase(testOutput)
145137
{
146-
public XUnit_AspireVersion94_NewUpAndBuildSupportProjectTemplatesTests(ITestOutputHelper testOutput) : base(testOutput)
147-
{
148-
}
149-
150138
[Theory]
151-
[MemberData(nameof(TestDataForNewAndBuildTemplateTests), arguments: ["aspire-xunit", "--aspire-version 9.5"])]
139+
[MemberData(nameof(TestDataForNewAndBuildTemplateTests), arguments: ["aspire-xunit", $"--aspire-version {AspireVersionNext}"])]
152140
public Task CanNewAndBuild(string templateName, string extraTestCreationArgs, TestSdk sdk, TestTargetFramework tfm, string? error)
153141
{
154142
return CanNewAndBuildActual(templateName, extraTestCreationArgs, sdk, tfm, error);
155143
}
156144
}
157145

158-
public class MSTest_NewUpAndBuildSupportProjectTemplatesTests : NewUpAndBuildSupportProjectTemplatesBase
146+
public class MSTest_AspireVersionCurrent_NewUpAndBuildSupportProjectTemplatesTests(ITestOutputHelper testOutput) : NewUpAndBuildSupportProjectTemplatesBase(testOutput)
159147
{
160-
public MSTest_NewUpAndBuildSupportProjectTemplatesTests(ITestOutputHelper testOutput) : base(testOutput)
148+
[Theory]
149+
[MemberData(nameof(TestDataForNewAndBuildTemplateTests), arguments: ["aspire-mstest", ""])]
150+
public Task CanNewAndBuild(string templateName, string extraTestCreationArgs, TestSdk sdk, TestTargetFramework tfm, string? error)
161151
{
152+
return CanNewAndBuildActual(templateName, extraTestCreationArgs, sdk, tfm, error);
162153
}
154+
}
163155

156+
public class MSTest_AspireVersionNext_NewUpAndBuildSupportProjectTemplatesTests(ITestOutputHelper testOutput) : NewUpAndBuildSupportProjectTemplatesBase(testOutput)
157+
{
164158
[Theory]
165-
[MemberData(nameof(TestDataForNewAndBuildTemplateTests), arguments: ["aspire-mstest", ""])]
159+
[MemberData(nameof(TestDataForNewAndBuildTemplateTests), arguments: ["aspire-mstest", $"--aspire-version {AspireVersionNext}"])]
166160
public Task CanNewAndBuild(string templateName, string extraTestCreationArgs, TestSdk sdk, TestTargetFramework tfm, string? error)
167161
{
168162
return CanNewAndBuildActual(templateName, extraTestCreationArgs, sdk, tfm, error);

0 commit comments

Comments
 (0)