Ejemplo n.º 1
0
        public async Task <IActionResult> PutFeedback(int id, UpdateFeedbackRequest updateFeedbackRequest)
        {
            if (updateFeedbackRequest.Description == null || updateFeedbackRequest.DueDate == default)
            {
                return(BadRequest());
            }

            var feedbackToUpdate = await _repository.Get(id);

            if (feedbackToUpdate.Data == null)
            {
                return(BadRequest());
            }

            await _repository.Update(FeedbackMapper.MapToDomainFromUpdateRequest(feedbackToUpdate, updateFeedbackRequest));

            return(Ok());
        }
Ejemplo n.º 2
0
        public void MapToDomainFromUpdate_should_map_domain_from_input()
        {
            var updateData = new UpdateFeedbackRequest()
            {
                IsCompleted = false,
                Description = Fixture.Create <string>(),
                DueDate     = Fixture.Create <DateTime>()
            };
            var domain = new Feedback();

            domain.Data = Fixture.Create <FeedbackData>();

            // Act
            domain = FeedbackMapper.MapToDomainFromUpdateRequest(domain, updateData);

            // Assert
            AssertArePropertyValuesEqual(updateData, domain.Data);
        }
Ejemplo n.º 3
0
        public void Update_should_update_existing_database_item()
        {
            PopulateDatabase(20);

            var newFeedbackUpdate = new UpdateFeedbackRequest
            {
                IsCompleted = true,
                Description = Fixture.Create <string>(),
                DueDate     = Fixture.Create <DateTime>()
            };

            // Act
            var initialFeedbackData = Sut.Get().GetAwaiter().GetResult()[0];
            var feedbackToUpdate    = FeedbackMapper.MapToDomainFromUpdateRequest(initialFeedbackData, newFeedbackUpdate);

            Sut.Update(feedbackToUpdate).GetAwaiter().GetResult();

            // Assert
            var initialFeedbackDataCopy2 = Sut.Get(initialFeedbackData.Data.Id).GetAwaiter().GetResult();

            AssertArePropertyValuesEqual(initialFeedbackDataCopy2.Data, feedbackToUpdate.Data);
        }