本文整理汇总了Python中xmlunittest.XmlTestCase.assertXmlValidDTD方法的典型用法代码示例。如果您正苦于以下问题:Python XmlTestCase.assertXmlValidDTD方法的具体用法?Python XmlTestCase.assertXmlValidDTD怎么用?Python XmlTestCase.assertXmlValidDTD使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类xmlunittest.XmlTestCase
的用法示例。
在下文中一共展示了XmlTestCase.assertXmlValidDTD方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_assertXmlValidDTD_DTD
# 需要导入模块: from xmlunittest import XmlTestCase [as 别名]
# 或者: from xmlunittest.XmlTestCase import assertXmlValidDTD [as 别名]
def test_assertXmlValidDTD_DTD(self):
"""Asserts assertXmlValidDTD accepts an LXML DTD object."""
test_case = XmlTestCase(methodName='assertXmlValidDTD')
dtd = """<!ELEMENT root (child)>
<!ELEMENT child EMPTY>
<!ATTLIST child id ID #REQUIRED>
"""
schema = etree.DTD(io.StringIO(dtd))
data = b"""<?xml version="1.0" encoding="utf-8"?>
<root>
<child id="child1"/>
</root>
"""
root = test_case.assertXmlDocument(data)
# Document is valid according to DTD
test_case.assertXmlValidDTD(root, schema)
data_invalid = b"""<?xml version="1.0" encoding="utf-8"?>
<root>
<child id="child1"/>
<child id="child1"/>
</root>
"""
root = test_case.assertXmlDocument(data_invalid)
# Document is invalid according to DTD (multiple child element)
with self.assertRaises(test_case.failureException):
test_case.assertXmlValidDTD(root, schema)
示例2: test_assertXmlValidDTD
# 需要导入模块: from xmlunittest import XmlTestCase [as 别名]
# 或者: from xmlunittest.XmlTestCase import assertXmlValidDTD [as 别名]
def test_assertXmlValidDTD(self):
"""Asserts assertXmlValidDTD raises when DTD does not valid XML."""
test_case = XmlTestCase(methodName='assertXmlValidDTD')
dtd = """<!ELEMENT root (child)>
<!ELEMENT child EMPTY>
<!ATTLIST child id ID #REQUIRED>
"""
data = b"""<?xml version="1.0" encoding="utf-8"?>
<root>
<child id="child1"/>
</root>
"""
root = test_case.assertXmlDocument(data)
# Document is valid according to DTD
test_case.assertXmlValidDTD(root, dtd)
data_invalid = b"""<?xml version="1.0" encoding="utf-8"?>
<root>
<child id="child1"/>
<child id="child1"/>
</root>
"""
root = test_case.assertXmlDocument(data_invalid)
# Document is invalid according to DTD (multiple child element)
with self.assertRaises(test_case.failureException):
test_case.assertXmlValidDTD(root, dtd)
示例3: test_assertXmlValidDTD_no_dtd
# 需要导入模块: from xmlunittest import XmlTestCase [as 别名]
# 或者: from xmlunittest.XmlTestCase import assertXmlValidDTD [as 别名]
def test_assertXmlValidDTD_no_dtd(self):
"""Asserts assertXmlValidDTD raises ValueError without any DTD."""
test_case = XmlTestCase(methodName='assertXmlValidDTD')
data = b"""<?xml version="1.0" encoding="utf-8"?>
<root>
<child id="child1"/>
</root>
"""
root = test_case.assertXmlDocument(data)
# No DTD: ValueError
with self.assertRaises(ValueError):
test_case.assertXmlValidDTD(root)
示例4: test_assertXmlValidDTD_filename
# 需要导入模块: from xmlunittest import XmlTestCase [as 别名]
# 或者: from xmlunittest.XmlTestCase import assertXmlValidDTD [as 别名]
def test_assertXmlValidDTD_filename(self):
"""Asserts assertXmlValidDTD accepts a filename as DTD."""
test_case = XmlTestCase(methodName='assertXmlValidDTD')
filename = 'test_assertXmlValidDTD_filename.dtd'
dtd = """<!ELEMENT root (child)>
<!ELEMENT child EMPTY>
<!ATTLIST child id ID #REQUIRED>
"""
with open(filename, 'w') as dtd_file:
dtd_file.write(dtd.encode('utf8'))
data = b"""<?xml version="1.0" encoding="utf-8"?>
<root>
<child id="child1"/>
</root>
"""
root = test_case.assertXmlDocument(data)
# Document is valid according to DTD
try:
test_case.assertXmlValidDTD(root, filename=filename)
except:
os.unlink(filename)
raise
data_invalid = b"""<?xml version="1.0" encoding="utf-8"?>
<root>
<child id="child1"/>
<child id="child1"/>
</root>
"""
root = test_case.assertXmlDocument(data_invalid)
try:
# Document is invalid according to DTD (multiple child element)
with self.assertRaises(test_case.failureException):
test_case.assertXmlValidDTD(root, filename=filename)
finally:
os.unlink(filename)