Example #1
0
    def test_db_0_multiple(self, graph: MockedGraphDatabase) -> None:
        """Check that resolving can resolve multiple Python packages."""
        resolved = PythonGraphSolver(
            dependency_parser=PackageVersionDependencyParser(),
            releases_fetcher=GraphReleasesFetcher(graph=graph),
        ).solve(
            [
                PackageVersion(
                    name="a", version="*", index=None, develop=False),
                PackageVersion(
                    name="b", version=">1.0.0", index=None, develop=False),
            ],
            graceful=False,
        )

        assert len(resolved) == 2

        assert "a" in resolved
        assert set(resolved["a"]) == {
            ("1.0.0", "index1"),
            ("1.1.0", "index1"),
            ("1.2.0", "index2"),
        }

        assert "b" in resolved
        assert set(resolved["b"]) == {("2.0.0", "index1"), ("3.0.0", "index2")}
Example #2
0
 def test_db_0(self, graph: MockedGraphDatabase) -> None:
     """Check that resolving can gather all versions available in the graph database."""
     resolved = PythonGraphSolver(
         dependency_parser=PackageVersionDependencyParser(),
         releases_fetcher=GraphReleasesFetcher(graph=graph),
     ).solve(
         [PackageVersion(name="a", version="*", index=None, develop=False)],
         graceful=False,
     )
     assert len(resolved) == 1
     assert "a" in resolved
     assert set(resolved["a"]) == {
         ("1.0.0", "index1"),
         ("1.1.0", "index1"),
         ("1.2.0", "index2"),
     }
Example #3
0
 def test_db_0_raises(self, graph: MockedGraphDatabase) -> None:
     """Check that there is raised an exception if no releases were found."""
     with pytest.raises(SolverException):
         PythonGraphSolver(
             dependency_parser=PackageVersionDependencyParser(),
             releases_fetcher=GraphReleasesFetcher(graph=graph),
         ).solve(
             [
                 PackageVersion(
                     name="nonexisting-foo",
                     version="==1.0.0",
                     index=None,
                     develop=False,
                 )
             ],
             graceful=False,
         )