Skip to content

Commit

Permalink
Make Assembly Load Native test work on a FX Dependent Linux Install (#…
Browse files Browse the repository at this point in the history
…17496)

* Make Assembly Load Native test work on a FX Dependent Linux Install

* Update Assembly.LoadNative.Tests.ps1

Co-authored-by: Travis Plunk <travis.plunk@microsoft.com>
  • Loading branch information
github-actions[bot] and TravisEz13 committed Jun 7, 2022
1 parent ff8311e commit f518f0b
Showing 1 changed file with 10 additions and 4 deletions.
14 changes: 10 additions & 4 deletions test/powershell/engine/Basic/Assembly.LoadNative.Tests.ps1
Expand Up @@ -24,23 +24,29 @@ Describe "Can load a native assembly" -Tags "CI" {
if ($IsWindows) {
$arch = "win-" + $processArch
$nativeDllName = "nativedll.dll"
$sourceDllName = "hostpolicy.dll"
$sourceDllName = Join-Path $PSHome "hostpolicy.dll"
} elseif ($IsLinux) {
$arch = "linux-" + $processArch
$nativeDllName = "nativedll.so"
$sourceDllName = "libhostpolicy.so"
$sourceDllName = Join-Path $PSHome "libhostpolicy.so"
# This won't be in PSHome in a FX Dependent install
# Fallback to finding it using the process object
if (!(Test-Path $sourceDllName)) {
$thisProcess = Get-Process -pid $pid
$sourceDllName = ($thisProcess.Modules | Where-Object {$_.moduleName -eq 'libhostpolicy.so'}).FileName
}
} elseif ($IsMacOS) {
$arch = "osx-" + $processArch
$nativeDllName = "nativedll.dylib"
$sourceDllName = "libhostpolicy.dylib"
$sourceDllName = Join-Path $PSHome "libhostpolicy.dylib"
} else {
throw "Unsupported OS"
}

$archFolder = Join-Path $root $arch
New-Item -Path $archFolder -ItemType Directory -Force > $null
#New-Item -Path $archFolder\$nativeDllName -ItemType File -Force > $null
Copy-Item -Path $PSHOME\$sourceDllName -Destination $archFolder\$nativeDllName
Copy-Item -Path $sourceDllName -Destination $archFolder\$nativeDllName

$managedDllPath = Join-Path $root managed.dll

Expand Down

0 comments on commit f518f0b

Please sign in to comment.