Ejemplo n.º 1
0
 /**
  * Test the validate function
  *
  * @param int    $cardType
  * @param string $cardNumber
  * @param bool   $isValid
  *
  * @dataProvider testValidateProvider
  */
 public function testValidate($cardType, $cardNumber, $isValid)
 {
     $validator = new CreditCard();
     $validator->setAllowedCardTypes($cardType);
     $validateResult = $validator->validate($cardNumber);
     if ($isValid === true) {
         $this->assertEquals(true, $validateResult, "Card Number should have passed validation: " . json_encode($validator->getErrors()));
         $this->assertEquals(array(), $validator->getErrors());
     } else {
         $this->assertEquals(false, $validateResult, "Card Number should not have passed validation");
         $this->assertEquals(1, count($validator->getErrors()));
     }
 }
Ejemplo n.º 2
0
 public function actionAddCard()
 {
     $outcome = array('success' => 0);
     if (isset($_POST['data'])) {
         $dataString = $_POST['data'];
         $data = json_decode($dataString);
         $saveCard = true;
         if (isset($_POST['save'])) {
             $saveCard = $_POST['save'];
         }
         $uri = $data->uri;
         $card = new CreditCard();
         $card->User_ID = $this->getUser()->User_ID;
         $card->URI = $uri;
         if ($saveCard != null) {
             $card->Saved = $saveCard;
         }
         if ($card->save()) {
             $account = $this->getUserAccount();
             $account->addCard($uri);
             $outcome = array('success' => 1, 'CreditCard_ID' => $card->CreditCard_ID);
         } else {
             $outcome = array('success' => 0, 'Errors' => $card->getErrors());
         }
     }
     echo CJSON::encode($outcome);
 }