public void CreateSuggestion_InvalidParameter_BadRequest_Test()
        {
            var suggestRepository = new Mock <ISuggestRepository>();
            var suggestService    = new Mock <ISuggestService>();

            var createSuggestionReturn = new CreateSuggestionReturnModel
            {
                CreatedSuggestion = new Suggestion(),
                ErrorType         = Suggest.Services.Enums.ReturnErrorType.InvalidParameters,
                IsSuccessful      = false
            };

            var createSuggestionInputModel = new CreateSuggestionInputModel
            {
                Name    = null,
                Content = "Test content",
                Email   = "*****@*****.**"
            };

            suggestService.Setup(x => x.CreateSuggestion(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>()))
            .Returns(createSuggestionReturn);

            var result = new SuggestController(suggestRepository.Object, suggestService.Object).CreateSuggestion(createSuggestionInputModel);

            Assert.IsType <BadRequestObjectResult>(result);
        }
        public void CreateSuggestion_Success_Test()
        {
            var suggestRepository = new Mock <ISuggestRepository>();
            var suggestService    = new Mock <ISuggestService>();

            var createSuggestionReturn = new CreateSuggestionReturnModel
            {
                CreatedSuggestion = new Suggestion(),
                IsSuccessful      = true
            };

            var createSuggestionInputModel = new CreateSuggestionInputModel
            {
                Name    = "Persona Name",
                Content = "Test content",
                Email   = "*****@*****.**"
            };

            suggestService.Setup(x => x.CreateSuggestion(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>()))
            .Returns(createSuggestionReturn);

            var result = new SuggestController(suggestRepository.Object, suggestService.Object).CreateSuggestion(createSuggestionInputModel);

            Assert.IsType <OkObjectResult>(result);
        }
Exemplo n.º 3
0
        public CreateSuggestionReturnModel CreateSuggestion(string name, string email, string content)
        {
            var result = new CreateSuggestionReturnModel()
            {
                IsSuccessful = false
            };

            if (!IsValid(name, email, content))
            {
                result.ErrorType = Enums.ReturnErrorType.InvalidParameters;
                return(result);
            }

            var newSuggestion = new Suggestion()
            {
                Id      = Guid.NewGuid(),
                Email   = email,
                Name    = name,
                Content = content
            };

            result.CreatedSuggestion = _suggestRepository.CreateSuggetion(newSuggestion);
            result.IsSuccessful      = true;

            return(result);
        }