diff --git a/src/Traversal.UnitTests/TraversalTests.cs b/src/Traversal.UnitTests/TraversalTests.cs index 7da385c6..8214e4d3 100644 --- a/src/Traversal.UnitTests/TraversalTests.cs +++ b/src/Traversal.UnitTests/TraversalTests.cs @@ -154,6 +154,7 @@ public void ProjectReferenceCanSpecifyTargets(string targets, string expected) [InlineData("Clean")] [InlineData("Pack")] [InlineData("Publish")] + [InlineData("PublishContainer")] [InlineData("Test")] [InlineData("VSTest")] public void PropertiesAreSet(string target) @@ -219,15 +220,17 @@ public void PropertiesHaveExpectedValues(string propertyName, string value, stri actualValue.ShouldBe(expectedValue, StringComparer.OrdinalIgnoreCase, customMessage: $"Property {propertyName} should have a value of \"{expectedValue}\" but its value was \"{actualValue}\""); } - [Fact] - public void PublishRespectsNoBuild() + [Theory] + [InlineData("Publish")] + [InlineData("PublishContainer")] + public void PublishRespectsNoBuild(string target) { string[] projects = new[] { ProjectCreator.Create(path: GetTempFileWithExtension(".proj")) .Target("Build") .TaskMessage("02CA9347E8BB4C5E856BC0903780CC9B", MessageImportance.High) - .Target("Publish") + .Target(target) .TaskMessage("20B044FEEC3E435D90CE721012C6577E", MessageImportance.High) .Save(), }.Select(i => i.FullPath).ToArray(); @@ -242,7 +245,7 @@ public void PublishRespectsNoBuild() }), path: GetTempFile("dirs.proj")) .Save() - .TryBuild("Publish", out bool result, out BuildOutput buildOutput); + .TryBuild(target, out bool result, out BuildOutput buildOutput); result.ShouldBeTrue(buildOutput.GetConsoleLog()); @@ -277,6 +280,7 @@ public void SkipsNonExistentTargets() [InlineData("Rebuild")] [InlineData("Pack")] [InlineData("Publish")] + [InlineData("PublishContainer")] [InlineData("Test")] [InlineData("VSTest")] public void StaticGraphProjectReferenceTargetsAreSetForEachTraversalTarget(string target) @@ -453,6 +457,7 @@ public void TraversalsCanSkipProjects() [InlineData("Clean")] [InlineData("Pack")] [InlineData("Publish")] + [InlineData("PublishContainer")] [InlineData("Test")] [InlineData("VSTest")] public void TraversalTargetsRun(string target) @@ -484,6 +489,7 @@ public void TraversalTargetsRun(string target) [InlineData("Rebuild")] [InlineData("Pack")] [InlineData("Publish")] + [InlineData("PublishContainer")] [InlineData("Test")] [InlineData("VSTest")] public void TraversalTargetsShouldBeConditionedOnIsGraphBuild(string target) diff --git a/src/Traversal/Sdk/Traversal.targets b/src/Traversal/Sdk/Traversal.targets index 30582484..bd93f9ea 100644 --- a/src/Traversal/Sdk/Traversal.targets +++ b/src/Traversal/Sdk/Traversal.targets @@ -40,6 +40,7 @@ + @@ -50,6 +51,7 @@ + @@ -101,6 +103,13 @@ + + Build; + + + + + @@ -246,6 +255,27 @@ ContinueOnError="$([MSBuild]::ValueOrDefault('$(PublishContinueOnError)', '$(ContinueOnError)'))" /> + + + + + +