summaryrefslogtreecommitdiff
path: root/includes/tests/form.test
diff options
context:
space:
mode:
Diffstat (limited to 'includes/tests/form.test')
-rw-r--r--includes/tests/form.test74
1 files changed, 0 insertions, 74 deletions
diff --git a/includes/tests/form.test b/includes/tests/form.test
deleted file mode 100644
index 70cb131cb..000000000
--- a/includes/tests/form.test
+++ /dev/null
@@ -1,74 +0,0 @@
-<?php
-// $Id$
-
-/**
- * @file
- * Unit tests for the Drupal Form API.
- */
-
-class FormsTestCase extends DrupalWebTestCase {
-
- function getInfo() {
- return array(
- 'name' => t('Required field validation'),
- 'description' => t('Carriage returns, tabs, and spaces are not valid content for a required field.'),
- 'group' => t('Form API'),
- );
- }
-
- /**
- * Check several empty values for required forms elements.
- *
- * If the form field is found in form_get_errors() then the test pass.
- */
- function testRequiredFields() {
- // Originates from http://drupal.org/node/117748
- // Sets of empty strings and arrays
- $empty_strings = array('""' => "", '"\n"' => "\n", '" "' => " ", '"\t"' => "\t", '" \n\t "' => " \n\t ", '"\n\n\n\n\n"' => "\n\n\n\n\n");
- $empty_arrays = array('array()' => array());
-
- $elements['textfield']['element'] = array('#title' => $this->randomName(), '#type' => 'textfield', '#required' => TRUE);
- $elements['textfield']['empty_values'] = $empty_strings;
-
- $elements['password']['element'] = array('#title' => $this->randomName(), '#type' => 'password', '#required' => TRUE);
- $elements['password']['empty_values'] = $empty_strings;
-
- $elements['password_confirm']['element'] = array('#title' => $this->randomName(), '#type' => 'password_confirm', '#required' => TRUE);
- $elements['password_confirm']['empty_values'] = $empty_strings;
-
- $elements['textarea']['element'] = array('#title' => $this->randomName(), '#type' => 'textarea', '#required' => TRUE);
- $elements['textarea']['empty_values'] = $empty_strings;
-
- $elements['radios']['element'] = array('#title' => $this->randomName(), '#type' => 'radios', '#required' => TRUE, '#options' => array($this->randomName(), $this->randomName(), $this->randomName()));
- $elements['radios']['empty_values'] = $empty_arrays;
-
- $elements['checkboxes']['element'] = array('#title' => $this->randomName(), '#type' => 'checkboxes', '#required' => TRUE,'#options' => array($this->randomName(), $this->randomName(), $this->randomName()));
- $elements['checkboxes']['empty_values'] = $empty_arrays;
-
- $elements['select']['element'] = array('#title' => $this->randomName(), '#type' => 'select', '#required' => TRUE, '#options' => array($this->randomName(), $this->randomName(), $this->randomName()));
- $elements['select']['empty_values'] = $empty_strings;
-
- $elements['file']['element'] = array('#title' => $this->randomName(), '#type' => 'file', '#required' => TRUE);
- $elements['file']['empty_values'] = $empty_strings;
-
- // Go through all the elements and all the empty values for them
- foreach ($elements as $type => $data) {
- foreach ($data['empty_values'] as $key => $empty) {
- $form_id = $this->randomName();
- $form = $form_state = array();
- $form['op'] = array('#type' => 'submit', '#value' => t('Submit'));
- $element = $data['element']['#title'];
- $form[$element] = $data['element'];
- $form_state['values'][$element] = $empty;
- $form['#post'] = $form_state['values'];
- $form['#post']['form_id'] = $form_id;
- drupal_prepare_form($form_id, $form, $form_state);
- drupal_process_form($form_id, $form, $form_state);
- $errors = form_get_errors();
- $this->assertTrue(isset($errors[$element]), "Check empty($key) '$type' field '$element'");
- }
- }
- // Clear the expected form error messages so they don't appear as exceptions.
- drupal_get_messages();
- }
-}