Add Resgen Test Project, Add test to build project with resource with a space in the path.
This commit is contained in:
parent
ec0b004d4c
commit
e486fb2020
4 changed files with 100 additions and 0 deletions
|
@ -27,6 +27,7 @@ namespace Microsoft.DotNet.Cli.Build
|
||||||
"dotnet-compile.UnitTests",
|
"dotnet-compile.UnitTests",
|
||||||
"dotnet-build.Tests",
|
"dotnet-build.Tests",
|
||||||
"dotnet-pack.Tests",
|
"dotnet-pack.Tests",
|
||||||
|
"dotnet-resgen.Tests",
|
||||||
"Microsoft.DotNet.Cli.Utils.Tests",
|
"Microsoft.DotNet.Cli.Utils.Tests",
|
||||||
"Microsoft.DotNet.Compiler.Common.Tests",
|
"Microsoft.DotNet.Compiler.Common.Tests",
|
||||||
"Microsoft.Extensions.DependencyModel.Tests",
|
"Microsoft.Extensions.DependencyModel.Tests",
|
||||||
|
|
|
@ -0,0 +1,52 @@
|
||||||
|
// Copyright (c) .NET Foundation and contributors. All rights reserved.
|
||||||
|
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
||||||
|
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.IO;
|
||||||
|
using System.Text.RegularExpressions;
|
||||||
|
using Microsoft.DotNet.Tools.Test.Utilities;
|
||||||
|
using Microsoft.Extensions.PlatformAbstractions;
|
||||||
|
using Xunit;
|
||||||
|
using System;
|
||||||
|
|
||||||
|
namespace Microsoft.DotNet.Tools.Resgen.Tests
|
||||||
|
{
|
||||||
|
public class ResgenTests : TestBase
|
||||||
|
{
|
||||||
|
private readonly string _testProjectsRoot;
|
||||||
|
private readonly TempDirectory _root;
|
||||||
|
|
||||||
|
public ResgenTests()
|
||||||
|
{
|
||||||
|
_testProjectsRoot = Path.Combine(AppContext.BaseDirectory, "TestAssets", "TestProjects");
|
||||||
|
_root = Temp.CreateDirectory();
|
||||||
|
}
|
||||||
|
|
||||||
|
[Fact]
|
||||||
|
public void Test_Build_Project_with_Resources_with_Space_in_Path()
|
||||||
|
{
|
||||||
|
var spaceBufferDirectory = _root.CreateDirectory("space directory");
|
||||||
|
var testAppDir = spaceBufferDirectory.CreateDirectory("TestProjectWithResource");
|
||||||
|
|
||||||
|
CopyProjectToTempDir(Path.Combine(_testProjectsRoot, "TestProjectWithResource"), testAppDir);
|
||||||
|
|
||||||
|
var testProject = GetProjectPath(testAppDir);
|
||||||
|
var buildCommand = new BuildCommand(testProject);
|
||||||
|
|
||||||
|
var result = buildCommand.Execute().Should().Pass();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void CopyProjectToTempDir(string projectDir, TempDirectory tempDir)
|
||||||
|
{
|
||||||
|
foreach (var file in Directory.EnumerateFiles(projectDir))
|
||||||
|
{
|
||||||
|
tempDir.CopyFile(file);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private string GetProjectPath(TempDirectory projectDir)
|
||||||
|
{
|
||||||
|
return Path.Combine(projectDir.Path, "project.json");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
19
test/dotnet-resgen.Tests/dotnet-resgen.Tests.xproj
Normal file
19
test/dotnet-resgen.Tests/dotnet-resgen.Tests.xproj
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<PropertyGroup>
|
||||||
|
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">14.0</VisualStudioVersion>
|
||||||
|
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VSToolsPath)\DNX\Microsoft.DNX.Props" Condition="'$(VSToolsPath)' != ''" />
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>386d412c-003c-47b1-8258-0e35865cb7c4</ProjectGuid>
|
||||||
|
<RootNamespace>Microsoft.DotNet.Tools.Resgen.Tests</RootNamespace>
|
||||||
|
<BaseIntermediateOutputPath Condition="'$(BaseIntermediateOutputPath)'=='' ">..\..\artifacts\obj\$(MSBuildProjectName)</BaseIntermediateOutputPath>
|
||||||
|
<OutputPath Condition="'$(OutputPath)'=='' ">..\..\artifacts\bin\$(MSBuildProjectName)\</OutputPath>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup>
|
||||||
|
<SchemaVersion>2.0</SchemaVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'" />
|
||||||
|
<Import Project="$(VSToolsPath)\DNX\Microsoft.DNX.targets" Condition="'$(VSToolsPath)' != ''" />
|
||||||
|
</Project>
|
28
test/dotnet-resgen.Tests/project.json
Normal file
28
test/dotnet-resgen.Tests/project.json
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
{
|
||||||
|
"version": "1.0.0-*",
|
||||||
|
|
||||||
|
"dependencies": {
|
||||||
|
"NETStandard.Library": "1.0.0-rc2-23811",
|
||||||
|
|
||||||
|
"Microsoft.DotNet.Tools.Tests.Utilities": { "target": "project" },
|
||||||
|
"Microsoft.DotNet.Cli.Utils": {
|
||||||
|
"target": "project"
|
||||||
|
},
|
||||||
|
|
||||||
|
"xunit": "2.1.0",
|
||||||
|
"xunit.netcore.extensions": "1.0.0-prerelease-*",
|
||||||
|
"dotnet-test-xunit": "1.0.0-dev-48273-16"
|
||||||
|
},
|
||||||
|
|
||||||
|
"frameworks": {
|
||||||
|
"dnxcore50": {
|
||||||
|
"imports": "portable-net45+win8"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"content": [
|
||||||
|
"../../TestAssets/TestProjects/TestProjectWithResource/**/*"
|
||||||
|
],
|
||||||
|
|
||||||
|
"testRunner": "xunit"
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue