mirror of
https://github.com/microsoft/PowerToys.git
synced 2026-04-05 02:36:19 +02:00
* tray button fix * settings closing changed * ignore old settings tests * changed test init * changed launch * separated app history file * select enabled modules on launch
122 lines
3.1 KiB
C#
122 lines
3.1 KiB
C#
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
|
using OpenQA.Selenium.Appium;
|
|
using OpenQA.Selenium.Appium.Windows;
|
|
using OpenQA.Selenium.Interactions;
|
|
|
|
namespace PowerToysTests
|
|
{
|
|
[TestClass]
|
|
public class PowerToysTrayTests : PowerToysSession
|
|
{
|
|
private bool isSettingsOpened;
|
|
private bool isTrayOpened;
|
|
|
|
[TestMethod]
|
|
public void SettingsOpen()
|
|
{
|
|
OpenSettings();
|
|
|
|
//check settings window opened
|
|
WindowsElement settingsWindow = session.FindElementByName("PowerToys Settings");
|
|
Assert.IsNotNull(settingsWindow);
|
|
|
|
isSettingsOpened = true;
|
|
}
|
|
|
|
[TestMethod]
|
|
public void SettingsOpenWithContextMenu()
|
|
{
|
|
//open tray
|
|
trayButton.Click();
|
|
WaitSeconds(1);
|
|
isTrayOpened = true;
|
|
|
|
//open PowerToys context menu
|
|
AppiumWebElement pt = PowerToysTrayButton();
|
|
Assert.IsNotNull(pt);
|
|
|
|
new Actions(session).MoveToElement(pt).ContextClick().Perform();
|
|
|
|
//open settings
|
|
session.FindElementByXPath("//MenuItem[@Name=\"Settings\"]").Click();
|
|
|
|
//check settings window opened
|
|
WindowsElement settingsWindow = session.FindElementByName("PowerToys Settings");
|
|
Assert.IsNotNull(settingsWindow);
|
|
|
|
isSettingsOpened = true;
|
|
}
|
|
|
|
[TestMethod]
|
|
public void PowerToysExit()
|
|
{
|
|
//open PowerToys context menu
|
|
trayButton.Click();
|
|
isTrayOpened = true;
|
|
WaitSeconds(1);
|
|
|
|
AppiumWebElement powerToys = PowerToysTrayButton();
|
|
Assert.IsNotNull(powerToys);
|
|
|
|
new Actions(session).MoveToElement(powerToys).ContextClick().Perform();
|
|
|
|
//exit
|
|
session.FindElementByAccessibilityId("40001").Click();
|
|
|
|
//check PowerToys exited
|
|
powerToys = null;
|
|
try
|
|
{
|
|
powerToys = PowerToysTrayButton();
|
|
}
|
|
catch (OpenQA.Selenium.WebDriverException)
|
|
{
|
|
//expected, PowerToys shouldn't be here
|
|
}
|
|
|
|
LaunchPowerToys();
|
|
Assert.IsNull(powerToys);
|
|
}
|
|
|
|
[ClassInitialize]
|
|
public static void ClassInitialize(TestContext context)
|
|
{
|
|
Setup(context);
|
|
Assert.IsNotNull(session);
|
|
|
|
if (!isPowerToysLaunched)
|
|
{
|
|
LaunchPowerToys();
|
|
}
|
|
}
|
|
|
|
[ClassCleanup]
|
|
public static void ClassCleanup()
|
|
{
|
|
ExitPowerToys();
|
|
TearDown();
|
|
}
|
|
|
|
[TestInitialize]
|
|
public void TestInitialize()
|
|
{
|
|
isSettingsOpened = false;
|
|
isTrayOpened = false;
|
|
}
|
|
|
|
[TestCleanup]
|
|
public void TestCleanup()
|
|
{
|
|
if (isSettingsOpened)
|
|
{
|
|
CloseSettings();
|
|
}
|
|
|
|
if (isTrayOpened)
|
|
{
|
|
trayButton.Click();
|
|
}
|
|
}
|
|
}
|
|
}
|