diff options
Diffstat (limited to 'modules/simpletest/tests/common.test')
-rw-r--r-- | modules/simpletest/tests/common.test | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/modules/simpletest/tests/common.test b/modules/simpletest/tests/common.test index b2ae4a3dc..c396e9120 100644 --- a/modules/simpletest/tests/common.test +++ b/modules/simpletest/tests/common.test @@ -1074,3 +1074,43 @@ class FormatDateUnitTest extends DrupalWebTestCase { drupal_save_session(TRUE); } } + +/** + * Tests for the format_date() function. + */ +class DrupalAttributesUnitTest extends DrupalUnitTestCase { + public static function getInfo() { + return array( + 'name' => t('HTML Attributes'), + 'description' => t('Perform unit tests on the drupal_attributes() function.'), + 'group' => t('System') + ); + } + + /** + * Tests that drupal_css_class() cleans the class name properly. + */ + function testDrupalAttributes() { + // Verify that special characters are HTML encoded. + $this->assertIdentical(drupal_attributes(array('title' => '&"\'<>')), ' title="&"'<>"', t('HTML encode attribute values.')); + + // Verify multi-value attributes are concatenated with spaces. + $attributes = array('class' => array('first', 'last')); + $this->assertIdentical(drupal_attributes(array('class' => array('first', 'last'))), ' class="first last"', t('Concatenate multi-value attributes.')); + + // Verify empty attribute values are rendered. + $this->assertIdentical(drupal_attributes(array('alt' => '')), ' alt=""', t('Empty attribute value #1.')); + $this->assertIdentical(drupal_attributes(array('alt' => NULL)), ' alt=""', t('Empty attribute value #2.')); + + // Verify multiple attributes are rendered. + $attributes = array( + 'id' => 'id-test', + 'class' => array('first', 'last'), + 'alt' => 'Alternate', + ); + $this->assertIdentical(drupal_attributes($attributes), ' id="id-test" class="first last" alt="Alternate"', t('Multiple attributes.')); + + // Verify empty attributes array is rendered. + $this->assertIdentical(drupal_attributes(array()), '', t('Empty attributes array.')); + } +} |