Skip to content

Commit f30f921

Browse files
authored
Add all the P0 and P1 apex test cases to the apex daily pipeline (#5707)
* Add P0&P1 test cases to apex daily pipeline * remove NuGetEndToEndTests folder
1 parent 778422a commit f30f921

6 files changed

Lines changed: 1159 additions & 60 deletions

File tree

Lines changed: 119 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,119 @@
1+
// Copyright (c) .NET Foundation. All rights reserved.
2+
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
3+
4+
using System.Collections.Generic;
5+
using System.Threading.Tasks;
6+
using Microsoft.Test.Apex.VisualStudio.Solution;
7+
using Microsoft.VisualStudio.TestTools.UnitTesting;
8+
9+
namespace NuGet.Tests.Apex.Daily
10+
{
11+
[TestClass]
12+
public class NetCoreProjectTestCase : SharedVisualStudioHostTestClass
13+
{
14+
[DataTestMethod]
15+
[DynamicData(nameof(GetNetCoreTemplates), DynamicDataSourceType.Method)]
16+
[Timeout(DefaultTimeout)]
17+
public async Task InstallPackageToNetCoreProjectFromUI(ProjectTemplate projectTemplate)
18+
{
19+
EnsureVisualStudioHost();
20+
21+
using (var testContext = new ApexTestContext(VisualStudio, projectTemplate, Logger, addNetStandardFeeds: true))
22+
{
23+
// Arrange
24+
var packageName = "NetCoreInstallTestPackage";
25+
var packageVersion = "1.0.0";
26+
await CommonUtility.CreatePackageInSourceAsync(testContext.PackageSource, packageName, packageVersion);
27+
28+
VisualStudio.AssertNoErrors();
29+
30+
// Act
31+
CommonUtility.OpenNuGetPackageManagerWithDte(VisualStudio, Logger);
32+
var nugetTestService = GetNuGetTestService();
33+
var uiwindow = nugetTestService.GetUIWindowfromProject(testContext.Project);
34+
uiwindow.InstallPackageFromUI(packageName, packageVersion);
35+
36+
// Assert
37+
VisualStudio.AssertNuGetOutputDoesNotHaveErrors();
38+
CommonUtility.AssertPackageReferenceExists(VisualStudio, testContext.Project, packageName, packageVersion, Logger);
39+
}
40+
}
41+
42+
[DataTestMethod]
43+
[DynamicData(nameof(GetNetCoreTemplates), DynamicDataSourceType.Method)]
44+
[Timeout(DefaultTimeout)]
45+
public async Task UpdatePackageToNetCoreProjectFromUI(ProjectTemplate projectTemplate)
46+
{
47+
EnsureVisualStudioHost();
48+
49+
using (var testContext = new ApexTestContext(VisualStudio, projectTemplate, Logger, addNetStandardFeeds: true))
50+
{
51+
// Arrange
52+
var packageName = "NetCoreUpdateTestPackage";
53+
var packageVersion1 = "1.0.0";
54+
var packageVersion2 = "2.0.0";
55+
56+
await CommonUtility.CreatePackageInSourceAsync(testContext.PackageSource, packageName, packageVersion1);
57+
await CommonUtility.CreatePackageInSourceAsync(testContext.PackageSource, packageName, packageVersion2);
58+
59+
VisualStudio.AssertNoErrors();
60+
61+
// Act
62+
CommonUtility.OpenNuGetPackageManagerWithDte(VisualStudio, Logger);
63+
var nugetTestService = GetNuGetTestService();
64+
var uiwindow = nugetTestService.GetUIWindowfromProject(testContext.Project);
65+
uiwindow.InstallPackageFromUI(packageName, packageVersion1);
66+
testContext.SolutionService.Build();
67+
testContext.NuGetApexTestService.WaitForAutoRestore();
68+
69+
uiwindow.UpdatePackageFromUI(packageName, packageVersion2);
70+
testContext.SolutionService.Build();
71+
testContext.NuGetApexTestService.WaitForAutoRestore();
72+
73+
// Assert
74+
VisualStudio.AssertNuGetOutputDoesNotHaveErrors();
75+
CommonUtility.AssertPackageReferenceExists(VisualStudio, testContext.Project, packageName, packageVersion2, Logger);
76+
}
77+
}
78+
79+
[DataTestMethod]
80+
[DynamicData(nameof(GetNetCoreTemplates), DynamicDataSourceType.Method)]
81+
[Timeout(DefaultTimeout)]
82+
public async Task UninstallPackageFromNetCoreProjectFromUI(ProjectTemplate projectTemplate)
83+
{
84+
EnsureVisualStudioHost();
85+
86+
using (var testContext = new ApexTestContext(VisualStudio, projectTemplate, Logger, addNetStandardFeeds: true))
87+
{
88+
// Arrange
89+
var packageName = "NetCoreUninstallTestPackage";
90+
var packageVersion = "1.0.0";
91+
92+
await CommonUtility.CreatePackageInSourceAsync(testContext.PackageSource, packageName, packageVersion);
93+
94+
VisualStudio.AssertNoErrors();
95+
96+
// Act
97+
CommonUtility.OpenNuGetPackageManagerWithDte(VisualStudio, Logger);
98+
var nugetTestService = GetNuGetTestService();
99+
var uiwindow = nugetTestService.GetUIWindowfromProject(testContext.Project);
100+
uiwindow.InstallPackageFromUI(packageName, packageVersion);
101+
testContext.SolutionService.Build();
102+
testContext.NuGetApexTestService.WaitForAutoRestore();
103+
104+
uiwindow.UninstallPackageFromUI(packageName);
105+
testContext.SolutionService.Build();
106+
testContext.NuGetApexTestService.WaitForAutoRestore();
107+
108+
// Assert
109+
VisualStudio.AssertNuGetOutputDoesNotHaveErrors();
110+
CommonUtility.AssertPackageReferenceDoesNotExist(VisualStudio, testContext.Project, packageName, Logger);
111+
}
112+
}
113+
114+
public static IEnumerable<object[]> GetNetCoreTemplates()
115+
{
116+
yield return new object[] { ProjectTemplate.NetStandardClassLib };
117+
}
118+
}
119+
}

0 commit comments

Comments
 (0)