public function testValidateCustomFieldDataData() { //First test a clean array with no errors. $form = new DropDownAttributeForm(); $form->customFieldDataData = array('a', 'b', 'c'); $form->customFieldDataLabels = array('fr' => array('Afr', 'Bfr', 'Cfr'), 'de' => array('Afr', 'Bfr', 'Cfr')); $form->validateCustomFieldDataData('customFieldDataData', null); $errors = $form->getErrors(); $this->assertEquals(0, count($errors)); //First test a duplicate value that is of a different case and one of the same case $form = new DropDownAttributeForm(); $form->customFieldDataData = array('a', 'b', 'c', 'C', 'b'); $form->validateCustomFieldDataData('customFieldDataData', null); $errors = $form->getErrors(); $this->assertEquals(1, count($errors)); $compareData = array(0 => 'Each item must be uniquely named and the following are not: C, b'); $this->assertEquals($compareData, $errors['customFieldDataData']); //Test the blank values for the blank value $form = new DropDownAttributeForm(); $form->customFieldDataData = array('a', '', 'c'); $form->validateCustomFieldDataData('customFieldDataData', null); $errors = $form->getErrors(); $this->assertEquals(1, count($errors)); $compareData = array(0 => 'Value cannot be blank.'); $this->assertEquals($compareData, $errors['customFieldDataData']); }