'trxn_id' => 'create_first_success',
'fee_amount' => .85,
));
+ $processor = $dummyPP->getPaymentProcessor();
$this->callAPISuccess('ContributionPage', 'create', array(
'id' => $this->_ids['contribution_page'],
'payment_processor' => array($paymentProcessor2ID, $this->_ids['payment_processor']),
$this->_checkFinancialRecords(array(
'id' => $contribution['id'],
'total_amount' => $contribution['total_amount'],
+ 'payment_instrument_id' => $processor['payment_instrument_id'],
), 'online');
}
$this->callAPIAndDocument('contribution_page', 'submit', $submitParams, __FUNCTION__, __FILE__, 'submit contribution page', NULL);
$contributions = $this->callAPISuccess('contribution', 'get', array('contribution_page_id' => $this->_ids['contribution_page']));
$this->assertCount(2, $contributions['values']);
+ $this->callAPISuccessGetCount('LineItem', array(), 2);
$membershipPayment = $this->callAPISuccess('membership_payment', 'getsingle', array());
$this->assertTrue(in_array($membershipPayment['contribution_id'], array_keys($contributions['values'])));
$membership = $this->callAPISuccessGetSingle('membership', array('id' => $membershipPayment['membership_id']));
$this->assertTrue(in_array($membershipPayment['contribution_id'], array_keys($contributions['values'])));
$membership = $this->callAPISuccessGetSingle('membership', array('id' => $membershipPayment['membership_id']));
$this->assertEquals($membership['contact_id'], $contributions['values'][$membershipPayment['contribution_id']]['contact_id']);
- $mut->checkAllMailLog(array(
- '$ 2.00',
- 'Membership Fee',
- ));
+ // We should have two separate email messages, each with their own amount
+ // line and no total line.
+ $mut->checkAllMailLog(
+ array(
+ 'Amount: $ 2.00',
+ 'Amount: $ 10.00',
+ 'Membership Fee',
+ ),
+ array(
+ 'Total: $',
+ )
+ );
$mut->stop();
$mut->clearMessages(999);
}
$this->setUpMembershipContributionPage();
$dummyPP = Civi\Payment\System::singleton()->getByProcessor($this->_paymentProcessor);
$dummyPP->setDoDirectPaymentResult(array('payment_status_id' => 1, 'trxn_id' => 'create_first_success'));
+ $processor = $dummyPP->getPaymentProcessor();
$submitParams = array(
'price_' . $this->_ids['price_field'][0] => reset($this->_ids['price_field_value']),
'contribution_page_id' => $this->_ids['contribution_page'],
'contribution_status_id' => 1,
));
+ $this->assertEquals($processor['payment_instrument_id'], $contribution['payment_instrument_id']);
$this->assertEquals('create_first_success', $contribution['trxn_id']);
$membershipPayment = $this->callAPISuccess('membership_payment', 'getsingle', array());
$renewedMembership = $this->callAPISuccessGetSingle('membership', array('id' => $membershipPayment['membership_id']));
$this->assertEquals(date('Y-m-d', strtotime('+ 1 year', strtotime($membership['end_date']))), $renewedMembership['end_date']);
$recurringContribution = $this->callAPISuccess('contribution_recur', 'getsingle', array('id' => $contribution['contribution_recur_id']));
+ $this->assertEquals($processor['payment_instrument_id'], $recurringContribution['payment_instrument_id']);
$this->assertEquals(5, $recurringContribution['contribution_status_id']);
}