You are here

function Braintree_TransactionAdvancedSearchTest::test_multipleValueNode_status in Commerce Braintree 7

File

braintree_php/tests/integration/TransactionAdvancedSearchTest.php, line 435

Class

Braintree_TransactionAdvancedSearchTest

Code

function test_multipleValueNode_status() {
  $transaction = Braintree_Transaction::saleNoValidate(array(
    'amount' => Braintree_Test_TransactionAmounts::$authorize,
    'creditCard' => array(
      'number' => Braintree_Test_CreditCardNumbers::$visa,
      'expirationDate' => '05/2012',
    ),
  ));
  $collection = Braintree_Transaction::search(array(
    Braintree_TransactionSearch::id()
      ->is($transaction->id),
    Braintree_TransactionSearch::status()
      ->is($transaction->status),
  ));
  $this
    ->assertEquals(1, $collection
    ->maximumCount());
  $this
    ->assertEquals($transaction->id, $collection
    ->firstItem()->id);
  $collection = Braintree_Transaction::search(array(
    Braintree_TransactionSearch::id()
      ->is($transaction->id),
    Braintree_TransactionSearch::status()
      ->in(array(
      $transaction->status,
      Braintree_Transaction::SETTLED,
    )),
  ));
  $this
    ->assertEquals(1, $collection
    ->maximumCount());
  $this
    ->assertEquals($transaction->id, $collection
    ->firstItem()->id);
  $collection = Braintree_Transaction::search(array(
    Braintree_TransactionSearch::id()
      ->is($transaction->id),
    Braintree_TransactionSearch::status()
      ->is(Braintree_Transaction::SETTLED),
  ));
  $this
    ->assertEquals(0, $collection
    ->maximumCount());
}