예제 #1
0
        public async Task Handle_PollInTheStorage_Returns()
        {
            // Arrange
            var id    = Guid.NewGuid();
            var query = new GetPollQuery
            {
                Id = id
            };

            var poll            = CreatePoll();
            var expectedRsponse = new GetPollQueryResponse();

            _pollRepository
            .Setup(x => x.Read(id))
            .ReturnsAsync(poll);

            _mapper
            .Setup(x => x.Map <GetPollQueryResponse>(poll))
            .Returns(expectedRsponse);

            // Act
            var response = await _handler.Handle(query, CancellationToken.None);

            // Assert
            Assert.That(response, Is.EqualTo(expectedRsponse));
        }
예제 #2
0
        public void Handle_NoPollInTheStorage_Throws()
        {
            // Arrange
            var id    = Guid.NewGuid();
            var query = new GetPollQuery
            {
                Id = id
            };

            _pollRepository
            .Setup(x => x.Read(id))
            .ReturnsAsync((Poll)null);

            // Act+Assert
            Assert.That(
                async() => await _handler.Handle(query, CancellationToken.None),
                Throws
                .InstanceOf <EntityNotFoundException>()
                .With
                .Property(nameof(EntityNotFoundException.Id))
                .EqualTo(id)
                .And
                .Property(nameof(EntityNotFoundException.Type))
                .EqualTo(nameof(Poll)));
        }