[msbuild/tests] Add watch-companion test (#1187)

This commit is contained in:
Vincent Dondain 2016-11-16 13:51:33 -08:00 коммит произвёл Jeffrey Stedfast
Родитель 19ae097f79
Коммит 011bb14212
5 изменённых файлов: 76 добавлений и 4 удалений

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

@ -0,0 +1,28 @@
using System.Linq;
using NUnit.Framework;
using Xamarin.MacDev;
namespace Xamarin.iOS.Tasks
{
[TestFixture]
public class GeneratePlistTaskTests_iOS_WatchKitExtension : GeneratePlistTaskTests_iOS
{
public override void ConfigureTask ()
{
base.ConfigureTask ();
Task.IsWatchExtension = true;
}
/// <summary>
/// watchOS 1 WatchKitExtension projects should always have the UIRequiredDeviceCapabilities watch-companion value defined.
/// </summary>
[Test]
public void WatchCompanion ()
{
Assert.That (CompiledPlist.ContainsKey (ManifestKeys.UIRequiredDeviceCapabilities), "#1");
var requiredDeviceCapabilities = CompiledPlist.Get<PArray> (ManifestKeys.UIRequiredDeviceCapabilities).ToStringArray ();
Assert.That (requiredDeviceCapabilities.Contains ("watch-companion"), "#2");
}
}
}

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

@ -0,0 +1,17 @@
using NUnit.Framework;
using Xamarin.MacDev;
namespace Xamarin.iOS.Tasks
{
[TestFixture]
public abstract class GeneratePlistTaskTests_watchOS: GeneratePlistTaskTests_Core
{
public override void ConfigureTask ()
{
base.ConfigureTask ();
Task.DefaultSdkVersion = IPhoneSdks.Watch.GetClosestInstalledSdk (IPhoneSdkVersion.V2_0, true).ToString ();
Task.TargetFrameworkIdentifier = "Xamarin.WatchOS";
}
}
}

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

@ -1,16 +1,13 @@
using NUnit.Framework;
using Xamarin.MacDev;
namespace Xamarin.iOS.Tasks
{
[TestFixture]
public class GeneratePlistTaskTests_watchOS_WatchKitApp : GeneratePlistTaskTests_Core
public class GeneratePlistTaskTests_watchOS_WatchKitApp : GeneratePlistTaskTests_watchOS
{
public override void ConfigureTask ()
{
base.ConfigureTask ();
Task.DefaultSdkVersion = IPhoneSdks.Watch.GetClosestInstalledSdk (IPhoneSdkVersion.V2_0, true).ToString ();
Task.TargetFrameworkIdentifier = "Xamarin.WatchOS";
Task.IsWatchApp = true;
}

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

@ -0,0 +1,27 @@
using System.Linq;
using NUnit.Framework;
using Xamarin.MacDev;
namespace Xamarin.iOS.Tasks
{
[TestFixture]
public class GeneratePlistTaskTests_watchOS_WatchKitExtension : GeneratePlistTaskTests_watchOS
{
public override void ConfigureTask ()
{
base.ConfigureTask ();
Task.IsWatchExtension = true;
}
/// <summary>
/// watchOS 2 WatchKitExtension projects shouldn't have the UIRequiredDeviceCapabilities watch-companion value defined.
/// As this is the only value added to UIRequiredDeviceCapabilities for a watchOS project, the test passes if undefined.
/// </summary>
[Test]
public void NoWatchCompanion ()
{
Assert.That (CompiledPlist.ContainsKey (ManifestKeys.UIRequiredDeviceCapabilities) == false, "#1");
}
}
}

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

@ -103,6 +103,9 @@
<Compile Include="TaskTests\ValidateAppBundleTaskTests.cs" />
<Compile Include="ProjectsTests\IBToolLinking.cs" />
<Compile Include="TaskTests\CompileEntitlementsTaskTests.cs" />
<Compile Include="TaskTests\GeneratePlistTaskTests\GeneratePlistTaskTests_iOS_WatchKitExtension.cs" />
<Compile Include="TaskTests\GeneratePlistTaskTests\GeneratePlistTaskTests_watchOS_WatchKitExtension.cs" />
<Compile Include="TaskTests\GeneratePlistTaskTests\GeneratePlistTaskTests_watchOS.cs" />
</ItemGroup>
<ItemGroup />
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />