def tearDownEnv(cls): """ Cleanup common facilities used for testing this TestCase: - restores the default PATH and HOME variables - removes the temporal folder """ if flags.EVENTS_ENABLED: events_client.shutdown() cls._server.shutdown() os.environ["PATH"] = cls.old_path os.environ["HOME"] = cls.old_home if cls.old_xdg_config is not None: os.environ["XDG_CONFIG_HOME"] = cls.old_xdg_config # safety check! please do not wipe my home... # XXX needs to adapt to non-linuces leap_assert( cls.tempdir.startswith('/tmp/leap_tests-') or (cls.tempdir.startswith('/tmp/') and cls.tempdir.startswith(tempfile.gettempdir()) and 'leap_tests-' in cls.tempdir) or cls.tempdir.startswith('/var/folder'), "beware! tried to remove a dir which does not " "live in temporal folder!") shutil.rmtree(cls.tempdir)
logging.basicConfig(level=logging.DEBUG) if args.command == "server": # run server server.ensure_server(emit_addr=args.emit_addr, reg_addr=args.reg_addr) from twisted.internet import reactor reactor.run() elif args.command == "client": if args.reg: event = getattr(catalog, args.reg) # run client and register to a signal register(event, _echo) # make sure we stop on CTRL+C import signal signal.signal( signal.SIGINT, lambda sig, frame: client.shutdown()) # wait until client thread dies import time while client.EventsClientThread.instance().is_alive(): time.sleep(0.1) if args.emit: # run client and emit a signal event = getattr(catalog, args.emit) emit(event, args.content) client.shutdown() elif args.command == "txclient": from leap.common.events import txclient register = txclient.register emit = txclient.emit if args.reg: event = getattr(catalog, args.reg)