Skip to content

Commit

Permalink
Merge pull request #14308 from eileenmcnaughton/uffield
Browse files Browse the repository at this point in the history
[NFC] reformat UFFieldTest
  • Loading branch information
seamuslee001 authored May 23, 2019
2 parents 26050ae + b8ba548 commit 6c96d01
Showing 1 changed file with 46 additions and 38 deletions.
84 changes: 46 additions & 38 deletions tests/phpunit/api/v3/UFFieldTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -27,21 +27,29 @@

/**
* Test class for UFGroup API - civicrm_uf_*
*
* @todo Split UFGroup and UFJoin tests
*
* @package CiviCRM
* @group headless
*/
class api_v3_UFFieldTest extends CiviUnitTestCase {

/**
* ids from the uf_group_test.xml fixture
*
* @var int
*/
protected $_ufGroupId = 11;

protected $_ufFieldId;

protected $_contactId = 69;

protected $_apiversion = 3;

protected $_params;

protected $_entity = 'uf_field';

/**
Expand All @@ -52,14 +60,14 @@ class api_v3_UFFieldTest extends CiviUnitTestCase {
protected function setUp() {
parent::setUp();
$this->quickCleanup(
array(
[
'civicrm_group',
'civicrm_contact',
'civicrm_uf_group',
'civicrm_uf_field',
'civicrm_uf_join',
'civicrm_uf_match',
)
]
);

$op = new PHPUnit_Extensions_Database_Operation_Insert();
Expand All @@ -68,9 +76,9 @@ protected function setUp() {
$this->createFlatXMLDataSet(dirname(__FILE__) . '/dataset/uf_group_test.xml')
);

$this->callAPISuccess('uf_field', 'getfields', array('cache_clear' => 1));
$this->callAPISuccess('uf_field', 'getfields', ['cache_clear' => 1]);

$this->_params = array(
$this->_params = [
'field_name' => 'phone',
'field_type' => 'Contact',
'visibility' => 'Public Pages and Listings',
Expand All @@ -81,7 +89,7 @@ protected function setUp() {
'location_type_id' => 1,
'phone_type_id' => 1,
'uf_group_id' => $this->_ufGroupId,
);
];
}

/**
Expand All @@ -91,13 +99,13 @@ protected function setUp() {
*/
public function tearDown() {
$this->quickCleanup(
array(
[
'civicrm_group',
'civicrm_contact',
'civicrm_uf_group',
'civicrm_uf_join',
'civicrm_uf_match',
)
]
);
}

Expand Down Expand Up @@ -127,8 +135,8 @@ public function testCreateUFFieldWithBadFieldName() {
* Failure test for bad parameters.
*/
public function testCreateUFFieldWithWrongParams() {
$this->callAPIFailure('uf_field', 'create', array('field_name' => 'test field'));
$this->callAPIFailure('uf_field', 'create', array('label' => 'name-less field'));
$this->callAPIFailure('uf_field', 'create', ['field_name' => 'test field']);
$this->callAPIFailure('uf_field', 'create', ['label' => 'name-less field']);
}

/**
Expand All @@ -140,31 +148,31 @@ public function testCreateUFFieldWithDefaultAutoWeight() {
$params1 = $this->_params;
$ufField1 = $this->callAPISuccess('uf_field', 'create', $params1);
$this->assertEquals(1, $ufField1['values'][$ufField1['id']]['weight']);
$this->assertDBQuery(1, 'SELECT weight FROM civicrm_uf_field WHERE id = %1', array(
1 => array($ufField1['id'], 'Int'),
));
$this->assertDBQuery(1, 'SELECT weight FROM civicrm_uf_field WHERE id = %1', [
1 => [$ufField1['id'], 'Int'],
]);

$params2 = $this->_params;
// needs to be a different field
$params2['location_type_id'] = 2;
$ufField2 = $this->callAPISuccess('uf_field', 'create', $params2);
$this->assertEquals(1, $ufField2['values'][$ufField2['id']]['weight']);
$this->assertDBQuery(1, 'SELECT weight FROM civicrm_uf_field WHERE id = %1', array(
1 => array($ufField2['id'], 'Int'),
));
$this->assertDBQuery(2, 'SELECT weight FROM civicrm_uf_field WHERE id = %1', array(
1 => array($ufField1['id'], 'Int'),
));
$this->assertDBQuery(1, 'SELECT weight FROM civicrm_uf_field WHERE id = %1', [
1 => [$ufField2['id'], 'Int'],
]);
$this->assertDBQuery(2, 'SELECT weight FROM civicrm_uf_field WHERE id = %1', [
1 => [$ufField1['id'], 'Int'],
]);
}

/**
* Deleting field.
*/
public function testDeleteUFField() {
$ufField = $this->callAPISuccess('uf_field', 'create', $this->_params);
$params = array(
$params = [
'field_id' => $ufField['id'],
);
];
$this->callAPIAndDocument('uf_field', 'delete', $params, __FUNCTION__, __FILE__);
}

Expand All @@ -173,25 +181,25 @@ public function testDeleteUFField() {
*/
public function testGetUFFieldSuccess() {
$this->callAPISuccess($this->_entity, 'create', $this->_params);
$result = $this->callAPIAndDocument($this->_entity, 'get', array(), __FUNCTION__, __FILE__);
$result = $this->callAPIAndDocument($this->_entity, 'get', [], __FUNCTION__, __FILE__);
$this->getAndCheck($this->_params, $result['id'], $this->_entity);
}

/**
* Create / updating field.
*/
public function testReplaceUFFields() {
$baseFields = array();
$baseFields[] = array(
$baseFields = [];
$baseFields[] = [
'field_name' => 'first_name',
'field_type' => 'Contact',
'visibility' => 'Public Pages and Listings',
'weight' => 3,
'label' => 'Test First Name',
'is_searchable' => 1,
'is_active' => 1,
);
$baseFields[] = array(
];
$baseFields[] = [
'field_name' => 'country',
'field_type' => 'Contact',
'visibility' => 'Public Pages and Listings',
Expand All @@ -200,8 +208,8 @@ public function testReplaceUFFields() {
'is_searchable' => 1,
'is_active' => 1,
'location_type_id' => 1,
);
$baseFields[] = array(
];
$baseFields[] = [
'field_name' => 'phone',
'field_type' => 'Contact',
'visibility' => 'Public Pages and Listings',
Expand All @@ -211,17 +219,17 @@ public function testReplaceUFFields() {
'is_active' => 1,
'location_type_id' => 1,
'phone_type_id' => 1,
);
];

$params = array(
$params = [
'uf_group_id' => $this->_ufGroupId,
'option.autoweight' => FALSE,
'values' => $baseFields,
'check_permissions' => TRUE,
);
];

$result = $this->callAPIAndDocument('uf_field', 'replace', $params, __FUNCTION__, __FILE__);
$inputsByName = CRM_Utils_Array::index(array('field_name'), $params['values']);
$inputsByName = CRM_Utils_Array::index(['field_name'], $params['values']);
$this->assertEquals(count($params['values']), count($result['values']));
foreach ($result['values'] as $outUfField) {
$this->assertTrue(is_string($outUfField['field_name']));
Expand All @@ -244,22 +252,22 @@ public function testReplaceUFFields() {
*/
public function testProfilesWithoutACL() {
$this->createLoggedInUser();
$baseFields[] = array(
$baseFields[] = [
'field_name' => 'first_name',
'field_type' => 'Contact',
'visibility' => 'Public Pages and Listings',
'weight' => 3,
'label' => 'Test First Name',
'is_searchable' => 1,
'is_active' => 1,
);
CRM_Core_Config::singleton()->userPermissionClass->permissions = array('access CiviCRM');
$params = array(
];
CRM_Core_Config::singleton()->userPermissionClass->permissions = ['access CiviCRM'];
$params = [
'uf_group_id' => $this->_ufGroupId,
'option.autoweight' => FALSE,
'values' => $baseFields,
'check_permissions' => TRUE,
);
];
$this->_loggedInUser = CRM_Core_Session::singleton()->get('userID');
$this->callAPIFailure('uf_field', 'replace', $params);
}
Expand All @@ -269,11 +277,11 @@ public function testProfilesWithoutACL() {
*/
public function testACLPermissionforProfiles() {
$this->createLoggedInUser();
$this->_permissionedGroup = $this->groupCreate(array(
$this->_permissionedGroup = $this->groupCreate([
'title' => 'Edit Profiles',
'is_active' => 1,
'name' => 'edit-profiles',
));
]);
$this->setupACL(TRUE);
$this->testReplaceUFFields();
}
Expand Down

0 comments on commit 6c96d01

Please sign in to comment.