chore: import upstream snapshot with attribution
Spell checking / Check Spelling (push) Has been cancelled
Spell checking / Update PR (push) Has been cancelled
Publish Dev Docs Website / build (push) Failing after 1s
Publish Dev Docs Website / deploy (push) Has been skipped
Spell checking / Report (Push) (push) Has been cancelled
Spell checking / Report (PR) (push) Has been cancelled
Spell checking / Check Spelling (push) Has been cancelled
Spell checking / Update PR (push) Has been cancelled
Publish Dev Docs Website / build (push) Failing after 1s
Publish Dev Docs Website / deploy (push) Has been skipped
Spell checking / Report (Push) (push) Has been cancelled
Spell checking / Report (PR) (push) Has been cancelled
This commit is contained in:
+95
@@ -0,0 +1,95 @@
|
||||
// Copyright (c) Microsoft Corporation
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using System.Linq;
|
||||
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Moq;
|
||||
using Wox.Infrastructure;
|
||||
using Wox.Plugin;
|
||||
|
||||
namespace Microsoft.PowerToys.Run.Plugin.System.UnitTests
|
||||
{
|
||||
[TestClass]
|
||||
public class QueryTests
|
||||
{
|
||||
[TestInitialize]
|
||||
public void Setup()
|
||||
{
|
||||
StringMatcher.Instance = new StringMatcher();
|
||||
}
|
||||
|
||||
[DataTestMethod]
|
||||
[DataRow("shutdown", "Shutdown computer")]
|
||||
[DataRow("restart", "Restart computer")]
|
||||
[DataRow("sign out", "Sign out of computer")]
|
||||
[DataRow("lock", "Lock computer")]
|
||||
[DataRow("sleep", "Put computer to sleep")]
|
||||
[DataRow("hibernate", "Hibernate computer")]
|
||||
[DataRow("recycle b", "Open the Recycle Bin")]
|
||||
[DataRow("empty recycle", "Open the Recycle Bin")]
|
||||
public void EnvironmentIndependentQueryResults(string typedString, string expectedResult)
|
||||
{
|
||||
// Setup
|
||||
Mock<Main> main = new Mock<Main>();
|
||||
Query expectedQuery = new Query(typedString);
|
||||
|
||||
// Act
|
||||
var result = main.Object.Query(expectedQuery).FirstOrDefault().SubTitle;
|
||||
|
||||
// Assert
|
||||
Assert.IsTrue(result.StartsWith(expectedResult, StringComparison.OrdinalIgnoreCase));
|
||||
}
|
||||
|
||||
[DataTestMethod]
|
||||
[DataRow("ip", "IPv4 address of")]
|
||||
[DataRow("address", "IPv4 address of")] // searching for address should show ipv4 first
|
||||
[DataRow("ip v4", "IPv4 address of")]
|
||||
[DataRow("ip v6", "IPv6 address of")]
|
||||
[DataRow("mac addr", "MAC address of")]
|
||||
public void DelayedQueryResults(string typedString, string expectedResult)
|
||||
{
|
||||
// Setup
|
||||
Mock<Main> main = new Mock<Main>();
|
||||
Query expectedQuery = new Query(typedString);
|
||||
|
||||
// Act
|
||||
var result = main.Object.Query(expectedQuery, true).FirstOrDefault().SubTitle;
|
||||
|
||||
// Assert
|
||||
Assert.IsTrue(result.StartsWith(expectedResult, StringComparison.OrdinalIgnoreCase));
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void UefiCommandIsAvailableOnUefiSystems()
|
||||
{
|
||||
// Setup
|
||||
Mock<Main> main = new Mock<Main>();
|
||||
main.Object.IsBootedInUefiMode = true; // Simulate system with UEFI.
|
||||
Query expectedQuery = new Query("uefi firm");
|
||||
|
||||
// Act
|
||||
var result = main.Object.Query(expectedQuery).FirstOrDefault().SubTitle;
|
||||
|
||||
// Assert
|
||||
Assert.AreEqual("Reboot computer into UEFI firmware settings (Requires administrative permissions.)", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void UefiCommandIsNotAvailableOnSystemsWithoutUefi()
|
||||
{
|
||||
// Setup
|
||||
Mock<Main> main = new Mock<Main>();
|
||||
main.Object.IsBootedInUefiMode = false; // Simulate system without UEFI.
|
||||
Query expectedQuery = new Query("uefi firm");
|
||||
|
||||
// Act
|
||||
var result = main.Object.Query(expectedQuery).FirstOrDefault();
|
||||
|
||||
// Assert
|
||||
Assert.IsNull(result);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user