dependabot-nuget 0.321.3 → 0.322.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/helpers/lib/NuGetUpdater/Directory.Packages.props +22 -22
- data/helpers/lib/NuGetUpdater/DotNetPackageCorrelation.Cli/Program.cs +21 -7
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli/Commands/AnalyzeCommand.cs +19 -11
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli/Commands/CloneCommand.cs +19 -9
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli/Commands/DiscoverCommand.cs +21 -14
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli/Commands/FrameworkCheckCommand.cs +8 -5
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli/Commands/RunCommand.cs +29 -16
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli/Commands/UpdateCommand.cs +20 -19
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli/Program.cs +2 -1
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli.Test/EntryPointTests.Analyze.cs +1 -1
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli.Test/EntryPointTests.Discover.cs +10 -23
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli.Test/EntryPointTests.Run.cs +9 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli.Test/EntryPointTests.Update.cs +15 -232
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Discover/SdkProjectDiscovery.cs +1 -154
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/ExperimentsManager.cs +3 -12
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Files/GlobalJsonBuildFile.cs +5 -13
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/PrivateSourceTimedOutException.cs +12 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/JobErrorBase.cs +4 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/PrivateSourceTimedOut.cs +10 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/PullRequestBodyGenerator/AzurePackageDetailFinder.cs +30 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/PullRequestBodyGenerator/DetailedPullRequestBodyGenerator.cs +237 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/PullRequestBodyGenerator/GitHubPackageDetailFinder.cs +101 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/PullRequestBodyGenerator/GitLabPackageDetailFinder.cs +107 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/PullRequestBodyGenerator/HttpFetcher.cs +32 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/PullRequestBodyGenerator/IHttpFetcher.cs +30 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/PullRequestBodyGenerator/IPackageDetailFinder.cs +47 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/PullRequestBodyGenerator/IPullRequestBodyGenerator.cs +11 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/PullRequestBodyGenerator/SimplePullRequestBodyGenerator.cs +15 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/PullRequestTextGenerator.cs +7 -3
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/RunWorker.cs +3 -525
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/UpdateHandlers/CreateSecurityUpdatePullRequestHandler.cs +2 -2
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/UpdateHandlers/GroupUpdateAllVersionsHandler.cs +4 -4
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/UpdateHandlers/RefreshGroupUpdatePullRequestHandler.cs +2 -2
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/UpdateHandlers/RefreshSecurityUpdatePullRequestHandler.cs +2 -2
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/UpdateHandlers/RefreshVersionUpdatePullRequestHandler.cs +2 -2
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/FileWriters/FileWriterWorker.cs +85 -35
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/FileWriters/XmlFileWriter.cs +27 -8
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/PackageReferenceUpdater.cs +1 -856
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/UpdateOperationBase.cs +18 -7
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/UpdaterWorker.cs +16 -200
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Utilities/MSBuildHelper.cs +21 -556
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Analyze/AnalyzeWorkerTests.cs +9 -73
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Clone/CloneWorkerTests.cs +2 -2
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/DependencySolver/MSBuildDependencySolverTests.cs +1 -1
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Discover/DiscoveryWorkerTestBase.cs +1 -20
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Discover/DiscoveryWorkerTests.GlobalJson.cs +0 -2
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Discover/DiscoveryWorkerTests.PackagesConfig.cs +3 -62
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Discover/DiscoveryWorkerTests.Project.cs +13 -563
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Discover/DiscoveryWorkerTests.cs +20 -269
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Discover/SdkProjectDiscoveryTests.cs +2 -2
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Files/GlobalJsonBuildFileTests.cs +0 -1
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/EndToEndTests.cs +131 -131
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/HttpApiHandlerTests.cs +1 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/JobErrorBaseTests.cs +7 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/MessageReportTests.cs +11 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/MiscellaneousTests.cs +0 -203
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/PullRequestBodyGenerator/DetailedPullRequestBodyGeneratorTests.cs +871 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/PullRequestBodyGenerator/IPackageDetailFinderTests.cs +28 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/PullRequestBodyGenerator/TestHttpFetcher.cs +23 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/PullRequestTextTests.cs +24 -24
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/SerializationTests.cs +14 -12
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/UpdateHandlers/CreateSecurityUpdatePullRequestHandlerTests.cs +6 -6
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/UpdateHandlers/GroupUpdateAllVersionsHandlerTests.cs +18 -18
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/UpdateHandlers/RefreshGroupUpdatePullRequestHandlerTests.cs +15 -15
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/UpdateHandlers/RefreshSecurityUpdatePullRequestHandlerTests.cs +21 -21
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/UpdateHandlers/RefreshVersionUpdatePullRequestHandlerTests.cs +15 -15
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/UpdateHandlers/UpdateHandlersTestsBase.cs +1 -8
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/FileWriters/FileWriterWorkerTests.cs +2 -2
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/FileWriters/FileWriterWorkerTests_MiscellaneousTests.cs +45 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/FileWriters/XmlFileWriterTests.cs +111 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/PackageReferenceUpdaterTests.cs +1 -159
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Utilities/MSBuildHelperTests.cs +26 -660
- data/helpers/lib/NuGetUpdater/global.json +1 -1
- metadata +18 -10
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/RunResult.cs +0 -13
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/PullRequestMessageTests.cs +0 -296
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/RunWorkerTests.cs +0 -3592
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/UpdatePermittedAndMessageTests.cs +0 -457
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTests.DirsProj.cs +0 -378
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Utilities/SdkPackageUpdaterHelperTests.cs +0 -175
@@ -53,7 +53,7 @@ public partial class AnalyzeWorkerTests : AnalyzeWorkerTestBase
|
|
53
53
|
CanUpdate = true,
|
54
54
|
VersionComesFromMultiDependencyProperty = false,
|
55
55
|
UpdatedDependencies = [
|
56
|
-
new("Some.Package", "1.1.0", DependencyType.
|
56
|
+
new("Some.Package", "1.1.0", DependencyType.PackageReference, TargetFrameworks: ["net8.0"], IsDirect : true),
|
57
57
|
],
|
58
58
|
}
|
59
59
|
);
|
@@ -104,70 +104,7 @@ public partial class AnalyzeWorkerTests : AnalyzeWorkerTestBase
|
|
104
104
|
CanUpdate = true,
|
105
105
|
VersionComesFromMultiDependencyProperty = false,
|
106
106
|
UpdatedDependencies = [
|
107
|
-
new("Some.Package", "4.9.2", DependencyType.
|
108
|
-
new("Some.Transitive.Dependency", "4.9.2", DependencyType.Unknown, TargetFrameworks: ["net8.0"]),
|
109
|
-
],
|
110
|
-
}
|
111
|
-
);
|
112
|
-
}
|
113
|
-
|
114
|
-
[Fact]
|
115
|
-
public async Task DeterminesMultiPropertyVersion()
|
116
|
-
{
|
117
|
-
var evaluationResult = new EvaluationResult(EvaluationResultType.Success, "$(SomePackageVersion)", "4.0.1", "SomePackageVersion", ErrorMessage: null);
|
118
|
-
await TestAnalyzeAsync(
|
119
|
-
packages:
|
120
|
-
[
|
121
|
-
MockNuGetPackage.CreateSimplePackage("Some.Package", "4.0.1", "net8.0", [(null, [("Some.Transitive.Dependency", "[4.0.1]")])]), // initially this
|
122
|
-
MockNuGetPackage.CreateSimplePackage("Some.Package", "4.9.2", "net8.0", [(null, [("Some.Transitive.Dependency", "[4.9.2]")])]), // should update to this
|
123
|
-
MockNuGetPackage.CreateSimplePackage("Some.Package", "4.9.3", "net8.0", [(null, [("Some.Transitive.Dependency", "[4.9.3]")])]), // will not update this far
|
124
|
-
MockNuGetPackage.CreateSimplePackage("Some.Transitive.Dependency", "4.0.1", "net8.0"),
|
125
|
-
MockNuGetPackage.CreateSimplePackage("Some.Transitive.Dependency", "4.9.2", "net8.0"),
|
126
|
-
MockNuGetPackage.CreateSimplePackage("Some.Transitive.Dependency", "4.9.3", "net8.0"),
|
127
|
-
],
|
128
|
-
discovery: new()
|
129
|
-
{
|
130
|
-
Path = "/",
|
131
|
-
Projects = [
|
132
|
-
new()
|
133
|
-
{
|
134
|
-
FilePath = "./project.csproj",
|
135
|
-
TargetFrameworks = ["net8.0"],
|
136
|
-
Dependencies = [
|
137
|
-
new("Some.Transitive.Dependency", "4.0.1", DependencyType.PackageReference, EvaluationResult: evaluationResult, TargetFrameworks: ["net8.0"]),
|
138
|
-
],
|
139
|
-
ReferencedProjectPaths = [],
|
140
|
-
ImportedFiles = [],
|
141
|
-
AdditionalFiles = [],
|
142
|
-
},
|
143
|
-
new()
|
144
|
-
{
|
145
|
-
FilePath = "./project2.csproj",
|
146
|
-
TargetFrameworks = ["net8.0"],
|
147
|
-
Dependencies = [
|
148
|
-
new("Some.Package", "4.0.1", DependencyType.PackageReference, EvaluationResult: evaluationResult, TargetFrameworks: ["net8.0"]),
|
149
|
-
],
|
150
|
-
ReferencedProjectPaths = [],
|
151
|
-
ImportedFiles = [],
|
152
|
-
AdditionalFiles = [],
|
153
|
-
},
|
154
|
-
],
|
155
|
-
},
|
156
|
-
dependencyInfo: new()
|
157
|
-
{
|
158
|
-
Name = "Some.Transitive.Dependency",
|
159
|
-
Version = "4.0.1",
|
160
|
-
IgnoredVersions = [Requirement.Parse("> 4.9.2")],
|
161
|
-
IsVulnerable = false,
|
162
|
-
Vulnerabilities = [],
|
163
|
-
},
|
164
|
-
expectedResult: new()
|
165
|
-
{
|
166
|
-
UpdatedVersion = "4.9.2",
|
167
|
-
CanUpdate = true,
|
168
|
-
VersionComesFromMultiDependencyProperty = true,
|
169
|
-
UpdatedDependencies = [
|
170
|
-
new("Some.Package", "4.9.2", DependencyType.Unknown, TargetFrameworks: ["net8.0"]),
|
107
|
+
new("Some.Package", "4.9.2", DependencyType.PackageReference, TargetFrameworks: ["net8.0"], IsDirect: true),
|
171
108
|
new("Some.Transitive.Dependency", "4.9.2", DependencyType.Unknown, TargetFrameworks: ["net8.0"]),
|
172
109
|
],
|
173
110
|
}
|
@@ -425,7 +362,7 @@ public partial class AnalyzeWorkerTests : AnalyzeWorkerTestBase
|
|
425
362
|
UpdatedVersion = "1.1.0",
|
426
363
|
CanUpdate = true,
|
427
364
|
UpdatedDependencies = [
|
428
|
-
new("Some.Package", "1.1.0", DependencyType.
|
365
|
+
new("Some.Package", "1.1.0", DependencyType.PackageReference, TargetFrameworks: ["net8.0"], IsDirect: true),
|
429
366
|
],
|
430
367
|
}
|
431
368
|
);
|
@@ -472,7 +409,7 @@ public partial class AnalyzeWorkerTests : AnalyzeWorkerTestBase
|
|
472
409
|
CanUpdate = true,
|
473
410
|
VersionComesFromMultiDependencyProperty = false,
|
474
411
|
UpdatedDependencies = [
|
475
|
-
new("Some.Package", "1.1.0", DependencyType.
|
412
|
+
new("Some.Package", "1.1.0", DependencyType.PackageReference, TargetFrameworks :["net8.0"], IsDirect : true),
|
476
413
|
],
|
477
414
|
}
|
478
415
|
);
|
@@ -527,7 +464,7 @@ public partial class AnalyzeWorkerTests : AnalyzeWorkerTestBase
|
|
527
464
|
CanUpdate = true,
|
528
465
|
VersionComesFromMultiDependencyProperty = false,
|
529
466
|
UpdatedDependencies = [
|
530
|
-
new("Some.Package", "1.1.0", DependencyType.
|
467
|
+
new("Some.Package", "1.1.0", DependencyType.PackageReference, TargetFrameworks :["net8.0"], IsDirect : true),
|
531
468
|
],
|
532
469
|
}
|
533
470
|
);
|
@@ -537,7 +474,6 @@ public partial class AnalyzeWorkerTests : AnalyzeWorkerTestBase
|
|
537
474
|
public async Task WindowsSpecificProjectAndWindowsSpecificDependency()
|
538
475
|
{
|
539
476
|
await TestAnalyzeAsync(
|
540
|
-
experimentsManager: new ExperimentsManager() { UseDirectDiscovery = true },
|
541
477
|
packages: [
|
542
478
|
MockNuGetPackage.CreateSimplePackage("Some.Package", "1.0.0", "net6.0-windows7.0"),
|
543
479
|
MockNuGetPackage.CreateSimplePackage("Some.Package", "1.0.1", "net6.0-windows7.0"),
|
@@ -753,7 +689,7 @@ public partial class AnalyzeWorkerTests : AnalyzeWorkerTestBase
|
|
753
689
|
VersionComesFromMultiDependencyProperty = false,
|
754
690
|
UpdatedDependencies =
|
755
691
|
[
|
756
|
-
new("Some.Package", "1.2.3", DependencyType.
|
692
|
+
new("Some.Package", "1.2.3", DependencyType.PackageReference, TargetFrameworks :["net8.0"], IsDirect : true),
|
757
693
|
],
|
758
694
|
}
|
759
695
|
);
|
@@ -925,7 +861,7 @@ public partial class AnalyzeWorkerTests : AnalyzeWorkerTestBase
|
|
925
861
|
VersionComesFromMultiDependencyProperty = false,
|
926
862
|
UpdatedDependencies =
|
927
863
|
[
|
928
|
-
new("Some.Package", "1.2.3", DependencyType.
|
864
|
+
new("Some.Package", "1.2.3", DependencyType.PackageReference, TargetFrameworks :["net8.0"], IsDirect : true),
|
929
865
|
],
|
930
866
|
}
|
931
867
|
);
|
@@ -1113,7 +1049,7 @@ public partial class AnalyzeWorkerTests : AnalyzeWorkerTestBase
|
|
1113
1049
|
VersionComesFromMultiDependencyProperty = false,
|
1114
1050
|
UpdatedDependencies =
|
1115
1051
|
[
|
1116
|
-
new("Some.Package", "1.1.0", DependencyType.
|
1052
|
+
new("Some.Package", "1.1.0", DependencyType.PackageReference, TargetFrameworks: ["net8.0"], IsDirect: true),
|
1117
1053
|
],
|
1118
1054
|
}
|
1119
1055
|
);
|
@@ -1129,7 +1065,7 @@ public partial class AnalyzeWorkerTests : AnalyzeWorkerTestBase
|
|
1129
1065
|
UpdatedVersion = "",
|
1130
1066
|
UpdatedDependencies = [],
|
1131
1067
|
}, new TestLogger());
|
1132
|
-
var discoveryContents = await File.ReadAllTextAsync(Path.Combine(temporaryDirectory.DirectoryPath, "Some.Dependency.json"));
|
1068
|
+
var discoveryContents = await File.ReadAllTextAsync(Path.Combine(temporaryDirectory.DirectoryPath, "Some.Dependency.json"), TestContext.Current.CancellationToken);
|
1133
1069
|
|
1134
1070
|
// raw result file should look like this:
|
1135
1071
|
// {
|
@@ -242,12 +242,12 @@ public class CloneWorkerTests
|
|
242
242
|
var actualApiMessages = testApiHandler.ReceivedMessages.ToArray();
|
243
243
|
if (actualApiMessages.Length > expectedApiMessages.Length)
|
244
244
|
{
|
245
|
-
var extraApiMessages = actualApiMessages.Skip(expectedApiMessages.Length).Select(m =>
|
245
|
+
var extraApiMessages = actualApiMessages.Skip(expectedApiMessages.Length).Select(m => EndToEndTests.SerializeObjectAndType(m.Object)).ToArray();
|
246
246
|
Assert.Fail($"Expected {expectedApiMessages.Length} API messages, but got {extraApiMessages.Length} extra:\n\t{string.Join("\n\t", extraApiMessages)}");
|
247
247
|
}
|
248
248
|
if (expectedApiMessages.Length > actualApiMessages.Length)
|
249
249
|
{
|
250
|
-
var missingApiMessages = expectedApiMessages.Skip(actualApiMessages.Length).Select(m =>
|
250
|
+
var missingApiMessages = expectedApiMessages.Skip(actualApiMessages.Length).Select(m => EndToEndTests.SerializeObjectAndType(m)).ToArray();
|
251
251
|
Assert.Fail($"Expected {expectedApiMessages.Length} API messages, but only got {actualApiMessages.Length}; missing:\n\t{string.Join("\n\t", missingApiMessages)}");
|
252
252
|
}
|
253
253
|
}
|
@@ -614,7 +614,7 @@ public class MSBuildDependencySolverTests : TestBase
|
|
614
614
|
await Update.UpdateWorkerTestBase.MockNuGetPackagesInDirectory(packages, tempDir.DirectoryPath);
|
615
615
|
var repoContentsPath = new DirectoryInfo(tempDir.DirectoryPath);
|
616
616
|
var projectPath = new FileInfo(Path.Combine(repoContentsPath.FullName, projectName));
|
617
|
-
var experimentsManager = new ExperimentsManager()
|
617
|
+
var experimentsManager = new ExperimentsManager();
|
618
618
|
var logger = new TestLogger();
|
619
619
|
var msbuildDepSolver = new MSBuildDependencySolver(repoContentsPath, projectPath, experimentsManager, logger);
|
620
620
|
|
@@ -1,13 +1,9 @@
|
|
1
1
|
using System.Collections.Immutable;
|
2
2
|
using System.Diagnostics.CodeAnalysis;
|
3
|
-
using System.Runtime.InteropServices;
|
4
|
-
using System.Text.Json;
|
5
3
|
|
6
4
|
using NuGetUpdater.Core.Discover;
|
7
5
|
using NuGetUpdater.Core.Test.Update;
|
8
|
-
using NuGetUpdater.Core.Test.Updater;
|
9
6
|
using NuGetUpdater.Core.Test.Utilities;
|
10
|
-
using NuGetUpdater.Core.Updater;
|
11
7
|
using NuGetUpdater.Core.Utilities;
|
12
8
|
|
13
9
|
using Xunit;
|
@@ -98,31 +94,16 @@ public class DiscoveryWorkerTestBase : TestBase
|
|
98
94
|
Assert.True(actualProject is not null, $"Unable to find project with path `{expectedProject.FilePath.NormalizePathToUnix()}` in collection [{string.Join(", ", actualProjects.Select(p => p.FilePath))}]");
|
99
95
|
Assert.Equal(expectedProject.FilePath.NormalizePathToUnix(), actualProject.FilePath.NormalizePathToUnix());
|
100
96
|
|
101
|
-
// some properties are byproducts of the older temporary project discovery process and shouldn't be returned
|
102
97
|
var actualProperties = actualProject.Properties;
|
103
|
-
if (!experimentsManager.UseDirectDiscovery)
|
104
|
-
{
|
105
|
-
var forbiddenProperties = new HashSet<string>(["TargetFrameworkVersion"], StringComparer.OrdinalIgnoreCase);
|
106
|
-
actualProperties = actualProperties.Where(p => !forbiddenProperties.Contains(p.Name)).ToImmutableArray();
|
107
|
-
}
|
108
|
-
|
109
98
|
AssertEx.Equal(expectedProject.Properties, actualProperties, PropertyComparer.Instance);
|
110
99
|
AssertEx.Equal(expectedProject.TargetFrameworks, actualProject.TargetFrameworks);
|
111
100
|
AssertEx.Equal(expectedProject.ReferencedProjectPaths, actualProject.ReferencedProjectPaths);
|
112
101
|
AssertEx.Equal(expectedProject.ImportedFiles, actualProject.ImportedFiles);
|
113
102
|
AssertEx.Equal(expectedProject.AdditionalFiles, actualProject.AdditionalFiles);
|
114
103
|
|
115
|
-
// some dependencies are byproducts of the older temporary project discovery process and shouldn't be returned
|
116
|
-
var actualDependencies = actualProject.Dependencies;
|
117
|
-
if (!experimentsManager.UseDirectDiscovery)
|
118
|
-
{
|
119
|
-
var forbiddenDependencies = new HashSet<string>(["Microsoft.NET.Sdk"], StringComparer.OrdinalIgnoreCase);
|
120
|
-
actualDependencies = actualDependencies.Where(d => !forbiddenDependencies.Contains(d.Name)).ToImmutableArray();
|
121
|
-
}
|
122
|
-
|
123
104
|
// some dependencies are byproducts of the test framework and shouldn't be returned to make the tests more deterministic
|
124
105
|
var forbiddenTestDependencies = new HashSet<string>(["Microsoft.NETFramework.ReferenceAssemblies"], StringComparer.OrdinalIgnoreCase);
|
125
|
-
actualDependencies =
|
106
|
+
var actualDependencies = actualProject.Dependencies.Where(d => !forbiddenTestDependencies.Contains(d.Name)).ToImmutableArray();
|
126
107
|
|
127
108
|
ValidateDependencies(expectedProject.Dependencies, actualDependencies);
|
128
109
|
Assert.Equal(expectedProject.ExpectedDependencyCount ?? expectedProject.Dependencies.Length, actualDependencies.Length);
|
data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Discover/DiscoveryWorkerTests.GlobalJson.cs
CHANGED
@@ -31,7 +31,6 @@ public partial class DiscoveryWorkerTests
|
|
31
31
|
{
|
32
32
|
FilePath = "global.json",
|
33
33
|
Dependencies = [
|
34
|
-
new("Microsoft.NET.Sdk", "2.2.104", DependencyType.MSBuildSdk),
|
35
34
|
new("Microsoft.Build.Traversal", "1.0.45", DependencyType.MSBuildSdk),
|
36
35
|
]
|
37
36
|
},
|
@@ -65,7 +64,6 @@ public partial class DiscoveryWorkerTests
|
|
65
64
|
{
|
66
65
|
FilePath = "global.json",
|
67
66
|
Dependencies = [
|
68
|
-
new("Microsoft.NET.Sdk", "2.2.104", DependencyType.MSBuildSdk),
|
69
67
|
new("Microsoft.Build.Traversal", "1.0.45", DependencyType.MSBuildSdk),
|
70
68
|
]
|
71
69
|
},
|
data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Discover/DiscoveryWorkerTests.PackagesConfig.cs
CHANGED
@@ -7,10 +7,9 @@ public partial class DiscoveryWorkerTests
|
|
7
7
|
public class PackagesConfig : DiscoveryWorkerTestBase
|
8
8
|
{
|
9
9
|
[Fact]
|
10
|
-
public async Task
|
10
|
+
public async Task DiscoversDependencies()
|
11
11
|
{
|
12
12
|
await TestDiscoveryAsync(
|
13
|
-
experimentsManager: new ExperimentsManager() { UseDirectDiscovery = true },
|
14
13
|
packages:
|
15
14
|
[
|
16
15
|
MockNuGetPackage.CreateSimplePackage("Package.A", "1.0.0", "net46"),
|
@@ -63,66 +62,9 @@ public partial class DiscoveryWorkerTests
|
|
63
62
|
}
|
64
63
|
|
65
64
|
[Fact]
|
66
|
-
public async Task
|
65
|
+
public async Task DiscoveryIsMergedWithPackageReferences()
|
67
66
|
{
|
68
67
|
await TestDiscoveryAsync(
|
69
|
-
experimentsManager: new ExperimentsManager() { UseDirectDiscovery = false },
|
70
|
-
packages:
|
71
|
-
[
|
72
|
-
MockNuGetPackage.CreateSimplePackage("Package.A", "1.0.0", "net46"),
|
73
|
-
MockNuGetPackage.CreateSimplePackage("Package.B", "2.0.0", "net46"),
|
74
|
-
],
|
75
|
-
workspacePath: "",
|
76
|
-
files: [
|
77
|
-
("packages.config", """
|
78
|
-
<?xml version="1.0" encoding="utf-8"?>
|
79
|
-
<packages>
|
80
|
-
<package id="Package.A" version="1.0.0" targetFramework="net46" />
|
81
|
-
<package id="Package.B" version="2.0.0" targetFramework="net46" />
|
82
|
-
</packages>
|
83
|
-
"""),
|
84
|
-
("myproj.csproj", """
|
85
|
-
<Project Sdk="Microsoft.NET.Sdk">
|
86
|
-
<PropertyGroup>
|
87
|
-
<TargetFramework>net46</TargetFramework>
|
88
|
-
</PropertyGroup>
|
89
|
-
<ItemGroup>
|
90
|
-
<None Include="packages.config" />
|
91
|
-
</ItemGroup>
|
92
|
-
</Project>
|
93
|
-
""")
|
94
|
-
],
|
95
|
-
expectedResult: new()
|
96
|
-
{
|
97
|
-
Path = "",
|
98
|
-
Projects = [
|
99
|
-
new()
|
100
|
-
{
|
101
|
-
FilePath = "myproj.csproj",
|
102
|
-
Properties = [new("TargetFramework", "net46", "myproj.csproj")],
|
103
|
-
TargetFrameworks = ["net46"],
|
104
|
-
Dependencies = [
|
105
|
-
new("Package.A", "1.0.0", DependencyType.PackagesConfig, TargetFrameworks: ["net46"]),
|
106
|
-
new("Package.B", "2.0.0", DependencyType.PackagesConfig, TargetFrameworks: ["net46"]),
|
107
|
-
],
|
108
|
-
ReferencedProjectPaths = [],
|
109
|
-
ImportedFiles = [],
|
110
|
-
AdditionalFiles = [
|
111
|
-
"packages.config"
|
112
|
-
],
|
113
|
-
}
|
114
|
-
],
|
115
|
-
}
|
116
|
-
);
|
117
|
-
}
|
118
|
-
|
119
|
-
[Theory]
|
120
|
-
[InlineData(true)]
|
121
|
-
[InlineData(false)]
|
122
|
-
public async Task DiscoveryIsMergedWithPackageReferences(bool useDirectDiscovery)
|
123
|
-
{
|
124
|
-
await TestDiscoveryAsync(
|
125
|
-
experimentsManager: new ExperimentsManager() { UseDirectDiscovery = useDirectDiscovery },
|
126
68
|
packages:
|
127
69
|
[
|
128
70
|
MockNuGetPackage.CreateSimplePackage("Package.A", "1.0.0", "net46"),
|
@@ -173,11 +115,10 @@ public partial class DiscoveryWorkerTests
|
|
173
115
|
}
|
174
116
|
|
175
117
|
[Fact]
|
176
|
-
public async Task
|
118
|
+
public async Task DiscoveryWorksEvenWithTargetsImportsOnlyProvidedByVisualStudio()
|
177
119
|
{
|
178
120
|
await TestDiscoveryAsync(
|
179
121
|
workspacePath: "project1/",
|
180
|
-
experimentsManager: new ExperimentsManager() { UseDirectDiscovery = true },
|
181
122
|
packages: [
|
182
123
|
MockNuGetPackage.CreateSimplePackage("Some.Package", "1.0.0", "net48"),
|
183
124
|
],
|