Exemplo n.º 1
0
        public ActionResult Edit(int id)
        {
            var cardSetRepo      = new CardSetRepository();
            var cardRepo         = new CardRepository();
            var modifierTypeRepo = new ModifierTypeRepository();

            var model = new CardEditModel(cardRepo.SelectView(id), cardSetRepo.SelectAll(), modifierTypeRepo.SelectAll());

            return(View(model));
        }
Exemplo n.º 2
0
        public async Task <IActionResult> Create([FromBody] CardEditModel model)
        {
            if (model.isValid())
            {
                var result = await service.CreateAsync(model);

                return(Ok(result));
            }

            return(ValidationProblem());
        }
Exemplo n.º 3
0
        public void CreditCardCVVTooSmall()
        {
            var model = new CardEditModel
            {
                CardNumber = 12345678,
                CustomerId = 1,
                CVV        = 0
            };

            Assert.False(model.isValid());
        }
Exemplo n.º 4
0
        public void CreditCardCVVTooBig()
        {
            var model = new CardEditModel
            {
                CardNumber = 123456789,
                CustomerId = 1,
                CVV        = 654321
            };

            Assert.False(model.isValid());
        }
Exemplo n.º 5
0
        public void CreditCardNumberTooSmall()
        {
            var model = new CardEditModel
            {
                CardNumber = 0,
                CustomerId = 1,
                CVV        = 654
            };

            Assert.False(model.isValid());
        }
Exemplo n.º 6
0
        public void ValidCreditCard()
        {
            var model = new CardEditModel
            {
                CardNumber = 123456,
                CustomerId = 1,
                CVV        = 654
            };

            Assert.True(model.isValid());
        }
Exemplo n.º 7
0
        public async Task <CardViewModel> CreateAsync(CardEditModel model)
        {
            var creditCard = new CreditCard
            {
                Customer = new Customer {
                    Id = model.CustomerId
                },
                Number = model.CardNumber,
                CVV    = model.CVV,
                TokenRegristrationDate = DateTime.Now
            };
            var token = GenerateToken(model.CardNumber, model.CVV);

            creditCard = await repository.InsertAsync(creditCard);

            return(new CardViewModel
            {
                CardId = creditCard.Id,
                RegistrationDate = creditCard.TokenRegristrationDate,
                Token = token
            });
        }