function testParseAndValidateQueryString_throwsAuthenticationErrorIfBadCredentials() { Braintree_TestHelper::suppressDeprecationWarnings(); $privateKey = Braintree_Configuration::privateKey(); Braintree_Configuration::privateKey('incorrect'); try { $trData = Braintree_TransparentRedirect::createCustomerData(array("redirectUrl" => "http://www.example.com")); $queryString = Braintree_TestHelper::submitTrRequest(Braintree_Customer::createCustomerUrl(), array(), $trData); $this->setExpectedException('Braintree_Exception_Authentication'); Braintree_Customer::createFromTransparentRedirect($queryString); } catch (Exception $e) { } $privateKey = Braintree_Configuration::privateKey($privateKey); if (isset($e)) { throw $e; } }
function testCreateFromTransparentRedirect_withValidationErrors() { Braintree_TestHelper::suppressDeprecationWarnings(); $queryString = $this->createCustomerViaTr(array('customer' => array('first_name' => str_repeat('x', 256), 'credit_card' => array('number' => 'invalid', 'expiration_date' => ''))), array()); $result = Braintree_Customer::createFromTransparentRedirect($queryString); $this->assertFalse($result->success); $errors = $result->errors->forKey('customer')->onAttribute('firstName'); $this->assertEquals(Braintree_Error_Codes::CUSTOMER_FIRST_NAME_IS_TOO_LONG, $errors[0]->code); $errors = $result->errors->forKey('customer')->forKey('creditCard')->onAttribute('number'); $this->assertEquals(Braintree_Error_Codes::CREDIT_CARD_NUMBER_INVALID_LENGTH, $errors[0]->code); $errors = $result->errors->forKey('customer')->forKey('creditCard')->onAttribute('expirationDate'); $this->assertEquals(Braintree_Error_Codes::CREDIT_CARD_EXPIRATION_DATE_IS_REQUIRED, $errors[0]->code); }