def test_options(): options = dict() for method in chepy: try: attributes = getattr(Chepy, method) if not method.startswith("_") and not isinstance(attributes, property): args = inspect.getfullargspec(attributes).args parsed_doc = _parse_doc(attributes.__doc__) if len(args) == 1: options[method] = { "options": list( map(lambda d: {"flag": d, "meta": ""}, args[1:]) ), "meta": parsed_doc.short_description, "returns": parsed_doc.returns.type_name, } else: options[method] = { "options": list( map( lambda d: { "flag": d[1], "meta": parsed_doc.params[d[0]].description, }, enumerate(args[1:]), ) ), "meta": parsed_doc.short_description, "returns": parsed_doc.returns.type_name, } except: print("Error in method", method) raise return options
def get_cli_options(): options = dict() for method in functions_cli(): try: attributes = getattr(module, method) if not method.startswith("_"): args = inspect.getfullargspec(attributes).args parsed_doc = _parse_doc(attributes.__doc__) if len(args) == 1: options[method] = { "options": list( map(lambda d: {"flag": d, "meta": ""}, args[1:]) ), "meta": parsed_doc.short_description, } else: options[method] = { "options": list( map( lambda d: { "flag": d[1], "meta": parsed_doc.params[d[0]].description, }, enumerate(args[1:]), ) ), "meta": parsed_doc.short_description, } except: raise return options
def get_options(): global errors options = dict() for method in chepy: try: attributes = getattr(Chepy, method) if not method.startswith("_") and not isinstance( attributes, property): args = inspect.getfullargspec(attributes).args parsed_doc = _parse_doc(attributes.__doc__) if len(args) == 1: options[method] = { "options": list(map(lambda d: { "flag": d, "meta": "" }, args[1:])), "meta": parsed_doc.short_description, "returns": parsed_doc.returns.type_name, } else: options[method] = { "options": list( map( lambda d: { "flag": d[1], "meta": parsed_doc.params[d[0]]. description, }, enumerate(args[1:]), )), "meta": parsed_doc.short_description, "returns": parsed_doc.returns.type_name, } except: e_type, e_msg, e_traceback = sys.exc_info() errors.append( (e_type.__name__, "Error parsing options in:", method)) continue return options