def test_find_packages_in_toolchain(build_worktree, toolchains): toolchains.create("foo") world_package = toolchains.add_package("foo", "world") hello = build_worktree.create_project("hello", build_depends=["world"]) build_worktree.set_active_config("foo") deps_solver = DepsSolver(build_worktree) assert deps_solver.get_dep_packages([hello], ["build"]) == [world_package]
def test_prefer_sources_over_packages(build_worktree, toolchains): toolchains.create("foo") world_package = toolchains.add_package("foo", "world") world_proj = build_worktree.create_project("world") hello_proj = build_worktree.create_project("hello", build_depends=["world"]) build_worktree.set_active_config("foo") deps_solver = DepsSolver(build_worktree) assert deps_solver.get_dep_projects([hello_proj], ["build"]) == [world_proj, hello_proj] assert not deps_solver.get_dep_packages([hello_proj], ["build"])
def test_prefer_sources_over_packages(build_worktree, toolchains): """ Test Prefer Sources Over Packages """ toolchains.create("foo") qibuild.config.add_build_config("foo", toolchain="foo") _world_package = toolchains.add_package("foo", "world") world_proj = build_worktree.create_project("world") hello_proj = build_worktree.create_project("hello", build_depends=["world"]) build_worktree.set_active_config("foo") deps_solver = DepsSolver(build_worktree) assert deps_solver.get_dep_projects([hello_proj], ["build"]) == [world_proj, hello_proj] assert not deps_solver.get_dep_packages([hello_proj], ["build"])
def test_complex_dep_solving1(build_worktree, toolchains): toolchains.create("foo") qibuild.config.add_build_config("foo", toolchain="foo") libqi_package = toolchains.add_package("foo", "libqi") hal_package = toolchains.add_package("foo", "hal", run_depends=["libqi"]) naoqi_package = toolchains.add_package("foo", "naoqi", run_depends=["hal"]) build_worktree.create_project("libqi") naoqi_proj = build_worktree.create_project("naoqi", run_depends=["hal"]) deps_solver = DepsSolver(build_worktree) build_worktree.set_active_config("foo") assert deps_solver.get_dep_packages([naoqi_proj], ["runtime"]) == \ [hal_package]