async def METHOD_NAME() -> None:
    # Parse command line arguments.
    parser = argparse.ArgumentParser(description=__doc__)
    engine_group = parser.add_mutually_exclusive_group(required=True)
    engine_group.add_argument("-u", "--uci",
        help="The UCI engine under test.")
    engine_group.add_argument("-x", "--xboard",
        help="The XBoard engine under test.")
    parser.add_argument("epd", nargs="+", type=argparse.FileType("r"),
        help="EPD test suite(s).")
    parser.add_argument("-v", "--variant", default="standard",
        help="Use a non-standard chess variant.")
    parser.add_argument("-t", "--threads", default=1, type=int,
        help="Threads for use by the UCI engine.")
    parser.add_argument("-m", "--movetime", default=1.0, type=float,
        help="Time to move in seconds.")
    parser.add_argument("-s", "--simple", dest="test_epd", action="store_const",
        default=test_epd_with_fractional_scores,
        const=test_epd,
        help="Run in simple mode without fractional scores.")
    parser.add_argument("-d", "--debug", action="store_true",
        help="Show debug logs.")
    args = parser.parse_args()
    # Configure logger.
    logging.basicConfig(level=logging.DEBUG if args.debug else logging.WARNING)
    # Find variant.
    VariantBoard = chess.variant.find_variant(args.variant)
    # Open and configure engine.
    engine: chess.engine.Protocol
    if args.uci:
        _, engine = await chess.engine.popen_uci(args.uci)
        if args.threads > 1:
            await engine.configure({"Threads": args.threads})
    else:
        _, engine = await chess.engine.popen_xboard(args.xboard)
        if args.threads > 1:
            await engine.configure({"cores": args.threads})
    # Run each test line.
    score = 0.0
    count = 0
    for epd in itertools.chain(*args.epd):
        # Skip comments and empty lines.
        epd = epd.strip()
        if not epd or epd.startswith("#") or epd.startswith("%"):
            print(epd.rstrip())
            continue
        # Run the actual test.
        score += await args.test_epd(engine, epd, VariantBoard, args.movetime)
        count += 1
    await engine.quit()
    print("-------------------------------")
    print(f"{score} / {count}")