summaryrefslogtreecommitdiff
path: root/modules/color
diff options
context:
space:
mode:
authorwebchick <webchick@24967.no-reply.drupal.org>2011-06-08 17:56:24 -0700
committerwebchick <webchick@24967.no-reply.drupal.org>2011-06-08 17:56:24 -0700
commit519e5603697cc75256bbd788b907b350a73caf17 (patch)
tree949f5e7b9059c2ffd68d00198721daa43a5e445a /modules/color
parent0cf6aa0c0728f7a52e909693622f646ab56a6720 (diff)
downloadbrdo-519e5603697cc75256bbd788b907b350a73caf17.tar.gz
brdo-519e5603697cc75256bbd788b907b350a73caf17.tar.bz2
Issue #1179424 by aspilicious, tstoeckler: Add tests to check for SA-CORE-2011-001
Diffstat (limited to 'modules/color')
-rw-r--r--modules/color/color.test37
1 files changed, 37 insertions, 0 deletions
diff --git a/modules/color/color.test b/modules/color/color.test
index 1ddfc0647..0a8e78f48 100644
--- a/modules/color/color.test
+++ b/modules/color/color.test
@@ -11,6 +11,7 @@
class ColorTestCase extends DrupalWebTestCase {
protected $big_user;
protected $themes;
+ protected $colorTests;
public static function getInfo() {
return array(
@@ -40,6 +41,19 @@ class ColorTestCase extends DrupalWebTestCase {
),
);
theme_enable(array_keys($this->themes));
+
+ // Array filled with valid and not valid color values
+ $this->colorTests = array(
+ '#000' => TRUE,
+ '#123456' => TRUE,
+ '#abcdef' => TRUE,
+ '#0' => FALSE,
+ '#00' => FALSE,
+ '#0000' => FALSE,
+ '#00000' => FALSE,
+ '123456' => FALSE,
+ '#00000g' => FALSE,
+ );
}
/**
@@ -93,4 +107,27 @@ class ColorTestCase extends DrupalWebTestCase {
$this->assertTrue(strpos($stylesheet_content, 'public://') === FALSE, 'Make sure the color paths have been translated to local paths. (' . $theme . ')');
variable_set('preprocess_css', 0);
}
+
+ /**
+ * Test to see if the provided color is valid
+ */
+ function testValidColor() {
+ variable_set('theme_default', 'bartik');
+ $settings_path = 'admin/appearance/settings/bartik';
+
+ $this->drupalLogin($this->big_user);
+ $edit['scheme'] = '';
+
+ foreach ($this->colorTests as $color => $is_valid) {
+ $edit['palette[bg]'] = $color;
+ $this->drupalPost($settings_path, $edit, t('Save configuration'));
+
+ if($is_valid) {
+ $this->assertText('The configuration options have been saved.');
+ }
+ else {
+ $this->assertText('Main background must be a valid hexadecimal CSS color value.');
+ }
+ }
+ }
}