Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitc21a84c

Browse files
committed
Fix the tokenizer test harness
--HG--extra : convert_revision : svn%3Aacbfec75-9323-0410-a652-858a13e371e0/trunk%401148
1 parentd2ba0c0 commitc21a84c

File tree

1 file changed

+19
-6
lines changed

1 file changed

+19
-6
lines changed

‎tests/test_tokenizer.py

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,13 @@
1+
importsys
12
importos
23
importunittest
34
fromsupportimportsimplejson,html5lib_test_files
45

56
fromhtml5lib.tokenizerimportHTMLTokenizer
67
fromhtml5libimportconstants
78

9+
importcStringIO
10+
811
classTokenizerTestParser(object):
912
def__init__(self,contentModelFlag,lastStartTag=None):
1013
self.tokenizer=HTMLTokenizer
@@ -104,19 +107,29 @@ def runTokenizerTest(self, test):
104107
output=concatenateCharacterTokens(test['output'])
105108
if'lastStartTag'notintest:
106109
test['lastStartTag']=None
110+
outBuffer=cStringIO.StringIO()
111+
stdout=sys.stdout
112+
sys.stdout=outBuffer
107113
parser=TokenizerTestParser(test['contentModelFlag'],
108114
test['lastStartTag'])
109115
tokens=parser.parse(test['input'])
110116
tokens=concatenateCharacterTokens(tokens)
117+
tokens=normalizeTokens(tokens)
111118
errorMsg="\n".join(["\n\nContent Model Flag:",
112119
test['contentModelFlag'] ,
113-
"\nInput:",str(test['input']),
114-
"\nExpected:",str(output),
115-
"\nreceived:",str(tokens)])
116-
tokens=normalizeTokens(tokens)
120+
"\nInput:",test['input'],
121+
"\nExpected:",unicode(output),
122+
"\nreceived:",unicode(tokens)])
117123
ignoreErrorOrder=test.get('ignoreErrorOrder',False)
118-
self.assertEquals(tokensMatch(tokens,output,ignoreErrorOrder),True,
119-
errorMsg)
124+
sys.stdout=stdout
125+
try:
126+
self.assertEquals(tokensMatch(tokens,output,ignoreErrorOrder),True,
127+
errorMsg)
128+
exceptAssertionError:
129+
outBuffer.seek(0)
130+
printoutBuffer.read()
131+
printerrorMsg
132+
raise
120133

121134
defbuildTestSuite():
122135
forfilenameinhtml5lib_test_files('tokenizer','*.test'):

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp