diff --git a/Packages.props b/Packages.props index bbe8b212..7137d4df 100644 --- a/Packages.props +++ b/Packages.props @@ -18,6 +18,7 @@ + diff --git a/azure-pipelines.yml b/azure-pipelines.yml index e0146920..27247190 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -102,11 +102,6 @@ jobs: vmImage: ubuntu-latest steps: - - task: UseDotNet@2 - displayName: 'Install .NET Core $(DotNet3Version)' - inputs: - version: '$(DotNet3Version)' - - task: UseDotNet@2 displayName: 'Install .NET $(DotNet5Version)' inputs: @@ -123,14 +118,6 @@ jobs: command: 'build' arguments: '$(MSBuildArgs)' - - task: DotNetCoreCLI@2 - displayName: 'Run Unit Tests (.NET Core 3.0)' - inputs: - command: 'test' - arguments: '--no-restore --no-build --framework netcoreapp3.1 /noautorsp' - testRunTitle: 'Linux .NET Core 3.0' - condition: succeededOrFailed() - - task: DotNetCoreCLI@2 displayName: 'Run Unit Tests (.NET 5.0)' inputs: @@ -160,11 +147,6 @@ jobs: vmImage: macOS-latest steps: - - task: UseDotNet@2 - displayName: 'Install .NET Core $(DotNet3Version)' - inputs: - version: '$(DotNet3Version)' - - task: UseDotNet@2 displayName: 'Install .NET $(DotNet5Version)' inputs: @@ -181,14 +163,6 @@ jobs: command: 'build' arguments: '$(MSBuildArgs)' - - task: DotNetCoreCLI@2 - displayName: 'Run Unit Tests (.NET Core 3.0)' - inputs: - command: 'test' - arguments: '--no-restore --no-build --framework netcoreapp3.1 /noautorsp' - testRunTitle: 'MacOS .NET Core 3.0' - condition: succeededOrFailed() - - task: DotNetCoreCLI@2 displayName: 'Run Unit Tests (.NET 5.0)' inputs: diff --git a/src/CentralPackageVersions.UnitTests/CentralPackageVersionsTests.cs b/src/CentralPackageVersions.UnitTests/CentralPackageVersionsTests.cs index a41001ed..e18798b7 100644 --- a/src/CentralPackageVersions.UnitTests/CentralPackageVersionsTests.cs +++ b/src/CentralPackageVersions.UnitTests/CentralPackageVersionsTests.cs @@ -40,8 +40,7 @@ public void CanBeExplicitlyEnabled(bool createPackagesConfig, string extension) ["DisableImplicitFrameworkReferences"] = "true", }), projectCreator: creator => creator - .Property("EnableCentralPackageVersions", "true") - .Import(Path.Combine(ThisAssemblyDirectory, @"Sdk\Sdk.targets"))) + .Property("EnableCentralPackageVersions", "true")) .TryGetPropertyValue("EnableCentralPackageVersions", out string enableCentralPackageVersions); enableCentralPackageVersions.ShouldBe("true"); @@ -64,8 +63,7 @@ public void CanDisableCentralPackageVersions(string projectFileExtension) ["DisableImplicitFrameworkReferences"] = "true", }), projectCreator: creator => creator - .ItemPackageReference("Foo", "10.0.0") - .Import(Path.Combine(ThisAssemblyDirectory, @"Sdk\Sdk.targets"))) + .ItemPackageReference("Foo", "10.0.0")) .TryBuild("CheckPackageReferences", out bool result, out BuildOutput buildOutput) .Project .GetItems("PackageReference") @@ -96,8 +94,7 @@ public void CanDisableGlobalPackageReferences(string projectFileExtension) ["EnableGlobalPackageReferences"] = "false", }), projectCreator: creator => creator - .ItemPackageReference("Foo") - .Import(Path.Combine(ThisAssemblyDirectory, @"Sdk\Sdk.targets"))) + .ItemPackageReference("Foo")) .TryBuild("CheckPackageReferences", out bool result, out BuildOutput buildOutput) .Project .GetItems("PackageReference") @@ -134,8 +131,7 @@ public void CanOverridePackageVersion(string projectFileExtension) metadata: new Dictionary { ["VersionOverride"] = "9.0.1", - }) - .Import(Path.Combine(ThisAssemblyDirectory, @"Sdk\Sdk.targets"))) + })) .TryBuild("CheckPackageReferences", out bool result, out BuildOutput buildOutput) .Project .GetItems("PackageReference") @@ -164,9 +160,7 @@ public void FSharpCorePackageReferenceCanBeDisabled() { ["UpdateImplicitFSharpCoreReference"] = "false", }), - targetFramework: "net46", - projectCreator: creator => creator - .Import(Path.Combine(ThisAssemblyDirectory, @"Sdk\Sdk.targets"))) + targetFramework: "net46") .TryGetItems("PackageReference", out IReadOnlyCollection items); items.Where(i => i.EvaluatedInclude.Equals("FSharp.Core")) @@ -182,9 +176,7 @@ public void FSharpCorePackageReferenceNoSystemValueTupleForNetStandardProjects() ProjectCreator.Templates .SdkCsproj( - path: Path.Combine(TestRootPath, "test.fsproj"), - projectCreator: creator => creator - .Import(Path.Combine(ThisAssemblyDirectory, @"Sdk\Sdk.targets"))) + path: Path.Combine(TestRootPath, "test.fsproj")) .TryGetItems("PackageReference", out IReadOnlyCollection items); items.Where(i => i.EvaluatedInclude.Equals("FSharp.Core")) @@ -203,9 +195,7 @@ public void FSharpCorePackageReferenceUpdated() ProjectCreator.Templates .SdkCsproj( path: Path.Combine(TestRootPath, "test.fsproj"), - targetFramework: "net46", - projectCreator: creator => creator - .Import(Path.Combine(ThisAssemblyDirectory, @"Sdk\Sdk.targets"))) + targetFramework: "net46") .TryGetItems("PackageReference", out IReadOnlyCollection items); items.Where(i => i.EvaluatedInclude.Equals("FSharp.Core")) @@ -240,9 +230,7 @@ public void IsDisabledForProjectsWithPackagesConfigOrDoNotSupportPackageReferenc projectCollection: new ProjectCollection(new Dictionary { ["DisableImplicitFrameworkReferences"] = "true", - }), - projectCreator: creator => creator - .Import(Path.Combine(ThisAssemblyDirectory, @"Sdk\Sdk.targets"))) + })) .TryGetPropertyValue("EnableCentralPackageVersions", out string enableCentralPackageVersions); enableCentralPackageVersions.ShouldBe("false"); @@ -261,8 +249,7 @@ public void LogErrorIfProjectSpecifiesGlobalPackageReference(string projectFileE path: Path.Combine(TestRootPath, $"test.{projectFileExtension}"), projectCreator: creator => creator .ItemPackageReference("Foo") - .ItemPackageReference("Global1") - .Import(Path.Combine(ThisAssemblyDirectory, @"Sdk\Sdk.targets"))) + .ItemPackageReference("Global1")) .TryBuild("CheckPackageReferences", out bool result, out BuildOutput buildOutput); result.ShouldBeFalse(buildOutput.GetConsoleLog()); @@ -283,8 +270,7 @@ public void LogErrorIfProjectSpecifiesUnknownPackage(string projectFileExtension path: Path.Combine(TestRootPath, $"test.{projectFileExtension}"), projectCreator: creator => creator .ItemPackageReference("Foo") - .ItemPackageReference("Baz") - .Import(Path.Combine(ThisAssemblyDirectory, @"Sdk\Sdk.targets"))) + .ItemPackageReference("Baz")) .TryBuild("CheckPackageReferences", out bool result, out BuildOutput buildOutput); result.ShouldBeFalse(buildOutput.GetConsoleLog()); @@ -304,8 +290,7 @@ public void LogErrorIfProjectSpecifiesVersion(string projectFileExtension) .SdkCsproj( path: Path.Combine(TestRootPath, $"test.{projectFileExtension}"), projectCreator: creator => creator - .ItemPackageReference("Foo", "10.0.0") - .Import(Path.Combine(ThisAssemblyDirectory, @"Sdk\Sdk.targets"))) + .ItemPackageReference("Foo", "10.0.0")) .TryBuild("CheckPackageReferences", out bool result, out BuildOutput buildOutput); result.ShouldBeFalse(buildOutput.GetConsoleLog()); @@ -330,8 +315,7 @@ public void LogErrorIfProjectSpecifiesVersionAndVersionOverrideIsDisabled(string ["EnablePackageVersionOverride"] = "false", }), projectCreator: creator => creator - .ItemPackageReference("Foo", "10.0.0") - .Import(Path.Combine(ThisAssemblyDirectory, @"Sdk\Sdk.targets"))) + .ItemPackageReference("Foo", "10.0.0")) .TryBuild("CheckPackageReferences", out bool result, out BuildOutput buildOutput); result.ShouldBeFalse(buildOutput.GetConsoleLog()); @@ -350,8 +334,7 @@ public void MicrosoftAspNetCoreAllUpdated() targetFramework: "netcoreapp2.0", sdk: "Microsoft.NET.Sdk.Web", projectCreator: creator => creator - .ItemPackageReference("Microsoft.AspNetCore.All") - .Import(Path.Combine(ThisAssemblyDirectory, @"Sdk\Sdk.targets"))) + .ItemPackageReference("Microsoft.AspNetCore.All")) .TryGetItems("PackageReference", out IReadOnlyCollection items); items.Where(i => i.EvaluatedInclude.Equals("Microsoft.AspNetCore.All")) @@ -371,8 +354,7 @@ public void MicrosoftAspNetCoreAppUpdated() targetFramework: "netcoreapp2.0", sdk: "Microsoft.NET.Sdk.Web", projectCreator: creator => creator - .ItemPackageReference("Microsoft.AspNetCore.App") - .Import(Path.Combine(ThisAssemblyDirectory, @"Sdk\Sdk.targets"))) + .ItemPackageReference("Microsoft.AspNetCore.App")) .TryGetItems("PackageReference", out IReadOnlyCollection items); items.Where(i => i.EvaluatedInclude.Equals("Microsoft.AspNetCore.App")) @@ -398,8 +380,7 @@ public void PackageVersionsAreApplied(string projectFileExtension) }), projectCreator: creator => creator .ItemPackageReference("Foo") - .ItemPackageReference("Bar") - .Import(Path.Combine(ThisAssemblyDirectory, @"Sdk\Sdk.targets"))) + .ItemPackageReference("Bar")) .Project .GetItems("PackageReference") .Where(i => !i.EvaluatedInclude.Equals("FSharp.Core")) @@ -412,6 +393,20 @@ public void PackageVersionsAreApplied(string projectFileExtension) }); } + [Theory] + [InlineData("UsingMicrosoftCentralPackageVersionsSdk", "true")] + public void PropertiesAreSet(string propertyName, string expectedValue) + { + WritePackagesProps(); + + ProjectCreator.Templates + .SdkCsproj() + .Save(GetTempFileWithExtension(".csproj")) + .TryGetPropertyValue(propertyName, out string actualValue); + + actualValue.ShouldBe(expectedValue); + } + [Theory] [InlineData(".csproj")] [InlineData(".fsproj")] @@ -434,8 +429,7 @@ public void VersionOverridesWithoutCentralVersionsAreAllowed(string projectFileE metadata: new Dictionary { ["VersionOverride"] = "1.0.0", - }) - .Import(Path.Combine(ThisAssemblyDirectory, @"Sdk\Sdk.targets"))) + })) .TryBuild("CheckPackageReferences", out bool result, out BuildOutput buildOutput); result.ShouldBeTrue(buildOutput.GetConsoleLog()); @@ -463,8 +457,7 @@ public void VersionOverridesWithoutCentralVersionsCanBeDisabled(string projectFi metadata: new Dictionary { ["VersionOverride"] = "1.0.0", - }) - .Import(Path.Combine(ThisAssemblyDirectory, @"Sdk\Sdk.targets"))) + })) .TryBuild("CheckPackageReferences", out bool result, out BuildOutput buildOutput); result.ShouldBeFalse(buildOutput.GetConsoleLog()); @@ -474,6 +467,14 @@ public void VersionOverridesWithoutCentralVersionsCanBeDisabled(string projectFi private ProjectCreator WritePackagesProps() { + ProjectCreator.Create() + .Save(Path.Combine(TestRootPath, "Directory.Build.props")); + + ProjectCreator.Create() + .Import(Path.Combine(ThisAssemblyDirectory, @"Sdk\Sdk.props")) + .Import(Path.Combine(ThisAssemblyDirectory, @"Sdk\Sdk.targets")) + .Save(Path.Combine(TestRootPath, "Directory.Build.targets")); + return ProjectCreator.Templates .PackagesProps( path: Path.Combine(TestRootPath, "Packages.props"), diff --git a/src/CentralPackageVersions/Sdk/Sdk.props b/src/CentralPackageVersions/Sdk/Sdk.props index 75efc66a..d3e4c500 100644 --- a/src/CentralPackageVersions/Sdk/Sdk.props +++ b/src/CentralPackageVersions/Sdk/Sdk.props @@ -9,6 +9,7 @@ $(MSBuildAllProjects);$(MsBuildThisFileFullPath) + true diff --git a/src/CentralPackageVersions/version.json b/src/CentralPackageVersions/version.json index 56f9ed19..74bc3080 100644 --- a/src/CentralPackageVersions/version.json +++ b/src/CentralPackageVersions/version.json @@ -1,4 +1,4 @@ { "inherit": true, - "version": "2.0" + "version": "2.1" } \ No newline at end of file