CSS-DOM
view release on metacpan or search on metacpan
t/CSSPrimitiveValue.t view on Meta::CPAN
'setting cssText returns the old value';
is $s->backgroundImage, 'none',
'prim_value->cssText("...") sets the owner CSS property';
is $v->primitiveType, &CSS::DOM::Value::Primitive::CSS_IDENT,
' prim->cssText sets the âprimitiveâ type';
is $v->cssText, 'none',
' prim->cssText sets the value object\'s own cssText';
# We re-use the same value on purpose, to make sure the change in type did
# not discard the internal owner attribute.
$v->cssText('inherit');
is $s->backgroundImage, 'inherit',
'setting the cssText of a primitive value to inherit changes the prop';
is $v->cssText, 'inherit',
'setting the cssText of a prim val to inherit changes its cssText';
is $v->cssValueType, &CSS_INHERIT,
'value type after setting a primitive value to inherit';
isa_ok $v, "CSS::DOM::Value",
'object class after setting a primitive value to inherit';
$s->clip('rect(0,0,0,0)');
$v = $s->getPropertyCSSValue('clip')->top;
$v->cssText('red');
is $v->cssText, 0,
'setting cssText on a sub-value of a rect to a colour does nothing';
$v->cssText(50);
is $v->cssText, 0,
'setting cssText on a rectâs sub-value to a non-zero num does nothing';
$v->cssText('5px');
is $v->cssText, '5px',
'setting cssText on a sub-value of a rect to 5px works';
is $v->primitiveType, &CSS::DOM::Value::Primitive::CSS_PX,
'setting cssText on a sub-value of a rect to 5px changes the prim type';
like $s->clip, qr/^rect\(5px,\s*0,\s*0,\s*0\)\z/,
'setting cssText on a sub-value of a rect changes the prop that owns it';
$v->cssText('auto');
is $v->cssText, 'auto', 'rect sub-values can be set to auto';
$v->cssText('bdelp');
is $v->cssText, 'auto', 'but not to any other identifier';
$s->color('#c0ffee');
$v = (my $clr = $s->getPropertyCSSValue('color'))->red;
$v->cssText('red');
is $v->cssText, 192,
'setting cssText on a sub-value of a colour to a colour does nothing';
$v->cssText('255');
is $v->cssText, '255',
'setting cssText on a sub-value of a colour to 255 works';
is $clr->cssText, '#ffffee',
'changing a colourâs sub-value sets the colourâs cssText';
$v->cssText('50%');
is $v->cssText, '50%',
'setting cssText on a sub-value of a colour to 50% works';
is $v->primitiveType, &CSS::DOM::Value::Primitive::CSS_PERCENTAGE,
'changing the cssText of a colourâs sub-value changes the prim type';
like $clr->cssText, qr/^rgb\(127.5,\s*255,\s*238\)\z/,
'the colourâs cssText after making the subvalues mixed numbers & %âs';
$v = $clr->alpha;
$v->cssText('50%');
is $v->cssText, 1,
'alpha values ignore assignments of percentage values to cssText';
$v->cssText(.5);
is $v->cssText, .5,
'but number assignments (to alpha valuesâ cssText) work';
like $clr->cssText, qr/^rgba\(127.5,\s*255,\s*238,\s*0.5\)\z/,
'the colourâs cssText after making the subvalues mixed numbers & %âs';
$v = $s->getPropertyCSSValue('color');
$v->cssText('activeborder');;
is $v->primitiveType, &CSS::DOM::Value::Primitive::CSS_IDENT,
'setting a colour propertyâs cssText to a sys. colour makes it an ident';
$s->backgroundColor('red');
my $called;
$s->modification_handler(sub { ++$called });
$s->getPropertyCSSValue('background-color')->cssText('white');
is $called, 1,
"modification_handler is called when a âprimitiveâ value changes";
}
# Methods that still need testing:
# ~~~ getCounterValue getRectValue getRGBColorValue
( run in 1.270 second using v1.01-cache-2.11-cpan-39bf76dae61 )