dependabot-nuget 0.322.0 → 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.
Files changed (60) hide show
  1. checksums.yaml +4 -4
  2. data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli.Test/EntryPointTests.Analyze.cs +1 -1
  3. data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli.Test/EntryPointTests.Discover.cs +10 -23
  4. data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli.Test/EntryPointTests.Run.cs +9 -0
  5. data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli.Test/EntryPointTests.Update.cs +15 -232
  6. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Discover/SdkProjectDiscovery.cs +1 -154
  7. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/ExperimentsManager.cs +3 -12
  8. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/PullRequestBodyGenerator/AzurePackageDetailFinder.cs +30 -0
  9. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/PullRequestBodyGenerator/DetailedPullRequestBodyGenerator.cs +237 -0
  10. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/PullRequestBodyGenerator/GitHubPackageDetailFinder.cs +101 -0
  11. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/PullRequestBodyGenerator/GitLabPackageDetailFinder.cs +107 -0
  12. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/PullRequestBodyGenerator/HttpFetcher.cs +32 -0
  13. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/PullRequestBodyGenerator/IHttpFetcher.cs +30 -0
  14. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/PullRequestBodyGenerator/IPackageDetailFinder.cs +47 -0
  15. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/PullRequestBodyGenerator/IPullRequestBodyGenerator.cs +11 -0
  16. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/PullRequestBodyGenerator/SimplePullRequestBodyGenerator.cs +15 -0
  17. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/PullRequestTextGenerator.cs +7 -3
  18. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/RunWorker.cs +3 -525
  19. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/UpdateHandlers/CreateSecurityUpdatePullRequestHandler.cs +1 -1
  20. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/UpdateHandlers/GroupUpdateAllVersionsHandler.cs +2 -2
  21. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/UpdateHandlers/RefreshGroupUpdatePullRequestHandler.cs +1 -1
  22. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/UpdateHandlers/RefreshSecurityUpdatePullRequestHandler.cs +1 -1
  23. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/UpdateHandlers/RefreshVersionUpdatePullRequestHandler.cs +1 -1
  24. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/FileWriters/FileWriterWorker.cs +1 -1
  25. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/FileWriters/XmlFileWriter.cs +10 -3
  26. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/PackageReferenceUpdater.cs +1 -856
  27. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/UpdaterWorker.cs +16 -200
  28. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Utilities/MSBuildHelper.cs +6 -556
  29. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Analyze/AnalyzeWorkerTests.cs +9 -73
  30. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Clone/CloneWorkerTests.cs +2 -2
  31. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/DependencySolver/MSBuildDependencySolverTests.cs +1 -1
  32. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Discover/DiscoveryWorkerTestBase.cs +1 -20
  33. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Discover/DiscoveryWorkerTests.PackagesConfig.cs +3 -62
  34. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Discover/DiscoveryWorkerTests.Project.cs +13 -563
  35. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Discover/DiscoveryWorkerTests.cs +20 -267
  36. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Discover/SdkProjectDiscoveryTests.cs +2 -2
  37. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/EndToEndTests.cs +131 -131
  38. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/MiscellaneousTests.cs +0 -203
  39. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/PullRequestBodyGenerator/DetailedPullRequestBodyGeneratorTests.cs +871 -0
  40. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/PullRequestBodyGenerator/IPackageDetailFinderTests.cs +28 -0
  41. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/PullRequestBodyGenerator/TestHttpFetcher.cs +23 -0
  42. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/PullRequestTextTests.cs +3 -2
  43. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/SerializationTests.cs +6 -12
  44. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/UpdateHandlers/CreateSecurityUpdatePullRequestHandlerTests.cs +6 -6
  45. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/UpdateHandlers/GroupUpdateAllVersionsHandlerTests.cs +18 -18
  46. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/UpdateHandlers/RefreshGroupUpdatePullRequestHandlerTests.cs +15 -15
  47. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/UpdateHandlers/RefreshSecurityUpdatePullRequestHandlerTests.cs +21 -21
  48. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/UpdateHandlers/RefreshVersionUpdatePullRequestHandlerTests.cs +15 -15
  49. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/UpdateHandlers/UpdateHandlersTestsBase.cs +1 -8
  50. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/FileWriters/FileWriterWorkerTests.cs +1 -1
  51. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/FileWriters/XmlFileWriterTests.cs +85 -0
  52. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/PackageReferenceUpdaterTests.cs +1 -159
  53. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Utilities/MSBuildHelperTests.cs +10 -660
  54. metadata +16 -10
  55. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/RunResult.cs +0 -13
  56. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/PullRequestMessageTests.cs +0 -296
  57. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/RunWorkerTests.cs +0 -3592
  58. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/UpdatePermittedAndMessageTests.cs +0 -457
  59. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTests.DirsProj.cs +0 -378
  60. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Utilities/SdkPackageUpdaterHelperTests.cs +0 -175
