X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=tests%2Fphpunit%2FCRM%2FCore%2FBAO%2FUFFieldTest.php;h=1cafb95c0e96248d06401da29f42a4022521d919;hb=8171fbaf6b045ef3517e21410a0352fedfa226ec;hp=ba369748cd0cb480e42b30e111923d44b7a1a122;hpb=42b1aab33d897bac0413864358943caf39d60338;p=civicrm-core.git diff --git a/tests/phpunit/CRM/Core/BAO/UFFieldTest.php b/tests/phpunit/CRM/Core/BAO/UFFieldTest.php index ba369748cd..1cafb95c0e 100644 --- a/tests/phpunit/CRM/Core/BAO/UFFieldTest.php +++ b/tests/phpunit/CRM/Core/BAO/UFFieldTest.php @@ -218,4 +218,20 @@ class CRM_Core_BAO_UFFieldTest extends CiviUnitTestCase { return $ufGroup->id; } + /** + * Test ability to modify the acceptable fields for use in a profile via hook + */ + public function testGetFieldsFlatModifiedByHook() { + unset(Civi::$statics['UFFieldsFlat']); + $this->hookClass->setHook('civicrm_alterUFFields', [$this, 'modifyUFFields']); + $fields = CRM_Core_BAO_UFField::getAvailableFieldsFlat(); + + $this->assertEquals('Grant', $fields['grant_id']['field_type']); + $this->assertEquals('contact_id', $fields['grant_contact_id']['name']); + } + + public function modifyUFFields(&$fields) { + $fields['Grant'] = CRM_Grant_DAO_Grant::export(); + } + }