forked from jaraco/cssutils
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtest_csscomment.py
More file actions
63 lines (52 loc) · 1.88 KB
/
test_csscomment.py
File metadata and controls
63 lines (52 loc) · 1.88 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
"""Testcases for cssutils.css.CSSComment"""
import xml
import cssutils.css
from . import test_cssrule
class TestCSSComment(test_cssrule.TestCSSRule):
def _setup_rule(self):
self.r = cssutils.css.CSSComment()
self.rRO = cssutils.css.CSSComment(readonly=True)
self.r_type = cssutils.css.CSSComment.COMMENT
self.r_typeString = 'COMMENT'
def test_csstext(self):
"CSSComment.cssText"
tests = {
'/*öäü߀ÖÄÜ*/': '/*\xf6\xe4\xfc\xdf\u20ac\xd6\xc4\xdc*/',
'/*x*/': None,
'/* x */': None,
'/*\t12\n*/': None,
'/* /* */': None,
'/* \\*/': None,
'/*"*/': None,
'''/*"
*/''': None,
'/** / ** //*/': None,
}
self.do_equal_r(tests) # set cssText
tests.update({
'/*x': '/*x*/',
'\n /*': '/**/',
})
self.do_equal_p(tests) # parse
tests = {
'/* */ ': xml.dom.InvalidModificationErr,
'/* *//**/': xml.dom.InvalidModificationErr,
'/* */1': xml.dom.InvalidModificationErr,
'/* */ */': xml.dom.InvalidModificationErr,
' */ /* ': xml.dom.InvalidModificationErr,
'*/': xml.dom.InvalidModificationErr,
'@x /* x */': xml.dom.InvalidModificationErr,
}
self.do_raise_r(tests) # set cssText
# no raising of error possible?
# self.do_raise_p(tests) # parse
def test_InvalidModificationErr(self):
"CSSComment.cssText InvalidModificationErr"
self._test_InvalidModificationErr('/* comment */')
def test_reprANDstr(self):
"CSSComment.__repr__(), .__str__()"
text = '/* test */'
s = cssutils.css.CSSComment(cssText=text)
s2 = eval(repr(s))
assert isinstance(s2, s.__class__)
assert text == s2.cssText