def test_bad_qibuild_config_with_qitest_json(args, qibuild_action, monkeypatch): qibuild_action.add_test_project("testme") qibuild_action("add-config", "foo") qibuild_action("configure", "--config", "foo", "testme") build_worktree = TestBuildWorkTree() build_worktree.set_active_config("foo") testme_proj = build_worktree.get_build_project("testme") testme_sdk = testme_proj.sdk_directory qitest_json = os.path.join(testme_sdk, "qitest.json") monkeypatch.chdir(testme_proj.path) args.qitest_jsons = [qitest_json] test_runners = qitest.parsers.get_test_runners(args)
def test_pure_c_project(qibuild_action, tmpdir): """ Test Pure C Project """ work = tmpdir.join("work") foo1 = work.mkdir("foo") foo1.join("CMakeLists.txt").write("""\ncmake_minimum_required(VERSION 3.0)\nproject(foo C)\n""") qibuild_action.chdir(foo1.strpath) qibuild_action("convert", "--go") qibuild_action.chdir(work.strpath) build_worktree = TestBuildWorkTree() worktree = build_worktree.worktree worktree.add_project("foo") assert build_worktree.get_build_project("foo")
def test_pure_c_project(qibuild_action, tmpdir): """ Test Pure C Project """ work = tmpdir.join("work") foo1 = work.mkdir("foo") foo1.join("CMakeLists.txt").write( """\ncmake_minimum_required(VERSION 3.0)\nproject(foo C)\n""") qibuild_action.chdir(foo1.strpath) qibuild_action("convert", "--go") qibuild_action.chdir(work.strpath) build_worktree = TestBuildWorkTree() worktree = build_worktree.worktree worktree.add_project("foo") assert build_worktree.get_build_project("foo")
def test_new_syntax(build_worktree): world_proj = build_worktree.create_project("world") with open(world_proj.qiproject_xml, "w") as fp: fp.write(""" <project format="3"> <version>0.42</version> <qibuild name="world" /> </project> """) build_worktree = TestBuildWorkTree() world_proj = build_worktree.get_build_project("world") assert world_proj.name == "world" assert world_proj.version == "0.42"
def test_using_fake_ctc(qibuild_action, fake_ctc): """ Test Using Fake Cross Toolchain """ qibuild_action.add_test_project("footool") qibuild_action("configure", "footool", "--config", "fake-ctc") qibuild_action("make", "footool", "--config", "fake-ctc") build_worktree = TestBuildWorkTree() build_worktree.set_active_config("fake-ctc") footool_proj = build_worktree.get_build_project("footool") # assert that bin/footool exists but cannot be run: footool = qibuild.find.find_bin([footool_proj.sdk_directory], "footool", expect_one=True) assert os.path.exists(footool) with pytest.raises(Exception): qisys.command.call([footool])
def test_using_fake_ctc(qibuild_action, fake_ctc): # pylint: disable=unused-argument qibuild_action.add_test_project("footool") qibuild_action("configure", "footool", "--config", "fake-ctc") qibuild_action("make", "footool", "--config", "fake-ctc") build_worktree = TestBuildWorkTree() build_worktree.set_active_config("fake-ctc") footool_proj = build_worktree.get_build_project("footool") # assert that bin/footool exists but cannot be run: footool = qibuild.find.find_bin([footool_proj.sdk_directory], "footool", expect_one=True) assert os.path.exists(footool) # pylint: disable-msg=E1101 with pytest.raises(Exception): qisys.command.call([footool])
def test_staged_path_first_in_path_conf(qibuild_action, toolchains): """ Test Staged Path First In Path Conf """ toolchains.create("foo") qibuild.config.add_build_config("foo", toolchain="foo") bar_package = toolchains.add_package("foo", "bar") qibuild_action.add_test_project("stagepath") qibuild_action("configure", "stagepath", "--config", "foo") build_worktree = TestBuildWorkTree() build_worktree.set_active_config("foo") stagepath_proj = build_worktree.get_build_project("stagepath") path_conf = read_path_conf(stagepath_proj) lines = path_conf.splitlines() assert lines == [ stagepath_proj.path, stagepath_proj.sdk_directory, bar_package.path ]
def test_path_conf_contains_toolchain_paths(qibuild_action, toolchains): toolchains.create("foo") qibuild.config.add_build_config("foo", toolchain="foo") toolchains.add_package("foo", "bar") foo_tc = qitoolchain.get_toolchain("foo") bar_path = foo_tc.get_package("bar").path qibuild_action.add_test_project("hello") qibuild_action.add_test_project("world") build_woktree = TestBuildWorkTree() build_woktree.build_config.set_active_config("foo") qibuild_action("configure", "hello", "--config", "foo") world_proj = build_woktree.get_build_project("world") hello_proj = build_woktree.get_build_project("hello") path_conf = os.path.join(hello_proj.sdk_directory, "share", "qi", "path.conf") with open(path_conf, "r") as fp: contents = fp.readlines() sdk_dirs = [x.strip() for x in contents] assert hello_proj.sdk_directory in sdk_dirs assert world_proj.sdk_directory in sdk_dirs assert bar_path in sdk_dirs
def test_add_build_project(git_server, qisrc_action): """ Test Add Build Project """ git_server.add_qibuild_test_project("world") qisrc_action("init", git_server.manifest_url) build_worktree = TestBuildWorkTree() assert build_worktree.get_build_project("world")
def test_add_build_project(git_server, qisrc_action): git_server.add_qibuild_test_project("world") qisrc_action("init", git_server.manifest_url) build_worktree = TestBuildWorkTree() assert build_worktree.get_build_project("world")