public static function updateSignature()
 {
     $billingAddressSignature = Braintree_AddressGateway::updateSignature();
     array_push($billingAddressSignature, array('options' => array('updateExisting')));
     return array('billingAddressId', 'cardholderName', 'cvv', 'deviceSessionId', 'expirationDate', 'expirationMonth', 'expirationYear', 'number', 'token', 'venmoSdkPaymentMethodCode', 'deviceData', 'fraudMerchantId', 'paymentMethodNonce', array('options' => array('makeDefault', 'verificationMerchantAccountId', 'verifyCard', 'venmoSdkSession')), array('billingAddress' => $billingAddressSignature));
 }
 public static function updateSignature()
 {
     $billingAddressSignature = Braintree_AddressGateway::updateSignature();
     array_push($billingAddressSignature, array('options' => array('updateExisting')));
     $signature = array_merge(self::baseSignature(), array('deviceSessionId', 'venmoSdkPaymentMethodCode', 'fraudMerchantId', array('billingAddress' => $billingAddressSignature)));
     return $signature;
 }
 function testCreateSignature()
 {
     $expected = array('customerId', 'paymentMethodNonce', 'token', 'billingAddressId', 'deviceData', array('options' => array('makeDefault', 'verifyCard', 'failOnDuplicatePaymentMethod', 'verificationMerchantAccountId')), array('billingAddress' => Braintree_AddressGateway::createSignature()));
     $this->assertEquals($expected, Braintree_PaymentMethodGateway::createSignature());
 }