6
6
7
7
import re , unittest
8
8
9
- class Html5EncodingTestCase (unittest .TestCase ): pass
9
+ class Html5EncodingTestCase (unittest .TestCase ):
10
+ def test_codec_name (self ):
11
+ self .assertEquals (inputstream .codecName ("utf-8" ), "utf-8" )
12
+ self .assertEquals (inputstream .codecName ("utf8" ), "utf-8" )
13
+ self .assertEquals (inputstream .codecName (" utf8 " ), "utf-8" )
14
+ self .assertEquals (inputstream .codecName ("ISO_8859--1" ), "windows-1252" )
10
15
11
16
def buildTestSuite ():
12
17
for filename in html5lib_test_files ("encoding" ):
@@ -16,7 +21,9 @@ def buildTestSuite():
16
21
for idx , test in enumerate (tests ):
17
22
def encodingTest (self , data = test ['data' ], encoding = test ['encoding' ]):
18
23
stream = inputstream .HTMLInputStream (data ,chardet = False )
19
- self .assertEquals (encoding .lower (), stream .charEncoding [0 ])
24
+ errorMessage = "Input:\n %s\n Expected:\n %s\n Recieved\n %s\n " % (data , encoding .lower (),
25
+ stream .charEncoding [0 ])
26
+ self .assertEquals (encoding .lower (), stream .charEncoding [0 ], errorMessage )
20
27
setattr (Html5EncodingTestCase , 'test_%s_%d' % (test_name , idx + 1 ),
21
28
encodingTest )
22
29
@@ -29,6 +36,7 @@ def test_chardet(self):
29
36
setattr (Html5EncodingTestCase , 'test_chardet' , test_chardet )
30
37
except ImportError :
31
38
print "chardet not found, skipping chardet tests"
39
+
32
40
33
41
return unittest .defaultTestLoader .loadTestsFromName (__name__ )
34
42
0 commit comments