[XHarness] Ensure we do a nuget restore on bcl imported tests. Fixes #5383 (#5574)

* [XHarness] Ensure we do a nuget restore on bcl imported tests. Fixes #5383

We need to ensure that a nuget restore is done, otherwise we might have
build issues with missing libs.

Fixes https://github.com/xamarin/xamarin-macios/issues/5383
This commit is contained in:
Manuel de la Pena 2019-02-28 18:27:01 +01:00 коммит произвёл GitHub
Родитель 564628a289
Коммит c2967c0d50
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
12 изменённых файлов: 131 добавлений и 250 удалений

Просмотреть файл

@ -46,6 +46,17 @@
<EnablePackageSigning>false</EnablePackageSigning>
<I18n>cjk,mideast,other,rare,west</I18n>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Mono.Options" Version="5.3.0.1" />
<PackageReference Include="System.Buffers" Version="4.5.0" />
<PackageReference Include="System.Memory" Version="4.5.2" />
<PackageReference Include="System.Runtime.CompilerServices.Unsafe" Version="4.5.2" />
<PackageReference Include="xunit" Version="2.4.1" />
<PackageReference Include="xunit.analyzers" Version="0.10.0" />
<PackageReference Include="xunit.extensibility.core" Version="2.4.1" />
<PackageReference Include="xunit.extensibility.execution" Version="2.4.1" />
<PackageReference Include="xunit.runner.utility" Version="2.4.1" />
</ItemGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Xml" />
@ -61,63 +72,14 @@
<HintPath>..\..\..\external\mono\external\xunit-binaries\xunit.abstractions.dll</HintPath>
</Reference>
<Reference Include="xunit.execution.dotnet">
<HintPath>..\..\..\external\mono\external\xunit-binaries\xunit.execution.dotnet.dll</HintPath>
</Reference>
<HintPath>..\..\..\external\mono\external\xunit-binaries\xunit.execution.dotnet.dll</HintPath>
</Reference>
<Reference Include="nunitlite">
<HintPath>..\..\..\external\mono\mcs\class\lib\monotouch\nunitlite.dll</HintPath>
</Reference>
<Reference Include="Xunit.NetCore.Extensions">
<HintPath>..\..\..\external\mono\external\xunit-binaries\Xunit.NetCore.Extensions.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.DependencyInjection.Abstractions">
<HintPath>..\..\..\packages\Microsoft.Extensions.DependencyInjection.Abstractions.2.1.1\lib\netstandard2.0\Microsoft.Extensions.DependencyInjection.Abstractions.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="Microsoft.Extensions.Logging.Abstractions">
<HintPath>..\..\..\packages\Microsoft.Extensions.Logging.Abstractions.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Logging.Abstractions.dll</HintPath>
</Reference>
<Reference Include="System.Buffers">
<HintPath>..\..\..\packages\System.Buffers.4.4.0\lib\netstandard2.0\System.Buffers.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.CompilerServices.Unsafe">
<HintPath>..\..\..\packages\System.Runtime.CompilerServices.Unsafe.4.5.1\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
</Reference>
<Reference Include="System.Memory">
<HintPath>..\..\..\packages\System.Memory.4.5.1\lib\netstandard2.0\System.Memory.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Primitives">
<HintPath>..\..\..\packages\Microsoft.Extensions.Primitives.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Primitives.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Configuration.Abstractions">
<HintPath>..\..\..\packages\Microsoft.Extensions.Configuration.Abstractions.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Configuration.Abstractions.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Configuration">
<HintPath>..\..\..\packages\Microsoft.Extensions.Configuration.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Configuration.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Configuration.Binder">
<HintPath>..\..\..\packages\Microsoft.Extensions.Configuration.Binder.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Configuration.Binder.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Options">
<HintPath>..\..\..\packages\Microsoft.Extensions.Options.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Options.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Logging">
<HintPath>..\..\..\packages\Microsoft.Extensions.Logging.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Logging.dll</HintPath>
</Reference>
<Reference Include="xunit.runner.utility.netstandard20">
<HintPath>..\..\..\packages\xunit.runner.utility.2.4.0\lib\netstandard2.0\xunit.runner.utility.netstandard20.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Options.ConfigurationExtensions">
<HintPath>..\..\..\packages\Microsoft.Extensions.Options.ConfigurationExtensions.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Options.ConfigurationExtensions.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Logging.Configuration">
<HintPath>..\..\..\packages\Microsoft.Extensions.Logging.Configuration.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Logging.Configuration.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Logging.Console">
<HintPath>..\..\..\packages\Microsoft.Extensions.Logging.Console.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Logging.Console.dll</HintPath>
</Reference>
<Reference Include="Mono.Options">
<HintPath>..\..\..\packages\Mono.Options.5.3.0.1\lib\netstandard1.3\Mono.Options.dll</HintPath>
</Reference>
<Reference Include="System.Xml.Linq" />
</ItemGroup>
<ItemGroup>
@ -130,7 +92,6 @@
<None Include="%PLIST PATH%">
<LogicalName>Info.plist</LogicalName>
</None>
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<Compile Include="templates\common\TestRunner.NUnit\NUnitTestRunner.cs">

