X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=tests%2Fphpunit%2Fapi%2Fv3%2FOptionGroupTest.php;h=e9878770778ee831441803a4b1b7b9b75dfff62e;hb=3d023ead1624cb26e8c5685b8a58f49690c31da3;hp=b226500e47b7e77fd240a8e6bd0943d6fb341daf;hpb=67a96e875ffb9f254f32c0bdc0cfb554eb499753;p=civicrm-core.git diff --git a/tests/phpunit/api/v3/OptionGroupTest.php b/tests/phpunit/api/v3/OptionGroupTest.php index b226500e47..e987877077 100644 --- a/tests/phpunit/api/v3/OptionGroupTest.php +++ b/tests/phpunit/api/v3/OptionGroupTest.php @@ -3,7 +3,7 @@ +--------------------------------------------------------------------+ | CiviCRM version 4.7 | +--------------------------------------------------------------------+ -| Copyright CiviCRM LLC (c) 2004-2015 | +| Copyright CiviCRM LLC (c) 2004-2017 | +--------------------------------------------------------------------+ | This file is a part of CiviCRM. | | | @@ -27,6 +27,7 @@ /** * Class api_v3_OptionGroupTest + * @group headless */ class api_v3_OptionGroupTest extends CiviUnitTestCase { protected $_apiversion = 3; @@ -168,4 +169,26 @@ class api_v3_OptionGroupTest extends CiviUnitTestCase { $this->callAPIAndDocument('OptionGroup', 'delete', array('id' => $result['id']), __FUNCTION__, __FILE__); } + /** + * Ensure only one option value exists after calling ensureOptionValueExists. + */ + public function testEnsureOptionGroupExistsExistingValue() { + CRM_Core_BAO_OptionGroup::ensureOptionGroupExists(array('name' => 'participant_role')); + $this->callAPISuccessGetSingle('OptionGroup', array('name' => 'participant_role')); + } + + /** + * Ensure only one option value exists adds a new value. + */ + public function testEnsureOptionGroupExistsNewValue() { + $optionGroupID = CRM_Core_BAO_OptionGroup::ensureOptionGroupExists(array( + 'name' => 'Bombed', + 'title' => ts('Catastrophy'), + 'description' => ts('blah blah'), + 'is_reserved' => 1, + )); + $optionGroup = $this->callAPISuccessGetSingle('OptionGroup', array('name' => 'Bombed')); + $this->assertEquals($optionGroupID, $optionGroup['id']); + } + }