X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=tests%2Fphpunit%2FCRM%2FCore%2FBAO%2FCustomValueTableTest.php;h=580df3134dfe958a899be8d0725e2a87bf90f5e1;hb=ddc7d6e7b3777edccc734a19dc9d59d837693fdc;hp=f8846716e510888d3fbecfb8f7ad4cc8f6f7b03d;hpb=91bcade44f15e57b451068402f777e8a61c38869;p=civicrm-core.git diff --git a/tests/phpunit/CRM/Core/BAO/CustomValueTableTest.php b/tests/phpunit/CRM/Core/BAO/CustomValueTableTest.php index f8846716e5..580df3134d 100644 --- a/tests/phpunit/CRM/Core/BAO/CustomValueTableTest.php +++ b/tests/phpunit/CRM/Core/BAO/CustomValueTableTest.php @@ -10,74 +10,73 @@ class CRM_Core_BAO_CustomValueTableTest extends CiviUnitTestCase { parent::setUp(); } - /** * Test store function for country. */ public function testStoreCountry() { - $params = array(); - $contactID = Contact::createIndividual(); - $customGroup = Custom::createGroup($params, 'Individual'); - $fields = array( - 'groupId' => $customGroup->id, - 'dataType' => 'Country', - 'htmlType' => 'Select Country', - ); - - $customField = Custom::createField($params, $fields); - - $params[] = array( - $customField->id => array( + $params = []; + $contactID = $this->individualCreate(); + $customGroup = $this->customGroupCreate(); + $fields = [ + 'custom_group_id' => $customGroup['id'], + 'data_type' => 'Country', + 'html_type' => 'Select Country', + 'default_value' => '', + ]; + + $customField = $this->customFieldCreate($fields); + + $params[] = [ + $customField['id'] => [ 'value' => 1228, 'type' => 'Country', - 'custom_field_id' => $customField->id, - 'custom_group_id' => $customGroup->id, - 'table_name' => 'civicrm_value_test_group_' . $customGroup->id, - 'column_name' => 'test_Country_' . $customField->id, + 'custom_field_id' => $customField['id'], + 'custom_group_id' => $customGroup['id'], + 'table_name' => $customGroup['values'][$customGroup['id']]['table_name'], + 'column_name' => $customField['values'][$customField['id']]['column_name'], 'file_id' => '', - ), - ); + ], + ]; CRM_Core_BAO_CustomValueTable::store($params, 'civicrm_contact', $contactID); - // $this->assertDBCompareValue('CRM_Custom_DAO_CustomValue', ) - Custom::deleteField($customField); - Custom::deleteGroup($customGroup); + $this->customFieldDelete($customField['id']); + $this->customGroupDelete($customGroup['id']); $this->contactDelete($contactID); } /** * Test store function for file. */ - public function atestStoreFile() { - $params = array(); - $contactID = Contact::createIndividual(); - $customGroup = Custom::createGroup($params, 'Individual'); - $fields = array( - 'groupId' => $customGroup->id, - 'dataType' => 'File', - 'htmlType' => 'File', - ); - - $customField = Custom::createField($params, $fields); - - $params[] = array( - $customField->id => array( + public function testStoreFile() { + $contactID = $this->individualCreate(); + $file = $this->callAPISuccess('File', 'create', ['uri' => 'dummy_data']); + $customGroup = $this->customGroupCreate(); + $fields = [ + 'custom_group_id' => $customGroup['id'], + 'data_type' => 'File', + 'html_type' => 'File', + 'default_value' => '', + ]; + + $customField = $this->customFieldCreate($fields); + + $params[] = [ + $customField['id'] => [ 'value' => 'i/contact_house.png', 'type' => 'File', - 'custom_field_id' => $customField->id, - 'custom_group_id' => $customGroup->id, - 'table_name' => 'civicrm_value_test_group_' . $customGroup->id, - 'column_name' => 'test_File_' . $customField->id, - 'file_id' => 1, - ), - ); + 'custom_field_id' => $customField['id'], + 'custom_group_id' => $customGroup['id'], + 'table_name' => $customGroup['values'][$customGroup['id']]['table_name'], + 'column_name' => $customField['values'][$customField['id']]['column_name'], + 'file_id' => $file['id'], + ], + ]; CRM_Core_BAO_CustomValueTable::store($params, 'civicrm_contact', $contactID); - // $this->assertDBCompareValue('CRM_Custom_DAO_CustomValue', ) - Custom::deleteField($customField); - Custom::deleteGroup($customGroup); + $this->customFieldDelete($customField['id']); + $this->customGroupDelete($customGroup['id']); $this->contactDelete($contactID); } @@ -85,33 +84,33 @@ class CRM_Core_BAO_CustomValueTableTest extends CiviUnitTestCase { * Test store function for state province. */ public function testStoreStateProvince() { - $params = array(); - $contactID = Contact::createIndividual(); - $customGroup = Custom::createGroup($params, 'Individual'); - $fields = array( - 'groupId' => $customGroup->id, - 'dataType' => 'StateProvince', - 'htmlType' => 'Select State/Province', - ); - - $customField = Custom::createField($params, $fields); - - $params[] = array( - $customField->id => array( + $contactID = $this->individualCreate(); + $customGroup = $this->customGroupCreate(); + $fields = [ + 'custom_group_id' => $customGroup['id'], + 'data_type' => 'StateProvince', + 'html_type' => 'Select State/Province', + 'default_value' => '', + ]; + + $customField = $this->customFieldCreate($fields); + + $params[] = [ + $customField['id'] => [ 'value' => 1029, 'type' => 'StateProvince', - 'custom_field_id' => $customField->id, - 'custom_group_id' => $customGroup->id, - 'table_name' => 'civicrm_value_test_group_' . $customGroup->id, - 'column_name' => 'test_StateProvince_' . $customField->id, + 'custom_field_id' => $customField['id'], + 'custom_group_id' => $customGroup['id'], + 'table_name' => $customGroup['values'][$customGroup['id']]['table_name'], + 'column_name' => $customField['values'][$customField['id']]['column_name'], 'file_id' => 1, - ), - ); + ], + ]; CRM_Core_BAO_CustomValueTable::store($params, 'civicrm_contact', $contactID); - Custom::deleteField($customField); - Custom::deleteGroup($customGroup); + $this->customFieldDelete($customField['id']); + $this->customGroupDelete($customGroup['id']); $this->contactDelete($contactID); } @@ -119,34 +118,34 @@ class CRM_Core_BAO_CustomValueTableTest extends CiviUnitTestCase { * Test store function for date. */ public function testStoreDate() { - $params = array(); - $contactID = Contact::createIndividual(); - $customGroup = Custom::createGroup($params, 'Individual'); - $fields = array( - 'groupId' => $customGroup->id, - 'dataType' => 'Date', - 'htmlType' => 'Select Date', - ); - - $customField = Custom::createField($params, $fields); - - $params[] = array( - $customField->id => array( + $params = []; + $contactID = $this->individualCreate(); + $customGroup = $this->customGroupCreate(); + $fields = [ + 'custom_group_id' => $customGroup['id'], + 'data_type' => 'Date', + 'html_type' => 'Select Date', + 'default_value' => '', + ]; + + $customField = $this->customFieldCreate($fields); + + $params[] = [ + $customField['id'] => [ 'value' => '20080608000000', 'type' => 'Date', - 'custom_field_id' => $customField->id, - 'custom_group_id' => $customGroup->id, - 'table_name' => 'civicrm_value_test_group_' . $customGroup->id, - 'column_name' => 'test_Date_' . $customField->id, + 'custom_field_id' => $customField['id'], + 'custom_group_id' => $customGroup['id'], + 'table_name' => $customGroup['values'][$customGroup['id']]['table_name'], + 'column_name' => $customField['values'][$customField['id']]['column_name'], 'file_id' => '', - ), - ); + ], + ]; CRM_Core_BAO_CustomValueTable::store($params, 'civicrm_contact', $contactID); - // $this->assertDBCompareValue('CRM_Custom_DAO_CustomValue', ) - Custom::deleteField($customField); - Custom::deleteGroup($customGroup); + $this->customFieldDelete($customField['id']); + $this->customGroupDelete($customGroup['id']); $this->contactDelete($contactID); } @@ -154,108 +153,106 @@ class CRM_Core_BAO_CustomValueTableTest extends CiviUnitTestCase { * Test store function for rich text editor. */ public function testStoreRichTextEditor() { - $params = array(); - $contactID = Contact::createIndividual(); - $customGroup = Custom::createGroup($params, 'Individual'); - $fields = array( - 'groupId' => $customGroup->id, - 'htmlType' => 'RichTextEditor', - 'dataType' => 'Memo', - ); - - $customField = Custom::createField($params, $fields); - - $params[] = array( - $customField->id => array( + $params = []; + $contactID = $this->individualCreate(); + $customGroup = $this->customGroupCreate(); + $fields = [ + 'custom_group_id' => $customGroup['id'], + 'html_type' => 'RichTextEditor', + 'data_type' => 'Memo', + ]; + + $customField = $this->customFieldCreate($fields); + + $params[] = [ + $customField['id'] => [ 'value' => '

This is a test

', 'type' => 'Memo', - 'custom_field_id' => $customField->id, - 'custom_group_id' => $customGroup->id, - 'table_name' => 'civicrm_value_test_group_' . $customGroup->id, - 'column_name' => 'test_Memo_' . $customField->id, + 'custom_field_id' => $customField['id'], + 'custom_group_id' => $customGroup['id'], + 'table_name' => $customGroup['values'][$customGroup['id']]['table_name'], + 'column_name' => $customField['values'][$customField['id']]['column_name'], 'file_id' => '', - ), - ); + ], + ]; CRM_Core_BAO_CustomValueTable::store($params, 'civicrm_contact', $contactID); - // $this->assertDBCompareValue('CRM_Custom_DAO_CustomValue', ) - Custom::deleteField($customField); - Custom::deleteGroup($customGroup); + $this->customFieldDelete($customField['id']); + $this->customGroupDelete($customGroup['id']); $this->contactDelete($contactID); } /** * Test getEntityValues function for stored value. */ - public function testgetEntityValues() { - - $params = array(); - $contactID = Contact::createIndividual(); - $customGroup = Custom::createGroup($params, 'Individual'); - $fields = array( - 'groupId' => $customGroup->id, - 'htmlType' => 'RichTextEditor', - 'dataType' => 'Memo', - ); + public function testGetEntityValues() { + + $params = []; + $contactID = $this->individualCreate(); + $customGroup = $this->customGroupCreate(['extends' => 'Individual']); + $fields = [ + 'custom_group_id' => $customGroup['id'], + 'html_type' => 'RichTextEditor', + 'data_type' => 'Memo', + ]; - $customField = Custom::createField($params, $fields); + $customField = $this->customFieldCreate($fields); - $params[] = array( - $customField->id => array( + $params[] = [ + $customField['id'] => [ 'value' => '

This is a test

', 'type' => 'Memo', - 'custom_field_id' => $customField->id, - 'custom_group_id' => $customGroup->id, - 'table_name' => 'civicrm_value_test_group_' . $customGroup->id, - 'column_name' => 'test_Memo_' . $customField->id, + 'custom_field_id' => $customField['id'], + 'custom_group_id' => $customGroup['id'], + 'table_name' => $customGroup['values'][$customGroup['id']]['table_name'], + 'column_name' => $customField['values'][$customField['id']]['column_name'], 'file_id' => '', - ), - ); + ], + ]; CRM_Core_BAO_CustomValueTable::store($params, 'civicrm_contact', $contactID); - // $this->assertDBCompareValue('CRM_Custom_DAO_CustomValue', ) $entityValues = CRM_Core_BAO_CustomValueTable::getEntityValues($contactID, 'Individual'); - $this->assertEquals($entityValues[$customField->id], '

This is a test

', + $this->assertEquals($entityValues[$customField['id']], '

This is a test

', 'Checking same for returned value.' ); - Custom::deleteField($customField); - Custom::deleteGroup($customGroup); + $this->customFieldDelete($customField['id']); + $this->customGroupDelete($customGroup['id']); $this->contactDelete($contactID); } public function testCustomGroupMultiple() { - $params = array(); - $contactID = Contact::createIndividual(); - $customGroup = Custom::createGroup($params, 'Individual'); - - $fields = array( - 'groupId' => $customGroup->id, - 'dataType' => 'String', - 'htmlType' => 'Text', - ); + $params = []; + $contactID = $this->individualCreate(); + $customGroup = $this->customGroupCreate(); - $customField = Custom::createField($params, $fields); + $fields = [ + 'custom_group_id' => $customGroup['id'], + 'data_type' => 'String', + 'html_type' => 'Text', + ]; - $params = array( + $customField = $this->customFieldCreate($fields); + + $params = [ 'entityID' => $contactID, - 'custom_' . $customField->id . '_-1' => 'First String', - ); + 'custom_' . $customField['id'] . '_-1' => 'First String', + ]; $error = CRM_Core_BAO_CustomValueTable::setValues($params); - $newParams = array( + $newParams = [ 'entityID' => $contactID, - 'custom_' . $customField->id => 1, - ); + 'custom_' . $customField['id'] => 1, + ]; $result = CRM_Core_BAO_CustomValueTable::getValues($newParams); - $this->assertEquals($params['custom_' . $customField->id . '_-1'], $result['custom_' . $customField->id]); + $this->assertEquals($params['custom_' . $customField['id'] . '_-1'], $result['custom_' . $customField['id']]); $this->assertEquals($params['entityID'], $result['entityID']); - Custom::deleteField($customField); - Custom::deleteGroup($customGroup); + $this->customFieldDelete($customField['id']); + $this->customGroupDelete($customGroup['id']); $this->contactDelete($contactID); }