Просмотреть файл

@ -121,6 +121,17 @@
<MtouchUseLlvm>true</MtouchUseLlvm>
<MtouchI18n>cjk,mideast,other,rare,west</MtouchI18n>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Mono.Options" Version="5.3.0.1" />
<PackageReference Include="System.Buffers" Version="4.4.0" />
<PackageReference Include="System.Memory" Version="4.5.1" />
<PackageReference Include="System.Runtime.CompilerServices.Unsafe" Version="4.5.1" />
<PackageReference Include="xunit" Version="2.4.0" />
<PackageReference Include="xunit.analyzers" Version="0.10.0" />
<PackageReference Include="xunit.extensibility.core" Version="2.4.0" />
<PackageReference Include="xunit.extensibility.execution" Version="2.4.0" />
<PackageReference Include="xunit.runner.utility" Version="2.4.0" />
</ItemGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Xml" />
@ -139,59 +150,10 @@
<HintPath>..\..\..\external\mono\external\xunit-binaries\xunit.execution.dotnet.dll</HintPath>
</Reference>
<Reference Include="nunitlite">
<HintPath>..\..\..\external\mono\mcs\class\lib\monotouch\nunitlite.dll</HintPath>
<HintPath>%DOWNLOAD PATH%\ios-bcl\monotouch\nunitlite.dll</HintPath>
</Reference>
<Reference Include="Xunit.NetCore.Extensions">
<HintPath>..\..\..\external\mono\external\xunit-binaries\Xunit.NetCore.Extensions.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.DependencyInjection.Abstractions">
<HintPath>..\..\..\packages\Microsoft.Extensions.DependencyInjection.Abstractions.2.1.1\lib\netstandard2.0\Microsoft.Extensions.DependencyInjection.Abstractions.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="Microsoft.Extensions.Logging.Abstractions">
<HintPath>..\..\..\packages\Microsoft.Extensions.Logging.Abstractions.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Logging.Abstractions.dll</HintPath>
</Reference>
<Reference Include="System.Buffers">
<HintPath>..\..\..\packages\System.Buffers.4.4.0\lib\netstandard2.0\System.Buffers.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.CompilerServices.Unsafe">
<HintPath>..\..\..\packages\System.Runtime.CompilerServices.Unsafe.4.5.1\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
</Reference>
<Reference Include="System.Memory">
<HintPath>..\..\..\packages\System.Memory.4.5.1\lib\netstandard2.0\System.Memory.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Primitives">
<HintPath>..\..\..\packages\Microsoft.Extensions.Primitives.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Primitives.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Configuration.Abstractions">
<HintPath>..\..\..\packages\Microsoft.Extensions.Configuration.Abstractions.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Configuration.Abstractions.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Configuration">
<HintPath>..\..\..\packages\Microsoft.Extensions.Configuration.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Configuration.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Configuration.Binder">
<HintPath>..\..\..\packages\Microsoft.Extensions.Configuration.Binder.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Configuration.Binder.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Options">
<HintPath>..\..\..\packages\Microsoft.Extensions.Options.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Options.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Logging">
<HintPath>..\..\..\packages\Microsoft.Extensions.Logging.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Logging.dll</HintPath>
</Reference>
<Reference Include="xunit.runner.utility.netstandard20">
<HintPath>..\..\..\packages\xunit.runner.utility.2.4.0\lib\netstandard2.0\xunit.runner.utility.netstandard20.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Options.ConfigurationExtensions">
<HintPath>..\..\..\packages\Microsoft.Extensions.Options.ConfigurationExtensions.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Options.ConfigurationExtensions.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Logging.Configuration">
<HintPath>..\..\..\packages\Microsoft.Extensions.Logging.Configuration.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Logging.Configuration.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Logging.Console">
<HintPath>..\..\..\packages\Microsoft.Extensions.Logging.Console.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Logging.Console.dll</HintPath>
</Reference>
<Reference Include="Mono.Options">
<HintPath>..\..\..\packages\Mono.Options.5.3.0.1\lib\netstandard1.3\Mono.Options.dll</HintPath>
</Reference>
<Reference Include="System.Xml.Linq" />
</ItemGroup>
@ -212,7 +174,6 @@
<None Include="templates\tvOSApp\Entitlements.plist">
<Link>Entitlements.plist</Link>
</None>
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<Compile Include="templates\common\TestRunner.NUnit\NUnitTestRunner.cs">

