def METHOD_NAME(localCFG):
    global output, opts, args, result
    args = []
    output = []
    localCFG.setUsageMessage("\n".join([doc_description, "\n".join(doc_blocks)]))
    localCFG.registerCmdOpt("O:", "Option=", "my option", action)
    localCFG.registerCmdOpt("A", "AnotherOpt", "my another option", action)
    localCFG.registerCmdOpt("N", "NoActionOp", "my noaction option")
    localCFG.showHelp()
    optBlock = "\nOptions:\n  %s" % "\n  ".join(
        [
            "-O  --Option <value>         : my option",
            "-A  --AnotherOpt             : my another option",
            "-N  --NoActionOp             : my noaction option",
        ]
    )
    assert optBlock in "\n".join(output)
    # Check action result
    for opts, fn_res in [
        ([("-O", "y")], "y"),
        ([("--Option", "y")], "y"),
        ([("-A", None)], "no"),
        ([("--AnotherOpt", None)], "no"),
        ([("-N", None)], None),
    ]:
        result = None
        localCFG.isParsed = False
        localCFG.initialized = False
        assert localCFG.loadUserData() == S_OK()
        assert result == fn_res
        assert localCFG.getUnprocessedSwitches() == ([("N", None)] if opts[0] == ("-N", None) else [])