Skip to content

Commit f96e537

Browse files
committed
Move ConstrainedLanguageMode tests to separate task
1 parent 975ed6c commit f96e537

File tree

1 file changed

+25
-23
lines changed

1 file changed

+25
-23
lines changed

PowerShellEditorServices.build.ps1

+25-23
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ Task Build FindDotNet, CreateBuildInfo, {
175175
Invoke-BuildExec { & dotnet publish $script:dotnetBuildArgs .\src\PowerShellEditorServices.VSCode\PowerShellEditorServices.VSCode.csproj -f $script:NetRuntime.Standard }
176176
}
177177

178-
Task Test TestServer, TestE2E
178+
Task Test TestServer, TestE2E, TestConstrainedLanguageMode
179179

180180
Task TestServer TestServerWinPS, TestServerPS72, TestServerPS73
181181

@@ -202,23 +202,25 @@ Task TestServerPS73 -If ($PSVersionTable.PSEdition -eq "Core") Build, SetupHelpF
202202

203203
Task TestE2E Build, SetupHelpForTests, {
204204
Set-Location .\test\PowerShellEditorServices.Test.E2E\
205-
206205
$env:PWSH_EXE_NAME = if ($IsCoreCLR) { "pwsh" } else { "powershell" }
207206
Invoke-BuildExec { & dotnet $script:dotnetTestArgs $script:NetRuntime.PS73 }
207+
}
208208

209-
if (!$script:IsNix) {
210-
if (-not [Security.Principal.WindowsIdentity]::GetCurrent().Owner.IsWellKnown("BuiltInAdministratorsSid")) {
211-
Write-Warning "Skipping Constrained Language Mode tests as they must be ran in an elevated process."
212-
return
213-
}
209+
Task TestConstrainedLanguageMode -If (-not $script:IsNix) Build, SetupHelpForTests, {
210+
Set-Location .\test\PowerShellEditorServices.Test.E2E\
211+
$env:PWSH_EXE_NAME = if ($IsCoreCLR) { "pwsh" } else { "powershell" }
214212

215-
try {
216-
Write-Host "Running end-to-end tests in Constrained Language Mode."
217-
[System.Environment]::SetEnvironmentVariable("__PSLockdownPolicy", "0x80000007", [System.EnvironmentVariableTarget]::Machine);
218-
Invoke-BuildExec { & dotnet $script:dotnetTestArgs $script:NetRuntime.PS73 }
219-
} finally {
220-
[System.Environment]::SetEnvironmentVariable("__PSLockdownPolicy", $null, [System.EnvironmentVariableTarget]::Machine);
221-
}
213+
if (-not [Security.Principal.WindowsIdentity]::GetCurrent().Owner.IsWellKnown("BuiltInAdministratorsSid")) {
214+
Write-Warning "Skipping Constrained Language Mode tests as they must be ran in an elevated process."
215+
return
216+
}
217+
218+
try {
219+
Write-Host "Running end-to-end tests in Constrained Language Mode."
220+
[System.Environment]::SetEnvironmentVariable("__PSLockdownPolicy", "0x80000007", [System.EnvironmentVariableTarget]::Machine)
221+
Invoke-BuildExec { & dotnet $script:dotnetTestArgs $script:NetRuntime.PS73 }
222+
} finally {
223+
[System.Environment]::SetEnvironmentVariable("__PSLockdownPolicy", $null, [System.EnvironmentVariableTarget]::Machine)
222224
}
223225
}
224226

@@ -290,11 +292,11 @@ task RestorePsesModules -After Build {
290292
(Get-Content -Raw $ModulesJsonPath | ConvertFrom-Json).PSObject.Properties | ForEach-Object {
291293
$name = $_.Name
292294
$body = @{
293-
Name = $name
294-
Version = $_.Value.Version
295+
Name = $name
296+
Version = $_.Value.Version
295297
AllowPrerelease = $_.Value.AllowPrerelease
296-
Repository = if ($_.Value.Repository) { $_.Value.Repository } else { $DefaultModuleRepository }
297-
Path = $submodulePath
298+
Repository = if ($_.Value.Repository) { $_.Value.Repository } else { $DefaultModuleRepository }
299+
Path = $submodulePath
298300
}
299301

300302
if (-not $name) {
@@ -321,11 +323,11 @@ task RestorePsesModules -After Build {
321323
$moduleInstallDetails = $moduleInfos[$moduleName]
322324

323325
$splatParameters = @{
324-
Name = $moduleName
325-
RequiredVersion = $moduleInstallDetails.Version
326-
AllowPrerelease = $moduleInstallDetails.AllowPrerelease
327-
Repository = if ($moduleInstallDetails.Repository) { $moduleInstallDetails.Repository } else { $DefaultModuleRepository }
328-
Path = $submodulePath
326+
Name = $moduleName
327+
RequiredVersion = $moduleInstallDetails.Version
328+
AllowPrerelease = $moduleInstallDetails.AllowPrerelease
329+
Repository = if ($moduleInstallDetails.Repository) { $moduleInstallDetails.Repository } else { $DefaultModuleRepository }
330+
Path = $submodulePath
329331
}
330332

331333
Write-Host "`tInstalling module: ${moduleName} with arguments $(ConvertTo-Json $splatParameters)"

0 commit comments

Comments
 (0)