summaryrefslogtreecommitdiff
path: root/test/polkitbackend/polkitbackendjsauthoritytest-wrapper.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/polkitbackend/polkitbackendjsauthoritytest-wrapper.py')
-rwxr-xr-xtest/polkitbackend/polkitbackendjsauthoritytest-wrapper.py65
1 files changed, 65 insertions, 0 deletions
diff --git a/test/polkitbackend/polkitbackendjsauthoritytest-wrapper.py b/test/polkitbackend/polkitbackendjsauthoritytest-wrapper.py
new file mode 100755
index 0000000..2a4e160
--- /dev/null
+++ b/test/polkitbackend/polkitbackendjsauthoritytest-wrapper.py
@@ -0,0 +1,65 @@
+#!/usr/bin/python3
+
+# This program is free software; you can redistribute it and/or modify it under
+# the terms of the GNU Lesser General Public License as published by the Free
+# Software Foundation; either version 3 of the License, or (at your option) any
+# later version. See http://www.gnu.org/copyleft/lgpl.html for the full text
+# of the license.
+
+__author__ = 'Bastien Nocera'
+__email__ = 'hadess@hadess.net'
+__copyright__ = '(c) 2020 Red Hat Inc.'
+__license__ = 'LGPL 3+'
+
+import unittest
+import sys
+import subprocess
+import dbus
+import dbus.mainloop.glib
+import dbusmock
+import os
+import time
+
+dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)
+
+class TestPolkitBackendJsAuthority(dbusmock.DBusTestCase):
+ '''Test polkitbackendjsauthoritytest'''
+
+ @classmethod
+ def setUpClass(klass):
+ klass.start_system_bus()
+
+ klass.top_build_dir = '../../'
+ if 'TOP_BUILD_DIR' in os.environ:
+ klass.top_build_dir = os.environ['TOP_BUILD_DIR']
+ klass.mocklibc_path = klass.top_build_dir + '/test/mocklibc/bin/mocklibc'
+ assert(os.path.exists(klass.mocklibc_path))
+ print ('Top build dir: %s' % klass.top_build_dir)
+
+ klass.top_src_dir = os.path.dirname(os.path.realpath(__file__)) + '/../../'
+ if 'TOP_SRC_DIR' in os.environ:
+ klass.top_src_dir = os.environ['TOP_SRC_DIR']
+ print ('Top source dir: %s' % klass.top_src_dir)
+
+ os.environ['POLKIT_TEST_DATA'] = klass.top_src_dir + '/test/data'
+ print ('Polkit test data dir: %s' % os.environ['POLKIT_TEST_DATA'])
+
+ os.environ['MOCK_PASSWD'] = klass.top_src_dir + '/test/data/etc/passwd'
+ print ('Mock password file: %s' % os.environ['MOCK_PASSWD'])
+ os.environ['MOCK_GROUP'] = klass.top_src_dir + '/test/data/etc/group'
+ print ('Mock group file: %s' % os.environ['MOCK_GROUP'])
+ os.environ['MOCK_NETGROUP'] = klass.top_src_dir + '/test/data/etc/netgroup'
+ print ('Mock netgroup file: %s' % os.environ['MOCK_NETGROUP'])
+
+ def test_polkitbackendjsauthoritytest(self):
+ # Add '; exit 0' at the end of the cmd line if launching fails and you
+ # want to capture the error output
+ out = subprocess.check_output(self.mocklibc_path + ' ' + self.top_build_dir + '/test/polkitbackend/polkitbackendjsauthoritytest',
+ stderr=subprocess.STDOUT,
+ shell=True,
+ universal_newlines=True)
+ print(out)
+
+if __name__ == '__main__':
+ # avoid writing to stderr
+ unittest.main(testRunner=unittest.TextTestRunner(stream=sys.stdout, verbosity=2))