summaryrefslogtreecommitdiffstats
path: root/test/lib/ansible_test/_internal/cli/commands/coverage/analyze/targets/__init__.py
blob: 7b6ea3ebf866eff18a89b3ea3b0b598ed99b0a56 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
"""Command line parsing for all `coverage analyze targets` commands."""
from __future__ import annotations

import argparse

from .....environments import (
    CompositeActionCompletionFinder,
)

from .combine import (
    do_combine,
)

from .expand import (
    do_expand,
)

from .filter import (
    do_filter,
)

from .generate import (
    do_generate,
)

from .missing import (
    do_missing,
)


def do_targets(
    subparsers,
    parent: argparse.ArgumentParser,
    completer: CompositeActionCompletionFinder,
) -> None:
    """Command line parsing for all `coverage analyze targets` commands."""
    targets = subparsers.add_parser(
        'targets',
        help='analyze integration test target coverage',
    )

    targets_subparsers = targets.add_subparsers(metavar='COMMAND', required=True)

    do_generate(targets_subparsers, parent, completer)
    do_expand(targets_subparsers, parent, completer)
    do_filter(targets_subparsers, parent, completer)
    do_combine(targets_subparsers, parent, completer)
    do_missing(targets_subparsers, parent, completer)