From c42258cfacf964476a64cf1aca5f157a6a0ab5cd Mon Sep 17 00:00:00 2001 From: JumpingYang001 Date: Thu, 17 Mar 2016 02:31:04 -0700 Subject: [PATCH 1/3] Add SessionStateInternal.Drives() xUnit test Resolves #64 --- test/csharp/test_SessionState.cs | 34 ++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 test/csharp/test_SessionState.cs diff --git a/test/csharp/test_SessionState.cs b/test/csharp/test_SessionState.cs new file mode 100644 index 0000000000..eac9af3db6 --- /dev/null +++ b/test/csharp/test_SessionState.cs @@ -0,0 +1,34 @@ +using Xunit; +using System; +using System.Collections; +using System.Collections.ObjectModel; +using System.Globalization; +using System.Management.Automation; +using System.Management.Automation.Host; +using System.Management.Automation.Internal; +using System.Management.Automation.Internal.Host; +using System.Management.Automation.Runspaces; +using Microsoft.PowerShell; +using Microsoft.PowerShell.Linux.Host; + +namespace PSTests +{ + public class SessionStateTests + { + [Fact] + public void TestDrives() + { + PowerShellAssemblyLoadContextInitializer.SetPowerShellAssemblyLoadContext(AppContext.BaseDirectory); + CultureInfo currentCulture = CultureInfo.CurrentCulture; + PSHost hostInterface = new DefaultHost(currentCulture,currentCulture); + RunspaceConfiguration runspaceConfiguration = RunspaceConfiguration.Create(); + InitialSessionState iss = InitialSessionState.CreateDefault2(); + AutomationEngine engine = new AutomationEngine(hostInterface, runspaceConfiguration, iss); + ExecutionContext executionContext = new ExecutionContext(engine, hostInterface, iss); + SessionStateInternal sessionState = new SessionStateInternal(executionContext); + Collection drives = sessionState.Drives(null); + Assert.True(drives.Count>0); + } + + } +} From 1665d6c5254b0df97c75a65e8399e7185851765d Mon Sep 17 00:00:00 2001 From: Andrew Schwartzmeyer Date: Thu, 17 Mar 2016 19:11:41 -0700 Subject: [PATCH 2/3] Add SessionStateTests to AssemblyLoadContext collection --- test/csharp/test_SessionState.cs | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/test/csharp/test_SessionState.cs b/test/csharp/test_SessionState.cs index eac9af3db6..1963e5e28d 100644 --- a/test/csharp/test_SessionState.cs +++ b/test/csharp/test_SessionState.cs @@ -13,22 +13,21 @@ using Microsoft.PowerShell.Linux.Host; namespace PSTests { + [Collection("AssemblyLoadContext")] public class SessionStateTests { [Fact] public void TestDrives() { - PowerShellAssemblyLoadContextInitializer.SetPowerShellAssemblyLoadContext(AppContext.BaseDirectory); - CultureInfo currentCulture = CultureInfo.CurrentCulture; - PSHost hostInterface = new DefaultHost(currentCulture,currentCulture); - RunspaceConfiguration runspaceConfiguration = RunspaceConfiguration.Create(); - InitialSessionState iss = InitialSessionState.CreateDefault2(); - AutomationEngine engine = new AutomationEngine(hostInterface, runspaceConfiguration, iss); - ExecutionContext executionContext = new ExecutionContext(engine, hostInterface, iss); + CultureInfo currentCulture = CultureInfo.CurrentCulture; + PSHost hostInterface = new DefaultHost(currentCulture,currentCulture); + RunspaceConfiguration runspaceConfiguration = RunspaceConfiguration.Create(); + InitialSessionState iss = InitialSessionState.CreateDefault2(); + AutomationEngine engine = new AutomationEngine(hostInterface, runspaceConfiguration, iss); + ExecutionContext executionContext = new ExecutionContext(engine, hostInterface, iss); SessionStateInternal sessionState = new SessionStateInternal(executionContext); Collection drives = sessionState.Drives(null); - Assert.True(drives.Count>0); + Assert.True(drives.Count>0); } - } } From c460e520435e1f8fa1fa2d004d3b0dbb20fe732c Mon Sep 17 00:00:00 2001 From: JumpingYang001 Date: Thu, 17 Mar 2016 20:18:29 -0700 Subject: [PATCH 3/3] Update test fix for test_SessionState.cs --- test/csharp/test_SessionState.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/csharp/test_SessionState.cs b/test/csharp/test_SessionState.cs index 1963e5e28d..adfc9e7a38 100644 --- a/test/csharp/test_SessionState.cs +++ b/test/csharp/test_SessionState.cs @@ -27,7 +27,7 @@ namespace PSTests ExecutionContext executionContext = new ExecutionContext(engine, hostInterface, iss); SessionStateInternal sessionState = new SessionStateInternal(executionContext); Collection drives = sessionState.Drives(null); - Assert.True(drives.Count>0); + Assert.NotNull(drives); } } }