public ListNote AddListNote(ListNoteValue listNoteValue = null)
        {
            listNoteValue ??= ListNoteValueBuilder
            .CreateDefaultBuilder()
            .Build();
            var listNote = _mapper.Map <ListNoteValue, ListNote>(listNoteValue);

            _repo.Add(listNote).GetAwaiter().GetResult();
            return(listNote);
        }
Ejemplo n.º 2
0
        public void ListNotePostShouldBeAddListNote()
        {
            // Arrange
            #region init_data
            var todoListCreatedTime = DateTime.Now;
            var todoListModel       = new ListNote()
            {
                Id          = 1,
                Title       = "List",
                CreatedDate = todoListCreatedTime
            };
            var toValue = new ListNoteValue()
            {
                Id          = 1,
                Title       = "List",
                CreatedDate = todoListCreatedTime
            };
            var toModel = new ListNote()
            {
                Id          = 1,
                Title       = "List",
                CreatedDate = todoListCreatedTime
            };
            var todoListValue = ListNoteValueBuilder
                                .CreateDefaultBuilder()
                                .Build();
            #endregion init_data

            #region dependecy
            var mockRepo      = new Mock <IRepository>();
            var mockMap       = new Mock <IMapper>();
            var mockValidator = new Mock <IValidationService>();
            mockMap.Setup(m => m.Map <ListNoteValue, ListNote>(It.IsAny <ListNoteValue>())).Returns(toModel);
            mockRepo.Setup(r => r.Add(It.IsAny <ListNote>())).ReturnsAsync(todoListModel);
            mockMap.Setup(m => m.Map <ListNote, ListNoteValue>(It.IsAny <ListNote>())).Returns(toValue);
            mockValidator.Setup(v => v.ValidateListNote(It.IsAny <ListNoteValue>(), "POST")).ReturnsAsync(new List <string>());
            var todoListController = new ListNoteController(mockRepo.Object, mockMap.Object, mockValidator.Object);
            #endregion dependency

            // Act
            var response = todoListController.Post(todoListValue).GetAwaiter().GetResult();

            // Assert
            response.Should().BeOfType <OkObjectResult>();
            var responseObjs = response as OkObjectResult;
            responseObjs.Value.Should().BeOfType <ListNoteValue>();
            var todoListValueResponse = (responseObjs.Value as ListNoteValue);

            responseObjs.StatusCode.Should().Be(200);
            todoListValueResponse.Should().Be(toValue);
        }
        public void PutListNoteShouldBeReturnNotFoundError()
        {
            // Arange
            var listNodeValue = ListNoteValueBuilder.CreateDefaultBuilder().Build();

            listNodeValue.Id = 1;

            // Act
            var result = Facade.PutListNote(listNodeValue);

            // Assert
            result.Errors.Should().BeEquivalentTo(new List <string>()
            {
                ErrorMessages.NotFound
            });
        }
        public void PostListNoteShouldBeReturnListNoteTitleNotUniqueError()
        {
            // Arange
            Data.AddListNote();
            var noteList = ListNoteValueBuilder
                           .CreateDefaultBuilder()
                           .Build();

            // Act
            var result = Facade.PostListNote(noteList).Errors;

            // Assert
            result.Should().BeEquivalentTo(new List <string>()
            {
                ErrorMessages.ListNoteTitleNotUnique
            });
        }
        public void PostListNoteShouldBeReturnListNoteEmptyError()
        {
            // Arange
            var noteList = ListNoteValueBuilder
                           .CreateDefaultBuilder()
                           .Build();

            noteList.Title = "";

            // Act
            var result = Facade.PostListNote(noteList).Errors;

            // Assert
            result.Should().BeEquivalentTo(new List <string>()
            {
                ErrorMessages.ListNoteEmpty
            });
        }
        public void PostListNoteShouldBeReturnListNoteTitleIncorrectLenghtError()
        {
            // Arange
            var noteList = ListNoteValueBuilder
                           .CreateDefaultBuilder()
                           .Build();

            noteList.Title = "01234567890123456789012345678901234567890123456789012345678901234\\" +
                             "5678901234567890123456789012345678901234567890123456789012345678901234567890123456789";

            // Act
            var result = Facade.PostListNote(noteList).Errors;

            // Assert
            result.Should().BeEquivalentTo(new List <string>()
            {
                ErrorMessages.ListNoteTitleIncorrectLenght
            });
        }
        public void PostListNoteShouldBeCreateWitSpecifiedDate()
        {
            // Arange
            DateTime time1 = new DateTime(2019, 01, 01, 10, 01, 01);
            DateTime time2 = new DateTime(2020, 01, 01, 10, 01, 01);

            Date.SetCurrentDateTime(time1);
            var listNote = ListNoteValueBuilder
                           .CreateDefaultBuilder()
                           .Build();

            // Act
            Date.SetCurrentDateTime(time2);
            var todoList = Facade.PostListNote(listNote).Value;

            // Assert
            todoList.Title.Should().Be("Title");
            todoList.CreatedDate.Should().Be(time2);
            todoList.ModifiedDate.Should().BeNull();
        }