Просмотреть файл

@ -77,6 +77,17 @@
<MtouchEnableBitcode>true</MtouchEnableBitcode>
<MtouchI18n>cjk,mideast,other,rare,west</MtouchI18n>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Mono.Options" Version="5.3.0.1" />
<PackageReference Include="System.Buffers" Version="4.4.0" />
<PackageReference Include="System.Memory" Version="4.5.1" />
<PackageReference Include="System.Runtime.CompilerServices.Unsafe" Version="4.5.1" />
<PackageReference Include="xunit" Version="2.4.0" />
<PackageReference Include="xunit.analyzers" Version="0.10.0" />
<PackageReference Include="xunit.extensibility.core" Version="2.4.0" />
<PackageReference Include="xunit.extensibility.execution" Version="2.4.0" />
<PackageReference Include="xunit.runner.utility" Version="2.4.0" />
</ItemGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Xml" />
@ -95,59 +106,10 @@
<HintPath>..\..\..\external\mono\external\xunit-binaries\xunit.execution.dotnet.dll</HintPath>
</Reference>
<Reference Include="nunitlite">
<HintPath>..\..\..\external\mono\mcs\class\lib\monotouch\nunitlite.dll</HintPath>
<HintPath>%DOWNLOAD PATH%\ios-bcl\monotouch\nunitlite.dll</HintPath>
</Reference>
<Reference Include="Xunit.NetCore.Extensions">
<HintPath>..\..\..\external\mono\external\xunit-binaries\Xunit.NetCore.Extensions.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.DependencyInjection.Abstractions">
<HintPath>..\..\..\packages\Microsoft.Extensions.DependencyInjection.Abstractions.2.1.1\lib\netstandard2.0\Microsoft.Extensions.DependencyInjection.Abstractions.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="Microsoft.Extensions.Logging.Abstractions">
<HintPath>..\..\..\packages\Microsoft.Extensions.Logging.Abstractions.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Logging.Abstractions.dll</HintPath>
</Reference>
<Reference Include="System.Buffers">
<HintPath>..\..\..\packages\System.Buffers.4.4.0\lib\netstandard2.0\System.Buffers.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.CompilerServices.Unsafe">
<HintPath>..\..\..\packages\System.Runtime.CompilerServices.Unsafe.4.5.1\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
</Reference>
<Reference Include="System.Memory">
<HintPath>..\..\..\packages\System.Memory.4.5.1\lib\netstandard2.0\System.Memory.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Primitives">
<HintPath>..\..\..\packages\Microsoft.Extensions.Primitives.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Primitives.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Configuration.Abstractions">
<HintPath>..\..\..\packages\Microsoft.Extensions.Configuration.Abstractions.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Configuration.Abstractions.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Configuration">
<HintPath>..\..\..\packages\Microsoft.Extensions.Configuration.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Configuration.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Configuration.Binder">
<HintPath>..\..\..\packages\Microsoft.Extensions.Configuration.Binder.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Configuration.Binder.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Options">
<HintPath>..\..\..\packages\Microsoft.Extensions.Options.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Options.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Logging">
<HintPath>..\..\..\packages\Microsoft.Extensions.Logging.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Logging.dll</HintPath>
</Reference>
<Reference Include="xunit.runner.utility.netstandard20">
<HintPath>..\..\..\packages\xunit.runner.utility.2.4.0\lib\netstandard2.0\xunit.runner.utility.netstandard20.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Options.ConfigurationExtensions">
<HintPath>..\..\..\packages\Microsoft.Extensions.Options.ConfigurationExtensions.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Options.ConfigurationExtensions.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Logging.Configuration">
<HintPath>..\..\..\packages\Microsoft.Extensions.Logging.Configuration.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Logging.Configuration.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Logging.Console">
<HintPath>..\..\..\packages\Microsoft.Extensions.Logging.Console.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Logging.Console.dll</HintPath>
</Reference>
<Reference Include="Mono.Options">
<HintPath>..\..\..\packages\Mono.Options.5.3.0.1\lib\netstandard1.3\Mono.Options.dll</HintPath>
</Reference>
<Reference Include="System.Xml.Linq" />
</ItemGroup>
@ -158,7 +120,6 @@
<None Include="%PLIST PATH%">
<LogicalName>Info.plist</LogicalName>
</None>
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<Compile Include="%TEMPLATE PATH%\InterfaceController.cs" />

