Beispiel #1
0
        public void DeleteTest_Exception_IsAlreadyDelete()
        {
            Customer customer = CreateCustomer("IsAlreadyDelete");

            customer.IsDelete = true;
            CustomerActivation customerActivation = customer.CustomerActivations.Where(ca => ca.IsActive == true).SingleOrDefault();

            customerActivation.IsActive        = false;
            customerActivation.IsInactiveSince = DateTime.Now;
            _context.Update(customer);
            _context.SaveChanges();


            var response = _mediator.Send(new DeleteCustomerCommand {
                CustomerId = customer.CustomerId
            }).ShouldThrow(typeof(FluentValidation.ValidationException));
        }
        public async Task <Unit> Handle(DeleteCustomerCommand request, CancellationToken cancellationToken)
        {
            Customer customer = await _context.Customers
                                .Include(c => c.CustomerActivations)
                                .Where(c => c.CustomerId == request.CustomerId)
                                .SingleOrDefaultAsync();

            customer.IsDelete = true;
            CustomerActivation customerActivation = customer.CustomerActivations
                                                    .SingleOrDefault(ca => ca.IsActive == true);

            customerActivation.IsActive        = false;
            customerActivation.IsInactiveSince = DateTime.Now;

            _context.Update(customer);
            await _context.SaveChangesAsync();

            return(Unit.Value);
        }