public void ThrowsWhenEndTimeNull() { var createTestResultModel = new CreateTestResultModel { StartTime = DateTime.UtcNow }; var zigNetApiMapper = new ZigNetApiMapper(); var testResult = zigNetApiMapper.MapCreateTestResultModel(createTestResultModel); }
public void SaveTestResult(CreateTestResultModel createTestResultModel) { _httpRequestSender.SetHttpRequest( new HttpRequest { RequestType = "POST", Url = _zigNetApiUrl + "api/TestResult", RequestBody = JsonConvert.SerializeObject(createTestResultModel) }); _httpRequestSender.GetResponse(); }
public TestResult MapCreateTestResultModel(CreateTestResultModel createTestResultModel) { if (!createTestResultModel.StartTime.HasValue) { throw new ArgumentNullException("StartTime", "Test start time must have a value"); } if (!createTestResultModel.EndTime.HasValue) { throw new ArgumentNullException("EndTime", "Test end time must have a value"); } var testResult = new TestResult { Test = new Test { Name = createTestResultModel.TestName, Categories = new List <TestCategory>() }, SuiteResult = new SuiteResult { SuiteResultID = createTestResultModel.SuiteResultId }, StartTime = createTestResultModel.StartTime.Value, EndTime = createTestResultModel.EndTime.Value, ResultType = createTestResultModel.TestResultType, TestFailureDetails = new TestFailureDetails { FailureType = createTestResultModel.TestFailureType, FailureDetailMessage = createTestResultModel.TestFailureDetails } }; if (createTestResultModel.TestCategories != null) { foreach (var testCategoryName in createTestResultModel.TestCategories) { testResult.Test.Categories.Add(new TestCategory { Name = testCategoryName }); } } if (createTestResultModel.TestStepResults == null) { testResult.TestStepResults = new List <TestStepResult>(); } else { testResult.TestStepResults = createTestResultModel.TestStepResults; } return(testResult); }
public void MapsEmptyModelExceptStartEndDateTime() { var startTime = DateTime.UtcNow; var endTime = DateTime.UtcNow; var createTestResultModel = new CreateTestResultModel { StartTime = startTime, EndTime = endTime }; var zigNetApiMapper = new ZigNetApiMapper(); var testResult = zigNetApiMapper.MapCreateTestResultModel(createTestResultModel); Assert.IsNull(testResult.Test.Name); Assert.AreEqual(0, testResult.SuiteResult.SuiteResultID); Assert.AreEqual(0, testResult.Test.Categories.Count); Assert.AreEqual(startTime, testResult.StartTime); Assert.AreEqual(endTime, testResult.EndTime); Assert.AreEqual(TestResultType.Inconclusive, testResult.ResultType); Assert.AreEqual(TestFailureType.Exception, testResult.TestFailureDetails.FailureType); Assert.IsNull(testResult.TestFailureDetails.FailureDetailMessage); Assert.AreEqual(0, testResult.TestStepResults.Count); }
public void SaveTestResult(DateTime testStartTime) { var suiteResultId = int.Parse(_fileService.ReadStringFromFile(_suiteResultIdFilePath)); var createTestResultModel = new CreateTestResultModel { SuiteResultId = suiteResultId, StartTime = testStartTime, EndTime = DateTime.UtcNow, TestName = _specFlowContext.GetScenarioTitle(), TestCategories = _specFlowContext.GetScenarioAndFeatureTags(), TestStepResults = _testStepResults.ToArray() }; var specFlowException = _specFlowContext.GetScenarioTestError(); if (specFlowException == null) { createTestResultModel.TestResultType = TestResultType.Pass; } else { createTestResultModel.TestResultType = TestResultType.Fail; if (specFlowException.GetType().Name.Contains("Assert")) { createTestResultModel.TestFailureType = TestFailureType.Assertion; } else { createTestResultModel.TestFailureType = TestFailureType.Exception; } createTestResultModel.TestFailureDetails = string.Format("Message: {0}, Inner Exception: {1}, Stack Trace: {2}", specFlowException.Message, specFlowException.InnerException, specFlowException.StackTrace); } _zigNetApiHandler.SaveTestResult(createTestResultModel); }
public void MapsAllData() { var startTime = DateTime.UtcNow; var endTime = DateTime.UtcNow; var createTestResultModel = new CreateTestResultModel { TestName = "test 1", SuiteResultId = 2, TestCategories = new string[] { "test category 1", "test category 2" }, StartTime = startTime, EndTime = endTime, TestResultType = TestResultType.Pass, TestFailureType = TestFailureType.Exception, TestFailureDetails = "failed because of exception at line 5", TestStepResults = new List <TestStepResult> { new TestStepResult { TestStepResultID = 3 } } }; var zigNetApiMapper = new ZigNetApiMapper(); var testResult = zigNetApiMapper.MapCreateTestResultModel(createTestResultModel); Assert.AreEqual("test 1", testResult.Test.Name); Assert.AreEqual(2, testResult.SuiteResult.SuiteResultID); Assert.AreEqual("test category 1", testResult.Test.Categories.ToList()[0].Name); Assert.AreEqual("test category 2", testResult.Test.Categories.ToList()[1].Name); Assert.AreEqual(startTime, testResult.StartTime); Assert.AreEqual(endTime, testResult.EndTime); Assert.AreEqual(TestResultType.Pass, testResult.ResultType); Assert.AreEqual(TestFailureType.Exception, testResult.TestFailureDetails.FailureType); Assert.AreEqual("failed because of exception at line 5", testResult.TestFailureDetails.FailureDetailMessage); Assert.AreEqual(3, testResult.TestStepResults.ToList()[0].TestStepResultID); }
public HttpResponseMessage Post([FromBody] CreateTestResultModel createTestResultModel) { _testResultBusinessProvider.Save( _zigNetApiMapper.MapCreateTestResultModel(createTestResultModel)); return(Request.CreateResponse(HttpStatusCode.OK)); }