def obj_to_dict()

in test-runner/dump_object.py [0:0]


def obj_to_dict(obj, object_name=None):
    if object_name == "connection_string":
        return connection_string.obfuscate_connection_string(obj)
        return "REDACTED"
    elif isinstance(obj, str):
        if "cert" in object_name or "x509" in object_name or "_key" in object_name:
            return "REDACTED"
        else:
            return obj
    elif isinstance(obj, int) or isinstance(obj, bool):
        return obj
    elif isinstance(obj, list):
        return str([x for x in obj if not callable(x) and not str(x).startswith("__")])
    elif isinstance(obj, object):
        dict = {}
        for child_name in dir(obj):
            child = getattr(obj, child_name, None)
            if _can_serialize(child_name, child):
                dict[child_name] = obj_to_dict(child, child_name)
        return dict
    else:
        assert False