From 3c7664810abffc20ecbaef55644488ff2f0df282 Mon Sep 17 00:00:00 2001 From: Jared Parsons Date: Fri, 28 Oct 2016 10:52:17 -0700 Subject: [PATCH] Added a regression test --- .../MSBuildTaskTests/MSBuildTaskTests.csproj | 7 +++- .../Core/MSBuildTaskTests/MiscTests.cs | 36 +++++++++++++++++++ .../Core/MSBuildTaskTests/project.json | 1 + 3 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 src/Compilers/Core/MSBuildTaskTests/MiscTests.cs diff --git a/src/Compilers/Core/MSBuildTaskTests/MSBuildTaskTests.csproj b/src/Compilers/Core/MSBuildTaskTests/MSBuildTaskTests.csproj index 14720135bdf..def594d8e5c 100644 --- a/src/Compilers/Core/MSBuildTaskTests/MSBuildTaskTests.csproj +++ b/src/Compilers/Core/MSBuildTaskTests/MSBuildTaskTests.csproj @@ -23,6 +23,10 @@ {76C6F005-C89D-4348-BB4A-391898DBEB52} TestUtilities.Desktop + + {b501a547-c911-4a05-ac6e-274a50dff30e} + CSharpCodeAnalysis + {7FE6B002-89D8-4298-9B1B-0B5C247DD1FD} CompilerTestResources @@ -72,6 +76,7 @@ + @@ -86,4 +91,4 @@ - + \ No newline at end of file diff --git a/src/Compilers/Core/MSBuildTaskTests/MiscTests.cs b/src/Compilers/Core/MSBuildTaskTests/MiscTests.cs new file mode 100644 index 00000000000..2ef28dcf34a --- /dev/null +++ b/src/Compilers/Core/MSBuildTaskTests/MiscTests.cs @@ -0,0 +1,36 @@ +// Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. + +using System; +using System.Linq; +using Microsoft.Build.Framework; +using Microsoft.CodeAnalysis.BuildTasks; +using Xunit; +using Moq; +using Roslyn.Test.Utilities; +using Microsoft.CodeAnalysis.CSharp; +using System.Collections.Immutable; + +namespace Microsoft.CodeAnalysis.BuildTasks.UnitTests +{ + public sealed class MiscTests + { + /// + /// The build task very deliberately does not depend on any of our shipping binaries. This is to avoid + /// potential load conflicts for dependencies when loading custom versions of our task. + /// + [Fact] + [WorkItem(1183, "https://github.com/Microsoft/msbuild/issues/1183")] + public void EnsureDependencies() + { + var assembly = typeof(ManagedCompiler).Assembly; + foreach (var name in assembly.GetReferencedAssemblies()) + { + var isBadRef = + name.Name == typeof(Compilation).Assembly.GetName().Name || + name.Name == typeof(CSharpCompilation).Assembly.GetName().Name || + name.Name == typeof(ImmutableArray).Assembly.GetName().Name; + Assert.False(isBadRef); + } + } + } +} diff --git a/src/Compilers/Core/MSBuildTaskTests/project.json b/src/Compilers/Core/MSBuildTaskTests/project.json index d0cd9dd455b..8cf75d8085a 100644 --- a/src/Compilers/Core/MSBuildTaskTests/project.json +++ b/src/Compilers/Core/MSBuildTaskTests/project.json @@ -2,6 +2,7 @@ "dependencies": { "xunit": "2.1.0", "xunit.runner.console": "2.2.0-beta1-build3239", + "System.Collections.Immutable": "1.2.0", "Roslyn.Microsoft.Build": "0.0.2", "Moq": "4.2.1402.2112" }, -- GitLab