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);
        }