Ejemplo n.º 1
0
        public async Task <List <ValidationResult> > ValidateCreateRequest(CreateGlossaryTermRequest request)
        {
            var result = new List <ValidationResult>();

            if (request == null)
            {
                result.Add(new ValidationResult("Bad request."));
                return(result);
            }

            if (string.IsNullOrEmpty(request.Term))
            {
                result.Add(new ValidationResult("Term can not be empty."));
                return(result);
            }

            GlossaryTerm glossaryTerm = await _dataRepository.FindByIdTerm(request.Term);

            if (glossaryTerm != null)
            {
                result.Add(new ValidationResult("The term already exists."));
            }

            return(result);
        }
Ejemplo n.º 2
0
        public async Task CreateGlossaryTerm(CreateGlossaryTermRequest request)
        {
            var term = new GlossaryTerm
            {
                Term       = request.Term,
                Definition = request.Definition
            };

            await _dataRepository.Add(term);
        }
Ejemplo n.º 3
0
        public async Task <IActionResult> Post([FromBody] CreateGlossaryTermRequest glossaryTermRequest)
        {
            var result = await _termService.ValidateCreateRequest(glossaryTermRequest);

            if (result.Count > 0)
            {
                return(BadRequest(result));
            }

            await _termService.CreateGlossaryTerm(glossaryTermRequest);

            return(Ok());
        }
Ejemplo n.º 4
0
        public void Test_CanCreateGlossaryTerm()
        {
            //Arrange
            var newGlossaryTerm = new CreateGlossaryTermRequest
            {
                Term       = "Actuary",
                Definition = "Actuaries are employed by insurance companies and pensions providers to calculate factors such as life expectancy, accident rates and likely payouts by using complex mathematical formulas"
            };

            // Act
            var result = _glossaryTermService.CreateGlossaryTerm(newGlossaryTerm);

            // Assert
            _termRepository.Verify(r => r.Add(It.Is <GlossaryTerm>(t => t.Term == "Actuary")), Times.Once);
        }