Fix CSS URL innerHTML/cssText escaping bug.
[htmlpurifier.git] / tests / HTMLPurifier / AttrDef / CSS / ColorTest.php
blobf3a74e897db9587fb4d130ec1c0ebdc2a29187d4
1 <?php
3 class HTMLPurifier_AttrDef_CSS_ColorTest extends HTMLPurifier_AttrDefHarness
6 function test() {
8 $this->def = new HTMLPurifier_AttrDef_CSS_Color();
10 $this->assertDef('#F00');
11 $this->assertDef('#fff');
12 $this->assertDef('#eeeeee');
13 $this->assertDef('#808080');
14 $this->assertDef('rgb(255, 0, 0)', 'rgb(255,0,0)'); // rm spaces
15 $this->assertDef('rgb(100%,0%,0%)');
16 $this->assertDef('rgb(50.5%,23.2%,43.9%)'); // decimals okay
18 $this->assertDef('#G00', false);
19 $this->assertDef('cmyk(40, 23, 43, 23)', false);
20 $this->assertDef('rgb(0%, 23, 68%)', false);
22 // clip numbers outside sRGB gamut
23 $this->assertDef('rgb(200%, -10%, 0%)', 'rgb(100%,0%,0%)');
24 $this->assertDef('rgb(256,-23,34)', 'rgb(255,0,34)');
26 // color keywords, of course
27 $this->assertDef('red', '#FF0000');
29 // malformed hex declaration
30 $this->assertDef('808080', '#808080');
31 $this->assertDef('000000', '#000000');
32 $this->assertDef('fed', '#fed');
34 // maybe hex transformations would be another nice feature
35 // at the very least transform rgb percent to rgb integer
41 // vim: et sw=4 sts=4