useTransaction(TRUE); } /** * Ensure only one option value exists after calling ensureOptionValueExists. */ public function testEnsureOptionGroupExistsExistingValue() { CRM_Core_BAO_OptionGroup::ensureOptionGroupExists(array('name' => 'contribution_status')); $this->callAPISuccessGetSingle('OptionGroup', array('name' => 'contribution_status')); } /** * Ensure only one option value exists adds a new value. */ public function testEnsureOptionGroupExistsNewValue() { CRM_Core_BAO_OptionGroup::ensureOptionGroupExists(array('name' => 'Bombed')); $optionGroups = $this->callAPISuccess('OptionValue', 'getoptions', array('field' => 'option_group_id'))['values']; $this->assertTrue(in_array('Bombed', $optionGroups)); CRM_Core_BAO_OptionGroup::ensureOptionGroupExists(array('name' => 'Bombed Again')); $optionGroups = $this->callAPISuccess('OptionValue', 'getoptions', array('field' => 'option_group_id'))['values']; $this->assertTrue(in_array('Bombed Again', $optionGroups)); } }