HEX
Server: Apache/2.4.65 (Ubuntu)
System: Linux ielts-store-v2 6.8.0-1036-gcp #38~22.04.1-Ubuntu SMP Thu Aug 14 01:19:18 UTC 2025 x86_64
User: root (0)
PHP: 7.2.34-54+ubuntu20.04.1+deb.sury.org+1
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,
Upload Files
File: //snap/google-cloud-cli/current/platform/gsutil/third_party/argcomplete/test/prog
#!/usr/bin/env python
# PYTHON_ARGCOMPLETE_OK
"""Test script used by test.TestBash."""

import argparse
import os
import sys

import argcomplete


def complete_cont(*args, **kwargs):
    return ["foo=", "bar/", "baz:"]


def check_environ(*args, **kwargs):
    assert "COMP_TYPE" in os.environ, "wrapper should have set COMP_TYPE"
    assert len(sys.argv) == 1, "should never be completed with arguments"
    return ["ok"]


def print_output(*args, **kwargs):
    print("PYTHON_ARGCOMPLETE_STDOUT")
    print("PYTHON_ARGCOMPLETE_STDERR", file=sys.stderr)
    return ["foo"]


def get_comp_point(*args, **kwargs):
    return [os.environ["COMP_POINT"]]


parser = argparse.ArgumentParser()
subparsers = parser.add_subparsers()
subparsers.add_parser("basic", help="basic help\nnext line of help").add_argument("arg", choices=["foo", "bar", "baz"])
subparsers.add_parser("space").add_argument("arg", choices=["foo bar", "baz"])
subparsers.add_parser("cont").add_argument("arg").completer = complete_cont
subparsers.add_parser("spec").add_argument("arg", choices=["d$e$f", "d$e$g", "x!x", r"y\y"])
subparsers.add_parser("quote").add_argument("arg", choices=["1'1", '2"2'])
subparsers.add_parser("break", help="break help").add_argument("arg", choices=["a:b:c", "a:b:d"])
subparsers.add_parser("env").add_argument("arg").completer = check_environ
subparsers.add_parser("debug").add_argument("arg").completer = print_output
subparsers.add_parser("point", add_help=False).add_argument("arg", nargs="*").completer = get_comp_point


if "POINT" in os.environ:
    argcomplete.autocomplete(parser, validator=lambda x, y: True)
else:
    argcomplete.autocomplete(parser)

args = parser.parse_args()

if "POINT" in os.environ:
    print(args.arg[-1])
else:
    print(args.arg)