Просмотреть файл

@ -312,7 +312,6 @@
</ItemGroup>
<ItemGroup>
<None Include="Info.plist" />
<None Include="packages.config" />
<None Include="templates\iOSApp\Entitlements.plist">
<Link>Entitlements.plist</Link>
</None>

Просмотреть файл

@ -134,6 +134,17 @@
<MtouchUseLlvm>true</MtouchUseLlvm>
<MtouchI18n>cjk,mideast,other,rare,west</MtouchI18n>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Mono.Options" Version="5.3.0.1" />
<PackageReference Include="System.Buffers" Version="4.4.0" />
<PackageReference Include="System.Memory" Version="4.5.1" />
<PackageReference Include="System.Runtime.CompilerServices.Unsafe" Version="4.5.1" />
<PackageReference Include="xunit" Version="2.4.0" />
<PackageReference Include="xunit.analyzers" Version="0.10.0" />
<PackageReference Include="xunit.extensibility.core" Version="2.4.0" />
<PackageReference Include="xunit.extensibility.execution" Version="2.4.0" />
<PackageReference Include="xunit.runner.utility" Version="2.4.0" />
</ItemGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Xml" />
@ -152,59 +163,10 @@
<HintPath>..\..\..\external\mono\external\xunit-binaries\xunit.execution.dotnet.dll</HintPath>
</Reference>
<Reference Include="nunitlite">
<HintPath>..\..\..\external\mono\mcs\class\lib\monotouch\nunitlite.dll</HintPath>
<HintPath>%DOWNLOAD PATH%\ios-bcl\monotouch\nunitlite.dll</HintPath>
</Reference>
<Reference Include="Xunit.NetCore.Extensions">
<HintPath>..\..\..\external\mono\external\xunit-binaries\Xunit.NetCore.Extensions.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.DependencyInjection.Abstractions">
<HintPath>..\..\..\packages\Microsoft.Extensions.DependencyInjection.Abstractions.2.1.1\lib\netstandard2.0\Microsoft.Extensions.DependencyInjection.Abstractions.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="Microsoft.Extensions.Logging.Abstractions">
<HintPath>..\..\..\packages\Microsoft.Extensions.Logging.Abstractions.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Logging.Abstractions.dll</HintPath>
</Reference>
<Reference Include="System.Buffers">
<HintPath>..\..\..\packages\System.Buffers.4.4.0\lib\netstandard2.0\System.Buffers.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.CompilerServices.Unsafe">
<HintPath>..\..\..\packages\System.Runtime.CompilerServices.Unsafe.4.5.1\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
</Reference>
<Reference Include="System.Memory">
<HintPath>..\..\..\packages\System.Memory.4.5.1\lib\netstandard2.0\System.Memory.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Primitives">
<HintPath>..\..\..\packages\Microsoft.Extensions.Primitives.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Primitives.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Configuration.Abstractions">
<HintPath>..\..\..\packages\Microsoft.Extensions.Configuration.Abstractions.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Configuration.Abstractions.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Configuration">
<HintPath>..\..\..\packages\Microsoft.Extensions.Configuration.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Configuration.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Configuration.Binder">
<HintPath>..\..\..\packages\Microsoft.Extensions.Configuration.Binder.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Configuration.Binder.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Options">
<HintPath>..\..\..\packages\Microsoft.Extensions.Options.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Options.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Logging">
<HintPath>..\..\..\packages\Microsoft.Extensions.Logging.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Logging.dll</HintPath>
</Reference>
<Reference Include="xunit.runner.utility.netstandard20">
<HintPath>..\..\..\packages\xunit.runner.utility.2.4.0\lib\netstandard2.0\xunit.runner.utility.netstandard20.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Options.ConfigurationExtensions">
<HintPath>..\..\..\packages\Microsoft.Extensions.Options.ConfigurationExtensions.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Options.ConfigurationExtensions.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Logging.Configuration">
<HintPath>..\..\..\packages\Microsoft.Extensions.Logging.Configuration.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Logging.Configuration.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Extensions.Logging.Console">
<HintPath>..\..\..\packages\Microsoft.Extensions.Logging.Console.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Logging.Console.dll</HintPath>
</Reference>
<Reference Include="Mono.Options">
<HintPath>..\..\..\packages\Mono.Options.5.3.0.1\lib\netstandard1.3\Mono.Options.dll</HintPath>
</Reference>
<Reference Include="System.Xml.Linq" />
</ItemGroup>
@ -225,7 +187,6 @@
<None Include="templates\iOSApp\Entitlements.plist">
<Link>Entitlements.plist</Link>
</None>
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<Compile Include="templates\common\TestRunner.NUnit\NUnitTestRunner.cs">

