diff options
author | Christian Breunig <christian@breunig.cc> | 2023-09-07 17:06:42 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-09-07 17:06:42 +0200 |
commit | 73ee99fac6c640a169f85723deefb0c2ece201ff (patch) | |
tree | d394dd67876f448aca541e2915f618091c219b0a /smoketest | |
parent | 05dd8edcae53c8c2ca318e3adc8900c1615569db (diff) | |
parent | 12440ea1af8e60482a6a91c1cb04dcb86d7f4a68 (diff) | |
download | vyos-1x-73ee99fac6c640a169f85723deefb0c2ece201ff.tar.gz vyos-1x-73ee99fac6c640a169f85723deefb0c2ece201ff.zip |
Merge pull request #2216 from jestabro/ext-dependency
T5412: Add support for extending config-mode dependencies in add-on packages
Diffstat (limited to 'smoketest')
-rwxr-xr-x | smoketest/scripts/cli/test_dependency_graph.py | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/smoketest/scripts/cli/test_dependency_graph.py b/smoketest/scripts/cli/test_dependency_graph.py deleted file mode 100755 index 45a40acc4..000000000 --- a/smoketest/scripts/cli/test_dependency_graph.py +++ /dev/null @@ -1,54 +0,0 @@ -#!/usr/bin/env python3 -# -# Copyright (C) 2022 VyOS maintainers and contributors -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 or later as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -import json -import unittest -from graphlib import TopologicalSorter, CycleError - -DEP_FILE = '/usr/share/vyos/config-mode-dependencies.json' - -def graph_from_dict(d): - g = {} - for k in list(d): - g[k] = set() - # add the dependencies for every sub-case; should there be cases - # that are mutally exclusive in the future, the graphs will be - # distinguished - for el in list(d[k]): - g[k] |= set(d[k][el]) - return g - -class TestDependencyGraph(unittest.TestCase): - def setUp(self): - with open(DEP_FILE) as f: - dd = json.load(f) - self.dependency_graph = graph_from_dict(dd) - - def test_cycles(self): - ts = TopologicalSorter(self.dependency_graph) - out = None - try: - # get node iterator - order = ts.static_order() - # try iteration - _ = [*order] - except CycleError as e: - out = e.args - - self.assertIsNone(out) - -if __name__ == '__main__': - unittest.main(verbosity=2) |