public void It_generates_the_right_arguments_for_RunTests() { const int port = 1; const string assembly = "assembly.dll"; var message = new Message { Payload = JToken.FromObject(new RunTestsMessage { Tests = new List <string> { "test1", "test2" } }) }; var runTestsArgumentsBuilder = new RunTestsArgumentsBuilder(assembly, port, message); var arguments = runTestsArgumentsBuilder.BuildArguments(); arguments.Should().BeEquivalentTo( assembly, "--designtime", "--port", $"{port}", "--wait-command"); }
public GivenATestExecutionGetTestRunnerProcessStartInfoMessageHandler() { _testsToRun = new List <string> { "test1", "test2" }; _validMessage = new Message { MessageType = TestMessageTypes.TestExecutionGetTestRunnerProcessStartInfo, Payload = JToken.FromObject(new RunTestsMessage { Tests = _testsToRun }) }; _dotnetTestMock = new Mock <IDotnetTest>(); _dotnetTestMock.Setup(d => d.State).Returns(DotnetTestState.VersionCheckCompleted); _dotnetTestMock.Setup(d => d.PathToAssemblyUnderTest).Returns(AssemblyUnderTest); _testStartInfo = new TestStartInfo { FileName = "runner", Arguments = "arguments" }; _testRunnerMock = new Mock <ITestRunner>(); _testRunnerMock.Setup(t => t.GetProcessStartInfo()).Returns(_testStartInfo); _testRunnerFactoryMock = new Mock <ITestRunnerFactory>(); _testRunnerFactoryMock .Setup(c => c.CreateTestRunner(It.IsAny <RunTestsArgumentsBuilder>())) .Callback <ITestRunnerArgumentsBuilder>(r => _argumentsBuilder = r as RunTestsArgumentsBuilder) .Returns(_testRunnerMock.Object); _adapterChannelMock = new Mock <IReportingChannel>(); _testRunnerChannelMock = new Mock <IReportingChannel>(); _testRunnerChannelMock.Setup(t => t.Port).Returns(TestRunnerPort); _reportingChannelFactoryMock = new Mock <IReportingChannelFactory>(); _reportingChannelFactoryMock.Setup(r => r.CreateTestRunnerChannel()).Returns(_testRunnerChannelMock.Object); _testGetTestRunnerProcessStartInfoMessageHandler = new GetTestRunnerProcessStartInfoMessageHandler( _testRunnerFactoryMock.Object, _adapterChannelMock.Object, _reportingChannelFactoryMock.Object); }