Просмотреть файл

@ -18,7 +18,11 @@ namespace Xamarin.iOS.UnitTests {
public static void RegisterTypes ()
{
// line used to ensure that the runner is not remove by the linker :/
#if MONOMAC
Console.WriteLine ($"Got the runner for the linker {typeof(Xunit.Sdk.AllException)}");
#else
Console.WriteLine ($"Got the runner for the linker {typeof(Xunit.Sdk.TypeUtility)}");
#endif
foreach (var a in TypesToRegister.Keys) {
// do something with the type, so that it is not removed
var assemblyPath = Path.GetFileName (TypesToRegister[a].Assembly.Location);

Просмотреть файл

@ -1,23 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Microsoft.Extensions.Configuration" version="2.1.1" targetFramework="xamarinios10" />
<package id="Microsoft.Extensions.Configuration.Abstractions" version="2.1.1" targetFramework="xamarinios10" />
<package id="Microsoft.Extensions.Configuration.Binder" version="2.1.1" targetFramework="xamarinios10" />
<package id="Microsoft.Extensions.DependencyInjection.Abstractions" version="2.1.1" targetFramework="xamarinios10" />
<package id="Microsoft.Extensions.Logging" version="2.1.1" targetFramework="xamarinios10" />
<package id="Microsoft.Extensions.Logging.Abstractions" version="2.1.1" targetFramework="xamarinios10" />
<package id="Microsoft.Extensions.Logging.Configuration" version="2.1.1" targetFramework="xamarinios10" />
<package id="Microsoft.Extensions.Logging.Console" version="2.1.1" targetFramework="xamarinios10" />
<package id="Microsoft.Extensions.Options" version="2.1.1" targetFramework="xamarinios10" />
<package id="Microsoft.Extensions.Options.ConfigurationExtensions" version="2.1.1" targetFramework="xamarinios10" />
<package id="Microsoft.Extensions.Primitives" version="2.1.1" targetFramework="xamarinios10" />
<package id="Mono.Options" version="5.3.0.1" targetFramework="xamarinios10" />
<package id="System.Buffers" version="4.4.0" targetFramework="xamarinios10" />
<package id="System.Memory" version="4.5.1" targetFramework="xamarinios10" />
<package id="System.Runtime.CompilerServices.Unsafe" version="4.5.1" targetFramework="xamarinios10" />
<package id="xunit" version="2.4.0" targetFramework="xamarinios10" />
<package id="xunit.analyzers" version="0.10.0" targetFramework="xamarinios10" />
<package id="xunit.extensibility.core" version="2.4.0" targetFramework="xamarinios10" />
<package id="xunit.extensibility.execution" version="2.4.0" targetFramework="xamarinios10" />
<package id="xunit.runner.utility" version="2.4.0" targetFramework="xamarinios10" />
</packages>

Просмотреть файл

@ -34,7 +34,7 @@ namespace Xamarin.Mac.Tests
// var t = Path.GetFileName (typeof (ActivatorCas).Assembly.Location);
foreach (var name in RegisterType.TypesToRegister.Keys) {
var a = RegisterType.TypesToRegister [name].Assembly;
yield return new TestAssemblyInfo (a, name);
yield return new TestAssemblyInfo (a, a.Location);
}
}

Просмотреть файл

@ -39,6 +39,7 @@ namespace xharness.BCLTestImporter {
SkiptvOSVariation = !platforms.Contains (Platform.TvOS),
SkipwatchOSVariation = !platforms.Contains (Platform.WatchOS),
FailureMessage = failure,
RestoreNugetsInProject = true,
});
}
return result;
@ -59,6 +60,7 @@ namespace xharness.BCLTestImporter {
Platform = "AnyCPU",
IsExecutableProject = true,
FailureMessage = failure,
RestoreNugetsInProject = true,
Dependency = async () => {
var rv = await Harness.BuildBclTests ();
if (!rv.Succeeded)
@ -79,3 +81,4 @@ namespace xharness.BCLTestImporter {
}
}
}

