def print_helper(self, app, args): if app.instances: manager = System.package_manager() package = manager.provided_by(app) if package: package.load_info(System.package_manager()) tr = Tracer(System.package_manager(), Rules, Applications) tr.now = self.args.now if self.packages: tr.specified_packages = self.packages try: affected_by = tr.trace_application(app) except AccessDenied: affected_by = _("You don't have enough permissions") affects = self._affects(app, affected_by) view = HelperView() view.assign("args", args) view.assign("processes", app.instances) view.assign("application", app) view.assign("package", package) view.assign("affected_by", affected_by) view.assign("affects", affects) view.render() else: print(_("Application called {0} is not running").format(app.name))
def print_helper(self, app_name, args): processes = Applications.find(app_name).instances if processes: manager = System.package_manager() package = manager.provided_by(app_name) if package: package.load_info(System.package_manager()) tr = Tracer(System.package_manager(), Rules, Applications) tr.now = self.args.now if self.packages: tr.specified_packages = self.packages try: affected_by = tr.trace_application(app_name) except AccessDenied: affected_by = _("You don't have enough permissions") app = Applications.find(app_name) affects = self._affects(app, affected_by) view = HelperView() view.assign("args", args) view.assign("processes", processes) view.assign("application", app) view.assign("package", package) view.assign("affected_by", affected_by) view.assign("affects", affects) view.render() else: print(_("Application called {0} is not running").format(app_name))
class TestRules(unittest.TestCase): def setUp(self): self.tracer = Tracer(PackageManagerMock(), Rules, Applications, memory=dump_memory_mock) self.tracer.timestamp = 5555 # Sure, it should be a UNIX timestamp value Application.processes_factory = ProcessesMock def test_trace_affected(self): affected = self.tracer.trace_affected() self.assertSetEqual( set(affected), set([Applications.find("baz"), Applications.find("qux")])) self.assertIsInstance(affected, ApplicationsCollection) def test_trace_application(self): affected = self.tracer.trace_application(Applications.find("baz"), AffectedProcessMock) self.assertIsInstance(affected, AffectedProcessesCollection) self.assertEqual(len(affected), 1) process = affected[0] self.assertIsInstance(process, AffectedProcess) self.assertEqual(process.pid, 4) # pid of "baz" in our mock
class TestRules(unittest.TestCase): def setUp(self): self.tracer = Tracer(PackageManagerMock(), Rules, Applications, memory=dump_memory_mock) self.tracer.timestamp = 5555 # Sure, it should be a UNIX timestamp value Application.processes_factory = ProcessesMock def test_trace_affected(self): affected = self.tracer.trace_affected() self.assertSetEqual(set(affected), set([Applications.find("baz"), Applications.find("qux")])) self.assertIsInstance(affected, ApplicationsCollection) def test_trace_application(self): affected = self.tracer.trace_application("baz", AffectedProcessMock) self.assertIsInstance(affected, AffectedProcessesCollection) self.assertEqual(len(affected), 1) process = affected[0] self.assertIsInstance(process, AffectedProcess) self.assertEqual(process.pid, 4) # pid of "baz" in our mock