""" Part of the bsie test suite. A copy of the license is provided with the project. Author: Matthias Baumgartner, 2022 """ # imports import argparse import io import os import sys import unittest # objects to test from bsie.apps.info import main ## code ## class TestIndex(unittest.TestCase): def test_predicates(self): stdout, sys.stdout = sys.stdout, io.StringIO() # show predicates infos main(['predicates']) outbuf, sys.stdout = sys.stdout, stdout # verify output self.assertSetEqual({pred for pred in outbuf.getvalue().split('\n') if pred != ''}, { 'http://bsfs.ai/schema/Entity#author', 'http://bsfs.ai/schema/Predicate', 'http://bsfs.ai/schema/Entity#filename', 'http://bsfs.ai/schema/Entity#filesize', }) def test_invalid(self): self.assertRaises(SystemExit, main, ['foobar']) ## main ## if __name__ == '__main__': unittest.main() ## EOF ##