Make testapps run without deployment
This commit is contained in:
parent
c0cb8f009c
commit
13388ca6ae
|
|
@ -42,17 +42,17 @@ namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
||||||
|
|
||||||
foreach (var project in new string[] { projectName, }.Concat(additionalProjects))
|
foreach (var project in new string[] { projectName, }.Concat(additionalProjects))
|
||||||
{
|
{
|
||||||
var projectRoot = Path.Combine(solutionRoot, "test", "testapps", project);
|
var testAppsRoot = Path.Combine(solutionRoot, "test", "testapps");
|
||||||
|
var projectRoot = Path.Combine(testAppsRoot, project);
|
||||||
if (!Directory.Exists(projectRoot))
|
if (!Directory.Exists(projectRoot))
|
||||||
{
|
{
|
||||||
throw new InvalidOperationException($"Could not find project at '{projectRoot}'");
|
throw new InvalidOperationException($"Could not find project at '{projectRoot}'");
|
||||||
}
|
}
|
||||||
|
|
||||||
var projectDestination = Path.Combine(destinationPath, project);
|
var projectDestination = Path.Combine(destinationPath, project);
|
||||||
Directory.CreateDirectory(projectDestination);
|
var projectDestinationDir = Directory.CreateDirectory(projectDestination);
|
||||||
CopyDirectory(new DirectoryInfo(projectRoot), new DirectoryInfo(projectDestination));
|
CopyDirectory(new DirectoryInfo(projectRoot), projectDestinationDir);
|
||||||
CreateDirectoryProps(projectRoot, binariesRoot, destinationPath);
|
SetupDirectoryBuildFiles(solutionRoot, binariesRoot, testAppsRoot, projectDestination);
|
||||||
CreateDirectoryTargets(destinationPath);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
CopyGlobalJson(solutionRoot, destinationPath);
|
CopyGlobalJson(solutionRoot, destinationPath);
|
||||||
|
|
@ -86,38 +86,24 @@ namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void CreateDirectoryProps(string originalProjectRoot, string binariesRoot, string projectRoot)
|
void SetupDirectoryBuildFiles(string solutionRoot, string binariesRoot, string testAppsRoot, string projectDestination)
|
||||||
{
|
{
|
||||||
#if DEBUG
|
var beforeDirectoryPropsContent =
|
||||||
var configuration = "Debug";
|
$@"<Project>
|
||||||
#elif RELEASE
|
|
||||||
var configuration = "Release";
|
|
||||||
#else
|
|
||||||
#error Unknown Configuration
|
|
||||||
#endif
|
|
||||||
|
|
||||||
var text = $@"
|
|
||||||
<Project>
|
|
||||||
<Import Project=""{originalProjectRoot}\..\..\..\src\Microsoft.AspNetCore.Razor.Sdk\SDK\Sdk.props""/>
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<OriginalProjectRoot>{originalProjectRoot}</OriginalProjectRoot>
|
<SolutionRoot>{solutionRoot}</SolutionRoot>
|
||||||
<BinariesRoot>{binariesRoot}</BinariesRoot>
|
<BinariesRoot>{binariesRoot}</BinariesRoot>
|
||||||
<_RazorMSBuildRoot>$(OriginalProjectRoot)\..\..\..\src\Microsoft.AspNetCore.Razor.Design\bin\{configuration}\netstandard2.0\</_RazorMSBuildRoot>
|
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<Import Project=""$(OriginalProjectRoot)\..\..\..\src\Microsoft.AspNetCore.Razor.Design\build\netstandard2.0\Microsoft.AspNetCore.Razor.Design.props""/>
|
</Project>";
|
||||||
</Project>
|
File.WriteAllText(Path.Combine(projectDestination, "Before.Directory.Build.props"), beforeDirectoryPropsContent);
|
||||||
";
|
|
||||||
File.WriteAllText(Path.Combine(projectRoot, "Directory.Build.props"), text);
|
|
||||||
}
|
|
||||||
|
|
||||||
void CreateDirectoryTargets(string projectRoot)
|
new List<string> { "Directory.Build.props", "Directory.Build.targets" }
|
||||||
{
|
.ForEach(file =>
|
||||||
var text = $@"
|
{
|
||||||
<Project>
|
var source = Path.Combine(testAppsRoot, file);
|
||||||
<Import Project=""$(OriginalProjectRoot)\..\..\..\src\Microsoft.AspNetCore.Razor.Sdk\SDK\Sdk.targets""/>
|
var destination = Path.Combine(projectDestination, file);
|
||||||
</Project>
|
File.Copy(source, destination);
|
||||||
";
|
});
|
||||||
File.WriteAllText(Path.Combine(projectRoot, "Directory.Build.targets"), text);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void CopyGlobalJson(string solutionRoot, string projectRoot)
|
void CopyGlobalJson(string solutionRoot, string projectRoot)
|
||||||
|
|
|
||||||
|
|
@ -207,13 +207,12 @@ namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
||||||
{
|
{
|
||||||
var content = @"
|
var content = @"
|
||||||
<Project>
|
<Project>
|
||||||
<Import Project=""$([MSBuild]::GetPathOfFileAbove('Directory.Build.props', '$(MSBuildThisFileDirectory)../'))"" />
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<MvcRazorFilesToCompile Include=""Views/Home/About.cshtml"" />
|
<MvcRazorFilesToCompile Include=""Views/Home/About.cshtml"" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
";
|
";
|
||||||
File.WriteAllText(Path.Combine(Project.DirectoryPath, "Directory.Build.props"), content);
|
File.WriteAllText(Path.Combine(Project.DirectoryPath, "After.Directory.Build.props"), content);
|
||||||
|
|
||||||
var result = await DotnetMSBuild(RazorGenerateTarget);
|
var result = await DotnetMSBuild(RazorGenerateTarget);
|
||||||
|
|
||||||
|
|
@ -229,7 +228,6 @@ namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
||||||
{
|
{
|
||||||
var content = @"
|
var content = @"
|
||||||
<Project>
|
<Project>
|
||||||
<Import Project=""$([MSBuild]::GetPathOfFileAbove('Directory.Build.props', '$(MSBuildThisFileDirectory)../'))"" />
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<EnableDefaultRazorGenerateItems>false</EnableDefaultRazorGenerateItems>
|
<EnableDefaultRazorGenerateItems>false</EnableDefaultRazorGenerateItems>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
@ -238,7 +236,7 @@ namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
";
|
";
|
||||||
File.WriteAllText(Path.Combine(Project.DirectoryPath, "Directory.Build.props"), content);
|
File.WriteAllText(Path.Combine(Project.DirectoryPath, "After.Directory.Build.props"), content);
|
||||||
|
|
||||||
var result = await DotnetMSBuild(RazorGenerateTarget);
|
var result = await DotnetMSBuild(RazorGenerateTarget);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,11 @@
|
||||||
<Project Sdk="Microsoft.NET.Sdk.Web">
|
<Project Sdk="Microsoft.NET.Sdk.Web">
|
||||||
|
<PropertyGroup>
|
||||||
|
<_RazorMSBuildRoot>$(SolutionRoot)src\Microsoft.AspNetCore.Razor.Design\bin\$(Configuration)\netstandard2.0\</_RazorMSBuildRoot>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<Import Project="$(SolutionRoot)src\Microsoft.AspNetCore.Razor.Sdk\SDK\Sdk.props" />
|
||||||
|
<Import Project="$(SolutionRoot)src\Microsoft.AspNetCore.Razor.Design\build\netstandard2.0\Microsoft.AspNetCore.Razor.Design.props" />
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>netcoreapp2.0</TargetFramework>
|
<TargetFramework>netcoreapp2.0</TargetFramework>
|
||||||
|
|
||||||
|
|
@ -9,17 +16,4 @@
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\ClassLibrary\ClassLibrary.csproj"/>
|
<ProjectReference Include="..\ClassLibrary\ClassLibrary.csproj"/>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup Condition="'$(BinariesRoot)'==''">
|
|
||||||
<!-- In test scenarios $(BinariesRoot) is defined in a generated Directory.Build.props file -->
|
|
||||||
<ProjectReference Include="..\..\Microsoft.AspNetCore.Razor.Test.MvcShim\Microsoft.AspNetCore.Razor.Test.MvcShim.csproj"/>
|
|
||||||
<ProjectReference Include="..\..\..\src\Microsoft.AspNetCore.Razor.Runtime\Microsoft.AspNetCore.Razor.Runtime.csproj"/>
|
|
||||||
</ItemGroup>
|
|
||||||
|
|
||||||
<ItemGroup Condition="'$(BinariesRoot)'!=''">
|
|
||||||
<Reference Include="$(BinariesRoot)\Microsoft.AspNetCore.Html.Abstractions.dll"/>
|
|
||||||
<Reference Include="$(BinariesRoot)\Microsoft.AspNetCore.Razor.dll"/>
|
|
||||||
<Reference Include="$(BinariesRoot)\Microsoft.AspNetCore.Razor.Runtime.dll"/>
|
|
||||||
<Reference Include="$(BinariesRoot)\Microsoft.AspNetCore.Razor.Test.MvcShim.dll"/>
|
|
||||||
</ItemGroup>
|
|
||||||
</Project>
|
</Project>
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,11 @@
|
||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
<PropertyGroup>
|
||||||
|
<_RazorMSBuildRoot>$(SolutionRoot)src\Microsoft.AspNetCore.Razor.Design\bin\$(Configuration)\netstandard2.0\</_RazorMSBuildRoot>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<Import Project="$(SolutionRoot)src\Microsoft.AspNetCore.Razor.Sdk\SDK\Sdk.props" />
|
||||||
|
<Import Project="$(SolutionRoot)src\Microsoft.AspNetCore.Razor.Design\build\netstandard2.0\Microsoft.AspNetCore.Razor.Design.props" />
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>netcoreapp2.0</TargetFramework>
|
<TargetFramework>netcoreapp2.0</TargetFramework>
|
||||||
|
|
||||||
|
|
@ -6,22 +13,9 @@
|
||||||
<ResolvedRazorCompileToolset Condition="'$(RazorCompileToolset)'==''">RazorSDK</ResolvedRazorCompileToolset>
|
<ResolvedRazorCompileToolset Condition="'$(RazorCompileToolset)'==''">RazorSDK</ResolvedRazorCompileToolset>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup Condition="'$(BinariesRoot)'==''">
|
|
||||||
<!-- In test scenarios $(BinariesRoot) is defined in a generated Directory.Build.props file -->
|
|
||||||
<ProjectReference Include="..\..\Microsoft.AspNetCore.Razor.Test.MvcShim\Microsoft.AspNetCore.Razor.Test.MvcShim.csproj"/>
|
|
||||||
<ProjectReference Include="..\..\..\src\Microsoft.AspNetCore.Razor.Runtime\Microsoft.AspNetCore.Razor.Runtime.csproj"/>
|
|
||||||
</ItemGroup>
|
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Content Include="**\*.cshtml">
|
<Content Include="**\*.cshtml">
|
||||||
<Pack>false</Pack>
|
<Pack>false</Pack>
|
||||||
</Content>
|
</Content>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup Condition="'$(BinariesRoot)'!=''">
|
|
||||||
<Reference Include="$(BinariesRoot)\Microsoft.AspNetCore.Html.Abstractions.dll"/>
|
|
||||||
<Reference Include="$(BinariesRoot)\Microsoft.AspNetCore.Razor.dll"/>
|
|
||||||
<Reference Include="$(BinariesRoot)\Microsoft.AspNetCore.Razor.Runtime.dll"/>
|
|
||||||
<Reference Include="$(BinariesRoot)\Microsoft.AspNetCore.Razor.Test.MvcShim.dll"/>
|
|
||||||
</ItemGroup>
|
|
||||||
</Project>
|
</Project>
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,25 @@
|
||||||
|
<Project>
|
||||||
|
<Import Project="Before.Directory.Build.props" Condition="Exists('Before.Directory.Build.props')" />
|
||||||
|
|
||||||
|
<PropertyGroup>
|
||||||
|
<SolutionRoot Condition="'$(SolutionRoot)' == ''">$(MSBuildThisFileDirectory)..\..\</SolutionRoot>
|
||||||
|
<SolutionRoot>$([MSBuild]::EnsureTrailingSlash('$(SolutionRoot)'))</SolutionRoot>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup Condition="'$(BinariesRoot)'==''">
|
||||||
|
<!-- In test scenarios $(BinariesRoot) is defined in a generated Directory.Build.props file -->
|
||||||
|
<ProjectReference Include="..\..\Microsoft.AspNetCore.Razor.Test.MvcShim\Microsoft.AspNetCore.Razor.Test.MvcShim.csproj"/>
|
||||||
|
<ProjectReference Include="..\..\..\src\Microsoft.AspNetCore.Razor.Runtime\Microsoft.AspNetCore.Razor.Runtime.csproj"/>
|
||||||
|
<ProjectReference Include="..\..\..\src\Microsoft.AspNetCore.Razor.Design\Microsoft.AspNetCore.Razor.Design.csproj" ReferenceOutputAssembly="false" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<ItemGroup Condition="'$(BinariesRoot)'!=''">
|
||||||
|
<Reference Include="$(BinariesRoot)\Microsoft.AspNetCore.Html.Abstractions.dll"/>
|
||||||
|
<Reference Include="$(BinariesRoot)\Microsoft.AspNetCore.Razor.dll"/>
|
||||||
|
<Reference Include="$(BinariesRoot)\Microsoft.AspNetCore.Razor.Runtime.dll"/>
|
||||||
|
<Reference Include="$(BinariesRoot)\Microsoft.AspNetCore.Razor.Test.MvcShim.dll"/>
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<Import Project="After.Directory.Build.props" Condition="Exists('After.Directory.Build.props')" />
|
||||||
|
|
||||||
|
</Project>
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
<Project>
|
||||||
|
<Import Project="$(SolutionRoot)src\Microsoft.AspNetCore.Razor.Sdk\SDK\Sdk.targets" />
|
||||||
|
</Project>
|
||||||
|
|
@ -1,21 +1,15 @@
|
||||||
<Project Sdk="Microsoft.NET.Sdk.Web">
|
<Project Sdk="Microsoft.NET.Sdk.Web">
|
||||||
|
<PropertyGroup>
|
||||||
|
<_RazorMSBuildRoot>$(SolutionRoot)src\Microsoft.AspNetCore.Razor.Design\bin\$(Configuration)\netstandard2.0\</_RazorMSBuildRoot>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<Import Project="$(SolutionRoot)src\Microsoft.AspNetCore.Razor.Sdk\SDK\Sdk.props" />
|
||||||
|
<Import Project="$(SolutionRoot)src\Microsoft.AspNetCore.Razor.Design\build\netstandard2.0\Microsoft.AspNetCore.Razor.Design.props" />
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>netcoreapp2.0</TargetFramework>
|
<TargetFramework>netcoreapp2.0</TargetFramework>
|
||||||
|
|
||||||
<!-- Workaround until we get a new SDK build -->
|
<!-- Workaround until we get a new SDK build -->
|
||||||
<ResolvedRazorCompileToolset Condition="'$(RazorCompileToolset)'==''">RazorSDK</ResolvedRazorCompileToolset>
|
<ResolvedRazorCompileToolset Condition="'$(RazorCompileToolset)'==''">RazorSDK</ResolvedRazorCompileToolset>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup Condition="'$(BinariesRoot)'==''">
|
|
||||||
<!-- In test scenarios $(BinariesRoot) is defined in a generated Directory.Build.props file -->
|
|
||||||
<ProjectReference Include="..\..\Microsoft.AspNetCore.Razor.Test.MvcShim\Microsoft.AspNetCore.Razor.Test.MvcShim.csproj"/>
|
|
||||||
<ProjectReference Include="..\..\..\src\Microsoft.AspNetCore.Razor.Runtime\Microsoft.AspNetCore.Razor.Runtime.csproj"/>
|
|
||||||
</ItemGroup>
|
|
||||||
|
|
||||||
<ItemGroup Condition="'$(BinariesRoot)'!=''">
|
|
||||||
<Reference Include="$(BinariesRoot)\Microsoft.AspNetCore.Html.Abstractions.dll"/>
|
|
||||||
<Reference Include="$(BinariesRoot)\Microsoft.AspNetCore.Razor.dll"/>
|
|
||||||
<Reference Include="$(BinariesRoot)\Microsoft.AspNetCore.Razor.Runtime.dll"/>
|
|
||||||
<Reference Include="$(BinariesRoot)\Microsoft.AspNetCore.Razor.Test.MvcShim.dll"/>
|
|
||||||
</ItemGroup>
|
|
||||||
</Project>
|
</Project>
|
||||||
|
|
|
||||||
|
|
@ -1,21 +1,15 @@
|
||||||
<Project Sdk="Microsoft.NET.Sdk.Web">
|
<Project Sdk="Microsoft.NET.Sdk.Web">
|
||||||
|
<PropertyGroup>
|
||||||
|
<_RazorMSBuildRoot>$(SolutionRoot)src\Microsoft.AspNetCore.Razor.Design\bin\$(Configuration)\netstandard2.0\</_RazorMSBuildRoot>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<Import Project="$(SolutionRoot)src\Microsoft.AspNetCore.Razor.Sdk\SDK\Sdk.props" />
|
||||||
|
<Import Project="$(SolutionRoot)src\Microsoft.AspNetCore.Razor.Design\build\netstandard2.0\Microsoft.AspNetCore.Razor.Design.props" />
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>netcoreapp2.0</TargetFramework>
|
<TargetFramework>netcoreapp2.0</TargetFramework>
|
||||||
|
|
||||||
<!-- Workaround until we get a new SDK build -->
|
<!-- Workaround until we get a new SDK build -->
|
||||||
<ResolvedRazorCompileToolset Condition="'$(RazorCompileToolset)'==''">RazorSDK</ResolvedRazorCompileToolset>
|
<ResolvedRazorCompileToolset Condition="'$(RazorCompileToolset)'==''">RazorSDK</ResolvedRazorCompileToolset>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup Condition="'$(BinariesRoot)'==''">
|
|
||||||
<!-- In test scenarios $(BinariesRoot) is defined in a generated Directory.Build.props file -->
|
|
||||||
<ProjectReference Include="..\..\Microsoft.AspNetCore.Razor.Test.MvcShim\Microsoft.AspNetCore.Razor.Test.MvcShim.csproj"/>
|
|
||||||
<ProjectReference Include="..\..\..\src\Microsoft.AspNetCore.Razor.Runtime\Microsoft.AspNetCore.Razor.Runtime.csproj"/>
|
|
||||||
</ItemGroup>
|
|
||||||
|
|
||||||
<ItemGroup Condition="'$(BinariesRoot)'!=''">
|
|
||||||
<Reference Include="$(BinariesRoot)\Microsoft.AspNetCore.Html.Abstractions.dll"/>
|
|
||||||
<Reference Include="$(BinariesRoot)\Microsoft.AspNetCore.Razor.dll"/>
|
|
||||||
<Reference Include="$(BinariesRoot)\Microsoft.AspNetCore.Razor.Runtime.dll"/>
|
|
||||||
<Reference Include="$(BinariesRoot)\Microsoft.AspNetCore.Razor.Test.MvcShim.dll"/>
|
|
||||||
</ItemGroup>
|
|
||||||
</Project>
|
</Project>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue