Make UseRazorBuildServer=true by default
This commit is contained in:
parent
27e6c699e5
commit
0d321771ad
|
|
@ -59,9 +59,9 @@ Copyright (c) .NET Foundation. All rights reserved.
|
||||||
<IncludeRazorContentInPack Condition="'$(IncludeRazorContentInPack)'==''">false</IncludeRazorContentInPack>
|
<IncludeRazorContentInPack Condition="'$(IncludeRazorContentInPack)'==''">false</IncludeRazorContentInPack>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
Set to true to allow a Razor code generation to use a persistent build server process.
|
Set to false to disable Razor code generation from using a persistent build server process.
|
||||||
-->
|
-->
|
||||||
<UseRazorBuildServer Condition="'$(UseRazorBuildServer)'==''">false</UseRazorBuildServer>
|
<UseRazorBuildServer Condition="'$(UseRazorBuildServer)'==''">true</UseRazorBuildServer>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup Condition="'$(EnableDefaultItems)' == 'true' And '$(EnableDefaultContentItems)' == 'true'">
|
<ItemGroup Condition="'$(EnableDefaultItems)' == 'true' And '$(EnableDefaultContentItems)' == 'true'">
|
||||||
|
|
|
||||||
|
|
@ -10,8 +10,13 @@ using Xunit;
|
||||||
|
|
||||||
namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
||||||
{
|
{
|
||||||
public class BuildIncrementalismTest : MSBuildIntegrationTestBase
|
public class BuildIncrementalismTest : MSBuildIntegrationTestBase, IClassFixture<BuildServerTestFixture>
|
||||||
{
|
{
|
||||||
|
public BuildIncrementalismTest(BuildServerTestFixture buildServer)
|
||||||
|
: base(buildServer)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
[InitializeTestProject("SimpleMvc")]
|
[InitializeTestProject("SimpleMvc")]
|
||||||
public async Task BuildIncremental_SimpleMvc_PersistsTargetInputFile()
|
public async Task BuildIncremental_SimpleMvc_PersistsTargetInputFile()
|
||||||
|
|
|
||||||
|
|
@ -12,23 +12,32 @@ using Xunit;
|
||||||
|
|
||||||
namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
||||||
{
|
{
|
||||||
public class BuildIntegrationTest : MSBuildIntegrationTestBase
|
public class BuildIntegrationTest : MSBuildIntegrationTestBase, IClassFixture<BuildServerTestFixture>
|
||||||
{
|
{
|
||||||
|
public BuildIntegrationTest(BuildServerTestFixture buildServer)
|
||||||
|
: base(buildServer)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
[InitializeTestProject("SimpleMvc")]
|
[InitializeTestProject("SimpleMvc")]
|
||||||
public Task Build_SimpleMvc_UsingDotnetMSBuild_CanBuildSuccessfully()
|
public Task Build_SimpleMvc_UsingDotnetMSBuildAndWithoutBuildServer_CanBuildSuccessfully()
|
||||||
=> Build_SimpleMvc_CanBuildSuccessfully(MSBuildProcessKind.Dotnet);
|
=> Build_SimpleMvc_WithoutBuildServer_CanBuildSuccessfully(MSBuildProcessKind.Dotnet);
|
||||||
|
|
||||||
[ConditionalFact]
|
[ConditionalFact]
|
||||||
[OSSkipCondition(OperatingSystems.Linux)]
|
[OSSkipCondition(OperatingSystems.Linux)]
|
||||||
[OSSkipCondition(OperatingSystems.MacOSX)]
|
[OSSkipCondition(OperatingSystems.MacOSX)]
|
||||||
[InitializeTestProject("SimpleMvc")]
|
[InitializeTestProject("SimpleMvc")]
|
||||||
public Task Build_SimpleMvc_UsingDesktopMSBuild_CanBuildSuccessfully()
|
public Task Build_SimpleMvc_UsingDesktopMSBuildAndWithoutBuildServer_CanBuildSuccessfully()
|
||||||
=> Build_SimpleMvc_CanBuildSuccessfully(MSBuildProcessKind.Desktop);
|
=> Build_SimpleMvc_WithoutBuildServer_CanBuildSuccessfully(MSBuildProcessKind.Desktop);
|
||||||
|
|
||||||
private async Task Build_SimpleMvc_CanBuildSuccessfully(MSBuildProcessKind msBuildProcessKind)
|
// This test is identical to the ones in BuildServerIntegrationTest except this one explicitly disables the Razor build server.
|
||||||
|
private async Task Build_SimpleMvc_WithoutBuildServer_CanBuildSuccessfully(MSBuildProcessKind msBuildProcessKind)
|
||||||
{
|
{
|
||||||
var result = await DotnetMSBuild("Build", msBuildProcessKind: msBuildProcessKind);
|
var result = await DotnetMSBuild("Build",
|
||||||
|
"/p:UseRazorBuildServer=false",
|
||||||
|
suppressBuildServer: true,
|
||||||
|
msBuildProcessKind: msBuildProcessKind);
|
||||||
|
|
||||||
Assert.BuildPassed(result);
|
Assert.BuildPassed(result);
|
||||||
Assert.FileExists(result, OutputPath, "SimpleMvc.dll");
|
Assert.FileExists(result, OutputPath, "SimpleMvc.dll");
|
||||||
|
|
|
||||||
|
|
@ -7,8 +7,13 @@ using Xunit;
|
||||||
|
|
||||||
namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
||||||
{
|
{
|
||||||
public class BuildIntrospectionTest : MSBuildIntegrationTestBase
|
public class BuildIntrospectionTest : MSBuildIntegrationTestBase, IClassFixture<BuildServerTestFixture>
|
||||||
{
|
{
|
||||||
|
public BuildIntrospectionTest(BuildServerTestFixture buildServer)
|
||||||
|
: base(buildServer)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
[InitializeTestProject("SimpleMvc")]
|
[InitializeTestProject("SimpleMvc")]
|
||||||
public async Task RazorSdk_AddsCshtmlFilesToUpToDateCheckInput()
|
public async Task RazorSdk_AddsCshtmlFilesToUpToDateCheckInput()
|
||||||
|
|
|
||||||
|
|
@ -10,11 +10,9 @@ namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
||||||
{
|
{
|
||||||
public class BuildServerIntegrationTest : MSBuildIntegrationTestBase, IClassFixture<BuildServerTestFixture>
|
public class BuildServerIntegrationTest : MSBuildIntegrationTestBase, IClassFixture<BuildServerTestFixture>
|
||||||
{
|
{
|
||||||
private readonly string _pipeName;
|
public BuildServerIntegrationTest(BuildServerTestFixture buildServer)
|
||||||
|
: base(buildServer)
|
||||||
public BuildServerIntegrationTest(BuildServerTestFixture fixture)
|
|
||||||
{
|
{
|
||||||
_pipeName = fixture.PipeName;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
|
|
@ -32,7 +30,7 @@ namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
||||||
{
|
{
|
||||||
var result = await DotnetMSBuild(
|
var result = await DotnetMSBuild(
|
||||||
"Build",
|
"Build",
|
||||||
$"/p:UseRazorBuildServer=true /p:_RazorBuildServerPipeName={_pipeName} /p:_RazorForceBuildServer=true",
|
"/p:_RazorForceBuildServer=true",
|
||||||
msBuildProcessKind: msBuildProcessKind);
|
msBuildProcessKind: msBuildProcessKind);
|
||||||
|
|
||||||
Assert.BuildPassed(result);
|
Assert.BuildPassed(result);
|
||||||
|
|
@ -59,7 +57,7 @@ namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
||||||
{
|
{
|
||||||
var result = await DotnetMSBuild(
|
var result = await DotnetMSBuild(
|
||||||
"Build",
|
"Build",
|
||||||
$"/p:UseRazorBuildServer=true /p:_RazorBuildServerPipeName={_pipeName} /p:_RazorForceBuildServer=true");
|
"/p:_RazorForceBuildServer=true");
|
||||||
|
|
||||||
Assert.BuildPassed(result);
|
Assert.BuildPassed(result);
|
||||||
Assert.FileExists(result, OutputPath, "SimpleMvc.dll");
|
Assert.FileExists(result, OutputPath, "SimpleMvc.dll");
|
||||||
|
|
@ -74,7 +72,7 @@ namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
||||||
{
|
{
|
||||||
var result = await DotnetMSBuild(
|
var result = await DotnetMSBuild(
|
||||||
"Build",
|
"Build",
|
||||||
$"/p:UseRazorBuildServer=true /p:_RazorBuildServerPipeName={_pipeName} /p:_RazorForceBuildServer=true");
|
"/p:_RazorForceBuildServer=true");
|
||||||
|
|
||||||
Assert.BuildPassed(result);
|
Assert.BuildPassed(result);
|
||||||
Assert.FileExists(result, OutputPath, "Whitespace in name.dll");
|
Assert.FileExists(result, OutputPath, "Whitespace in name.dll");
|
||||||
|
|
|
||||||
|
|
@ -7,8 +7,13 @@ using Xunit;
|
||||||
|
|
||||||
namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
||||||
{
|
{
|
||||||
public class ConfigurationMetadataIntegrationTest : MSBuildIntegrationTestBase
|
public class ConfigurationMetadataIntegrationTest : MSBuildIntegrationTestBase, IClassFixture<BuildServerTestFixture>
|
||||||
{
|
{
|
||||||
|
public ConfigurationMetadataIntegrationTest(BuildServerTestFixture buildServer)
|
||||||
|
: base(buildServer)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
[InitializeTestProject("SimpleMvc")]
|
[InitializeTestProject("SimpleMvc")]
|
||||||
public async Task Build_WithMvc_AddsConfigurationMetadata()
|
public async Task Build_WithMvc_AddsConfigurationMetadata()
|
||||||
|
|
|
||||||
|
|
@ -6,8 +6,13 @@ using Xunit;
|
||||||
|
|
||||||
namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
||||||
{
|
{
|
||||||
public class DesignTimeBuildIntegrationTest : MSBuildIntegrationTestBase
|
public class DesignTimeBuildIntegrationTest : MSBuildIntegrationTestBase, IClassFixture<BuildServerTestFixture>
|
||||||
{
|
{
|
||||||
|
public DesignTimeBuildIntegrationTest(BuildServerTestFixture buildServer)
|
||||||
|
: base(buildServer)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
[InitializeTestProject("SimpleMvc")]
|
[InitializeTestProject("SimpleMvc")]
|
||||||
public async Task DesignTimeBuild_DoesNotRunRazorTargets()
|
public async Task DesignTimeBuild_DoesNotRunRazorTargets()
|
||||||
|
|
|
||||||
|
|
@ -15,8 +15,9 @@ namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
||||||
{
|
{
|
||||||
private static readonly AsyncLocal<ProjectDirectory> _project = new AsyncLocal<ProjectDirectory>();
|
private static readonly AsyncLocal<ProjectDirectory> _project = new AsyncLocal<ProjectDirectory>();
|
||||||
|
|
||||||
protected MSBuildIntegrationTestBase()
|
protected MSBuildIntegrationTestBase(BuildServerTestFixture buildServer)
|
||||||
{
|
{
|
||||||
|
BuildServer = buildServer;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if DEBUG
|
#if DEBUG
|
||||||
|
|
@ -44,19 +45,35 @@ namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
||||||
|
|
||||||
protected string TargetFramework { get; set; } = "netcoreapp2.0";
|
protected string TargetFramework { get; set; } = "netcoreapp2.0";
|
||||||
|
|
||||||
|
protected BuildServerTestFixture BuildServer { get; set; }
|
||||||
|
|
||||||
internal Task<MSBuildResult> DotnetMSBuild(
|
internal Task<MSBuildResult> DotnetMSBuild(
|
||||||
string target,
|
string target,
|
||||||
string args = null,
|
string args = null,
|
||||||
bool suppressRestore = false,
|
bool suppressRestore = false,
|
||||||
bool suppressTimeout = false,
|
bool suppressTimeout = false,
|
||||||
|
bool suppressBuildServer = false,
|
||||||
MSBuildProcessKind msBuildProcessKind = MSBuildProcessKind.Dotnet)
|
MSBuildProcessKind msBuildProcessKind = MSBuildProcessKind.Dotnet)
|
||||||
{
|
{
|
||||||
var timeout = suppressTimeout ? (TimeSpan?)Timeout.InfiniteTimeSpan : null;
|
var timeout = suppressTimeout ? (TimeSpan?)Timeout.InfiniteTimeSpan : null;
|
||||||
var restoreArgument = suppressRestore ? "" : "/restore";
|
var buildArgumentList = new List<string>();
|
||||||
|
|
||||||
|
if (!suppressRestore)
|
||||||
|
{
|
||||||
|
buildArgumentList.Add("/restore");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!suppressBuildServer)
|
||||||
|
{
|
||||||
|
buildArgumentList.Add($"/p:_RazorBuildServerPipeName={BuildServer.PipeName}");
|
||||||
|
}
|
||||||
|
|
||||||
|
buildArgumentList.Add($"/t:{target} /p:Configuration={Configuration} {args}");
|
||||||
|
var buildArguments = string.Join(" ", buildArgumentList);
|
||||||
|
|
||||||
return MSBuildProcessManager.RunProcessAsync(
|
return MSBuildProcessManager.RunProcessAsync(
|
||||||
Project,
|
Project,
|
||||||
$"{restoreArgument} /t:{target} /p:Configuration={Configuration} {args}",
|
buildArguments,
|
||||||
timeout,
|
timeout,
|
||||||
msBuildProcessKind);
|
msBuildProcessKind);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -8,8 +8,13 @@ using Xunit;
|
||||||
|
|
||||||
namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
||||||
{
|
{
|
||||||
public class PackIntegrationTest : MSBuildIntegrationTestBase
|
public class PackIntegrationTest : MSBuildIntegrationTestBase, IClassFixture<BuildServerTestFixture>
|
||||||
{
|
{
|
||||||
|
public PackIntegrationTest(BuildServerTestFixture buildServer)
|
||||||
|
: base(buildServer)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
[InitializeTestProject("ClassLibrary")]
|
[InitializeTestProject("ClassLibrary")]
|
||||||
public async Task Pack_Works_IncludesRazorAssembly()
|
public async Task Pack_Works_IncludesRazorAssembly()
|
||||||
|
|
|
||||||
|
|
@ -7,8 +7,13 @@ using Xunit;
|
||||||
|
|
||||||
namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
||||||
{
|
{
|
||||||
public class PublishIntegrationTest : MSBuildIntegrationTestBase
|
public class PublishIntegrationTest : MSBuildIntegrationTestBase, IClassFixture<BuildServerTestFixture>
|
||||||
{
|
{
|
||||||
|
public PublishIntegrationTest(BuildServerTestFixture buildServer)
|
||||||
|
: base(buildServer)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
[InitializeTestProject("SimpleMvc")]
|
[InitializeTestProject("SimpleMvc")]
|
||||||
public async Task Publish_RazorCompileOnPublish_IsDefault()
|
public async Task Publish_RazorCompileOnPublish_IsDefault()
|
||||||
|
|
|
||||||
|
|
@ -9,8 +9,13 @@ using Xunit;
|
||||||
|
|
||||||
namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
||||||
{
|
{
|
||||||
public class RazorCompileIntegrationTest : MSBuildIntegrationTestBase
|
public class RazorCompileIntegrationTest : MSBuildIntegrationTestBase, IClassFixture<BuildServerTestFixture>
|
||||||
{
|
{
|
||||||
|
public RazorCompileIntegrationTest(BuildServerTestFixture buildServer)
|
||||||
|
: base(buildServer)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
[InitializeTestProject("SimpleMvc")]
|
[InitializeTestProject("SimpleMvc")]
|
||||||
public async Task RazorCompile_Success_CompilesAssembly()
|
public async Task RazorCompile_Success_CompilesAssembly()
|
||||||
|
|
|
||||||
|
|
@ -10,10 +10,15 @@ using Xunit;
|
||||||
|
|
||||||
namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
||||||
{
|
{
|
||||||
public class RazorGenerateIntegrationTest : MSBuildIntegrationTestBase
|
public class RazorGenerateIntegrationTest : MSBuildIntegrationTestBase, IClassFixture<BuildServerTestFixture>
|
||||||
{
|
{
|
||||||
private const string RazorGenerateTarget = "RazorGenerate";
|
private const string RazorGenerateTarget = "RazorGenerate";
|
||||||
|
|
||||||
|
public RazorGenerateIntegrationTest(BuildServerTestFixture buildServer)
|
||||||
|
: base(buildServer)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
[InitializeTestProject("SimpleMvc")]
|
[InitializeTestProject("SimpleMvc")]
|
||||||
public async Task RazorGenerate_Success_GeneratesFilesOnDisk()
|
public async Task RazorGenerate_Success_GeneratesFilesOnDisk()
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue