Best Python code snippet using autotest_python
rpc_handler.py
Source:rpc_handler.py  
...16                   r'modify_.*',17                   r'create.*']18FULL_REGEXP = '(' + '|'.join(LOGGING_REGEXPS) + ')'19COMPILED_REGEXP = re.compile(FULL_REGEXP)20def should_log_message(name):21    return COMPILED_REGEXP.match(name)22class RpcMethodHolder(object):23    'Dummy class to hold RPC interface methods as attributes.'24class RpcHandler(object):25    def __init__(self, rpc_interface_modules, document_module=None):26        self._rpc_methods = RpcMethodHolder()27        self._dispatcher = serviceHandler.ServiceHandler(self._rpc_methods)28        # store all methods from interface modules29        for module in rpc_interface_modules:30            self._grab_methods_from(module)31        # get documentation for rpc_interface we can send back to the32        # user33        if document_module is None:34            document_module = rpc_interface_modules[0]35        self.html_doc = pydoc.html.document(document_module)36    def get_rpc_documentation(self):37        return rpc_utils.raw_http_response(self.html_doc)38    def raw_request_data(self, request):39        if request.method == 'POST':40            return request.raw_post_data41        return urllib.unquote(request.META['QUERY_STRING'])42    def execute_request(self, json_request):43        return self._dispatcher.handleRequest(json_request)44    def decode_request(self, json_request):45        return self._dispatcher.translateRequest(json_request)46    def dispatch_request(self, decoded_request):47        return self._dispatcher.dispatchRequest(decoded_request)48    def log_request(self, user, decoded_request, decoded_result,49                    log_all=False):50        if log_all or should_log_message(decoded_request['method']):51            msg = '%s:%s %s' % (decoded_request['method'], user,52                                decoded_request['params'])53            if decoded_result['err']:54                msg += '\n' + decoded_result['err_traceback']55                rpcserver_logging.rpc_logger.error(msg)56            else:57                rpcserver_logging.rpc_logger.info(msg)58    def encode_result(self, results):59        return self._dispatcher.translateResult(results)60    def handle_rpc_request(self, request):61        user = models.User.current_user()62        json_request = self.raw_request_data(request)63        decoded_request = self.decode_request(json_request)64        decoded_result = self.dispatch_request(decoded_request)...logbot.py
Source:logbot.py  
...9MAX_RETRIES = 510class LogBot(Bot):11    def __init__(self, slackconnection, botname):12        Bot.__init__(self, slackconnection, botname)13    def should_log_message(self, message):14        return True15    def append(self, chan, text, when):16        try:17            os.makedirs(LOG_DIR)18        except OSError:19            pass20        now_str = time.strftime(LOG_TIME_FORMAT, time.localtime(when))21        fname = LOG_DIR + '/' + self.lookup_user(chan) + '.txt'22        tries = MAX_RETRIES23        while True:24            try:25                with open(fname, 'a') as f:26                    print >>f, "{}: {}".format(now_str, text)27                if tries != MAX_RETRIES:28                    print >>sys.stderr, "retry success"29                break30            except IOError as e:31                if tries > 0:32                    delay = 533                    print >>sys.stderr, "couldn't save message: %s, retrying in %d..." % (e, delay)34                    time.sleep(delay)35                    tries -= 136                else:37                    print >>sys.stderr, "\7couldn't save message: %s, giving up" % e38    def replace_text(self, text):39        def user_replace(match):40            grp = match.group()41            resolved = self.lookup_user(grp)42            if resolved != grp:43                return '@' + resolved44            return resolved45        return re.sub(r"<@U[A-Z0-9]+>", user_replace, text)46    def handle_message(self, message):47        if not self.should_log_message(message):48            return49        chan = message.channel.name50        user = self.lookup_user(message.user)51        text = self.replace_text(message.text)52        if message.thread_ts:53            self.append(54                    chan,55                    "thread {}, {}: {}".format(56                        self.format_slack_time(LOG_TIME_FORMAT, float(message.thread_ts)),57                        user,58                        text59                    ),60                    message.when)61        else:...Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!
