コード例 #1
0
    def test_options_parse_scoped(self):
        options_bootstrapper = self._ob(
            args=(
                "./pants",
                "-ldebug",
                "--backend-packages=pants.backend.python",
                "binary",
                "src/python::",
            ),
            env=dict(PANTS_PANTSD="True", PANTS_BUILD_IGNORE='["ignoreme/"]'),
        )

        global_options_params = Params(Scope(str(GLOBAL_SCOPE)),
                                       options_bootstrapper)
        python_setup_options_params = Params(Scope(str("python-setup")),
                                             options_bootstrapper)
        global_options, python_setup_options = self.scheduler.product_request(
            ScopedOptions,
            [global_options_params, python_setup_options_params],
        )

        self.assertEqual(global_options.options.level, LogLevel.DEBUG)
        self.assertEqual(global_options.options.pantsd, True)
        self.assertEqual(global_options.options.build_ignore, ["ignoreme/"])

        self.assertEqual(python_setup_options.options.platforms, ["current"])
コード例 #2
0
    def test_options_parse_scoped(self):
        options_bootstrapper = self._ob(
            args=[
                './pants', '-ldebug', '--python-setup-wheel-version=3.13.37',
                'binary', 'src/python::'
            ],
            env=dict(PANTS_ENABLE_PANTSD='True',
                     PANTS_BINARIES_BASEURLS='["https://bins.com"]'),
        )

        global_options_params = Params(Scope(str(GLOBAL_SCOPE)),
                                       options_bootstrapper)
        python_setup_options_params = Params(Scope(str('python-setup')),
                                             options_bootstrapper)
        global_options, python_setup_options = self.scheduler.product_request(
            ScopedOptions,
            [global_options_params, python_setup_options_params],
        )

        self.assertEqual(global_options.options.level, 'debug')
        self.assertEqual(global_options.options.enable_pantsd, True)
        self.assertEqual(global_options.options.binaries_baseurls,
                         ['https://bins.com'])

        self.assertEqual(python_setup_options.options.wheel_version, '3.13.37')
コード例 #3
0
def test_options_parse_scoped(rule_runner: RuleRunner) -> None:
    rule_runner.set_options(
        ["-ldebug"], env=dict(PANTS_PANTSD="True", PANTS_BUILD_IGNORE='["ignoreme/"]')
    )
    global_options = rule_runner.request(ScopedOptions, [Scope(GLOBAL_SCOPE)])
    python_setup_options = rule_runner.request(ScopedOptions, [Scope("python-setup")])

    assert global_options.options.level == LogLevel.DEBUG
    assert global_options.options.pantsd is True
    assert global_options.options.build_ignore == ["ignoreme/"]
    assert python_setup_options.options.platforms == ["current"]
コード例 #4
0
def test_options_parse_scoped(rule_runner: RuleRunner) -> None:
    rule_runner.set_options(
        ["-ldebug"], env=dict(PANTS_PANTSD="True", PANTS_BUILD_IGNORE='["ignoreme/"]')
    )
    global_options = rule_runner.request(ScopedOptions, [Scope(GLOBAL_SCOPE)])
    python_repos_options = rule_runner.request(ScopedOptions, [Scope("python-repos")])

    assert global_options.options.level == LogLevel.DEBUG
    assert global_options.options.pantsd is True
    assert global_options.options.build_ignore == ["ignoreme/"]
    assert python_repos_options.options.indexes == ["https://pypi.org/simple/"]
コード例 #5
0
    def test_options_parse_scoped(self):
        options_bootstrapper = create_options_bootstrapper(
            args=["-ldebug"],
            env=dict(PANTS_PANTSD="True", PANTS_BUILD_IGNORE='["ignoreme/"]'))
        global_options = self.request_product(
            ScopedOptions, [Scope(GLOBAL_SCOPE), options_bootstrapper])
        python_setup_options = self.request_product(
            ScopedOptions, [Scope("python-setup"), options_bootstrapper])

        self.assertEqual(global_options.options.level, LogLevel.DEBUG)
        self.assertEqual(global_options.options.pantsd, True)
        self.assertEqual(global_options.options.build_ignore, ["ignoreme/"])

        self.assertEqual(python_setup_options.options.platforms, ["current"])
コード例 #6
0
ファイル: register.py プロジェクト: pall-valmundsson/pants
def fast_list_and_die_for_testing(console, addresses):
    """A fast and deadly variant of `./pants list`."""
    options = yield Get(ScopedOptions, Scope(str('list')))
    console.print_stderr('>>> Got an interesting option: {}'.format(
        options.options.documented))
    for address in addresses.dependencies:
        console.print_stdout(address.spec)
    raise GracefulTerminationException(exit_code=42)
コード例 #7
0
ファイル: options_parsing_test.py プロジェクト: wiwa/pants
    def test_options_parse_scoped(self):
        options_bootstrapper = self._ob(
            args=["./pants", "-ldebug", "binary", "src/python::"],
            env=dict(PANTS_ENABLE_PANTSD="True", PANTS_BINARIES_BASEURLS='["https://bins.com"]'),
        )

        global_options_params = Params(Scope(str(GLOBAL_SCOPE)), options_bootstrapper)
        python_setup_options_params = Params(Scope(str("python-setup")), options_bootstrapper)
        global_options, python_setup_options = self.scheduler.product_request(
            ScopedOptions, [global_options_params, python_setup_options_params],
        )

        self.assertEqual(global_options.options.level, LogLevel.DEBUG)
        self.assertEqual(global_options.options.enable_pantsd, True)
        self.assertEqual(global_options.options.binaries_baseurls, ["https://bins.com"])

        self.assertEqual(python_setup_options.options.platforms, ["current"])
コード例 #8
0
async def _construct_optionable(optionable_factory):
    scope = optionable_factory.options_scope
    scoped_options = await Get(ScopedOptions, Scope(str(scope)))
    return optionable_factory.optionable_cls(scope, scoped_options.options)
コード例 #9
0
 def parse(ob):
     params = Params(Scope(str(GLOBAL_SCOPE)), ob)
     return self.request_single_product(ScopedOptions, params)
コード例 #10
0
async def _construct_subsytem(subsystem_typ: type[_T]) -> _T:
    scoped_options = await Get(ScopedOptions,
                               Scope(str(subsystem_typ.options_scope)))
    return subsystem_typ(scoped_options.options)
コード例 #11
0
 def parse() -> ScopedOptions:
     # This will create a new `OptionsBootstrapper` and set it as a `SessionValue` on the engine
     # session.
     rule_runner.set_options([])
     return rule_runner.request(ScopedOptions, [Scope(GLOBAL_SCOPE)])
コード例 #12
0
 def parse(ob):
     params = Params(Scope(str(GLOBAL_SCOPE)), ob)
     return self.scheduler.product_request(ScopedOptions, [params])
コード例 #13
0
ファイル: optionable.py プロジェクト: zvikihouzz/pants
def _construct_optionable(optionable_factory):
    scope = optionable_factory.options_scope
    scoped_options = yield Get(ScopedOptions, Scope(str(scope)))
    yield optionable_factory.optionable_cls(scope, scoped_options.options)
コード例 #14
0
 def parse(ob):
     return self.request_product(ScopedOptions,
                                 [Scope(GLOBAL_SCOPE), ob])