Merge pull request #1066 from esdrubal/bug19313
[mono.git] / mcs / class / Microsoft.Build.Engine / Test / various / EvaluationOrder.cs
index 5ba18b1159724b6b241fabd923f931933e3c65cb..77b45eb5bc059022f7cb782e886c1b5d34b0de7a 100644 (file)
@@ -33,7 +33,7 @@ using NUnit.Framework;
 namespace MonoTests.Microsoft.Build.BuildEngine.Various {
        [TestFixture]
        public class EvaluationOrder {
-               private string GetItems (Project proj, string name)
+               string GetItems (Project proj, string name)
                {
                        BuildItemGroup big = proj.GetEvaluatedItemsByName (name);
                        string str = String.Empty;
@@ -51,7 +51,6 @@ namespace MonoTests.Microsoft.Build.BuildEngine.Various {
                }
 
                [Test]
-               [Category ("NotWorking")]
                public void TestOrder0 ()
                {
                        Engine engine = new Engine (Consts.BinPath);
@@ -78,7 +77,6 @@ namespace MonoTests.Microsoft.Build.BuildEngine.Various {
                }
 
                [Test]
-               [Category ("NotWorking")]
                public void TestOrder1 ()
                {
                        Engine engine = new Engine (Consts.BinPath);
@@ -104,7 +102,6 @@ namespace MonoTests.Microsoft.Build.BuildEngine.Various {
                }
 
                [Test]
-               [Category ("NotWorking")]
                public void TestOrder2 ()
                {
                        Engine engine = new Engine (Consts.BinPath);
@@ -180,7 +177,6 @@ namespace MonoTests.Microsoft.Build.BuildEngine.Various {
                }
 
                [Test]
-               [Category ("NotWorking")]
                public void TestOrder5 ()
                {
                        Engine engine = new Engine (Consts.BinPath);
@@ -237,6 +233,7 @@ namespace MonoTests.Microsoft.Build.BuildEngine.Various {
                }
 
                [Test]
+               [Category ("NotDotNet")]
                public void TestImportOrder1 ()
                {
                        Engine engine = new Engine (Consts.BinPath);
@@ -259,6 +256,7 @@ namespace MonoTests.Microsoft.Build.BuildEngine.Various {
                }
 
                [Test]
+               [Category ("NotDotNet")]
                [ExpectedException (typeof (InvalidProjectFileException))]
                public void TestImportOrder2 ()
                {
@@ -330,6 +328,7 @@ namespace MonoTests.Microsoft.Build.BuildEngine.Various {
                }
 
                [Test]
+               [Category ("NotDotNet")]
                public void TestImportOrder5 ()
                {
                        Engine engine = new Engine (Consts.BinPath);
@@ -352,6 +351,7 @@ namespace MonoTests.Microsoft.Build.BuildEngine.Various {
                }
 
                [Test]
+               [Category ("NotDotNet")]
                public void TestImportOrder6 ()
                {
                        Engine engine = new Engine (Consts.BinPath);
@@ -374,6 +374,7 @@ namespace MonoTests.Microsoft.Build.BuildEngine.Various {
                }
 
                [Test]
+               [Category ("NotDotNet")]
                public void TestImportOrder7 ()
                {
                        Engine engine = new Engine (Consts.BinPath);
@@ -394,5 +395,29 @@ namespace MonoTests.Microsoft.Build.BuildEngine.Various {
                        Assert.AreEqual ("AnotherValue", proj.EvaluatedProperties ["ImportedProperty"].FinalValue, "A1");
                        Assert.AreEqual ("Another$(ImportedProperty)", proj.EvaluatedProperties ["ImportedProperty"].Value, "A2");
                }
+
+               [Test]
+               public void TestUsingTaskOrder1 ()
+               {
+                       Engine engine = new Engine (Consts.BinPath);
+                       Project proj = engine.CreateNewProject ();
+
+                       string documentString = @"
+                               <Project xmlns=""http://schemas.microsoft.com/developer/msbuild/2003"">
+                                       <PropertyGroup>
+                                               <Property>Test\resources\TestTasks.dll</Property>
+                                       </PropertyGroup>
+
+                                       <UsingTask AssemblyFile='$(Property)' TaskName='TrueTestTask' />
+                               </Project>
+                       ";
+
+                       proj.LoadXml (documentString);
+
+                       UsingTask [] ut = new UsingTask [1];
+                       proj.UsingTasks.CopyTo (ut, 0);
+
+                       Assert.AreEqual ("$(Property)", ut [0].AssemblyFile, "A1");
+               }
        }
 }