diff options
| author | Stefan Behnel <stefan_ml@behnel.de> | 2019-05-06 22:29:22 +0200 |
|---|---|---|
| committer | Stefan Behnel <stefan_ml@behnel.de> | 2019-05-06 22:29:22 +0200 |
| commit | bb2a4fd588d1cdf5ecd9badd618505d578ea2942 (patch) | |
| tree | 626238d4951f109b6dea39641f20540af322d8dd /src/lxml/tests | |
| parent | 3f0db5d57940eebd418fe86bcbdad39ffe23211d (diff) | |
| download | python-lxml-bb2a4fd588d1cdf5ecd9badd618505d578ea2942.tar.gz | |
LP#1827833: Fix .rnc parsing support with recent versions of rnc2rng.
Diffstat (limited to 'src/lxml/tests')
| -rw-r--r-- | src/lxml/tests/test_relaxng.py | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/lxml/tests/test_relaxng.py b/src/lxml/tests/test_relaxng.py index 62811c95..3eae4b23 100644 --- a/src/lxml/tests/test_relaxng.py +++ b/src/lxml/tests/test_relaxng.py @@ -218,6 +218,7 @@ class ETreeRelaxNGTestCase(HelperTestCase): self.assertTrue(schema.validate(b_tree)) self.assertFalse(schema.error_log.filter_from_errors()) + class RelaxNGCompactTestCase(HelperTestCase): pytestmark = skipif('rnc2rng is None') @@ -230,17 +231,21 @@ class RelaxNGCompactTestCase(HelperTestCase): self.assertFalse(schema.validate(tree_invalid)) def test_relaxng_compact_file_obj(self): - f = open(fileInTestDir('test.rnc'), 'rb') - try: + with open(fileInTestDir('test.rnc'), 'r') as f: schema = etree.RelaxNG(file=f) - finally: - f.close() + + tree_valid = self.parse('<a><b>B</b><c>C</c></a>') + tree_invalid = self.parse('<a><b></b></a>') + self.assertTrue(schema.validate(tree_valid)) + self.assertFalse(schema.validate(tree_invalid)) def test_relaxng_compact_str(self): tree_valid = self.parse('<a><b>B</b></a>') + tree_invalid = self.parse('<a><b>X</b></a>') rnc_str = 'element a { element b { "B" } }' schema = etree.RelaxNG.from_rnc_string(rnc_str) self.assertTrue(schema.validate(tree_valid)) + self.assertFalse(schema.validate(tree_invalid)) def test_suite(): |
