forked from Silverfish/proton-bridge
test(BRIDGE-232): Add Home Menu Bridge UI e2e automation tests
This commit is contained in:
141
tests/e2e/ui_tests/windows_os/Tests/HelpMenuTests.cs
Normal file
141
tests/e2e/ui_tests/windows_os/Tests/HelpMenuTests.cs
Normal file
@ -0,0 +1,141 @@
|
||||
using NUnit.Framework;
|
||||
using ProtonMailBridge.UI.Tests.TestsHelper;
|
||||
using ProtonMailBridge.UI.Tests.Windows;
|
||||
using ProtonMailBridge.UI.Tests.Results;
|
||||
using FlaUI.Core.Input;
|
||||
using FlaUI.Core.AutomationElements;
|
||||
using FlaUI.UIA3;
|
||||
|
||||
namespace ProtonMailBridge.UI.Tests.Tests
|
||||
{
|
||||
[TestFixture]
|
||||
public class HelpMenuTests : TestSession
|
||||
{
|
||||
private readonly LoginWindow _loginWindow = new();
|
||||
private readonly HomeWindow _mainWindow = new();
|
||||
private readonly HelpMenuResult _helpMenuResult = new();
|
||||
private readonly HelpMenuWindow _helpMenuWindow = new();
|
||||
private readonly HomeResult _homeResult = new();
|
||||
|
||||
[SetUp]
|
||||
public void TestInitialize()
|
||||
{
|
||||
LaunchApp();
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void OpenHelpMenuAndSwitchBackToAccountView()
|
||||
{
|
||||
_loginWindow.SignIn(TestUserData.GetPaidUser());
|
||||
_helpMenuWindow.ClickHelpButton();
|
||||
_helpMenuWindow.ClickBackFromHelpMenu();
|
||||
Thread.Sleep(2000);
|
||||
_homeResult.CheckIfLoggedIn();
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void OpenGoToHelpTopics()
|
||||
{
|
||||
_loginWindow.SignIn(TestUserData.GetPaidUser());
|
||||
_helpMenuWindow.ClickHelpButton();
|
||||
_helpMenuWindow.ClickGoToHelpTopics();
|
||||
Wait.UntilInputIsProcessed(TimeSpan.FromSeconds(3));
|
||||
switchToChromeWindow();
|
||||
_helpMenuResult.CheckHelpLinkIsOpen();
|
||||
Window.Focus();
|
||||
_helpMenuWindow.ClickBackFromHelpMenu();
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void CheckForUpdates()
|
||||
{
|
||||
_loginWindow.SignIn(TestUserData.GetPaidUser());
|
||||
_helpMenuWindow.ClickHelpButton();
|
||||
_helpMenuWindow.ClickCheckNowButton();
|
||||
Wait.UntilInputIsProcessed(TimeSpan.FromSeconds(3));
|
||||
_helpMenuResult.CheckBridgeIsUpToDateNotification();
|
||||
_helpMenuWindow.ConfirmNotification();
|
||||
Wait.UntilInputIsProcessed(TimeSpan.FromSeconds(1));
|
||||
_helpMenuWindow.ClickBackFromHelpMenu();
|
||||
}
|
||||
[Test]
|
||||
public void OpenLogs()
|
||||
{
|
||||
_loginWindow.SignIn(TestUserData.GetPaidUser());
|
||||
_helpMenuWindow.ClickHelpButton();
|
||||
_helpMenuWindow.ClickLogsButton();
|
||||
Wait.UntilInputIsProcessed(TimeSpan.FromSeconds(3));
|
||||
switchToFileExplorerWindow();
|
||||
_helpMenuResult.CheckBridgeLogsAreOpen();
|
||||
Window.Focus();
|
||||
_helpMenuWindow.ClickBackFromHelpMenu();
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void OpenMissingEmailsReportProblem()
|
||||
{
|
||||
_loginWindow.SignIn(TestUserData.GetPaidUser());
|
||||
_helpMenuWindow.ClickHelpButton();
|
||||
_helpMenuWindow.ClickReportProblemButton();
|
||||
_helpMenuWindow.ClickICannotFindEmailsInEmailClient();
|
||||
_helpMenuWindow.EnterMissingEmailsProblemDetails();
|
||||
_helpMenuResult.CheckIfProblemIsSuccReported();
|
||||
_helpMenuWindow.ConfirmNotification();
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void OpenNotAbleToSendEmailsReportProblem()
|
||||
{
|
||||
_loginWindow.SignIn(TestUserData.GetPaidUser());
|
||||
_helpMenuWindow.ClickHelpButton();
|
||||
_helpMenuWindow.ClickReportProblemButton();
|
||||
_helpMenuWindow.ClickNotAbleToSendEmails();
|
||||
_helpMenuWindow.EnterNotAbleToSendEmailProblemDetails();
|
||||
_helpMenuResult.CheckIfProblemIsSuccReported();
|
||||
_helpMenuWindow.ConfirmNotification();
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void OpenBridgeIsNotStartingCorrectlyReportProblem()
|
||||
{
|
||||
_loginWindow.SignIn(TestUserData.GetPaidUser());
|
||||
_helpMenuWindow.ClickHelpButton();
|
||||
_helpMenuWindow.ClickReportProblemButton();
|
||||
_helpMenuWindow.ClickBridgeIsNotStartingCorrectly();
|
||||
_helpMenuWindow.EnterBridgeIsNotStartingCorrectlyProblemDetails();
|
||||
_helpMenuResult.CheckIfProblemIsSuccReported();
|
||||
_helpMenuWindow.ConfirmNotification();
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void OpenBridgeIsRunningSlowReportProblem()
|
||||
{
|
||||
_loginWindow.SignIn(TestUserData.GetPaidUser());
|
||||
_helpMenuWindow.ClickHelpButton();
|
||||
_helpMenuWindow.ClickReportProblemButton();
|
||||
_helpMenuWindow.ClickBridgeIsRunningSlow();
|
||||
_helpMenuWindow.EnterBridgeIsRunningSlowProblemDetails();
|
||||
_helpMenuResult.CheckIfProblemIsSuccReported();
|
||||
_helpMenuWindow.ConfirmNotification();
|
||||
|
||||
}
|
||||
[Test]
|
||||
public void OpenSomethingElseReportProblem()
|
||||
{
|
||||
_loginWindow.SignIn(TestUserData.GetPaidUser());
|
||||
_helpMenuWindow.ClickHelpButton();
|
||||
_helpMenuWindow.ClickReportProblemButton();
|
||||
_helpMenuWindow.ClickSomethingElse();
|
||||
_helpMenuWindow.EnterSomethingElseProblemDetails();
|
||||
_helpMenuResult.CheckIfProblemIsSuccReported();
|
||||
_helpMenuWindow.ConfirmNotification();
|
||||
}
|
||||
|
||||
[TearDown]
|
||||
public void TestCleanup()
|
||||
{
|
||||
_mainWindow.RemoveAccount();
|
||||
ClientCleanup();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user