Esempio n. 1
0
        public async Task ShouldThrowRecordNotFoundException_WhenGetByIdReturnsNull()
        {
            _respositoryMock.Setup(r => r.GetById(It.IsAny <long>())).ReturnsAsync((CreditCard)null);

            var query = new GetCreditCardByIdQuery(123L);

            await Assert.ThrowsAsync <RecordNotFoundException>(() => _handler.Handle(query, CancellationToken.None));
        }
Esempio n. 2
0
        public void ShouldCallRepositoryGetByIdMethod()
        {
            var id    = 123L;
            var query = new GetCreditCardByIdQuery(id);

            _handler.Handle(query, CancellationToken.None);

            _respositoryMock.Verify(r =>
                                    r.GetById(It.Is <long>(l => l == id)), Times.Once);
        }
Esempio n. 3
0
        public async Task ShouldReturnSingleModel()
        {
            var dbModel = CreditCardGenerator.CreateValidCreditCardFaker()
                          .RuleFor(r => r.Id, f => f.Random.Long())
                          .Generate();

            _respositoryMock.Setup(r => r.GetById(It.IsAny <long>())).ReturnsAsync(dbModel);

            var query = new GetCreditCardByIdQuery(dbModel.Id);

            var result = await _handler.Handle(query, CancellationToken.None);

            Assert.Equal(dbModel.Id, result.Id);
            Assert.Equal(dbModel.Name, result.Name);
            Assert.Equal(dbModel.CardNumber, result.CardNumber);
            Assert.Equal(dbModel.ExpiryDate, result.ExpiryDate);
        }
Esempio n. 4
0
        public async Task <IActionResult> GetById(long id)
        {
            _logger.LogTrace("Begin: Get by Id");

            try
            {
                var query  = new GetCreditCardByIdQuery(id);
                var record = await _mediator.Send(query);

                return(Ok(record));
            }
            catch (RecordNotFoundException)
            {
                _logger.LogTrace($"Record not found by id {id}");

                return(NotFound());
            }
        }