2016-09-23 12:49:24 -07:00
// 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 Microsoft.DotNet.Tools.Test.Utilities ;
using Xunit ;
namespace Microsoft.DotNet.Cli.Run3.Tests
{
public class GivenDotnetRun3BuildsCsproj : TestBase
{
[Fact]
public void ItCanRunAMSBuildProject ( )
{
var testAppName = "MSBuildTestApp" ;
var testInstance = TestAssetsManager
2016-09-27 14:41:06 -07:00
. CreateTestInstance ( testAppName ) ;
2016-09-23 12:49:24 -07:00
var testProjectDirectory = testInstance . TestRoot ;
2016-09-27 14:41:06 -07:00
new Restore3Command ( )
. WithWorkingDirectory ( testProjectDirectory )
. Execute ( )
. Should ( )
. Pass ( ) ;
2016-09-23 12:49:24 -07:00
new Build3Command ( )
. WithWorkingDirectory ( testProjectDirectory )
. Execute ( )
. Should ( )
. Pass ( ) ;
2016-09-27 16:29:56 -07:00
//TODO: https://github.com/dotnet/sdk/issues/187 - remove framework from below.
2016-09-23 12:49:24 -07:00
new Run3Command ( )
. WithWorkingDirectory ( testProjectDirectory )
2016-09-27 15:38:59 -07:00
. ExecuteWithCapturedOutput ( "--framework netcoreapp1.0" )
2016-09-23 12:49:24 -07:00
. Should ( )
. Pass ( )
. And
. HaveStdOutContaining ( "Hello World!" ) ;
}
[Fact]
public void ItBuildsTheProjectBeforeRunning ( )
{
var testAppName = "MSBuildTestApp" ;
var testInstance = TestAssetsManager
2016-09-27 14:41:06 -07:00
. CreateTestInstance ( testAppName ) ;
2016-09-23 12:49:24 -07:00
var testProjectDirectory = testInstance . TestRoot ;
2016-09-27 14:41:06 -07:00
new Restore3Command ( )
. WithWorkingDirectory ( testProjectDirectory )
. Execute ( )
. Should ( )
. Pass ( ) ;
2016-09-27 16:29:56 -07:00
//TODO: https://github.com/dotnet/sdk/issues/187 - remove framework from below.
2016-09-23 12:49:24 -07:00
new Run3Command ( )
. WithWorkingDirectory ( testProjectDirectory )
2016-09-27 15:38:59 -07:00
. ExecuteWithCapturedOutput ( "--framework netcoreapp1.0" )
2016-09-23 12:49:24 -07:00
. Should ( )
. Pass ( )
. And
. HaveStdOutContaining ( "Hello World!" ) ;
}
[Fact]
public void ItCanRunAMSBuildProjectWhenSpecifyingAFramework ( )
{
var testAppName = "MSBuildTestApp" ;
var testInstance = TestAssetsManager
2016-09-27 14:41:06 -07:00
. CreateTestInstance ( testAppName ) ;
2016-09-23 12:49:24 -07:00
var testProjectDirectory = testInstance . TestRoot ;
2016-09-27 14:41:06 -07:00
new Restore3Command ( )
. WithWorkingDirectory ( testProjectDirectory )
. Execute ( )
. Should ( )
. Pass ( ) ;
2016-09-23 12:49:24 -07:00
new Run3Command ( )
. WithWorkingDirectory ( testProjectDirectory )
. ExecuteWithCapturedOutput ( "--framework netcoreapp1.0" )
. Should ( )
. Pass ( )
. And
. HaveStdOutContaining ( "Hello World!" ) ;
}
}
}