options] = array( '' => '', ); } /** * Tears down the fixture, for example, close a network connection. * This method is called after a test is executed. */ public function tearDown() { SugarTestHelper::tearDown(); } /** * Ensure that module labels are built correctly */ public function testBlankOptionsAreNotFiltered() { global $app_strings; // name of test field $field_name = 'bug_48652_field'; // create a bean with minimal needed set of field definitions $seedBean = new SugarBean(); $seedBean->field_defs = array( $field_name => array( 'name' => null, 'vname' => null, 'type' => 'enum', 'remove_blank' => false, 'options' => $this->options, ), ); // create a dashlet containing bean require_once 'include/Dashlets/DashletGeneric.php'; $dashlet = new DashletGeneric(null); $dashlet->seedBean = $seedBean; $dashlet->columns = array(); $dashlet->searchFields = array( $field_name => array(), ); // generate dashlet setup form $dashlet->processDisplayOptions(); // ensure that the generated element contains blank option $search_fields = $dashlet->currentSearchFields; $this->assertArrayHasKey($field_name, $search_fields); $this->assertArrayHasKey('input', $search_fields[$field_name]); $this->assertContains('>' . $app_strings['LBL_NONE'] . '<', $search_fields[$field_name]['input']); } }