44 lines
1.6 KiB
Python
44 lines
1.6 KiB
Python
"""Testcases for cssutils.css.cssproperties."""
|
|
|
|
import cssutils.css
|
|
import cssutils.profiles
|
|
import pytest
|
|
|
|
|
|
class TestCSSProperties:
|
|
def test_toDOMname(self):
|
|
"cssproperties _toDOMname(CSSname)"
|
|
_toDOMname = cssutils.css.cssproperties._toDOMname
|
|
|
|
assert 'color' == _toDOMname('color')
|
|
assert 'fontStyle' == _toDOMname('font-style')
|
|
assert 'MozOpacity' == _toDOMname('-moz-opacity')
|
|
assert 'UNKNOWN' == _toDOMname('UNKNOWN')
|
|
assert 'AnUNKNOWN' == _toDOMname('-anUNKNOWN')
|
|
|
|
def test_toCSSname(self):
|
|
"cssproperties _toCSSname(DOMname)"
|
|
_toCSSname = cssutils.css.cssproperties._toCSSname
|
|
|
|
assert 'color' == _toCSSname('color')
|
|
assert 'font-style' == _toCSSname('fontStyle')
|
|
assert '-moz-opacity' == _toCSSname('MozOpacity')
|
|
assert 'UNKNOWN' == _toCSSname('UNKNOWN')
|
|
assert '-anUNKNOWN' == _toCSSname('AnUNKNOWN')
|
|
|
|
def test_CSS2Properties(self):
|
|
"CSS2Properties"
|
|
CSS2Properties = cssutils.css.cssproperties.CSS2Properties
|
|
assert isinstance(property(), type(CSS2Properties.color))
|
|
assert sum(len(x) for x in list(cssutils.profiles.properties.values())) == len(
|
|
CSS2Properties._properties
|
|
)
|
|
|
|
c2 = CSS2Properties()
|
|
# CSS2Properties has simplified implementation return always None
|
|
assert c2.color is None
|
|
assert c2.__setattr__('color', 1) is None
|
|
assert c2.__delattr__('color') is None
|
|
# only defined properties
|
|
with pytest.raises(AttributeError):
|
|
c2.__getattribute__('UNKNOWN')
|