function test_multipleValueNode_type_withRefund()
 {
     $customer = Braintree_Customer::createNoValidate();
     $creditCard = Braintree_CreditCard::create(array('customerId' => $customer->id, 'cardholderName' => 'Joe Everyman' . rand(), 'number' => '5105105105105100', 'expirationDate' => '05/12'))->creditCard;
     $sale = Braintree_Transaction::saleNoValidate(array('amount' => Braintree_Test_TransactionAmounts::$authorize, 'paymentMethodToken' => $creditCard->token, 'options' => array('submitForSettlement' => true)));
     Braintree_Http::put('/transactions/' . $sale->id . '/settle');
     $refund = Braintree_Transaction::refund($sale->id)->transaction;
     $credit = Braintree_Transaction::creditNoValidate(array('amount' => '100.00', 'paymentMethodToken' => $creditCard->token));
     $collection = Braintree_Transaction::search(array(Braintree_TransactionSearch::creditCardCardholderName()->is($creditCard->cardholderName), Braintree_TransactionSearch::type()->is($credit->type), Braintree_TransactionSearch::refund()->is(True)));
     $this->assertEquals(1, $collection->maximumCount());
     $this->assertEquals($refund->id, $collection->firstItem()->id);
     $collection = Braintree_Transaction::search(array(Braintree_TransactionSearch::creditCardCardholderName()->is($creditCard->cardholderName), Braintree_TransactionSearch::type()->is($credit->type), Braintree_TransactionSearch::refund()->is(False)));
     $this->assertEquals(1, $collection->maximumCount());
     $this->assertEquals($credit->id, $collection->firstItem()->id);
 }