Exemplo n.º 1
0
def test_dumps_unknown_object():
    class Test:
        def __init__(self, **kwargs):
            self.kw = kwargs

        def __str__(self):
            return str(self.kw)

    obj = Test(foo=1, bar=2)
    assert json.dumps(obj) == json.dumps(str(obj))
Exemplo n.º 2
0
def build_menu(buttons, n_cols, header_buttons=None, footer_buttons=None):
    menu = [buttons[i:i + n_cols] for i in range(0, len(buttons), n_cols)]
    if header_buttons:
        menu.insert(0, header_buttons)
    if footer_buttons:
        menu.append(footer_buttons)
    return fast_json.dumps({"keyboard": menu})
    def format(self, record: logging.LogRecord):
        record_dict = MappingProxyType(record.__dict__)

        data = dict(errno=0 if not record.exc_info else 255)

        for key, value in self.FIELD_MAPPING.items():
            mapping, field_type = value

            v = record_dict.get(key)

            if not isinstance(v, field_type):
                v = field_type(v)

            data[mapping] = v

        for key in record_dict:
            if key in data or key[0] == "_":
                continue

            value = record_dict[key]

            if value is None:
                continue

            data[key] = value

        for idx, item in enumerate(data.pop('args', [])):
            data['argument_%d' % idx] = str(item)

        payload = {
            'fields': data,
            'msg': record.getMessage(),
            'level': self.LEVELS[record.levelno],
        }

        if isinstance(record.msg, dict):
            data['message_raw'] = ''
            payload['msg'] = record.msg

        if self.datefmt:
            payload['timestamp'] = self.formatTime(record, self.datefmt)

        if record.exc_info:
            payload['stackTrace'] = "\n".join(
                traceback.format_exception(*record.exc_info))

        return fast_json.dumps(payload, ensure_ascii=False)
Exemplo n.º 4
0
def remove_keyboard():
    return fast_json.dumps({"remove_keyboard": True})
Exemplo n.º 5
0
def test_dumps(obj, json_string):
    assert json.dumps(obj) == json_string
Exemplo n.º 6
0
def test_dumps_date():
    data = datetime.now()
    assert json.dumps(data) == json.dumps(data.isoformat())
Exemplo n.º 7
0
def test_dumps_bytes():
    data = b'\x00\x01'
    assert json.dumps(data) == json.dumps(base64.b64encode(data).decode())