Просмотреть файл

@ -10,6 +10,7 @@ using System.Threading.Tasks;
using System.Text;
using Xamarin;
using Xamarin.Utils;
using System.Xml;
namespace xharness
{
@ -2501,7 +2502,7 @@ namespace xharness
public bool RestoreNugets {
get {
return !string.IsNullOrEmpty (SolutionPath);
return TestProject.RestoreNugetsInProject || !string.IsNullOrEmpty (SolutionPath);
}
}
@ -2511,36 +2512,82 @@ namespace xharness
}
}
// This method must be called with the desktop resource acquired
// (which is why it takes an IAcquiredResources as a parameter without using it in the function itself).
protected async Task RestoreNugetsAsync (Log log, IAcquiredResource resource)
async Task<TestExecutingResult> RestoreNugetsAsync (string projectPath, Log log, bool useXIBuild=false)
{
if (!RestoreNugets)
return;
if (!File.Exists (SolutionPath))
throw new FileNotFoundException ("Could not find the solution whose nugets to restore.", SolutionPath);
// we do not want to use xibuild on solutions, we will have some failures with Mac Full
var isSolution = projectPath.EndsWith (".sln", StringComparison.Ordinal);
if (!File.Exists (projectPath))
throw new FileNotFoundException ("Could not find the solution whose nugets to restore.", projectPath);
using (var nuget = new Process ()) {
nuget.StartInfo.FileName = "/Library/Frameworks/Mono.framework/Versions/Current/Commands/nuget";
nuget.StartInfo.FileName = useXIBuild && !isSolution? Harness.XIBuildPath :
"/Library/Frameworks/Mono.framework/Versions/Current/Commands/nuget";
var args = new StringBuilder ();
args.Append ("restore ");
args.Append (StringUtils.Quote (SolutionPath));
args.Append ((useXIBuild && !isSolution? "/" : "") + "restore "); // diff param depending on the tool
args.Append (StringUtils.Quote (projectPath));
if (useXIBuild && !isSolution)
args.Append (" /verbosity:detailed ");
else
args.Append (" -verbosity detailed ");
nuget.StartInfo.Arguments = args.ToString ();
SetEnvironmentVariables (nuget);
LogEvent (log, "Restoring nugets for {0} ({1})", TestName, Mode);
LogEvent (log, "Restoring nugets for {0} ({1}) on path {2}", TestName, Mode, projectPath);
var timeout = TimeSpan.FromMinutes (15);
var result = await nuget.RunAsync (log, true, timeout);
if (result.TimedOut) {
ExecutionResult = TestExecutingResult.TimedOut;
log.WriteLine ("Nuget restore timed out after {0} seconds.", timeout.TotalSeconds);
return;
return TestExecutingResult.TimedOut;
} else if (!result.Succeeded) {
ExecutionResult = TestExecutingResult.Failed;
return;
return TestExecutingResult.Failed;
}
}
LogEvent (log, "Restoring nugets completed for {0} ({1}) on path {2}", TestName, Mode, projectPath);
return TestExecutingResult.Succeeded;
}
List<string> GetNestedReferenceProjects (string csproj)
{
if (!File.Exists (csproj))
throw new FileNotFoundException ("Could not find the project whose reference projects needed to be found.", csproj);
var result = new List<string> ();
var doc = new XmlDocument ();
doc.Load (csproj.Replace ("\\", "/"));
foreach (var referenceProject in doc.GetProjectReferences ()) {
var fixPath = referenceProject.Replace ("\\", "/"); // do the replace in case we use win paths
result.Add (fixPath);
// get all possible references
result.AddRange (GetNestedReferenceProjects (fixPath));
}
return result;
}
// This method must be called with the desktop resource acquired
// (which is why it takes an IAcquiredResources as a parameter without using it in the function itself).
protected async Task RestoreNugetsAsync (Log log, IAcquiredResource resource, bool useXIBuild=false)
{
if (!RestoreNugets)
return;
if (!File.Exists (SolutionPath ?? TestProject.Path))
throw new FileNotFoundException ("Could not find the solution whose nugets to restore.", SolutionPath ?? TestProject.Path);
// might happen that the project does contain reference projects with nugets, grab the reference projects and ensure
// thast they have the nugets restored (usually, watch os test projects
if (SolutionPath == null) {
var references = GetNestedReferenceProjects (TestProject.Path);
foreach (var referenceProject in references) {
var execResult = await RestoreNugetsAsync (referenceProject, log, useXIBuild); // do the replace in case we use win paths
if (execResult == TestExecutingResult.TimedOut) {
ExecutionResult = execResult;
return;
}
}
}
// restore for the main project/solution]
ExecutionResult = await RestoreNugetsAsync (SolutionPath ?? TestProject.Path, log, useXIBuild);
}
}
@ -2626,7 +2673,7 @@ namespace xharness
using (var resource = await NotifyAndAcquireDesktopResourceAsync ()) {
var log = Logs.Create ($"build-{Platform}-{Timestamp}.txt", "Build log");
await RestoreNugetsAsync (log, resource);
await RestoreNugetsAsync (log, resource, useXIBuild: true);
using (var xbuild = new Process ()) {
xbuild.StartInfo.FileName = Harness.XIBuildPath;

Просмотреть файл

@ -21,6 +21,7 @@ namespace xharness
public string [] Configurations;
public Func<Task> Dependency;
public string FailureMessage;
public bool RestoreNugetsInProject;
public IEnumerable<TestProject> ProjectReferences;
@ -92,6 +93,7 @@ namespace xharness
rv.Path = Path;
rv.IsExecutableProject = IsExecutableProject;
rv.GenerateVariations = GenerateVariations;
rv.RestoreNugetsInProject = RestoreNugetsInProject;
rv.Name = Name;
return rv;
}

Просмотреть файл

@ -27,6 +27,7 @@ namespace BCLTestImporter {
internal static readonly string TargetFrameworkVersionKey = "%TARGET FRAMEWORK VERSION%";
internal static readonly string TargetExtraInfoKey = "%TARGET EXTRA INFO%";
internal static readonly string DefineConstantsKey = "%DEFINE CONSTANTS%";
internal static readonly string DownloadPathKey = "%DOWNLOAD PATH%";
static readonly Dictionary<Platform, string> plistTemplateMatches = new Dictionary<Platform, string> {
{Platform.iOS, "Info.plist.in"},
{Platform.TvOS, "Info-tv.plist.in"},
@ -703,8 +704,9 @@ namespace BCLTestImporter {
/// <param name="templatePath">A path to the template used to generate the path.</param>
/// <param name="infoPlistPath">The path to the info plist of the project.</param>
/// <returns></returns>
static async Task<string> GenerateAsync (string projectName, string registerPath, (string FailureMessage, List<(string assembly, string hintPath)> Assemblies) info, string templatePath, string infoPlistPath, Platform platform)
async Task<string> GenerateAsync (string projectName, string registerPath, (string FailureMessage, List<(string assembly, string hintPath)> Assemblies) info, string templatePath, string infoPlistPath, Platform platform)
{
var downloadPath = GetReleaseDownload (platform).Replace ("/", "\\");
// fix possible issues with the paths to be included in the msbuild xml
infoPlistPath = infoPlistPath.Replace ('/', '\\');
var sb = new StringBuilder ();
@ -724,6 +726,7 @@ namespace BCLTestImporter {
using (var reader = new StreamReader(templatePath)) {
var result = await reader.ReadToEndAsync ();
result = result.Replace (DownloadPathKey, downloadPath);
result = result.Replace (NameKey, projectName);
result = result.Replace (ReferencesKey, sb.ToString ());
result = result.Replace (RegisterTypeKey, GetRegisterTypeNode (registerPath));
@ -755,7 +758,7 @@ namespace BCLTestImporter {
result = result.Replace (ContentKey, contentFiles.ToString ());
switch (platform){
case Platform.MacOSFull:
result = result.Replace (TargetFrameworkVersionKey, "v4.5");
result = result.Replace (TargetFrameworkVersionKey, "v4.5.2");
result = result.Replace (TargetExtraInfoKey,
"<UseXamMacFullFramework>true</UseXamMacFullFramework>");
result = result.Replace (DefineConstantsKey, "XAMCORE_2_0;ADD_BCL_EXCLUSIONS;XAMMAC_4_5");
@ -801,6 +804,7 @@ namespace BCLTestImporter {
async Task<string> GenerateWatchExtensionAsync (string projectName, string templatePath, string infoPlistPath, string registerPath, (string FailureMessage, List<(string assembly, string hintPath)> Assemblies) info)
{
var downloadPath = GetReleaseDownload (Platform.WatchOS).Replace ("/", "\\");
var sb = new StringBuilder ();
if (!string.IsNullOrEmpty (info.FailureMessage)) {
WriteReferenceFailure (sb, info.FailureMessage);
@ -818,6 +822,7 @@ namespace BCLTestImporter {
using (var reader = new StreamReader(templatePath)) {
var result = await reader.ReadToEndAsync ();
result = result.Replace (DownloadPathKey, downloadPath);
result = result.Replace (NameKey, projectName);
result = result.Replace (WatchOSTemplatePathKey, WatchExtensionTemplatePath);
result = result.Replace (PlistKey, infoPlistPath);