public void BuildTestRunResultMessage_DateTime_ShouldReturnTestRunResultMessageObject() { // ARRANGE var cucumberMessageFactory = new CucumberMessageFactory(); var dateTime = new DateTime(2019, 5, 9, 14, 27, 48, DateTimeKind.Utc); // ACT var actualTestRunStartedMessageResult = cucumberMessageFactory.BuildTestRunStartedMessage(dateTime); // ASSERT actualTestRunStartedMessageResult.Should().BeAssignableTo <ISuccess <TestRunStarted> >(); }
public void BuildTestRunFinished_UtcDateTime_ShouldReturnSuccess() { // ARRANGE var cucumberMessageFactory = new CucumberMessageFactory(); var dateTime = new DateTime(2019, 5, 9, 14, 27, 48, DateTimeKind.Utc); // ACT var result = cucumberMessageFactory.BuildTestRunFinishedMessage(true, dateTime); // ASSERT result.Should().BeAssignableTo <ISuccess <TestRunFinished> >(); }
public void BuildTestRunFinished_DateTimeWithInvalidKind_ShouldReturnFailure(DateTimeKind dateTimeKind) { // ARRANGE var cucumberMessageFactory = new CucumberMessageFactory(); var dateTime = new DateTime(2019, 5, 9, 14, 27, 48, dateTimeKind); // ACT var result = cucumberMessageFactory.BuildTestRunFinishedMessage(true, dateTime); // ASSERT result.Should().BeAssignableTo <IFailure <TestRunFinished> >(); }
public void BuildTestCaseStarted_PlatformInformationIsNull_ShouldReturnFailue() { // ARRANGE var cucumberMessageFactory = new CucumberMessageFactory(); var dateTime = new DateTime(2019, 5, 9, 14, 27, 48, DateTimeKind.Utc); var pickleId = Guid.NewGuid(); // ACT var result = cucumberMessageFactory.BuildTestCaseStartedMessage(pickleId, dateTime, null); // ASSERT result.Should().BeAssignableTo <IFailure>(); }
public void BuildTestRunFinished_SuccessValue_ShouldReturnTestRunFinishedMessageWithSpecifiedSuccessValue(bool inputSuccess, bool expectedSuccess) { // ARRANGE var cucumberMessageFactory = new CucumberMessageFactory(); var dateTime = new DateTime(2019, 5, 9, 14, 27, 48, DateTimeKind.Utc); // ACT var result = cucumberMessageFactory.BuildTestRunFinishedMessage(inputSuccess, dateTime); // ASSERT result.Should().BeAssignableTo <ISuccess <TestRunFinished> >().Which .Result.Success.Should().Be(expectedSuccess); }
public void BuildTestCaseStarted_UtcDate_ShouldReturnSuccess() { // ARRANGE var cucumberMessageFactory = new CucumberMessageFactory(); var dateTime = new DateTime(2019, 5, 9, 14, 27, 48, DateTimeKind.Utc); var pickleId = Guid.NewGuid(); // ACT var result = cucumberMessageFactory.BuildTestCaseStartedMessage(pickleId, dateTime); // ASSERT result.Should().BeAssignableTo <ISuccess <TestCaseStarted> >(); }
public void BuildTestRunResultMessage_NonUtcDate_ShouldReturnFailure(DateTimeKind dateTimeKind) { // ARRANGE var cucumberMessageFactory = new CucumberMessageFactory(); var dateTime = new DateTime(2019, 5, 9, 14, 27, 48, dateTimeKind); var pickleId = Guid.NewGuid(); // ACT var result = cucumberMessageFactory.BuildTestCaseStartedMessage(pickleId, dateTime); // ASSERT result.Should().BeAssignableTo <IFailure>(); }
public void BuildTestCaseFinished_NullTestResult_ShouldReturnExceptionFailure() { // ARRANGE var cucumberMessageFactory = new CucumberMessageFactory(); var dateTime = new DateTime(2019, 5, 9, 14, 27, 48, DateTimeKind.Utc); var pickleId = Guid.NewGuid(); // ACT var result = cucumberMessageFactory.BuildTestCaseFinishedMessage(pickleId, dateTime, default); // ASSERT result.Should().BeAssignableTo <ExceptionFailure <TestCaseFinished> >().Which .Exception.Should().BeOfType <ArgumentNullException>(); }
public void BuildTestCaseStarted_ValidData_ShouldReturnMessageWithCorrectPickleId() { // ARRANGE var cucumberMessageFactory = new CucumberMessageFactory(); var dateTime = new DateTime(2019, 5, 9, 14, 27, 48, DateTimeKind.Utc); var pickleId = Guid.NewGuid(); // ACT var result = cucumberMessageFactory.BuildTestCaseStartedMessage(pickleId, dateTime); // ASSERT result.Should().BeAssignableTo <ISuccess <TestCaseStarted> >().Which .Result.PickleId.Should().Be(pickleId.ToString("D")); }
public void BuildTestRunResultMessage_ValidParameters_ShouldReturnTestRunResultMessageObjectWithSpecFlowAsUsedCucumberImplementation() { // ARRANGE const string expectedCucumberImplementation = @"SpecFlow"; var cucumberMessageFactory = new CucumberMessageFactory(); var dateTime = new DateTime(2019, 5, 9, 14, 27, 48, DateTimeKind.Utc); // ACT var actualTestRunStartedMessageResult = cucumberMessageFactory.BuildTestRunStartedMessage(dateTime); // ASSERT actualTestRunStartedMessageResult.Should().BeAssignableTo <ISuccess <TestRunStarted> >() .Which.Result.CucumberImplementation.Should().Be(expectedCucumberImplementation); }
public void BuildEnvelopeMessage_TestCaseFinishedSuccess_ShouldReturnEnvelopeWithTestCaseFinishedMessage() { // ARRANGE var cucumberMessageFactory = new CucumberMessageFactory(); var testCaseFinished = new TestCaseFinished { PickleId = Guid.NewGuid().ToString(), TestResult = new TestResult(), Timestamp = new Timestamp() }; // ACT var result = cucumberMessageFactory.BuildEnvelopeMessage(new Success <TestCaseFinished>(testCaseFinished)); // ASSERT result.Should().BeAssignableTo <ISuccess <Envelope> >().Which .Result.TestCaseFinished.Should().Be(testCaseFinished); }
public void BuildEnvelopeMessage_TestCaseFinishedSuccess_ShouldReturnEnvelopeOfTypeTestCaseFinished() { // ARRANGE var cucumberMessageFactory = new CucumberMessageFactory(); var dateTime = new DateTime(2019, 5, 9, 14, 27, 48, DateTimeKind.Utc); var testCaseFinished = new TestCaseFinished { PickleId = Guid.NewGuid().ToString(), TestResult = new TestResult(), Timestamp = Timestamp.FromDateTime(dateTime) }; // ACT var result = cucumberMessageFactory.BuildEnvelopeMessage(new Success <TestCaseFinished>(testCaseFinished)); // ASSERT result.Should().BeAssignableTo <ISuccess <Envelope> >().Which .Result.MessageCase.Should().Be(Envelope.MessageOneofCase.TestCaseFinished); }
public void BuildTestCaseFinished_NonUtcDateTime_ShouldReturnFailure(DateTimeKind dateTimeKind) { // ARRANGE var cucumberMessageFactory = new CucumberMessageFactory(); var dateTime = new DateTime(2019, 5, 9, 14, 27, 48, dateTimeKind); var pickleId = Guid.NewGuid(); var testResult = new TestResult { DurationNanoseconds = 1000, Message = "", Status = Status.Passed }; // ACT var result = cucumberMessageFactory.BuildTestCaseFinishedMessage(pickleId, dateTime, testResult); // ASSERT result.Should().BeAssignableTo <IFailure <TestCaseFinished> >(); }
public void BuildTestCaseStarted_UtcDate_ShouldReturnSuccess() { // ARRANGE var cucumberMessageFactory = new CucumberMessageFactory(); var dateTime = new DateTime(2019, 5, 9, 14, 27, 48, DateTimeKind.Utc); var pickleId = Guid.NewGuid(); var platform = new Platform { Cpu = "x64", Implementation = "SpecFlow", Os = "Windows", Version = "3.1.0" }; // ACT var result = cucumberMessageFactory.BuildTestCaseStartedMessage(pickleId, dateTime, platform); // ASSERT result.Should().BeAssignableTo <ISuccess <TestCaseStarted> >(); }
public void BuildTestCaseFinished_TestResult_ShouldReturnMessageWithCorrectTestResult() { // ARRANGE var cucumberMessageFactory = new CucumberMessageFactory(); var dateTime = new DateTime(2019, 5, 9, 14, 27, 48, DateTimeKind.Utc); var pickleId = Guid.NewGuid(); var testResult = new TestResult { DurationNanoseconds = 1000, Message = "", Status = Status.Passed }; // ACT var result = cucumberMessageFactory.BuildTestCaseFinishedMessage(pickleId, dateTime, testResult); // ASSERT result.Should().BeAssignableTo <ISuccess <TestCaseFinished> >().Which .Result.TestResult.Should().Be(testResult); }