@@ -11,28 +11,23 @@ namespace NuGetUpdater.Core.Test.Discover;
11
11
  public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
12
12
  {
13
13
  [Theory]
14
- [InlineData("src/project.csproj", true)]
15
- [InlineData("src/project.csproj", false)]
16
- [InlineData("src/project.vbproj", true)]
17
- [InlineData("src/project.vbproj", false)]
18
- [InlineData("src/project.fsproj", true)]
19
- [InlineData("src/project.fsproj", false)]
20
- public async Task TestProjectFiles(string projectPath, bool useDirectDiscovery)
14
+ [InlineData("src/project.csproj")]
15
+ [InlineData("src/project.vbproj")]
16
+ [InlineData("src/project.fsproj")]
17
+ public async Task TestProjectFiles(string projectPath)
21
18
  {
22
19
  var expectedDependencies = new List<Dependency>()
23
20
  {
24
21
  new Dependency("Some.Package", "9.0.1", DependencyType.PackageReference, TargetFrameworks: ["net8.0"], IsDirect: true)
25
22
  };
26
- if (useDirectDiscovery && Path.GetExtension(projectPath)! == ".fsproj")
23
+ if (Path.GetExtension(projectPath)! == ".fsproj")
27
24
  {
28
25
  // this package ships with the SDK and is automatically added for F# projects but should be manually added here to make the test consistent
29
26
  // only direct package discovery finds this, though
30
27
  expectedDependencies.Add(new Dependency("FSharp.Core", MockNuGetPackage.FSharpCorePackageVersion.Value, DependencyType.PackageReference, TargetFrameworks: ["net8.0"], IsDirect: true));
31
28
  }
32
29
 
33
- var experimentsManager = new ExperimentsManager() { UseDirectDiscovery = useDirectDiscovery };
34
30
  await TestDiscoveryAsync(
35
- experimentsManager: experimentsManager,
36
31
  packages:
37
32
  [
38
33
  MockNuGetPackage.CreateSimplePackage("Some.Package", "9.0.1", "net8.0"),
@@ -75,14 +70,10 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
75
70
  );
76
71
  }
77
72
 
78
- [Theory]
79
- [InlineData(true)]
80
- [InlineData(false)]
81
- public async Task FindDependenciesFromSDKProjectsWithDesktopTFM(bool useDirectDiscovery)
73
+ [Fact]
74
+ public async Task FindDependenciesFromSDKProjectsWithDesktopTFM()
82
75
  {
83
- var experimentsManager = new ExperimentsManager() { UseDirectDiscovery = useDirectDiscovery };
84
76
  await TestDiscoveryAsync(
85
- experimentsManager: experimentsManager,
86
77
  packages:
87
78
  [
88
79
  MockNuGetPackage.CreateSimplePackage("Some.Package", "1.2.3", "net472"),
@@ -124,14 +115,10 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
124
115
  );
125
116
  }
126
117
 
127
- [Theory]
128
- [InlineData(true)]
129
- [InlineData(false)]
130
- public async Task TestDependencyWithTrailingSpacesInAttribute(bool useDirectDiscovery)
118
+ [Fact]
119
+ public async Task TestDependencyWithTrailingSpacesInAttribute()
131
120
  {
132
- var experimentsManager = new ExperimentsManager() { UseDirectDiscovery = useDirectDiscovery };
133
121
  await TestDiscoveryAsync(
134
- experimentsManager: experimentsManager,
135
122
  packages:
136
123
  [
137
124
  MockNuGetPackage.CreateSimplePackage("Some.Package", "9.0.1", "net8.0"),
@@ -185,7 +172,6 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
185
172
  MockNuGetPackage.CreateSimplePackage("Some.Package", "9.0.1", "net8.0"),
186
173
  MockNuGetPackage.CreateSimplePackage("Some.Package2", "9.0.1", "net8.0"),
187
174
  ],
188
- experimentsManager: new ExperimentsManager() { UseDirectDiscovery = true },
189
175
  workspacePath: "src",
190
176
  files: new[]
191
177
  {
@@ -235,7 +221,6 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
235
221
  [
236
222
  MockNuGetPackage.CreateSimplePackage("Some.Package", "9.0.1", "net8.0"),
237
223
  ],
238
- experimentsManager: new ExperimentsManager() { UseDirectDiscovery = true },
239
224
  workspacePath: "src",
240
225
  files: new[]
241
226
  {
@@ -339,7 +324,6 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
339
324
  MockNuGetPackage.CreateSimplePackage("Some.Package", "9.0.1", "net8.0"),
340
325
  MockNuGetPackage.CreateSimplePackage("Some.Package2", "9.0.1", "net8.0"),
341
326
  ],
342
- experimentsManager: new ExperimentsManager() { UseDirectDiscovery = true },
343
327
  workspacePath: "src",
344
328
  files: new[]
345
329
  {
@@ -386,9 +370,7 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
386
370
  [InlineData(false)]
387
371
  public async Task TestPackageConfig(bool useDirectDiscovery)
388
372
  {
389
- var experimentsManager = new ExperimentsManager() { UseDirectDiscovery = useDirectDiscovery };
390
373
  await TestDiscoveryAsync(
391
- experimentsManager: experimentsManager,
392
374
  packages:
393
375
  [
394
376
  MockNuGetPackage.CreateSimplePackage("Some.Package", "7.0.1", "net45"),
@@ -447,70 +429,6 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
447
429
  public async Task TestProps_DirectDiscovery()
448
430
  {
449
431
  await TestDiscoveryAsync(
450
- experimentsManager: new ExperimentsManager() { UseDirectDiscovery = true },
451
- packages:
452
- [
453
- MockNuGetPackage.CreateSimplePackage("Some.Package", "9.0.1", "net8.0"),
454
- ],
455
- workspacePath: "src",
456
- files: new[]
457
- {
458
- ("src/project.csproj", """
459
- <Project Sdk="Microsoft.NET.Sdk">
460
- <PropertyGroup>
461
- <TargetFramework>net8.0</TargetFramework>
462
- </PropertyGroup>
463
-
464
- <ItemGroup>
465
- <PackageReference Include="Some.Package" />
466
- </ItemGroup>
467
- </Project>
468
- """),
469
- ("Directory.Build.props", "<Project />"),
470
- ("Directory.Packages.props", """
471
- <Project>
472
- <PropertyGroup>
473
- <ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
474
- <SomePackageVersion>9.0.1</SomePackageVersion>
475
- </PropertyGroup>
476
-
477
- <ItemGroup>
478
- <PackageVersion Include="Some.Package" Version="$(SomePackageVersion)" />
479
- </ItemGroup>
480
- </Project>
481
- """)
482
- },
483
- expectedResult: new()
484
- {
485
- Path = "src",
486
- Projects = [
487
- new()
488
- {
489
- FilePath = "project.csproj",
490
- TargetFrameworks = ["net8.0"],
491
- Dependencies = [
492
- new("Some.Package", "9.0.1", DependencyType.PackageReference, TargetFrameworks: ["net8.0"], IsDirect: true)
493
- ],
494
- Properties = [
495
- new("TargetFramework", "net8.0", "src/project.csproj")
496
- ],
497
- ReferencedProjectPaths = [],
498
- ImportedFiles = [
499
- "../Directory.Build.props",
500
- "../Directory.Packages.props",
501
- ],
502
- AdditionalFiles = [],
503
- }
504
- ],
505
- }
506
- );
507
- }
508
-
509
- [Fact]
510
- public async Task TestProps_NoDirectDiscovery()
511
- {
512
- await TestDiscoveryAsync(
513
- experimentsManager: new ExperimentsManager() { UseDirectDiscovery = false },
514
432
  packages:
515
433
  [
516
434
  MockNuGetPackage.CreateSimplePackage("Some.Package", "9.0.1", "net8.0"),
@@ -555,8 +473,6 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
555
473
  new("Some.Package", "9.0.1", DependencyType.PackageReference, TargetFrameworks: ["net8.0"], IsDirect: true)
556
474
  ],
557
475
  Properties = [
558
- new("ManagePackageVersionsCentrally", "true", "Directory.Packages.props"),
559
- new("SomePackageVersion", "9.0.1", "Directory.Packages.props"),
560
476
  new("TargetFramework", "net8.0", "src/project.csproj")
561
477
  ],
562
478
  ReferencedProjectPaths = [],
@@ -572,11 +488,10 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
572
488
  }
573
489
 
574
490
  [Fact]
575
- public async Task TestRepo_DirectDiscovery()
491
+ public async Task TestRepo()
576
492
  {
577
493
  var solutionPath = "solution.sln";
578
494
  await TestDiscoveryAsync(
579
- experimentsManager: new ExperimentsManager() { UseDirectDiscovery = true },
580
495
  packages:
581
496
  [
582
497
  MockNuGetPackage.CreateSimplePackage("Some.Package", "9.0.1", "net7.0"),
@@ -711,7 +626,6 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
711
626
  {
712
627
  var solutionPath = "solution.slnx";
713
628
  await TestDiscoveryAsync(
714
- experimentsManager: new ExperimentsManager() { UseDirectDiscovery = true },
715
629
  packages:
716
630
  [
717
631
  MockNuGetPackage.CreateSimplePackage("Some.Package", "9.0.1", "net7.0"),
@@ -768,7 +682,7 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
768
682
  await TestDiscoveryAsync(
769
683
  packages:
770
684
  [
771
- MockNuGetPackage.CreateSimplePackage("Some.Package", "9.0.1", "net8.0"),
685
+ MockNuGetPackage.CreateSimplePackage("Some.Package", "9.0.1", "net7.0"),
772
686
  ],
773
687
  workspacePath: "",
774
688
  files: new[]
@@ -833,8 +747,6 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
833
747
  new("Some.Package", "9.0.1", DependencyType.PackageReference, TargetFrameworks: ["net7.0", "net8.0"], IsDirect: true)
834
748
  ],
835
749
  Properties = [
836
- new("ManagePackageVersionsCentrally", "true", "Directory.Packages.props"),
837
- new("SomePackageVersion", "9.0.1", "Directory.Packages.props"),
838
750
  new("TargetFrameworks", "net7.0;net8.0", "src/project.csproj"),
839
751
  ],
840
752
  ReferencedProjectPaths = [],
@@ -856,7 +768,7 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
856
768
  await TestDiscoveryAsync(
857
769
  packages:
858
770
  [
859
- MockNuGetPackage.CreateSimplePackage("Some.Package", "9.0.1", "net8.0"),
771
+ MockNuGetPackage.CreateSimplePackage("Some.Package", "9.0.1", "net7.0"),
860
772
  ],
861
773
  workspacePath: "",
862
774
  files: new[]
@@ -906,8 +818,6 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
906
818
  new("Some.Package", "9.0.1", DependencyType.PackageReference, TargetFrameworks: ["net7.0", "net8.0"], IsDirect: true)
907
819
  ],
908
820
  Properties = [
909
- new("ManagePackageVersionsCentrally", "true", "Directory.Packages.props"),
910
- new("SomePackageVersion", "9.0.1", "Directory.Packages.props"),
911
821
  new("TargetFrameworks", "net7.0;net8.0", "src/project.csproj"),
912
822
  ],
913
823
  ReferencedProjectPaths = [],
@@ -923,150 +833,9 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
923
833
  }
924
834
 
925
835
  [Fact]
926
- public async Task TestRepo_NoDirectDiscovery()
927
- {
928
- var solutionPath = "solution.sln";
929
- await TestDiscoveryAsync(
930
- experimentsManager: new ExperimentsManager() { UseDirectDiscovery = false },
931
- packages:
932
- [
933
- MockNuGetPackage.CreateSimplePackage("Some.Package", "9.0.1", "net7.0"),
934
- ],
935
- workspacePath: "",
936
- files: new[]
937
- {
938
- ("src/project.csproj", """
939
- <Project Sdk="Microsoft.NET.Sdk">
940
- <PropertyGroup>
941
- <TargetFrameworks>net7.0;net8.0</TargetFrameworks>
942
- </PropertyGroup>
943
-
944
- <ItemGroup>
945
- <PackageReference Include="Some.Package" />
946
- </ItemGroup>
947
- </Project>
948
- """),
949
- ("Directory.Build.props", "<Project />"),
950
- ("Directory.Packages.props", """
951
- <Project>
952
- <PropertyGroup>
953
- <ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
954
- <SomePackageVersion>9.0.1</SomePackageVersion>
955
- </PropertyGroup>
956
-
957
- <ItemGroup>
958
- <PackageVersion Include="Some.Package" Version="$(SomePackageVersion)" />
959
- </ItemGroup>
960
- </Project>
961
- """),
962
- (solutionPath, """
963
- Microsoft Visual Studio Solution File, Format Version 12.00
964
- # Visual Studio 14
965
- VisualStudioVersion = 14.0.22705.0
966
- MinimumVisualStudioVersion = 10.0.40219.1
967
- Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "project", ".\src\project.csproj", "{782E0C0A-10D3-444D-9640-263D03D2B20C}"
968
- EndProject
969
- Global
970
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
971
- Debug|Any CPU = Debug|Any CPU
972
- Release|Any CPU = Release|Any CPU
973
- EndGlobalSection
974
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
975
- {782E0C0A-10D3-444D-9640-263D03D2B20C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
976
- {782E0C0A-10D3-444D-9640-263D03D2B20C}.Debug|Any CPU.Build.0 = Debug|Any CPU
977
- {782E0C0A-10D3-444D-9640-263D03D2B20C}.Release|Any CPU.ActiveCfg = Release|Any CPU
978
- {782E0C0A-10D3-444D-9640-263D03D2B20C}.Release|Any CPU.Build.0 = Release|Any CPU
979
- EndGlobalSection
980
- GlobalSection(SolutionProperties) = preSolution
981
- HideSolutionNode = FALSE
982
- EndGlobalSection
983
- EndGlobal
984
- """),
985
- ("global.json", """
986
- {
987
- "sdk": {
988
- "version": "6.0.405",
989
- "rollForward": "latestPatch"
990
- },
991
- "msbuild-sdks": {
992
- "My.Custom.Sdk": "5.0.0",
993
- "My.Other.Sdk": "1.0.0-beta"
994
- }
995
- }
996
- """),
997
- (".config/dotnet-tools.json", """
998
- {
999
- "version": 1,
1000
- "isRoot": true,
1001
- "tools": {
1002
- "microsoft.botsay": {
1003
- "version": "1.0.0",
1004
- "commands": [
1005
- "botsay"
1006
- ]
1007
- },
1008
- "dotnetsay": {
1009
- "version": "2.1.3",
1010
- "commands": [
1011
- "dotnetsay"
1012
- ]
1013
- }
1014
- }
1015
- }
1016
- """),
1017
- },
1018
- expectedResult: new()
1019
- {
1020
- Path = "",
1021
- Projects = [
1022
- new()
1023
- {
1024
- FilePath = "src/project.csproj",
1025
- TargetFrameworks = ["net7.0", "net8.0"],
1026
- Dependencies = [
1027
- new("Some.Package", "9.0.1", DependencyType.PackageReference, TargetFrameworks: ["net7.0", "net8.0"], IsDirect: true),
1028
- ],
1029
- Properties = [
1030
- new("ManagePackageVersionsCentrally", "true", "Directory.Packages.props"),
1031
- new("SomePackageVersion", "9.0.1", "Directory.Packages.props"),
1032
- new("TargetFrameworks", "net7.0;net8.0", "src/project.csproj")
1033
- ],
1034
- ReferencedProjectPaths = [],
1035
- ImportedFiles = [
1036
- "../Directory.Build.props",
1037
- "../Directory.Packages.props",
1038
- ],
1039
- AdditionalFiles = [],
1040
- }
1041
- ],
1042
- GlobalJson = new()
1043
- {
1044
- FilePath = "global.json",
1045
- Dependencies = [
1046
- new("My.Custom.Sdk", "5.0.0", DependencyType.MSBuildSdk),
1047
- new("My.Other.Sdk", "1.0.0-beta", DependencyType.MSBuildSdk),
1048
- ]
1049
- },
1050
- DotNetToolsJson = new()
1051
- {
1052
- FilePath = ".config/dotnet-tools.json",
1053
- Dependencies = [
1054
- new("microsoft.botsay", "1.0.0", DependencyType.DotNetTool),
1055
- new("dotnetsay", "2.1.3", DependencyType.DotNetTool),
1056
- ]
1057
- }
1058
- }
1059
- );
1060
- }
1061
-
1062
- [Theory]
1063
- [InlineData(true)]
1064
- [InlineData(false)]
1065
- public async Task NonSupportedProjectExtensionsAreSkipped(bool useDirectDiscovery)
836
+ public async Task NonSupportedProjectExtensionsAreSkipped()
1066
837
  {
1067
- var experimentsManager = new ExperimentsManager() { UseDirectDiscovery = useDirectDiscovery };
1068
838
  await TestDiscoveryAsync(
1069
- experimentsManager: experimentsManager,
1070
839
  packages:
1071
840
  [
1072
841
  MockNuGetPackage.CreateSimplePackage("Some.Package", "1.0.0", "net8.0"),
@@ -1146,14 +915,10 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
1146
915
  );
1147
916
  }
1148
917
 
1149
- [Theory]
1150
- [InlineData(true)]
1151
- [InlineData(false)]
1152
- public async Task DiscoveryReportsDependencyFileNotParseable(bool useDirectDiscovery)
918
+ [Fact]
919
+ public async Task DiscoveryReportsDependencyFileNotParseable()
1153
920
  {
1154
- var experimentsManager = new ExperimentsManager() { UseDirectDiscovery = useDirectDiscovery };
1155
921
  await TestDiscoveryAsync(
1156
- experimentsManager: experimentsManager,
1157
922
  workspacePath: "",
1158
923
  files:
1159
924
  [
@@ -1197,7 +962,7 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
1197
962
  Path = "/",
1198
963
  Projects = [],
1199
964
  });
1200
- var discoveryContents = await File.ReadAllTextAsync(discoveryResultPath);
965
+ var discoveryContents = await File.ReadAllTextAsync(discoveryResultPath, TestContext.Current.CancellationToken);
1201
966
 
1202
967
  // raw result file should look like this:
1203
968
  // {
@@ -1220,10 +985,8 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
1220
985
  Assert.Equal("(<some package feed>)", errorSource.GetString());
1221
986
  }
1222
987
 
1223
- [Theory]
1224
- [InlineData(true)]
1225
- [InlineData(false)]
1226
- public async Task ReportsPrivateSourceAuthenticationFailure(bool useDirectDiscovery)
988
+ [Fact]
989
+ public async Task ReportsPrivateSourceAuthenticationFailure()
1227
990
  {
1228
991
  static (int, string) TestHttpHandler(string uriString)
1229
992
  {
@@ -1265,9 +1028,7 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
1265
1028
  ("NUGET_PLUGINS_CACHE_PATH", Path.Combine(tempDir.DirectoryPath, "NUGET_PLUGINS_CACHE_PATH")),
1266
1029
  ]);
1267
1030
  using var http = TestHttpServer.CreateTestStringServer(TestHttpHandler);
1268
- var experimentsManager = new ExperimentsManager() { UseDirectDiscovery = useDirectDiscovery };
1269
1031
  await TestDiscoveryAsync(
1270
- experimentsManager: experimentsManager,
1271
1032
  workspacePath: "",
1272
1033
  files:
1273
1034
  [
@@ -1342,9 +1103,7 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
1342
1103
  ("NUGET_PLUGINS_CACHE_PATH", Path.Combine(tempDir.DirectoryPath, "NUGET_PLUGINS_CACHE_PATH")),
1343
1104
  ]);
1344
1105
  using var http = TestHttpServer.CreateTestStringServer(TestHttpHandler);
1345
- var experimentsManager = new ExperimentsManager() { UseDirectDiscovery = true };
1346
1106
  await TestDiscoveryAsync(
1347
- experimentsManager: experimentsManager,
1348
1107
  workspacePath: "",
1349
1108
  files:
1350
1109
  [
@@ -1419,9 +1178,7 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
1419
1178
  ("NUGET_PLUGINS_CACHE_PATH", Path.Combine(tempDir.DirectoryPath, "NUGET_PLUGINS_CACHE_PATH")),
1420
1179
  ]);
1421
1180
  using var http = TestHttpServer.CreateTestStringServer(TestHttpHandler);
1422
- var experimentsManager = new ExperimentsManager() { UseDirectDiscovery = true };
1423
1181
  await TestDiscoveryAsync(
1424
- experimentsManager: experimentsManager,
1425
1182
  workspacePath: "",
1426
1183
  files:
1427
1184
  [
@@ -1459,7 +1216,7 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
1459
1216
  // this test mimics a package feed that doesn't have the common Microsoft.Windows.App.Ref package; common in Azure DevOps
1460
1217
  // Windows machines always have the package, so this test only makes sense on Linux
1461
1218
  await TestDiscoveryAsync(
1462
- experimentsManager: new ExperimentsManager() { InstallDotnetSdks = true, UseDirectDiscovery = true },
1219
+ experimentsManager: new ExperimentsManager() { InstallDotnetSdks = true },
1463
1220
  includeCommonPackages: false,
1464
1221
  packages: [
1465
1222
  MockNuGetPackage.CreateSimplePackage("Some.Package", "1.2.3", "net8.0"),
@@ -1507,7 +1264,6 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
1507
1264
  packages: [
1508
1265
  MockNuGetPackage.CreateSimplePackage("Some.Package", "1.2.3", "net8.0", [(null, [("Transitive.Dependency.Does.Not.Exist", "4.5.6")])]),
1509
1266
  ],
1510
- experimentsManager: new ExperimentsManager() { UseDirectDiscovery = true },
1511
1267
  workspacePath: "",
1512
1268
  files: [
1513
1269
  ("project.csproj", """
@@ -1538,7 +1294,6 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
1538
1294
  MockNuGetPackage.CreateSimplePackage("Some.Package", "1.2.3", "net8.0", [(null, [("Transitive.Dependency", "4.5.6")])]),
1539
1295
  MockNuGetPackage.CreateSimplePackage("Transitive.Dependency", "0.1.2", "net8.0"),
1540
1296
  ],
1541
- experimentsManager: new ExperimentsManager() { UseDirectDiscovery = true },
1542
1297
  workspacePath: "",
1543
1298
  files: [
1544
1299
  ("project.csproj", """
@@ -1566,7 +1321,7 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
1566
1321
  {
1567
1322
  await TestDiscoveryAsync(
1568
1323
  packages: [],
1569
- experimentsManager: new ExperimentsManager() { UseDirectDiscovery = true, InstallDotnetSdks = true },
1324
+ experimentsManager: new ExperimentsManager() { InstallDotnetSdks = true },
1570
1325
  workspacePath: "",
1571
1326
  files: [
1572
1327
  ("project.csproj", """
@@ -1597,7 +1352,6 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
1597
1352
  packages: [
1598
1353
  MockNuGetPackage.CreateSimplePackage("Some.Package", "1.2.3", "net8.0"),
1599
1354
  ],
1600
- experimentsManager: new ExperimentsManager() { UseDirectDiscovery = true },
1601
1355
  workspacePath: "",
1602
1356
  files: [
1603
1357
  ("project.csproj", """
@@ -1653,7 +1407,6 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
1653
1407
  using var http2 = TestHttpServer.CreateTestNuGetFeed(MockNuGetPackage.CreateSimplePackage("Package2", "2.0.0", "net9.0"));
1654
1408
  await TestDiscoveryAsync(
1655
1409
  packages: [],
1656
- experimentsManager: new ExperimentsManager() { UseDirectDiscovery = true },
1657
1410
  workspacePath: "/src",
1658
1411
  files: [
1659
1412
  ("src/NuGet.Config", $"""
@@ -637,8 +637,8 @@ public class SdkProjectDiscoveryTests : DiscoveryWorkerTestBase
637
637
 
638
638
  var logger = new TestLogger();
639
639
  var fullProjectPath = Path.Combine(testDirectory.DirectoryPath, projectPath);
640
- var experimentsManager = new ExperimentsManager() { UseDirectDiscovery = true }; // the following method is direct discovery; this just makes the call to Validate... happy
641
- var projectDiscovery = await SdkProjectDiscovery.DiscoverWithBinLogAsync(testDirectory.DirectoryPath, Path.GetDirectoryName(fullProjectPath)!, fullProjectPath, experimentsManager, logger);
640
+ var experimentsManager = new ExperimentsManager();
641
+ var projectDiscovery = await SdkProjectDiscovery.DiscoverAsync(testDirectory.DirectoryPath, Path.GetDirectoryName(fullProjectPath)!, fullProjectPath, experimentsManager, logger);
642
642
  ValidateProjectResults(expectedProjects, projectDiscovery, experimentsManager);
643
643
  }
644
644
  }