function testCreateFromTransparentRedirect_withValidationErrors()
 {
     Braintree_TestHelper::suppressDeprecationWarnings();
     $queryString = $this->createTransactionViaTr(array('transaction' => array('customer' => array('first_name' => str_repeat('x', 256)), 'credit_card' => array('number' => 'invalid', 'expiration_date' => ''))), array('transaction' => array('type' => Braintree_Transaction::SALE)));
     $result = Braintree_Transaction::createFromTransparentRedirect($queryString);
     $this->assertFalse($result->success);
     $errors = $result->errors->forKey('transaction')->forKey('customer')->onAttribute('firstName');
     $this->assertEquals(Braintree_Error_Codes::CUSTOMER_FIRST_NAME_IS_TOO_LONG, $errors[0]->code);
     $errors = $result->errors->forKey('transaction')->forKey('creditCard')->onAttribute('number');
     $this->assertTrue(count($errors) > 0);
     $errors = $result->errors->forKey('transaction')->forKey('creditCard')->onAttribute('expirationDate');
     $this->assertEquals(Braintree_Error_Codes::CREDIT_CARD_EXPIRATION_DATE_IS_REQUIRED, $errors[0]->code);
 }