|  | @@ -8,34 +8,6 @@ class sbo__relationship_widgetTest extends TripalTestCase {
 | 
											
												
													
														|  |    // Uncomment to auto start and rollback db transactions per test method.
 |  |    // Uncomment to auto start and rollback db transactions per test method.
 | 
											
												
													
														|  |    use DBTransaction;
 |  |    use DBTransaction;
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | -  /**
 |  | 
 | 
											
												
													
														|  | -   * Create a fake sbo__relationship_widget field?
 |  | 
 | 
											
												
													
														|  | -   */
 |  | 
 | 
											
												
													
														|  | -  private function initializeWidgetClass($bundle_name, $field_name, $widget_name, $entity_id) {
 |  | 
 | 
											
												
													
														|  | -    $vars = [];
 |  | 
 | 
											
												
													
														|  | -    $vars['widget_class'] = $vars['bundle'] = $vars['entity'] = NULL;
 |  | 
 | 
											
												
													
														|  | -
 |  | 
 | 
											
												
													
														|  | -    // First include the appropriate class.
 |  | 
 | 
											
												
													
														|  | -    $widget_class_path = DRUPAL_ROOT . '/' . drupal_get_path('module', 'tripal_chado')
 |  | 
 | 
											
												
													
														|  | -      . '/includes/TripalFields/sbo__relationship/sbo__relationship_widget.inc';
 |  | 
 | 
											
												
													
														|  | -    if ((include_once($widget_class_path)) == TRUE) {
 |  | 
 | 
											
												
													
														|  | -
 |  | 
 | 
											
												
													
														|  | -      // Load the bundle and field/instance info.
 |  | 
 | 
											
												
													
														|  | -      $vars['bundle'] = tripal_load_bundle_entity(array('name'=> $bundle_name));
 |  | 
 | 
											
												
													
														|  | -      $vars['field_info'] = field_info_field($field_name);
 |  | 
 | 
											
												
													
														|  | -      $vars['instance_info'] = field_info_instance('TripalEntity', $field_name, $bundle_name);
 |  | 
 | 
											
												
													
														|  | -
 |  | 
 | 
											
												
													
														|  | -      // Create an instance of the widget class.
 |  | 
 | 
											
												
													
														|  | -      $vars['widget_class'] = new \sbo__relationship_widget($vars['field_info'], $vars['instance_info']);
 |  | 
 | 
											
												
													
														|  | -
 |  | 
 | 
											
												
													
														|  | -      // load an entity to pretend the widget is modifying.
 |  | 
 | 
											
												
													
														|  | -      $vars['entity'] = entity_load('TripalEntity', [$entity_id]);
 |  | 
 | 
											
												
													
														|  | -      $vars['entity'] = $vars['entity'][$entity_id];
 |  | 
 | 
											
												
													
														|  | -    }
 |  | 
 | 
											
												
													
														|  | -
 |  | 
 | 
											
												
													
														|  | -    return $vars;
 |  | 
 | 
											
												
													
														|  | -  }
 |  | 
 | 
											
												
													
														|  | -
 |  | 
 | 
											
												
													
														|  |    /**
 |  |    /**
 | 
											
												
													
														|  |     * Data Provider: provides entities matching important test cases.
 |  |     * Data Provider: provides entities matching important test cases.
 | 
											
												
													
														|  |     *
 |  |     *
 | 
											
										
											
												
													
														|  | @@ -46,8 +18,8 @@ class sbo__relationship_widgetTest extends TripalTestCase {
 | 
											
												
													
														|  |     *  project_relationship: subject_project_id, type_id, object_project_id, rank
 |  |     *  project_relationship: subject_project_id, type_id, object_project_id, rank
 | 
											
												
													
														|  |     *
 |  |     *
 | 
											
												
													
														|  |     * @returns
 |  |     * @returns
 | 
											
												
													
														|  | -   *   Returns an array where each item to be tested has the paramaters 
 |  | 
 | 
											
												
													
														|  | -   *   needed for initializeWidgetClass(). Specfically, $bundle_name, 
 |  | 
 | 
											
												
													
														|  | 
 |  | +   *   Returns an array where each item to be tested has the paramaters
 | 
											
												
													
														|  | 
 |  | +   *   needed for initializeWidgetClass(). Specfically, $bundle_name,
 | 
											
												
													
														|  |     *   $field_name, $widget_name, $entity_id.
 |  |     *   $field_name, $widget_name, $entity_id.
 | 
											
												
													
														|  |     */
 |  |     */
 | 
											
												
													
														|  |    public function provideEntities() {
 |  |    public function provideEntities() {
 | 
											
										
											
												
													
														|  | @@ -62,9 +34,9 @@ class sbo__relationship_widgetTest extends TripalTestCase {
 | 
											
												
													
														|  |         // This will work on Travis since Tripal creates matching bundles by default.
 |  |         // This will work on Travis since Tripal creates matching bundles by default.
 | 
											
												
													
														|  |         // @todo ideally we would create a fake bundle here.
 |  |         // @todo ideally we would create a fake bundle here.
 | 
											
												
													
														|  |         $bundle_id = db_query("
 |  |         $bundle_id = db_query("
 | 
											
												
													
														|  | -         SELECT bundle_id 
 |  | 
 | 
											
												
													
														|  | -         FROM chado_bundle b 
 |  | 
 | 
											
												
													
														|  | -         LEFT JOIN tripal_entity e ON e.bundle='bio_data_'||b.bundle_id 
 |  | 
 | 
											
												
													
														|  | 
 |  | +         SELECT bundle_id
 | 
											
												
													
														|  | 
 |  | +         FROM chado_bundle b
 | 
											
												
													
														|  | 
 |  | +         LEFT JOIN tripal_entity e ON e.bundle='bio_data_'||b.bundle_id
 | 
											
												
													
														|  |           WHERE data_table=:table AND id IS NOT NULL LIMIT 1",
 |  |           WHERE data_table=:table AND id IS NOT NULL LIMIT 1",
 | 
											
												
													
														|  |             array(':table' => $base_table))->fetchField();
 |  |             array(':table' => $base_table))->fetchField();
 | 
											
												
													
														|  |  
 |  |  
 | 
											
										
											
												
													
														|  | @@ -85,11 +57,13 @@ class sbo__relationship_widgetTest extends TripalTestCase {
 | 
											
												
													
														|  |           'has_value' => FALSE,
 |  |           'has_value' => FALSE,
 | 
											
												
													
														|  |           'subject_key' => 'subject_id',
 |  |           'subject_key' => 'subject_id',
 | 
											
												
													
														|  |           'object_key' => 'object_id',
 |  |           'object_key' => 'object_id',
 | 
											
												
													
														|  | 
 |  | +         'base_table' => $base_table,
 | 
											
												
													
														|  | 
 |  | +         'relationship_table' => $base_table.'_relationship'
 | 
											
												
													
														|  |         ];
 |  |         ];
 | 
											
												
													
														|  |         if ($base_table == 'organism') { $expect['has_rank'] = FALSE; }
 |  |         if ($base_table == 'organism') { $expect['has_rank'] = FALSE; }
 | 
											
												
													
														|  |         if ($base_table == 'stock') { $expect['has_value'] = TRUE; }
 |  |         if ($base_table == 'stock') { $expect['has_value'] = TRUE; }
 | 
											
												
													
														|  | -       if ($base_table == 'project') { 
 |  | 
 | 
											
												
													
														|  | -         $expect['subject_key'] = 'subject_project_id'; 
 |  | 
 | 
											
												
													
														|  | 
 |  | +       if ($base_table == 'project') {
 | 
											
												
													
														|  | 
 |  | +         $expect['subject_key'] = 'subject_project_id';
 | 
											
												
													
														|  |           $expect['object_key'] = 'object_project_id';
 |  |           $expect['object_key'] = 'object_project_id';
 | 
											
												
													
														|  |         }
 |  |         }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
										
											
												
													
														|  | @@ -103,19 +77,40 @@ class sbo__relationship_widgetTest extends TripalTestCase {
 | 
											
												
													
														|  |     *
 |  |     *
 | 
											
												
													
														|  |     * @dataProvider provideEntities()
 |  |     * @dataProvider provideEntities()
 | 
											
												
													
														|  |     *
 |  |     *
 | 
											
												
													
														|  | -   * @group lacey
 |  | 
 | 
											
												
													
														|  | 
 |  | +   * @group lacey-wip
 | 
											
												
													
														|  | 
 |  | +   * @group widget
 | 
											
												
													
														|  | 
 |  | +   * @group sbo__relationship
 | 
											
												
													
														|  |     */
 |  |     */
 | 
											
												
													
														|  |    public function testWidgetClassInitialization($bundle_name, $field_name, $widget_name, $entity_id, $expect) {
 |  |    public function testWidgetClassInitialization($bundle_name, $field_name, $widget_name, $entity_id, $expect) {
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | -    // Initialize our variables.
 |  | 
 | 
											
												
													
														|  | -    $vars = $this->initializeWidgetClass($bundle_name, $field_name, $widget_name, $entity_id);
 |  | 
 | 
											
												
													
														|  | 
 |  | +    // Load the entity.
 | 
											
												
													
														|  | 
 |  | +    $entity = entity_load('TripalEntity', [$entity_id]);
 | 
											
												
													
														|  | 
 |  | +    $entity = $entity[$entity_id];
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +    // Initialize the widget class via the TripalFieldTestHelper class.
 | 
											
												
													
														|  | 
 |  | +    $machine_names = array(
 | 
											
												
													
														|  | 
 |  | +      'field_name' => $field_name,
 | 
											
												
													
														|  | 
 |  | +      'widget_name' => $widget_name,
 | 
											
												
													
														|  | 
 |  | +    );
 | 
											
												
													
														|  | 
 |  | +    module_load_include('php', 'tripal_chado', '../tests/TripalFieldTestHelper');
 | 
											
												
													
														|  | 
 |  | +    $helper = new \TripalFieldTestHelper($bundle_name, $machine_names, $entity);
 | 
											
												
													
														|  | 
 |  | +    $widget_class = $helper->getInitializedClass();
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |      // Check we have the variables we initialized.
 |  |      // Check we have the variables we initialized.
 | 
											
												
													
														|  | -    $this->assertNotEmpty($vars['bundle'], "Could not load the bundle.");
 |  | 
 | 
											
												
													
														|  | -    $this->assertNotEmpty($vars['field_info'], "Could not lookup the field information.");
 |  | 
 | 
											
												
													
														|  | -    $this->assertNotEmpty($vars['instance_info'], "Could not lookup the instance informatiob.");
 |  | 
 | 
											
												
													
														|  | -    $this->assertNotEmpty($vars['widget_class'], "Couldn't create a widget class instance.");
 |  | 
 | 
											
												
													
														|  | -    $this->assertNotEmpty($vars['entity'], "Couldn't load an entity.");
 |  | 
 | 
											
												
													
														|  | 
 |  | +    $this->assertNotEmpty($helper->bundle,
 | 
											
												
													
														|  | 
 |  | +      "Could not load the bundle.");
 | 
											
												
													
														|  | 
 |  | +    $this->assertNotEmpty($helper->getFieldInfo(),
 | 
											
												
													
														|  | 
 |  | +      "Could not lookup the field information.");
 | 
											
												
													
														|  | 
 |  | +    $this->assertNotEmpty($helper->getInstanceInfo(),
 | 
											
												
													
														|  | 
 |  | +      "Could not lookup the instance information.");
 | 
											
												
													
														|  | 
 |  | +    $this->assertNotEmpty($widget_class,
 | 
											
												
													
														|  | 
 |  | +      "Couldn't create a widget class instance.");
 | 
											
												
													
														|  | 
 |  | +    $this->assertNotEmpty($entity,
 | 
											
												
													
														|  | 
 |  | +      "Couldn't load an entity.");
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +    // Check a little deeper...
 | 
											
												
													
														|  | 
 |  | +    $this->assertEquals($helper->instance_info['settings']['chado_table'], $expect['relationship_table'],
 | 
											
												
													
														|  | 
 |  | +      "Instance settings were not initialized fully.");
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |    }
 |  |    }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
										
											
												
													
														|  | @@ -124,18 +119,31 @@ class sbo__relationship_widgetTest extends TripalTestCase {
 | 
											
												
													
														|  |     *
 |  |     *
 | 
											
												
													
														|  |     * @dataProvider provideEntities()
 |  |     * @dataProvider provideEntities()
 | 
											
												
													
														|  |     *
 |  |     *
 | 
											
												
													
														|  | -   * @group lacey
 |  | 
 | 
											
												
													
														|  | 
 |  | +   * @group widget
 | 
											
												
													
														|  | 
 |  | +   * @group sbo__relationship
 | 
											
												
													
														|  |     */
 |  |     */
 | 
											
												
													
														|  |    public function testWidgetForm($bundle_name, $field_name, $widget_name, $entity_id, $expect) {
 |  |    public function testWidgetForm($bundle_name, $field_name, $widget_name, $entity_id, $expect) {
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | -    $vars = $this->initializeWidgetClass($bundle_name, $field_name, $widget_name, $entity_id);
 |  | 
 | 
											
												
													
														|  | -    $base_table = $vars['entity']->chado_table;
 |  | 
 | 
											
												
													
														|  | 
 |  | +    // Load the entity.
 | 
											
												
													
														|  | 
 |  | +    $entity = entity_load('TripalEntity', [$entity_id]);
 | 
											
												
													
														|  | 
 |  | +    $entity = $entity[$entity_id];
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +    // Initialize the widget class via the TripalFieldTestHelper class.
 | 
											
												
													
														|  | 
 |  | +    $machine_names = array(
 | 
											
												
													
														|  | 
 |  | +      'field_name' => $field_name,
 | 
											
												
													
														|  | 
 |  | +      'widget_name' => $widget_name,
 | 
											
												
													
														|  | 
 |  | +    );
 | 
											
												
													
														|  | 
 |  | +    module_load_include('php', 'tripal_chado', '../tests/TripalFieldTestHelper');
 | 
											
												
													
														|  | 
 |  | +    $helper = new \TripalFieldTestHelper($bundle_name, $machine_names, $entity);
 | 
											
												
													
														|  | 
 |  | +    $widget_class = $helper->getInitializedClass();
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +    $base_table = $entity->chado_table;
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |      // Stub out a fake $widget object.
 |  |      // Stub out a fake $widget object.
 | 
											
												
													
														|  |      $widget = [
 |  |      $widget = [
 | 
											
												
													
														|  |        '#entity_type' => 'TripalEntity',
 |  |        '#entity_type' => 'TripalEntity',
 | 
											
												
													
														|  | -      '#entity' => $vars['entity'],
 |  | 
 | 
											
												
													
														|  | -      '#bundle' => $vars['bundle'],
 |  | 
 | 
											
												
													
														|  | 
 |  | +      '#entity' => $entity,
 | 
											
												
													
														|  | 
 |  | +      '#bundle' => $helper->bundle,
 | 
											
												
													
														|  |        '#field_name' => $field_name,
 |  |        '#field_name' => $field_name,
 | 
											
												
													
														|  |        '#language' => LANGUAGE_NONE,
 |  |        '#language' => LANGUAGE_NONE,
 | 
											
												
													
														|  |        '#field_parents' => [],
 |  |        '#field_parents' => [],
 | 
											
										
											
												
													
														|  | @@ -149,8 +157,8 @@ class sbo__relationship_widgetTest extends TripalTestCase {
 | 
											
												
													
														|  |          '#type' => 'value',
 |  |          '#type' => 'value',
 | 
											
												
													
														|  |          '#value' => '',
 |  |          '#value' => '',
 | 
											
												
													
														|  |        ],
 |  |        ],
 | 
											
												
													
														|  | -      '#field' => $vars['field_info'],
 |  | 
 | 
											
												
													
														|  | -      '#instance' => $vars['instance_info'],
 |  | 
 | 
											
												
													
														|  | 
 |  | +      '#field' => $helper->field_info,
 | 
											
												
													
														|  | 
 |  | +      '#instance' => $helper->instance_info,
 | 
											
												
													
														|  |        '#theme' => 'tripal_field_default',
 |  |        '#theme' => 'tripal_field_default',
 | 
											
												
													
														|  |        'element_validate' => ['tripal_field_widget_form_validate']
 |  |        'element_validate' => ['tripal_field_widget_form_validate']
 | 
											
												
													
														|  |      ];
 |  |      ];
 | 
											
										
											
												
													
														|  | @@ -158,13 +166,13 @@ class sbo__relationship_widgetTest extends TripalTestCase {
 | 
											
												
													
														|  |      // Stub out the form and form_state.
 |  |      // Stub out the form and form_state.
 | 
											
												
													
														|  |      $form = [
 |  |      $form = [
 | 
											
												
													
														|  |        '#parents' => [],
 |  |        '#parents' => [],
 | 
											
												
													
														|  | -      '#entity' => $vars['entity'],
 |  | 
 | 
											
												
													
														|  | 
 |  | +      '#entity' => $entity,
 | 
											
												
													
														|  |      ];
 |  |      ];
 | 
											
												
													
														|  |      $form_state = [
 |  |      $form_state = [
 | 
											
												
													
														|  |        'build_info' => [
 |  |        'build_info' => [
 | 
											
												
													
														|  |          'args' => [
 |  |          'args' => [
 | 
											
												
													
														|  |            0 => NULL,
 |  |            0 => NULL,
 | 
											
												
													
														|  | -          1 => $vars['entity']
 |  | 
 | 
											
												
													
														|  | 
 |  | +          1 => $entity,
 | 
											
												
													
														|  |          ],
 |  |          ],
 | 
											
												
													
														|  |          'form_id' => 'tripal_entity_form',
 |  |          'form_id' => 'tripal_entity_form',
 | 
											
												
													
														|  |        ],
 |  |        ],
 | 
											
										
											
												
													
														|  | @@ -179,11 +187,10 @@ class sbo__relationship_widgetTest extends TripalTestCase {
 | 
											
												
													
														|  |      $langcode = LANGUAGE_NONE;
 |  |      $langcode = LANGUAGE_NONE;
 | 
											
												
													
														|  |      $items = [
 |  |      $items = [
 | 
											
												
													
														|  |        'value' => '',
 |  |        'value' => '',
 | 
											
												
													
														|  | -      'chado-organism_relationship__organism_relationship_id' => '',
 |  | 
 | 
											
												
													
														|  | -      'chado-organism_relationship__subject_id' => '',
 |  | 
 | 
											
												
													
														|  | -      'chado-organism_relationship__object_id' => '',
 |  | 
 | 
											
												
													
														|  | -      'chado-organism_relationship__type_id' => '',
 |  | 
 | 
											
												
													
														|  | -      'chado-organism_relationship__rank' => '',
 |  | 
 | 
											
												
													
														|  | 
 |  | +      'chado-'.$base_table.'_relationship__organism_relationship_id' => '',
 | 
											
												
													
														|  | 
 |  | +      'chado-'.$base_table.'_relationship__subject_id' => '',
 | 
											
												
													
														|  | 
 |  | +      'chado-'.$base_table.'_relationship__object_id' => '',
 | 
											
												
													
														|  | 
 |  | +      'chado-'.$base_table.'_relationship__type_id' => '',
 | 
											
												
													
														|  |        'object_name' => '',
 |  |        'object_name' => '',
 | 
											
												
													
														|  |        'subject_name' => '',
 |  |        'subject_name' => '',
 | 
											
												
													
														|  |        'type_name' => '',
 |  |        'type_name' => '',
 | 
											
										
											
												
													
														|  | @@ -193,7 +200,7 @@ class sbo__relationship_widgetTest extends TripalTestCase {
 | 
											
												
													
														|  |      // Stub out the widget element.
 |  |      // Stub out the widget element.
 | 
											
												
													
														|  |      $element = [
 |  |      $element = [
 | 
											
												
													
														|  |        '#entity_type' => 'TripalEntity',
 |  |        '#entity_type' => 'TripalEntity',
 | 
											
												
													
														|  | -      '#entity' => $vars['entity'],
 |  | 
 | 
											
												
													
														|  | 
 |  | +      '#entity' => $entity,
 | 
											
												
													
														|  |        '#bundle' => $bundle_name,
 |  |        '#bundle' => $bundle_name,
 | 
											
												
													
														|  |        '#field_name' => $field_name,
 |  |        '#field_name' => $field_name,
 | 
											
												
													
														|  |        '#language' => LANGUAGE_NONE,
 |  |        '#language' => LANGUAGE_NONE,
 | 
											
										
											
												
													
														|  | @@ -207,26 +214,41 @@ class sbo__relationship_widgetTest extends TripalTestCase {
 | 
											
												
													
														|  |      ];
 |  |      ];
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |      // Execute the form method.
 |  |      // Execute the form method.
 | 
											
												
													
														|  | -    $vars['widget_class']->form($widget, $form, $form_state, $langcode, $items, $delta, $element);
 |  | 
 | 
											
												
													
														|  | 
 |  | +    $widget_class->form($widget, $form, $form_state, $langcode, $items, $delta, $element);
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |      // Check the resulting for array
 |  |      // Check the resulting for array
 | 
											
												
													
														|  | -    $this->assertArrayHasKey('subject_name', $widget, "The form for $bundle_name($base_table) does not have a subject element."); 
 |  | 
 | 
											
												
													
														|  | -    $this->assertArrayHasKey('type_name', $widget, "The form for $bundle_name($base_table) does not have a type element.");
 |  | 
 | 
											
												
													
														|  | -    $this->assertArrayHasKey('object_name', $widget, "The form for $bundle_name($base_table) does not have a object element.");
 |  | 
 | 
											
												
													
														|  | 
 |  | +    $this->assertArrayHasKey('subject_name', $widget,
 | 
											
												
													
														|  | 
 |  | +      "The form for $bundle_name($base_table) does not have a subject element.");
 | 
											
												
													
														|  | 
 |  | +    $this->assertArrayHasKey('type_name', $widget,
 | 
											
												
													
														|  | 
 |  | +      "The form for $bundle_name($base_table) does not have a type element.");
 | 
											
												
													
														|  | 
 |  | +    $this->assertArrayHasKey('object_name', $widget,
 | 
											
												
													
														|  | 
 |  | +      "The form for $bundle_name($base_table) does not have a object element.");
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +    //@ debug print_r($widget);
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |      // Check the subject/object keys were correctly determined.
 |  |      // Check the subject/object keys were correctly determined.
 | 
											
												
													
														|  | -    $this->assertEquals($expect['subject_key'], $widget['#subject_id_key'], "The form didn't determine the subject key correctly.");
 |  | 
 | 
											
												
													
														|  | -    $this->assertEquals($expect['object_key'], $widget['#object_id_key'], "The form didn't determine the object key correctly.");
 |  | 
 | 
											
												
													
														|  | -
 |  | 
 | 
											
												
													
														|  | -    // If this table has a rank we want to ensure there is a form element to set it.
 |  | 
 | 
											
												
													
														|  | -    if ($expect['has_rank']) {
 |  | 
 | 
											
												
													
														|  | -      $this->assertArrayHasKey('rank', $widget, "The form for $bundle_name($base_table) does not have a rank element and it should.");
 |  | 
 | 
											
												
													
														|  | -    }
 |  | 
 | 
											
												
													
														|  | -
 |  | 
 | 
											
												
													
														|  | -    // If this table has a value we want to ensure there is a form element to set it.
 |  | 
 | 
											
												
													
														|  | -    // @todo this test may be problematic b/c all fields have values independent of the db.
 |  | 
 | 
											
												
													
														|  | -    if ($expect['has_value']) { 
 |  | 
 | 
											
												
													
														|  | -      $this->assertArrayHasKey('value', $widget, "The form for $bundle_name($base_table) does not have a value element and it should.");
 |  | 
 | 
											
												
													
														|  | -    } 
 |  | 
 | 
											
												
													
														|  | 
 |  | +    $this->assertEquals($expect['subject_key'], $widget['#subject_id_key'],
 | 
											
												
													
														|  | 
 |  | +      "The form didn't determine the subject key correctly.");
 | 
											
												
													
														|  | 
 |  | +    $this->assertEquals($expect['object_key'], $widget['#object_id_key'],
 | 
											
												
													
														|  | 
 |  | +      "The form didn't determine the object key correctly.");
 | 
											
												
													
														|  | 
 |  | +  }
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +  /**
 | 
											
												
													
														|  | 
 |  | +   * Test the Relationship Type Options.
 | 
											
												
													
														|  | 
 |  | +   * Specfically, sbo__relationship_widget->get_rtype_select_options().
 | 
											
												
													
														|  | 
 |  | +   *
 | 
											
												
													
														|  | 
 |  | +   * @dataProvider provideEntities()
 | 
											
												
													
														|  | 
 |  | +   *
 | 
											
												
													
														|  | 
 |  | +   * @group widget
 | 
											
												
													
														|  | 
 |  | +   * @group sbo__relationship
 | 
											
												
													
														|  | 
 |  | +   */
 | 
											
												
													
														|  | 
 |  | +  public function testGetRTypeSelectOptions($bundle_name, $field_name, $widget_name, $entity_id, $expect) {
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +    // The different options are set in the instance.
 | 
											
												
													
														|  | 
 |  | +    // Therefore we want to make a fake instance to control this setting.
 | 
											
												
													
														|  | 
 |  | +    $fake_instance = field_info_instance('TripalEntity', $field_name, $bundle_name);
 | 
											
												
													
														|  | 
 |  | +    //$fake_instance['settings']['relationships']['option1_vocabs'] = 5;
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +    $this->assertTrue(true);
 | 
											
												
													
														|  |    }
 |  |    }
 | 
											
												
													
														|  |  }
 |  |  }
 |