Beispiel #1
0
 def assert_resolved(*, entry_point: Optional[str],
                     expected: Optional[EntryPoint]) -> None:
     addr = Address("src/python/project")
     rule_runner.create_file("src/python/project/app.py")
     rule_runner.create_file("src/python/project/f2.py")
     ep_field = PexEntryPointField(entry_point, address=addr)
     result = rule_runner.request(ResolvedPexEntryPoint,
                                  [ResolvePexEntryPointRequest(ep_field)])
     assert result.val == expected
Beispiel #2
0
def test_entry_point_validation(caplog) -> None:
    addr = Address("src/python/project")

    with pytest.raises(InvalidFieldException):
        PexEntryPointField(" ", addr)
    with pytest.raises(InvalidFieldException):
        PexEntryPointField("modue:func:who_knows_what_this_is", addr)
    with pytest.raises(InvalidFieldException):
        PexEntryPointField(":func", addr)

    ep = "custom.entry_point:"
    with caplog.at_level(logging.WARNING):
        assert EntryPoint("custom.entry_point") == PexEntryPointField(ep, addr).value

    assert len(caplog.record_tuples) == 1
    _, levelno, message = caplog.record_tuples[0]
    assert logging.WARNING == levelno
    assert ep in message
    assert str(addr) in message
Beispiel #3
0
 def assert_resolved(*, entry_point: str | None,
                     expected: EntryPoint | None, is_file: bool) -> None:
     addr = Address("src/python/project")
     rule_runner.create_file("src/python/project/app.py")
     rule_runner.create_file("src/python/project/f2.py")
     ep_field = PexEntryPointField(entry_point, addr)
     result = rule_runner.request(ResolvedPexEntryPoint,
                                  [ResolvePexEntryPointRequest(ep_field)])
     assert result.val == expected
     assert result.file_name_used == is_file
Beispiel #4
0
 def assert_resolved(
     *, entry_point: Optional[str], source: Optional[str] = None, expected: Optional[str]
 ) -> None:
     addr = Address("src/python/project")
     rule_runner.create_file("src/python/project/app.py")
     rule_runner.create_file("src/python/project/f2.py")
     ep_field = PexEntryPointField(entry_point, address=addr)
     sources = DeprecatedPexBinarySources([source] if source else None, address=addr)
     result = rule_runner.request(
         ResolvedPexEntryPoint, [ResolvePexEntryPointRequest(ep_field, sources)]
     )
     assert result.val == expected
Beispiel #5
0
def test_entry_point_filespec(entry_point: Optional[str],
                              expected: List[str]) -> None:
    field = PexEntryPointField(entry_point, address=Address("project/dir"))
    assert field.filespec == {"includes": expected}
Beispiel #6
0
def test_entry_point_filespec(entry_point: str | None, expected: list[str]) -> None:
    field = PexEntryPointField(entry_point, Address("project/dir"))
    assert field.filespec == {"includes": expected}