Ejemplo n.º 1
0
        public async void UpdateOpenTransaction_AtInitializedDbTable_UpdatedTransactionEqualExpectedTransaction()
        {
            // arrange
            var transaction = GetTransaction();

            fixture.db.Add(transaction);
            await fixture.db.SaveChangesAsync();

            var expected = new TransactionBatch
            {
                Id        = transaction.Id,
                Date      = DateTime.UtcNow,
                CompanyId = 44440,
                Type      = TransactionTypes.Income,
                IsOpen    = true,
                Comment   = "Cause nest is on the other side."
            };

            // act
            await logic.UpdateDataModelAsync(expected);

            // assert
            var actual = await fixture.db.TransactionBatch.FirstOrDefaultAsync(i => i.Id == transaction.Id);

            Assert.NotNull(actual);
            Assert.Equal(expected.Comment, actual.Comment);
            Assert.Equal(expected.IsOpen, actual.IsOpen);
            Assert.Equal(expected.Id, actual.Id);
            Assert.Equal(expected.Date, actual.Date);
            Assert.Equal(expected.CompanyId, actual.CompanyId);
            Assert.Equal(expected.Type, actual.Type);
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> EditSingleItem(TransactionBatch model)
        {
            var statusMessage = await logicValidation.CheckUpdateDataModelAsync(model);

            if (statusMessage.IsCompleted)
            {
                await logic.UpdateDataModelAsync(model);

                await logProvider.AddToLogAsync($"Updated transaction information (Id: {model.Id}).");

                return(RedirectToRoute(TransactionsRouting.SingleItem, new { key = model.Id }));
            }
            else
            {
                return(View("CustomError", statusMessage));
            }
        }