public void CanPushCustomCmdletContext()
        {
            var pack          = new CurrentCmdletScriptPack();
            var cmdletContext = pack.GetContext() as ScriptCS.CurrentCmdletContext;

            Assert.NotNull(cmdletContext);

            var mock = new Mock <ICmdletContext>();

            mock.Setup(c => c.GetVariableValue("test"))
            .Returns("ok")
            .Verifiable();

            ICmdletContext context = mock.Object;

            object result = null;

            Assert.Equal(cmdletContext, pack.GetContext());
            using (pack.CreateActiveCmdletSession(context))
            {
                Assert.Equal <object>(context, cmdletContext.ActiveCmdletContext);
                result = cmdletContext.GetVariableValue("test");
            }

            Assert.Equal("ok", result);
            mock.Verify();
        }
Пример #2
0
 public IDisposable PushCmdletContext(ICmdletContext context)
 {
     return(_currentCmdletScriptPack.CreateActiveCmdletSession(context));
 }
Пример #3
0
 public CurrentCmdletContext(ICmdletContext cmdlet)
 {
     _cmdlet = cmdlet;
 }
 public IDisposable PushCmdletContext(ICmdletContext context)
 {
     return _currentCmdletScriptPack.CreateActiveCmdletSession(context);
 }
 public CmdletScope(CurrentCmdletContext context, ICmdletContext cmdlet)
 {
     _context = context;
     _previousCmdletContext       = _context.ActiveCmdletContext;
     _context.ActiveCmdletContext = cmdlet;
 }
 public IDisposable CreateActiveCmdletSession(ICmdletContext cmdlet)
 {
     return(new CmdletScope(_context, cmdlet));
 }
 public CmdletScope( CurrentCmdletContext context, ICmdletContext cmdlet )
 {
     _context = context;
     _previousCmdletContext = _context.ActiveCmdletContext;
     _context.ActiveCmdletContext = cmdlet;
 }
 public IDisposable CreateActiveCmdletSession( ICmdletContext cmdlet )
 {
     return new CmdletScope(_context, cmdlet);
 }
 public CurrentCmdletContext(ICmdletContext cmdlet)
 {
     _cmdlet = cmdlet;
 }