feat: 初始提交——一键运行快捷轮盘工具(WPF + C#)
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
using OneClickRun.Services;
|
||||
using Xunit;
|
||||
|
||||
namespace OneClickRun.Tests;
|
||||
|
||||
public class PowerShellLocatorTests
|
||||
{
|
||||
[Fact]
|
||||
public void BuildScriptArgumentsQuotesPathsWithSpaces()
|
||||
{
|
||||
Assert.Equal(
|
||||
"-NoProfile -ExecutionPolicy Bypass -File \"C:\\my scripts\\hello.ps1\"",
|
||||
PowerShellLocator.BuildScriptArguments(@"C:\my scripts\hello.ps1", null));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void BuildScriptArgumentsAppendsExtraArgs()
|
||||
{
|
||||
Assert.Equal(
|
||||
"-NoProfile -ExecutionPolicy Bypass -File \"D:\\a.ps1\" -Name demo",
|
||||
PowerShellLocator.BuildScriptArguments(@"D:\a.ps1", "-Name demo"));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void FindLocatesPwshOnThisMachineOrReturnsNull()
|
||||
{
|
||||
// 开发机已安装 PowerShell 7.6.5;其他环境返回 null 也不算失败
|
||||
var path = PowerShellLocator.Find();
|
||||
if (path != null)
|
||||
{
|
||||
Assert.EndsWith("pwsh.exe", path, System.StringComparison.OrdinalIgnoreCase);
|
||||
Assert.True(System.IO.File.Exists(path));
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user