예제 #1
0
def synopsis() -> cli_syntax.Synopsis:
    command_line = arg.CommandLine([
        arg.Single(arg.Multiplicity.ZERO_OR_MORE,
                   _OPTION_PLACEHOLDER_ARGUMENT),
        arg.Single(arg.Multiplicity.MANDATORY, TEST_CASE_FILE_ARGUMENT)
    ],
                                   prefix=program_info.PROGRAM_NAME)
    return cli_syntax.Synopsis(command_line, _TP.text(_DESCRIPTION_PARAGRAPH))
예제 #2
0
def synopsis_individual() -> cli_syntax.Synopsis:
    additional_arguments = [
        arg.Single(arg.Multiplicity.MANDATORY,
                   syntax_elements.SYMBOL_NAME_SYNTAX_ELEMENT.argument),
        arg.Single(arg.Multiplicity.OPTIONAL, _INDIVIDUAL_REFERENCES_OPTION),
    ]
    return cli_syntax.Synopsis(
        _command_line__case(additional_arguments),
        paragraphs=_TP.fnap(_DESCRIPTION_PARAGRAPHS_INDIVIDUAL),
        additional_command_lines=[_command_line__suite(additional_arguments)])
예제 #3
0
def synopsis() -> cli_syntax.Synopsis:
    command_line = arg.CommandLine([
        arg.Single(arg.Multiplicity.MANDATORY,
                   arg.Constant(common_opts.SUITE_COMMAND)),
        arg.Single(arg.Multiplicity.OPTIONAL, _REPORTER_OPTION),
        arg.Single(arg.Multiplicity.OPTIONAL, _ACTOR_OPTION),
        arg.Single(arg.Multiplicity.MANDATORY, _FILE_ARGUMENT),
    ],
                                   prefix=program_info.PROGRAM_NAME)
    return cli_syntax.Synopsis(command_line, _TP.text(_DESCRIPTION_PARAGRAPH))
예제 #4
0
    def _entities_help() -> List[cli_syntax.Synopsis]:
        def row(names: EntityTypeNames) -> List[docs.TableCell]:
            return [
                docs.text_cell(doc_format.syntax_text(names.identifier)),
                docs.text_cell(names.name.plural.capitalize()),
            ]

        entities_table = docs.plain_table(
            map(row, ALL_ENTITY_TYPES_IN_DISPLAY_ORDER))

        arguments = [
            arg.Single(arg.Multiplicity.MANDATORY, _c(clo.HELP)),
            arg.Single(arg.Multiplicity.MANDATORY, _n('ENTITY-TYPE')),
            arg.Single(arg.Multiplicity.OPTIONAL, _n('ENTITY-NAME'))
        ]
        single_line_description = 'Lists all entities of a type; or describes a given entity.'
        return [
            cli_syntax.Synopsis(arg.CommandLine(arguments),
                                docs.text(single_line_description),
                                [entities_table])
        ]
예제 #5
0
def synopsis_general() -> cli_syntax.Synopsis:
    command_line = _command_line__case(
        [arg.Single(arg.Multiplicity.ZERO_OR_MORE, SYMBOL_OPTION_ARGUMENT)])
    return cli_syntax.Synopsis(
        command_line, _TP.text(_SINGLE_LINE_DESCRIPTION_FOR_CLI_SYNTAX))
예제 #6
0
def synopsis_all() -> cli_syntax.Synopsis:
    return cli_syntax.Synopsis(
        _command_line__case([]),
        paragraphs=_TP.fnap(_DESCRIPTION_PARAGRAPHS_ALL),
        additional_command_lines=[_command_line__suite([])])
예제 #7
0
 def synopses(self) -> List[cli_syntax.Synopsis]:
     return [
         cli_syntax.Synopsis(command_line)
         for command_line in self.synopsis.command_lines
     ]
예제 #8
0
def _synopsis_for_args(argument_usages: Sequence[arg.ArgumentUsage],
                       single_line_description: str) -> cli_syntax.Synopsis:
    return cli_syntax.Synopsis(arg.CommandLine(argument_usages,
                                               prefix=program_info.PROGRAM_NAME),
                               docs.text(single_line_description))
예제 #9
0
def _synopsis(additional_arguments: list,
              single_line_description: str) -> cli_syntax.Synopsis:
    arguments = [_c(clo.HELP)] + additional_arguments
    return cli_syntax.Synopsis(
        arg.CommandLine(list(map(_single_mandatory_arg, arguments))),
        docs.text(single_line_description))