ids['contact'][0] = $this->individualCreate(); $this->params = array( 'version' => 3, 'contact_id' => $this->ids['contact'][0], 'installments' => '12', 'frequency_interval' => '1', 'amount' => '500', 'contribution_status_id' => 1, 'start_date' => '2012-01-01 00:00:00', 'currency' => 'USD', 'frequency_unit' => 'day', ); } function tearDown() { foreach ($this->ids as $entity => $entities) { foreach ($entities as $id) { civicrm_api($entity, 'delete', array('version' => $this->_apiversion, 'id' => $id)); } } $tablesToTruncate = array( 'civicrm_financial_type', 'civicrm_contribution', 'civicrm_contribution_recur', 'civicrm_membership', ); $this->quickCleanup($tablesToTruncate); } public function testCreateContributionRecur() { $result = civicrm_api($this->_entity, 'create', $this->params); $this->documentMe($this->params, $result, __FUNCTION__, __FILE__); $this->assertAPISuccess($result, 'In line ' . __LINE__); $this->assertEquals(1, $result['count'], 'In line ' . __LINE__); $this->assertNotNull($result['values'][$result['id']]['id'], 'In line ' . __LINE__); $this->getAndCheck($this->params, $result['id'], $this->_entity); } public function testGetContributionRecur() { $result = civicrm_api($this->_entity, 'create', $this->params); $getParams = array( 'version' => $this->_apiversion, 'amount' => '500', ); $result = civicrm_api($this->_entity, 'get', $getParams); $this->documentMe($getParams, $result, __FUNCTION__, __FILE__); $this->assertAPISuccess($result, 'In line ' . __LINE__); $this->assertEquals(1, $result['count'], 'In line ' . __LINE__); } public function testDeleteContributionRecur() { $result = civicrm_api($this->_entity, 'create', $this->params); $deleteParams = array('version' => 3, 'id' => $result['id']); $result = civicrm_api($this->_entity, 'delete', $deleteParams); $this->documentMe($deleteParams, $result, __FUNCTION__, __FILE__); $this->assertAPISuccess($result, 'In line ' . __LINE__); $checkDeleted = civicrm_api($this->_entity, 'get', array( 'version' => 3, )); $this->assertEquals(0, $checkDeleted['count'], 'In line ' . __LINE__); } public function testGetFieldsContributionRecur() { $result = civicrm_api($this->_entity, 'getfields', array('version' => 3, 'action' => 'create')); $this->assertAPISuccess($result, 'In line ' . __LINE__); $this->assertEquals(12, $result['values']['start_date']['type']); } }