public void ExecutorExecuteSetsParentProcessIdOnDesignModeInitializer() { var parentProcessId = 2346; var parentProcessIdArgumentExecutor = new ParentProcessIdArgumentExecutor(CommandLineOptions.Instance); parentProcessIdArgumentExecutor.Initialize(parentProcessId.ToString()); int actualParentProcessId = -1; this.executor = new PortArgumentExecutor(CommandLineOptions.Instance, this.testRequestManager.Object, (ppid, ph) => { actualParentProcessId = ppid; return(testDesignModeClient.Object); }, this.mockProcessHelper.Object ); int port = 2345; this.executor.Initialize(port.ToString()); var result = executor.Execute(); testDesignModeClient.Verify(td => td.ConnectToClientAndProcessRequests(port, testRequestManager.Object), Times.Once); Assert.AreEqual(parentProcessId, actualParentProcessId, "Parent process Id must be set correctly on design mode initializer"); Assert.AreEqual(ArgumentProcessorResult.Success, result); }
public void ExecutorInitializeWithValidPortShouldAddParentProcessIdToCommandLineOptions() { var executor = new ParentProcessIdArgumentExecutor(CommandLineOptions.Instance); int parentProcessId = 2345; executor.Initialize(parentProcessId.ToString()); Assert.AreEqual(parentProcessId, CommandLineOptions.Instance.ParentProcessId); }
public void ExecutorExecuteReturnsArgumentProcessorResultSuccess() { var executor = new ParentProcessIdArgumentExecutor(CommandLineOptions.Instance); int parentProcessId = 2345; executor.Initialize(parentProcessId.ToString()); var result = executor.Execute(); Assert.AreEqual(ArgumentProcessorResult.Success, result); }
public void ExecutorInitializeWithInvalidParentProcessIdShouldThrowCommandLineException() { var executor = new ParentProcessIdArgumentExecutor(CommandLineOptions.Instance); try { executor.Initialize("Foo"); } catch (Exception ex) { Assert.IsTrue(ex is CommandLineException); Assert.AreEqual("The --ParentProcessId|/ParentProcessId argument requires the process id which is an integer. Specify the process id of the parent process that launched this process.", ex.Message); } }