55 lines
1.5 KiB
C#
55 lines
1.5 KiB
C#
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|||
|
// Licensed under the MIT license. See LICENSE file in the project root for details.
|
|||
|
|
|||
|
using System;
|
|||
|
using System.IO;
|
|||
|
using Xamarin.UITest;
|
|||
|
using System.Reflection;
|
|||
|
|
|||
|
namespace MyDriving.UITests
|
|||
|
{
|
|||
|
public class AppInitializer
|
|||
|
{
|
|||
|
const string appPath = "../../../MyDriving.iOS/bin/iPhoneSimulator/Release/MyDrivingiOS.app";
|
|||
|
public static string apkPath;
|
|||
|
|
|||
|
private static IApp app;
|
|||
|
public static IApp App
|
|||
|
{
|
|||
|
get
|
|||
|
{
|
|||
|
if (app == null)
|
|||
|
throw new NullReferenceException("'AppInitializer.App' not set. Call 'AppInitializer.StartApp(platform)' before trying to access it.");
|
|||
|
return app;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
public static IApp StartApp(Platform platform)
|
|||
|
{
|
|||
|
if (platform == Platform.Android)
|
|||
|
{
|
|||
|
string currentFile = new Uri(Assembly.GetExecutingAssembly().CodeBase).LocalPath;
|
|||
|
FileInfo fi = new FileInfo(currentFile);
|
|||
|
string dir = fi.Directory.Parent.Parent.Parent.FullName;
|
|||
|
|
|||
|
// PathToAPK is a property or an instance variable in the test class
|
|||
|
apkPath = Path.Combine(dir, "MyDriving.Android", "bin", "XTC", "com.microsoft.mydriving-Signed.apk");
|
|||
|
|
|||
|
app = ConfigureApp
|
|||
|
.Android
|
|||
|
.ApkFile(apkPath)
|
|||
|
.StartApp(Xamarin.UITest.Configuration.AppDataMode.Clear);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
app = ConfigureApp
|
|||
|
.iOS
|
|||
|
//.AppBundle(appPath)
|
|||
|
.InstalledApp("com.microsoft.mydriving")
|
|||
|
.StartApp(Xamarin.UITest.Configuration.AppDataMode.Clear);
|
|||
|
}
|
|||
|
|
|||
|
return app;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|