Ejemplo n.º 1
0
def run_goal(
    targets: List[MockTarget],
    *,
    show_documented: bool = False,
    show_provides: bool = False,
    provides_columns: Optional[str] = None,
) -> Tuple[str, str]:
    console = MockConsole(use_colors=False)
    run_rule_with_mocks(
        list_targets,
        rule_args=[
            Addresses(tgt.address for tgt in targets),
            create_goal_subsystem(
                ListSubsystem,
                sep="\\n",
                output_file=None,
                documented=show_documented,
                provides=show_provides,
                provides_columns=provides_columns or "address,artifact_id",
            ),
            console,
        ],
        mock_gets=[
            MockGet(
                product_type=UnexpandedTargets,
                subject_type=Addresses,
                mock=lambda _: UnexpandedTargets(targets),
            )
        ],
    )
    return cast(str,
                console.stdout.getvalue()), cast(str,
                                                 console.stderr.getvalue())
Ejemplo n.º 2
0
def run_goal(targets: list[MockTarget],
             *,
             show_documented: bool = False) -> tuple[str, str]:
    with mock_console(create_options_bootstrapper()) as (console,
                                                         stdio_reader):
        run_rule_with_mocks(
            list_targets,
            rule_args=[
                Addresses(tgt.address for tgt in targets),
                create_goal_subsystem(
                    ListSubsystem,
                    sep="\\n",
                    output_file=None,
                    documented=show_documented,
                ),
                console,
            ],
            mock_gets=[
                MockGet(
                    output_type=UnexpandedTargets,
                    input_type=Addresses,
                    mock=lambda _: UnexpandedTargets(targets),
                )
            ],
        )
        return stdio_reader.get_stdout(), stdio_reader.get_stderr()
Ejemplo n.º 3
0
async def resolve_unexpanded_targets(
        addresses: Addresses) -> UnexpandedTargets:
    wrapped_targets = await MultiGet(
        Get(WrappedTarget,
            WrappedTargetRequest(a, description_of_origin="TODO(#14468)"))
        for a in addresses)
    return UnexpandedTargets(wrapped_target.target
                             for wrapped_target in wrapped_targets)
Ejemplo n.º 4
0
 async def targets(self,
                   info: Info,
                   query: Optional[TargetsQuery] = None) -> List[Target]:
     req = GraphQLContext.request_state_from_info(info).product_request
     specs = (specs_parser.parse_specs(
         query.specs,
         convert_dir_literal_to_address_literal=False,
         description_of_origin="GraphQL targets `query.specs`",
     ) if query is not None and query.specs else None)
     if specs:
         targets = req(UnexpandedTargets, (specs, ))
     else:
         targets = UnexpandedTargets(req(AllUnexpandedTargets))
     all_data = req(TargetDatas, (targets, ))
     return [
         Target.from_data(data)
         for data in TargetsQuery.filter(query, all_data)
     ]
Ejemplo n.º 5
0
async def resolve_unexpanded_targets(
        addresses: Addresses) -> UnexpandedTargets:
    wrapped_targets = await MultiGet(
        Get(WrappedTarget, Address, a) for a in addresses)
    return UnexpandedTargets(wrapped_target.target
                             for wrapped_target in wrapped_targets)