2 require_once 'include/SugarObjects/SugarConfig.php';
3 require_once 'include/SugarObjects/VardefManager.php';
8 class Bug32797Test extends Sugar_PHPUnit_Framework_TestCase
10 private $_old_sugar_config = null;
12 public function setUp()
14 $this->_old_sugar_config = $GLOBALS['sugar_config'];
15 $GLOBALS['sugar_config'] = array('require_accounts' => false);
18 public function tearDown()
20 $config = SugarConfig::getInstance();
21 $config->clearCache();
22 $GLOBALS['sugar_config'] = $this->_old_sugar_config;
25 public function vardefProvider()
29 array('fields' => array('account_name' => array('required' => true))),
30 array('fields' => array('account_name' => array('required' => false)))
33 array('fields' => array('account_name' => array('required' => false))),
34 array('fields' => array('account_name' => array('required' => false)))
37 array('fields' => array('account_name' => array('required' => null))),
38 array('fields' => array('account_name' => array('required' => false)))
41 array('fields' => array('account_name' => array())),
42 array('fields' => array('account_name' => array()))
45 array('fields' => array()),
46 array('fields' => array())
52 * @dataProvider vardefProvider
54 public function testApplyGlobalAccountRequirements($vardef, $vardefToCompare)
56 $this->assertEquals($vardefToCompare, VardefManager::applyGlobalAccountRequirements($vardef));
59 public function vardefProvider1()
63 array('fields' => array('account_name' => array('required' => true))),
64 array('fields' => array('account_name' => array('required' => true)))
67 array('fields' => array('account_name' => array('required' => false))),
68 array('fields' => array('account_name' => array('required' => true)))
74 * @dataProvider vardefProvider1
76 public function testApplyGlobalAccountRequirements1($vardef, $vardefToCompare)
78 $GLOBALS['sugar_config']['require_accounts'] = true;
79 $this->assertEquals($vardefToCompare, VardefManager::applyGlobalAccountRequirements($vardef));
82 public function vardefProvider2()
86 array('fields' => array('account_name' => array('required' => true))),
87 array('fields' => array('account_name' => array('required' => true)))
90 array('fields' => array('account_name' => array('required' => false))),
91 array('fields' => array('account_name' => array('required' => false)))
97 * @dataProvider vardefProvider2
99 public function testApplyGlobalAccountRequirements2($vardef, $vardefToCompare)
101 unset($GLOBALS['sugar_config']['require_accounts']);
102 $this->assertEquals($vardefToCompare, VardefManager::applyGlobalAccountRequirements($vardef));