From e6d8aba4ae6739cfd3e0878c6bce9721ce60edf1 Mon Sep 17 00:00:00 2001 From: John Erickson Date: Wed, 11 Sep 2019 08:22:21 -0700 Subject: [PATCH] Make it so tests are runnable from VS Code (#2348) --- .vscode/settings.json | 4 ++ src/Agent.Listener/Agent.Listener.csproj | 53 ++---------------- src/Agent.PluginHost/Agent.PluginHost.csproj | 53 ++---------------- src/Agent.Plugins/Agent.Plugins.csproj | 53 ++---------------- src/Agent.Sdk/Agent.Sdk.csproj | 52 +----------------- src/Agent.Worker/Agent.Worker.csproj | 53 ++---------------- src/Common.props | 54 +++++++++++++++++++ .../Constants.cs | 4 ++ ...crosoft.VisualStudio.Services.Agent.csproj | 52 ++---------------- src/Test/L0/TestUtil.cs | 11 +++- src/Test/Test.csproj | 54 +------------------ src/dev.sh | 2 - 12 files changed, 90 insertions(+), 355 deletions(-) create mode 100644 .vscode/settings.json create mode 100644 src/Common.props diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000000..30f8ba4a97 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,4 @@ +{ + "dotnet-test-explorer.testProjectPath": "src/Test/Test.csproj", + "dotnet-test-explorer.testArguments": "--no-build" +} \ No newline at end of file diff --git a/src/Agent.Listener/Agent.Listener.csproj b/src/Agent.Listener/Agent.Listener.csproj index 77aec7aeed..6e80dd49e7 100644 --- a/src/Agent.Listener/Agent.Listener.csproj +++ b/src/Agent.Listener/Agent.Listener.csproj @@ -1,13 +1,9 @@  + + - netcoreapp2.1 Exe - win-x64;win-x86;linux-x64;linux-arm;rhel.6-x64;osx-x64 - true - portable-net45+win8 - NU1701;NU1603 - $(Version) @@ -21,49 +17,6 @@ - + - - - portable - - - - OS_WINDOWS;X64;TRACE - - - OS_WINDOWS;X86;TRACE - - - OS_WINDOWS;X64;DEBUG;TRACE - - - OS_WINDOWS;X86;DEBUG;TRACE - - - - OS_OSX;X64;TRACE - - - OS_OSX;DEBUG;X64;TRACE - - - - OS_LINUX;X64;TRACE - - - OS_LINUX;OS_RHEL6;X64;TRACE - - - OS_LINUX;ARM;TRACE - - - OS_LINUX;X64;DEBUG;TRACE - - - OS_LINUX;OS_RHEL6;X64;DEBUG;TRACE - - - OS_LINUX;ARM;DEBUG;TRACE - diff --git a/src/Agent.PluginHost/Agent.PluginHost.csproj b/src/Agent.PluginHost/Agent.PluginHost.csproj index 2408d0740f..27205402b3 100644 --- a/src/Agent.PluginHost/Agent.PluginHost.csproj +++ b/src/Agent.PluginHost/Agent.PluginHost.csproj @@ -1,13 +1,9 @@  + + - netcoreapp2.1 Exe - win-x64;win-x86;linux-x64;linux-arm;rhel.6-x64;osx-x64 - true - portable-net45+win8 - NU1701;NU1603 - $(Version) @@ -15,49 +11,6 @@ - + - - - portable - - - - OS_WINDOWS;X64;TRACE - - - OS_WINDOWS;X86;TRACE - - - OS_WINDOWS;X64;DEBUG;TRACE - - - OS_WINDOWS;X86;DEBUG;TRACE - - - - OS_OSX;X64;TRACE - - - OS_OSX;DEBUG;X64;TRACE - - - - OS_LINUX;X64;TRACE - - - OS_LINUX;OS_RHEL6;X64;TRACE - - - OS_LINUX;ARM;TRACE - - - OS_LINUX;X64;DEBUG;TRACE - - - OS_LINUX;OS_RHEL6;X64;DEBUG;TRACE - - - OS_LINUX;ARM;DEBUG;TRACE - diff --git a/src/Agent.Plugins/Agent.Plugins.csproj b/src/Agent.Plugins/Agent.Plugins.csproj index 69f8c9574f..6048ff467a 100644 --- a/src/Agent.Plugins/Agent.Plugins.csproj +++ b/src/Agent.Plugins/Agent.Plugins.csproj @@ -1,13 +1,9 @@  + + - netcoreapp2.1 Library - win-x64;win-x86;linux-x64;linux-arm;rhel.6-x64;osx-x64 - true - portable-net45+win8 - NU1701;NU1603 - $(Version) @@ -16,49 +12,6 @@ - + - - - portable - - - - OS_WINDOWS;X64;TRACE - - - OS_WINDOWS;X86;TRACE - - - OS_WINDOWS;X64;DEBUG;TRACE - - - OS_WINDOWS;X86;DEBUG;TRACE - - - - OS_OSX;X64;TRACE - - - OS_OSX;DEBUG;X64;TRACE - - - - OS_LINUX;X64;TRACE - - - OS_LINUX;OS_RHEL6;X64;TRACE - - - OS_LINUX;ARM;TRACE - - - OS_LINUX;X64;DEBUG;TRACE - - - OS_LINUX;OS_RHEL6;X64;DEBUG;TRACE - - - OS_LINUX;ARM;DEBUG;TRACE - diff --git a/src/Agent.Sdk/Agent.Sdk.csproj b/src/Agent.Sdk/Agent.Sdk.csproj index c9c1a309f7..5a5b71e34b 100644 --- a/src/Agent.Sdk/Agent.Sdk.csproj +++ b/src/Agent.Sdk/Agent.Sdk.csproj @@ -1,61 +1,13 @@  + - netcoreapp2.1 Library - win-x64;win-x86;linux-x64;linux-arm;rhel.6-x64;osx-x64 - true - portable-net45+win8 - NU1701;NU1603 - $(Version) - + - - - portable - - - - OS_WINDOWS;X64;TRACE - - - OS_WINDOWS;X86;TRACE - - - OS_WINDOWS;X64;DEBUG;TRACE - - - OS_WINDOWS;X86;DEBUG;TRACE - - - - OS_OSX;X64;TRACE - - - OS_OSX;DEBUG;X64;TRACE - - - - OS_LINUX;X64;TRACE - - - OS_LINUX;OS_RHEL6;X64;TRACE - - - OS_LINUX;ARM;TRACE - - - OS_LINUX;X64;DEBUG;TRACE - - - OS_LINUX;OS_RHEL6;X64;DEBUG;TRACE - - - OS_LINUX;ARM;DEBUG;TRACE - diff --git a/src/Agent.Worker/Agent.Worker.csproj b/src/Agent.Worker/Agent.Worker.csproj index fb473acad6..cb0ceec861 100644 --- a/src/Agent.Worker/Agent.Worker.csproj +++ b/src/Agent.Worker/Agent.Worker.csproj @@ -1,13 +1,9 @@  + + - netcoreapp2.1 Exe - win-x64;win-x86;linux-x64;linux-arm;rhel.6-x64;osx-x64 - true - portable-net45+win8 - NU1701;NU1603 - $(Version) @@ -18,49 +14,6 @@ - + - - - portable - - - - OS_WINDOWS;X64;TRACE - - - OS_WINDOWS;X86;TRACE - - - OS_WINDOWS;X64;DEBUG;TRACE - - - OS_WINDOWS;X86;DEBUG;TRACE - - - - OS_OSX;X64;TRACE - - - OS_OSX;DEBUG;X64;TRACE - - - - OS_LINUX;X64;TRACE - - - OS_LINUX;OS_RHEL6;X64;TRACE - - - OS_LINUX;ARM;TRACE - - - OS_LINUX;X64;DEBUG;TRACE - - - OS_LINUX;OS_RHEL6;X64;DEBUG;TRACE - - - OS_LINUX;ARM;DEBUG;TRACE - diff --git a/src/Common.props b/src/Common.props new file mode 100644 index 0000000000..ecfe02d6a9 --- /dev/null +++ b/src/Common.props @@ -0,0 +1,54 @@ + + + netcoreapp2.1 + win-x64;win-x86;linux-x64;linux-arm;rhel.6-x64;osx-x64 + true + portable-net45+win8 + NU1701;NU1603; + OVERRIDE_ME + OS_UNKNOWN + ARCH_UNKNOWN + + 0.5.131-private + + + + portable + DEBUG + + + + OS_WINDOWS + + + OS_OSX + + + OS_LINUX + + + + X64 + + + X86 + + + + X64 + + + + X64 + + + OS_RHEL6;X64 + + + ARM + + + + $(OSPlatform);$(OSArchitecture);$(DebugConstant);TRACE + + \ No newline at end of file diff --git a/src/Microsoft.VisualStudio.Services.Agent/Constants.cs b/src/Microsoft.VisualStudio.Services.Agent/Constants.cs index e259a18aa2..3e3725f798 100644 --- a/src/Microsoft.VisualStudio.Services.Agent/Constants.cs +++ b/src/Microsoft.VisualStudio.Services.Agent/Constants.cs @@ -78,6 +78,8 @@ public static class Agent public static readonly OSPlatform Platform = OSPlatform.OSX; #elif OS_WINDOWS public static readonly OSPlatform Platform = OSPlatform.Windows; +#else + #error Unknown OS #endif #if X86 @@ -88,6 +90,8 @@ public static class Agent public static readonly Architecture PlatformArchitecture = Architecture.Arm; #elif ARM64 public static readonly Architecture PlatformArchitecture = Architecture.Arm64; +#else + #error Unknown Architecture #endif public static readonly TimeSpan ExitOnUnloadTimeout = TimeSpan.FromSeconds(30); diff --git a/src/Microsoft.VisualStudio.Services.Agent/Microsoft.VisualStudio.Services.Agent.csproj b/src/Microsoft.VisualStudio.Services.Agent/Microsoft.VisualStudio.Services.Agent.csproj index 242b1ef76a..f3a35fafe6 100644 --- a/src/Microsoft.VisualStudio.Services.Agent/Microsoft.VisualStudio.Services.Agent.csproj +++ b/src/Microsoft.VisualStudio.Services.Agent/Microsoft.VisualStudio.Services.Agent.csproj @@ -1,13 +1,9 @@  + + - netcoreapp2.1 Library - win-x64;win-x86;linux-x64;linux-arm;rhel.6-x64;osx-x64 - true - portable-net45+win8 - NU1701;NU1603 - $(Version) @@ -19,49 +15,7 @@ - + - - portable - - - - OS_WINDOWS;X64;TRACE - - - OS_WINDOWS;X86;TRACE - - - OS_WINDOWS;X64;DEBUG;TRACE - - - OS_WINDOWS;X86;DEBUG;TRACE - - - - OS_OSX;X64;TRACE - - - OS_OSX;DEBUG;X64;TRACE - - - - OS_LINUX;X64;TRACE - - - OS_LINUX;OS_RHEL6;X64;TRACE - - - OS_LINUX;ARM;TRACE - - - OS_LINUX;X64;DEBUG;TRACE - - - OS_LINUX;OS_RHEL6;X64;DEBUG;TRACE - - - OS_LINUX;ARM;DEBUG;TRACE - diff --git a/src/Test/L0/TestUtil.cs b/src/Test/L0/TestUtil.cs index 4dae9d2236..3519f00eb8 100644 --- a/src/Test/L0/TestUtil.cs +++ b/src/Test/L0/TestUtil.cs @@ -1,7 +1,7 @@ using Microsoft.VisualStudio.Services.Agent.Util; using System.IO; +using System.Runtime.CompilerServices; using Xunit; -using System; namespace Microsoft.VisualStudio.Services.Agent.Tests { @@ -20,9 +20,16 @@ public static string GetProjectPath(string name = "Test") return projectDir; } + private static string GetThisFilePath([CallerFilePath] string path = null) + { + return path; + } + public static string GetSrcPath() { - string srcDir = Environment.GetEnvironmentVariable("VSTS_AGENT_SRC_DIR"); + string L0dir = Path.GetDirectoryName(GetThisFilePath()); + string testDir = Path.GetDirectoryName(L0dir); + string srcDir = Path.GetDirectoryName(testDir); ArgUtil.Directory(srcDir, nameof(srcDir)); Assert.Equal(Src, Path.GetFileName(srcDir)); return srcDir; diff --git a/src/Test/Test.csproj b/src/Test/Test.csproj index 28ba3c8ef3..b54e3d4a94 100644 --- a/src/Test/Test.csproj +++ b/src/Test/Test.csproj @@ -1,12 +1,5 @@  - - - netcoreapp2.1 - win-x64;win-x86;linux-x64;linux-arm;rhel.6-x64;osx-x64 - true - portable-net45+win8 - NU1701;NU1603;NU1603; - + @@ -22,51 +15,8 @@ - + - - - portable - - - - OS_WINDOWS;X64;TRACE - - - OS_WINDOWS;X86;TRACE - - - OS_WINDOWS;X64;DEBUG;TRACE - - - OS_WINDOWS;X86;DEBUG;TRACE - - - - OS_OSX;X64;TRACE - - - OS_OSX;DEBUG;X64;TRACE - - - - OS_LINUX;X64;TRACE - - - OS_LINUX;OS_RHEL6;X64;TRACE - - - OS_LINUX;ARM;TRACE - - - OS_LINUX;X64;DEBUG;TRACE - - - OS_LINUX;OS_RHEL6;X64;DEBUG;TRACE - - - OS_LINUX;ARM;DEBUG;TRACE - diff --git a/src/dev.sh b/src/dev.sh index be3ac5aabc..5467f14336 100755 --- a/src/dev.sh +++ b/src/dev.sh @@ -146,8 +146,6 @@ function runtest () ulimit -n 1024 fi - export VSTS_AGENT_SRC_DIR=${SCRIPT_DIR} - dotnet msbuild -t:test -p:PackageRuntime="${RUNTIME_ID}" -p:BUILDCONFIG="${BUILD_CONFIG}" -p:AgentVersion="${AGENT_VERSION}" || failed "failed tests" }