Imported Upstream version 5.0.0.42

Former-commit-id: fd56571888259555122d8a0f58c68838229cea2b
This commit is contained in:
Xamarin Public Jenkins (auto-signing)
2017-04-10 11:41:01 +00:00
parent 1190d13a04
commit 6bdd276d05
19939 changed files with 3099680 additions and 93811 deletions

View File

@@ -24,6 +24,7 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
using System;
using System.IO;
using Microsoft.Build.BuildEngine;
using NUnit.Framework;
@@ -61,6 +62,11 @@ namespace MonoTests.Microsoft.Build.BuildEngine {
</Project>
";
if (Path.DirectorySeparatorChar == '\\') {
documentString = documentString.Replace ("/home", "c:/home");
documentString = documentString.Replace ("/tmp", "c:/tmp");
}
var engine = new Engine (Consts.BinPath);
var project = engine.CreateNewProject ();
project.LoadXml (documentString);

View File

@@ -40,6 +40,7 @@ namespace MonoTests.Microsoft.Build.BuildEngine {
[TestFixture]
public class TargetTest {
static bool isMono = Type.GetType ("Mono.Runtime", false) != null;
Engine engine;
Project project;
@@ -396,16 +397,16 @@ namespace MonoTests.Microsoft.Build.BuildEngine {
bool Build (string projectXml, ILogger logger)
{
if (Environment.OSVersion.Platform == PlatformID.Win32NT) {
if (!isMono) {
var reader = new StringReader (projectXml);
var xml = XmlReader.Create (reader);
return BuildOnWindows (xml, logger);
return BuildOnDotNet (xml, logger);
} else {
return BuildOnLinux (projectXml, logger);
return BuildOnMono (projectXml, logger);
}
}
bool BuildOnWindows (XmlReader reader, ILogger logger)
bool BuildOnDotNet (XmlReader reader, ILogger logger)
{
var type = Type.GetType ("Microsoft.Build.Evaluation.ProjectCollection, Microsoft.Build, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a");
@@ -421,7 +422,7 @@ namespace MonoTests.Microsoft.Build.BuildEngine {
return ret;
}
bool BuildOnLinux (string projectXml, ILogger logger)
bool BuildOnMono (string projectXml, ILogger logger)
{
var engine = new Engine (Consts.BinPath);
var project = engine.CreateNewProject ();