diff options
Diffstat (limited to 'tests/format/dependencies.py')
-rw-r--r-- | tests/format/dependencies.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/tests/format/dependencies.py b/tests/format/dependencies.py index 15b6e1f4a..e8c50d3bc 100644 --- a/tests/format/dependencies.py +++ b/tests/format/dependencies.py @@ -218,3 +218,26 @@ def test_no_recurse(cli, datafiles): 'dep-two.bst', 'target.bst', ] + + +@pytest.mark.datafiles(DATA_DIR) +@pytest.mark.parametrize(("element", "asserts"), [ + ('build-runtime', False), + ('build-build', True), + ('build-all', True), + ('runtime-runtime', True), + ('runtime-all', True), + ('all-all', True), +]) +def test_duplicate_deps(cli, datafiles, element, asserts): + project = os.path.join(str(datafiles), 'dependencies3') + + result = cli.run(project=project, args=['show', '{}.bst'.format(element)]) + + if asserts: + result.assert_main_error(ErrorDomain.LOAD, + LoadErrorReason.DUPLICATE_DEPENDENCY) + assert '[line 10 column 2]' in result.stderr + assert '[line 8 column 2]' in result.stderr + else: + result.assert_success() |