Exemple #1
0
        public async Task RetrieveNotifications_ShouldReturnAListOfNotificationsAsync()
        {
            // Arrange
            var requestDto = new RetrieveNotificationRequest(
                1
                );
            var responseDto = new RetrieveNotificationsResponse(_mockedListDto);

            _notificationRepoMock.Setup(n =>
                                        n.RetrieveNotifications(requestDto)).ReturnsAsync(_mockedListDto);

            // Act
            var notificationList = await _sut.RetrieveNotifications(requestDto);

            // Assert
            Assert.Equal(responseDto.Notifications, notificationList.Notifications);
        }
        public async Task <RetrieveNotificationsResponse> RetrieveNotifications(RetrieveNotificationRequest request)
        {
            if (request == null)
            {
                throw new InvalidNotificationRequestException("Invalid RetrieveNotificationRequest object");
            }
            if (request.UserId is 0 or < 0)
            {
                throw new InvalidUserIdException("UserID is invalid");
            }

            var response = new RetrieveNotificationsResponse(
                await _repository.RetrieveNotifications(request)
                );


            return(response);
        }