public void CanGetCandidateById() { var candidateId = Guid.NewGuid(); var candidate = new Candidate { Id = candidateId, RoleId = Guid.NewGuid(), Firstname = "Someone", Lastname = "Cool", AptitudeAssessment = new AptitudeAssessment { SentOn = DateTime.Now.Subtract(TimeSpan.FromDays(3)), CompletedOn = DateTime.Now.Subtract(TimeSpan.FromDays(2)), TrainabilityIndex = 55 }, BehaviourAssessment = new BehaviourAssessment { SentOn = DateTime.Now.Subtract(TimeSpan.FromDays(3)), CompletedOn = DateTime.Now.Subtract(TimeSpan.FromDays(2)), WorkingStrengths = "W" } }; _repo.Setup(r => r.GetCandidate(candidateId)).Returns(candidate); var result = _controller.GetCandidate(candidateId); var okResult = (OkObjectResult)result.Result; var resultValue = (Candidate)okResult.Value; _repo.Verify(r => r.GetCandidate(candidateId), Times.Once); Assert.AreEqual(candidate.Id, resultValue.Id); }