Skip to content

Commit

Permalink
--CRM-16526, code improvement
Browse files Browse the repository at this point in the history
  • Loading branch information
pradpnayak committed Feb 22, 2016
1 parent 3423f5a commit 3454dc3
Showing 1 changed file with 22 additions and 43 deletions.
65 changes: 22 additions & 43 deletions tests/phpunit/api/v3/FinancialTypeACLTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -116,6 +116,7 @@ public function tearDown() {
}

public function setACL() {
CRM_Financial_BAO_FinancialType::$_availableFinancialTypes = NULL;
$params = array(
'domain_id' => 1,
'contribution_invoice_settings' => array('acl_financial_type' => 1),
Expand Down Expand Up @@ -150,12 +151,7 @@ public function testCreateACLContribution() {
);
$result = $this->callAPIFailure('contribution', 'create', $p);
$this->assertEquals('You do not have permission to create this contribution', $result['error_message']);
$config->userPermissionClass->permissions = array(
'access CiviCRM',
'access CiviContribute',
'edit contributions',
'add contributions of type Donation',
);
$config->userPermissionClass->permissions[] = 'add contributions of type Donation';
$contribution = $this->callAPISuccess('contribution', 'create', $p);

$params = array(
Expand Down Expand Up @@ -193,28 +189,25 @@ public function testCreateACLContribution() {
*/
public function testGetACLContribution() {
$this->setACL();
$config = &CRM_Core_Config::singleton();
$config->userPermissionClass->permissions = array(
'access CiviCRM',
'access CiviContribute',
'view all contacts',
'add contributions of type Donation',
);
$contribution = $this->callAPISuccess('Contribution', 'create', $this->_params);

$params = array(
'id' => $contribution['id'],
'check_permissions' => TRUE,
);
$config = &CRM_Core_Config::singleton();
$config->userPermissionClass->permissions = array(
'access CiviCRM',
'access CiviContribute',
);
$contribution = $this->callAPISuccess('contribution', 'get', $params);
$this->assertEquals($contribution['count'], 0);

CRM_Financial_BAO_FinancialType::$_availableFinancialTypes = NULL;

$config = &CRM_Core_Config::singleton();
$config->userPermissionClass->permissions = array(
'access CiviCRM',
'access CiviContribute',
'view contributions of type Donation',
);
$config->userPermissionClass->permissions[3] = 'view contributions of type Donation';
$contribution = $this->callAPISuccess('contribution', 'get', $params);

$this->assertEquals($contribution['count'], 1);
Expand Down Expand Up @@ -275,18 +268,12 @@ public function testCreateACLContributionChainedLineItems() {
CRM_Financial_BAO_FinancialType::$_availableFinancialTypes = NULL;

$config = &CRM_Core_Config::singleton();
$config->userPermissionClass->permissions = array(
'access CiviCRM',
'access CiviContribute',
'edit contributions',
'delete in CiviContribute',
$config->userPermissionClass->permissions = array_merge($config->userPermissionClass->permissions, array(
'add contributions of type Member Dues',
'add contributions of type Donation',
'view contributions of type Donation',
'view contributions of type Member Dues',
'delete contributions of type Donation',
'delete contributions of type Member Dues',
);
));
$contribution = $this->callAPIAndDocument('contribution', 'create', $params, __FUNCTION__, __FILE__, $description, $subfile);

$lineItemParams = array(
Expand Down Expand Up @@ -328,12 +315,7 @@ public function testEditACLContribution() {
);
$contribution = $this->callAPIFailure('Contribution', 'create', $params);

$config->userPermissionClass->permissions = array(
'access CiviCRM',
'access CiviContribute',
'edit contributions',
'edit contributions of type Donation',
);
$config->userPermissionClass->permissions[3] = 'edit contributions of type Donation';
$contribution = $this->callAPISuccess('Contribution', 'create', $params);

$this->assertEquals($contribution['values'][$contribution['id']]['total_amount'], 200.00);
Expand All @@ -344,26 +326,23 @@ public function testEditACLContribution() {
*/
public function testDeleteACLContribution() {
$this->setACL();
$config = &CRM_Core_Config::singleton();
$config->userPermissionClass->permissions = array(
'access CiviCRM',
'access CiviContribute',
'view all contacts',
'add contributions of type Donation',
);
$contribution = $this->callAPISuccess('Contribution', 'create', $this->_params);

$params = array(
'contribution_id' => $contribution['id'],
'check_permissions' => TRUE,
);
$config = &CRM_Core_Config::singleton();
$config->userPermissionClass->permissions = array(
'access CiviCRM',
'access CiviContribute',
'delete in CiviContribute',
);
$config->userPermissionClass->permissions[3] = 'delete in CiviContribute';
$contribution = $this->callAPIFailure('Contribution', 'delete', $params);

$config->userPermissionClass->permissions = array(
'access CiviCRM',
'access CiviContribute',
'delete in CiviContribute',
'delete contributions of type Donation',
);
$config->userPermissionClass->permissions[] = 'delete contributions of type Donation';
$contribution = $this->callAPISuccess('Contribution', 'delete', $params);

$this->assertEquals($contribution['count'], 1);
Expand Down

0 comments on commit 3454dc3

Please sign in to comment.