diff options
Diffstat (limited to 'tests/yaml/yaml.py')
-rw-r--r-- | tests/yaml/yaml.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/yaml/yaml.py b/tests/yaml/yaml.py index ec632674f..e972f89f4 100644 --- a/tests/yaml/yaml.py +++ b/tests/yaml/yaml.py @@ -163,6 +163,28 @@ def test_composited_array_append_provenance(datafiles): @pytest.mark.datafiles(os.path.join(DATA_DIR)) +def test_validate_node(datafiles): + + valid = os.path.join(datafiles.dirname, + datafiles.basename, + 'basics.yaml') + invalid = os.path.join(datafiles.dirname, + datafiles.basename, + 'invalid.yaml') + + base = _yaml.load(valid) + + _yaml.validate_node(base, ['kind', 'description', 'moods', 'children', 'extra']) + + base = _yaml.load(invalid) + + with pytest.raises(LoadError) as exc: + _yaml.validate_node(base, ['kind', 'description', 'moods', 'children', 'extra']) + + assert (exc.value.reason == LoadErrorReason.INVALID_DATA) + + +@pytest.mark.datafiles(os.path.join(DATA_DIR)) def test_node_get(datafiles): filename = os.path.join(datafiles.dirname, |