You've already forked linux-packaging-mono
Imported Upstream version 4.8.0.371
Former-commit-id: 1cedda3b6a8e480191a7a40a8dc33eb078fba58b
This commit is contained in:
parent
62edeef69b
commit
069517201b
@ -284,6 +284,51 @@ namespace MonoTests.Microsoft.Build.BuildEngine {
|
||||
t [0].RemoveTask (null);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TestRunTargetTwice ()
|
||||
{
|
||||
string documentString = @"<Project xmlns=""http://schemas.microsoft.com/developer/msbuild/2003"">
|
||||
<Target Name=""Foo"">
|
||||
<Message Text=""Foo ran""/>
|
||||
</Target>
|
||||
<Target Name=""Main"">
|
||||
<MSBuild Projects=""$(MSBuildProjectFile)"" Targets=""Foo;Foo"" />
|
||||
</Target>
|
||||
|
||||
</Project>";
|
||||
|
||||
var filepath = Path.GetTempFileName ();
|
||||
try {
|
||||
File.WriteAllText (filepath, documentString);
|
||||
|
||||
var engine = new Engine (Consts.BinPath);
|
||||
var project = engine.CreateNewProject ();
|
||||
project.Load (filepath);
|
||||
|
||||
var logger = new TestMessageLogger ();
|
||||
engine.RegisterLogger (logger);
|
||||
|
||||
var result = project.Build ("Main");
|
||||
if (!result) {
|
||||
logger.DumpMessages ();
|
||||
Assert.Fail ("Build failed, see the logs");
|
||||
}
|
||||
|
||||
Assert.AreEqual(1, logger.NormalMessageCount, "Expected number of messages");
|
||||
logger.CheckLoggedMessageHead ("Foo ran", "A1");
|
||||
|
||||
Assert.AreEqual(0, logger.NormalMessageCount, "Extra messages found");
|
||||
Assert.AreEqual(0, logger.WarningMessageCount, "Extra warning messages found");
|
||||
|
||||
Assert.AreEqual(2, logger.TargetStarted, "TargetStarted count");
|
||||
Assert.AreEqual(2, logger.TargetFinished, "TargetFinished count");
|
||||
|
||||
Assert.IsTrue (result);
|
||||
} finally {
|
||||
File.Delete (filepath);
|
||||
}
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TestTargetOutputs1 ()
|
||||
{
|
||||
|
Reference in New Issue
Block a user