def test_apps_attributes(self): i = 1 for a in Applications.all(): if ("name" not in a) or len(a) <= 1: self.fail("Missing name in definition #" + str(i)) if "type" in a and a.type not in Applications.TYPES.values(): self.fail("Unknown type in application: " + a.type) n = 6 if "rename" in a else 5 self.assertEqual(len(a), n, "Application {0} has unsupported attribute".format(a.name)) i += 1
def test_apps_attributes(self): i = 1 for a in Applications.all(): if ("name" not in a) or len(a) <= 1: self.fail("Missing name in definition #" + str(i)) if "type" in a and a["type"] not in Applications.TYPES.values(): self.fail("Unknown type in application: " + a["name"]) allowed_keys = ["name", "type", "helper", "rename"] for key in a.keys(): self.assertIn(key, allowed_keys, "Unsupported attribute '{0}' in application: {1}" .format(key, a["name"])) i += 1
def render_system(self): uptime = datetime.now() - datetime.fromtimestamp(System.boot_time()) uptime = str(uptime).split('.')[0] users = set([user.name for user in psutil.get_users()]) package_managers = System.package_manager().names() view = SystemView() view.assign('python', System.python_version()) view.assign('distribution', System.distribution()) view.assign('package_managers', package_managers) view.assign('init', System.init_system()) view.assign('uptime', uptime) view.assign('user', System.user()) view.assign('users', users) view.assign('version', __version__) view.assign('rules_count', len(Rules.all())) view.assign('applications_count', len(Applications.all())) view.render()
def render_applications(self): view = ApplicationsView() view.assign('applications', Applications.all()) view.render()
def test_apps_types(self): self.assertIsInstance(Applications.all(), ApplicationsCollection)
def test_apps_duplicity(self): apps = Applications.all() for a in apps: if self._count(a.name, apps) > 1: self.fail("Duplicate definitions for: " + a.name)
def test_application_processes(self): application = Applications.all()[0] self.assertIsInstance(application.instances, ProcessesCollection)