Exemplo n.º 1
0
    /**
     * Test the submit function of the membership form.
     */
    public function testSubmitRecurCompleteInstant()
    {
        $form = $this->getForm();
        $mut = new CiviMailUtils($this, TRUE);
        $processor = Civi\Payment\System::singleton()->getById($this->_paymentProcessorID);
        $processor->setDoDirectPaymentResult(array('payment_status_id' => 1, 'trxn_id' => 'kettles boil water', 'fee_amount' => 0.14));
        $this->callAPISuccess('MembershipType', 'create', array('id' => $this->membershipTypeAnnualFixedID, 'duration_unit' => 'month', 'duration_interval' => 1, 'auto_renew' => TRUE));
        $form->preProcess();
        $this->createLoggedInUser();
        $params = $this->getBaseSubmitParams();
        $form->_mode = 'test';
        $form->_contactID = $this->_individualId;
        $form->testSubmit($params);
        $membership = $this->callAPISuccessGetSingle('Membership', array('contact_id' => $this->_individualId));
        $this->callAPISuccessGetCount('ContributionRecur', array('contact_id' => $this->_individualId), 1);
        $contribution = $this->callAPISuccess('Contribution', 'getsingle', array('contact_id' => $this->_individualId, 'is_test' => TRUE));
        $this->assertEquals(0.14, $contribution['fee_amount']);
        $this->assertEquals('kettles boil water', $contribution['trxn_id']);
        $this->callAPISuccessGetCount('LineItem', array('entity_id' => $membership['id'], 'entity_table' => 'civicrm_membership', 'contribution_id' => $contribution['id']), 1);
        $mut->checkMailLog(array('===========================================================
Billing Name and Address
===========================================================
Test
10 Test St
Test, AR 90210
US', '===========================================================
Membership Information
===========================================================
Membership Type: AnnualFixed
Membership Start Date: ', '===========================================================
Credit Card Information
===========================================================
Visa
************1111
Expires: '));
        $mut->stop();
    }
Exemplo n.º 2
0
 /**
  * Test sending a mail via the API.
  */
 public function testSendMailEvent()
 {
     $mut = new CiviMailUtils($this, TRUE);
     $contribution = $this->callAPISuccess('contribution', 'create', $this->_params);
     $event = $this->eventCreate(array('is_email_confirm' => 1, 'confirm_from_email' => '*****@*****.**'));
     $this->_eventID = $event['id'];
     $participantParams = array('contact_id' => $this->_individualId, 'event_id' => $this->_eventID, 'status_id' => 1, 'role_id' => 1, 'register_date' => '2007-07-21 00:00:00', 'source' => 'Online Event Registration: API Testing');
     $participant = $this->callAPISuccess('participant', 'create', $participantParams);
     $this->callAPISuccess('participant_payment', 'create', array('participant_id' => $participant['id'], 'contribution_id' => $contribution['id']));
     $this->callAPISuccess('contribution', 'sendconfirmation', array('id' => $contribution['id'], 'receipt_from_email' => '*****@*****.**'));
     $mut->checkMailLog(array('Annual CiviCRM meet', 'Event', 'To: "Mr. Anthony Anderson II" <*****@*****.**>'), array());
     $mut->stop();
 }
Exemplo n.º 3
0
 /**
  * Test the LoadObjects function with recurring membership data.
  */
 public function testsendMailParticipantObjectsCheckLog()
 {
     $this->_setUpParticipantObjects();
     $values = array();
     require_once 'CiviTest/CiviMailUtils.php';
     $mut = new CiviMailUtils($this, TRUE);
     $this->IPN->loadObjects($this->input, $this->ids, $this->objects, FALSE, $this->_processorId);
     $this->IPN->sendMail($this->input, $this->ids, $this->objects, $values, FALSE, FALSE);
     $mut->checkMailLog(array('Thank you for your participation', 'Annual CiviCRM meet', 'Mr. Anthony Anderson II'));
     $mut->stop();
 }
 /**
  * Test functions involving premiums.
  */
 public function testPremiumUpdateCreditCard()
 {
     $form = new CRM_Contribute_Form_Contribution();
     $mut = new CiviMailUtils($this, TRUE);
     $form->testSubmit(array('total_amount' => 50, 'financial_type_id' => 1, 'receive_date' => '04/21/2015', 'receive_date_time' => '11:27PM', 'contact_id' => $this->_individualId, 'payment_instrument_id' => array_search('Check', $this->paymentInstruments), 'contribution_status_id' => 1, 'product_name' => array($this->products[0]['id'], 1), 'fulfilled_date' => '', 'is_email_receipt' => TRUE, 'from_email_address' => '*****@*****.**', 'payment_processor_id' => $this->paymentProcessor->id, 'credit_card_exp_date' => array('M' => 5, 'Y' => 2026), 'credit_card_number' => '411111111111111'), CRM_Core_Action::ADD, 'live');
     $contributionProduct = $this->callAPISuccess('contribution_product', 'getsingle', array());
     $this->assertEquals('clumsy smurf', $contributionProduct['product_option']);
     $mut->checkMailLog(array('Premium Information', 'Smurf', 'clumsy smurf'));
     $mut->stop();
 }
 /**
  * Test submit with a membership block in place.
  */
 public function testSubmitMembershipBlockIsSeparatePaymentZeroDollarsPayLaterWithEmail()
 {
     $mut = new CiviMailUtils($this, TRUE);
     $this->_ids['membership_type'] = array($this->membershipTypeCreate(array('minimum_fee' => 0)));
     $this->setUpMembershipContributionPage(TRUE);
     $this->addProfile('supporter_profile', $this->_ids['contribution_page']);
     $submitParams = array('price_' . $this->_ids['price_field'][0] => reset($this->_ids['price_field_value']), 'id' => (int) $this->_ids['contribution_page'], 'amount' => 0, 'billing_first_name' => 'Billy', 'billing_middle_name' => 'Goat', 'billing_last_name' => 'Gruffalo', 'selectMembership' => $this->_ids['membership_type'], 'payment_processor_id' => 0, 'email-Primary' => '*****@*****.**');
     $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']);
     $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->assertEquals($membership['contact_id'], $contributions['values'][$membershipPayment['contribution_id']]['contact_id']);
     $mut->checkMailLog(array('Gruffalo', 'General Membership: $ 0.00', 'Membership Fee'));
     $mut->stop();
     $mut->clearMessages();
 }