| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151 | 
							- <?php
 
- /**
 
-  * @file
 
-  * Unit test file for groups.
 
-  *
 
-  * @todo - fill along if we know more.
 
-  *
 
-  * - nest a group under another group and see if parent_name is first group
 
-  * - nest a group under second group and see if parent_name is second group
 
-  * - settings: open f and verify on front-end (classes)
 
-  * - settings: collapsible f and verify on front-end (classes)
 
-  * - settings: collapsed f and verify on front-end (classes)
 
-  * - settings: vertical tabs and verify on front-end (classes)
 
-  * - settings: horizontal item and verify on front-end (classes)
 
-  * - settings: vertical item  and verify on front-end (classes)
 
-  * - settings: hidden (simple div) and verify on front-end (classes)
 
-  * - settings: label and verify on front-end
 
-  * - delete a fieldgroup - make sure we have a couple with the same name
 
-  *   and make sure the right one is deleted!
 
-  */
 
- /**
 
-  * Group UI tests.
 
-  */
 
- class GroupUITestCase extends DrupalWebTestCase {
 
-   public static function getInfo() {
 
-     return array(
 
-       'name' => 'Field group tests',
 
-       'description' => 'Test the field group functionality.',
 
-       'group' => 'Field group',
 
-     );
 
-   }
 
-   function setUp() {
 
-     parent::setUp('field_test', 'field_group');
 
-     // Create test user.
 
-     $admin_user = $this->drupalCreateUser(array('administer content types', 'administer nodes', 'access administration pages', 'bypass node access'));
 
-     $this->drupalLogin($admin_user);
 
-     // Create random group name.
 
-     $this->group_label = $this->randomName(8);
 
-     $this->group_name_input = drupal_strtolower($this->randomName(8));
 
-     $this->group_name = 'group_' . $this->group_name_input;
 
-     // Create a fieldgroup.
 
-     $field_group = new stdClass;
 
-     $field_group->disabled = FALSE; /* Edit this to true to make a default field_group disabled initially */
 
-     $field_group->api_version = 1;
 
-     $field_group->identifier = 'wrapper|node|article|form';
 
-     $field_group->group_name = 'wrapper';
 
-     $field_group->entity_type = 'node';
 
-     $field_group->bundle = 'article';
 
-     $field_group->mode = 'form';
 
-     $field_group->parent_name = '';
 
-     $field_group->data = array(
 
-       'label' => 'Wrapper',
 
-       'weight' => '1',
 
-       'children' => array(
 
-         0 => 'field_image',
 
-       ),
 
-       'format_type' => 'div',
 
-       'format_settings' => array(
 
-         'label' => 'Link',
 
-         'instance_settings' => array(
 
-           'required_fields' => 0,
 
-           'id' => 'wrapper-id',
 
-           'classes' => '',
 
-           'description' => '',
 
-           'show_label' => '0',
 
-           'label_element' => 'h3',
 
-           'effect' => 'none',
 
-           'speed' => 'fast',
 
-         ),
 
-         'formatter' => 'open',
 
-       ),
 
-     );
 
-     drupal_write_record('field_group', $field_group);
 
-     ctools_export_crud_enable('field_group', $field_group->identifier);
 
-   }
 
-   /**
 
-    * Creates a group on the article content type.
 
-    */
 
-   function createGroup() {
 
-     // Setup new group.
 
-     $group = array(
 
-       'fields[_add_new_group][label]' => $this->group_label,
 
-       'fields[_add_new_group][group_name]' => $this->group_name_input,
 
-     );
 
-     // Add new group on the 'Manage fields' page.
 
-     $this->drupalPost('admin/structure/types/manage/article/fields',  $group, t('Save'));
 
-     $this->assertRaw(t('New group %label successfully created.', array('%label' => $this->group_label)), t('Group message displayed on screen.'));
 
-     // Test if group is in the $groups array.
 
-     $groups = field_group_info_groups('node', 'article', 'form', TRUE);
 
-     $this->assertTrue(array_key_exists($this->group_name, $groups), t('Group found in groups array'));
 
-     // Add new group on the 'Manage display' page.
 
-     $this->drupalPost('admin/structure/types/manage/article/display',  $group, t('Save'));
 
-     $this->assertRaw(t('New group %label successfully created.', array('%label' => $this->group_label)), t('Group message displayed on screen.'));
 
-     // Test if group is in the $groups array.
 
-     $groups = field_group_info_groups('node', 'article', 'default', TRUE);
 
-     $this->assertTrue(array_key_exists($this->group_name, $groups), t('Group found in groups array'));
 
-   }
 
-   /**
 
-    * Delete a group.
 
-    */
 
-   function deleteGroup() {
 
-     $this->drupalPost('admin/structure/types/manage/article/groups/' . $this->group_name . '/delete/form', array(), t('Delete'));
 
-     $this->assertRaw(t('The group %label has been deleted from the %article content type.', array('%label' => $this->group_label, '%article' => 'Article')), t('Group removal message displayed on screen.'));
 
-     // Test that group is not in the $groups array.
 
-     $groups = field_group_info_groups('node', 'article', 'form', TRUE);
 
-     $this->assertFalse(array_key_exists($this->group_name, $groups), t('Group not found in groups array while deleting'));
 
-     $this->drupalPost('admin/structure/types/manage/article/groups/' . $this->group_name . '/delete/default', array(), t('Delete'));
 
-     $this->assertRaw(t('The group %label has been deleted from the %article content type.', array('%label' => $this->group_label, '%article' => 'Article')), t('Group removal message displayed on screen.'));
 
-     // Test that group is not in the $groups array.
 
-     $groups = field_group_info_groups('node', 'article', 'default', TRUE);
 
-     $this->assertFalse(array_key_exists($this->group_name, $groups), t('Group not found in groups array while deleting'));
 
-   }
 
-   /**
 
-    * General CRUD.
 
-    */
 
-   function testCRUDGroup() {
 
-     $this->createGroup();
 
-     $this->deleteGroup();
 
-   }
 
-   /**
 
-    * Nest a field underneath a group.
 
-    */
 
-   function testNestField() {
 
-     // Test on the wrapper field.
 
-     $groups = field_group_info_groups('node', 'article', 'form', TRUE);
 
-     $this->assertTrue(in_array('field_image', $groups['wrapper']->children), t('Image is a child of %group', array('%group' => 'Wrapper')));
 
-     $this->drupalGet('node/add/article');
 
-     $this->assertRaw('id="wrapper-id"', t('Wrapper id set on wrapper div'));
 
-   }
 
- }
 
 
  |