This repository has been archived on 2022-11-03. You can view files and clone it, but cannot push or open issues or pull requests.
DevOpsOpenHack/MobileApps/MyDriving/MyDriving.UITests/Pages/CurrentTripPage.cs

76 lines
2.1 KiB
C#
Raw Normal View History

2022-11-03 20:41:13 +00:00
// 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.Linq;
using Xamarin.UITest;
using Query = System.Func<Xamarin.UITest.Queries.AppQuery, Xamarin.UITest.Queries.AppQuery>;
namespace MyDriving.UITests
{
public class CurrentTripPage : BasePage
{
readonly Query RecordingButton;
readonly string UseSimulatorButton = "Use Simulator";
readonly Query TripTitleField;
readonly Query SaveTripButton;
public CurrentTripPage ()
: base("Current Trip", "Current Trip")
{
if (OnAndroid)
{
RecordingButton = x => x.Id("fab");
TripTitleField = x => x.Class("EditText");
SaveTripButton = x => x.Id("button1");
}
if (OniOS)
{
RecordingButton = x => x.Class("UIButton");
SaveTripButton = x => x.Marked("OK");
TripTitleField = x => x.Class("UITextField");
}
}
public CurrentTripPage StartRecordingTrip ()
{
App.Tap (RecordingButton);
System.Threading.Thread.Sleep(2500);
if (!App.Query(UseSimulatorButton).Any())
{
App.Tap(RecordingButton);
}
App.Tap(UseSimulatorButton);
App.Screenshot ("Started recording trip");
return this;
}
public CurrentTripPage StopRecordingTrip ()
{
System.Threading.Thread.Sleep (2500);
App.Tap (RecordingButton);
App.Screenshot("Stopped recording trip");
return this;
}
public CurrentTripPage SaveTrip (string title)
{
App.ClearText (TripTitleField);
App.EnterText (TripTitleField, title);
App.DismissKeyboard ();
App.Screenshot ("Trip title entered");
App.Tap(SaveTripButton);
App.Screenshot("Trip Saved!");
return this;
}
}
}