diff --git a/test/powershell/Language/Scripting/NativeExecution/NativeMinishell.Tests.ps1 b/test/powershell/Language/Scripting/NativeExecution/NativeMinishell.Tests.ps1 new file mode 100644 index 0000000000..44db92b6ee --- /dev/null +++ b/test/powershell/Language/Scripting/NativeExecution/NativeMinishell.Tests.ps1 @@ -0,0 +1,18 @@ +# Minishell is a powershell concept. +# It's primare use-case is when somebody executes a scriptblock in the new powershell process. +# The objects are automatically marshelled back to the parent session, so users can avoid custom +# serialization to pass objects between two processes. + +Describe 'minishell for native executables' -Tag 'CI' { + + BeforeAll { + $powershell = Join-Path -Path $PsHome -ChildPath "powershell" + } + + It 'gets a hashtable object from minishell' { + $output = & powershell { @{'a' = 'b'} } + ($output | measure).Count | Should Be 1 + ($output.GetType().Name) | Should Be 'Hashtable' + $output['a'] | Should Be 'b' + } +}