def test_update_built(): assert jobs.get_jobs(["2dcontext/foo.html"], includes=["update_built"]) == {"update_built"} assert jobs.get_jobs(["html/foo.html"], includes=["update_built"]) == {"update_built"} assert jobs.get_jobs(["offscreen-canvas/foo.html"], includes=["update_built"]) == {"update_built"}
def test_build_css(): assert jobs.get_jobs(["css/css-build-testsuites.sh"], includes=["build_css"]) == set(["build_css"]) assert jobs.get_jobs(["css/CSS21/test.html"], includes=["build_css"]) == set(["build_css"]) assert jobs.get_jobs(["html/css/CSS21/test.html"], includes=["build_css"]) == set()
def test_wpt_integration(): assert jobs.get_jobs(["tools/wpt/wpt.py"], includes=["wpt_integration" ]) == set(["wpt_integration"]) assert jobs.get_jobs(["tools/wptrunner/wptrunner/wptrunner.py"], includes=["wpt_integration" ]) == set(["wpt_integration"])
def test_build_css(): assert jobs.get_jobs(["css/css-build-testsuites.sh"], includes=["build_css"]) == {"build_css"} assert jobs.get_jobs(["css/CSS21/test.html"], includes=["build_css"]) == {"build_css"} assert jobs.get_jobs(["html/css/CSS21/test.html"], includes=["build_css"]) == set()
def test_tools_unittest(): assert jobs.get_jobs(["tools/ci/test/test_jobs.py"], includes=["tools_unittest"]) == {"tools_unittest"} assert jobs.get_jobs(["dom/tools/example.py"], includes=["tools_unittest"]) == set() assert jobs.get_jobs(["dom/historical.html"], includes=["tools_unittest"]) == set()
def test_update_built(): assert jobs.get_jobs(["2dcontext/foo.html"], includes=["update_built"]) == set(["update_built"]) assert jobs.get_jobs(["html/foo.html"], includes=["update_built"]) == set(["update_built"]) assert jobs.get_jobs(["offscreen-canvas/foo.html"], includes=["update_built"]) == set(["update_built"])
def test_wptrunner_unittest(): assert jobs.get_jobs(["tools/wptrunner/wptrunner/wptrunner.py"], includes=["wptrunner_unittest" ]) == {"wptrunner_unittest"} assert jobs.get_jobs(["tools/example.py"], includes=["wptrunner_unittest" ]) == {"wptrunner_unittest"}
def test_update_built(): assert jobs.get_jobs(["html/canvas/element/foo.html"], includes=["update_built"]) == {"update_built"} assert jobs.get_jobs(["html/foo.html"], includes=["update_built"]) == {"update_built"} assert jobs.get_jobs(["html/canvas/offscreen/foo.html"], includes=["update_built"]) == {"update_built"}
def test_tools_unittest(): assert jobs.get_jobs(["tools/ci/test/test_jobs.py"], includes=["tools_unittest"]) == set(["tools_unittest"]) assert jobs.get_jobs(["dom/tools/example.py"], includes=["tools_unittest"]) == set() assert jobs.get_jobs(["dom/historical.html"], includes=["tools_unittest"]) == set()
def test_wpt_infrastructure(): assert jobs.get_jobs(["tools/hammer.html"], includes=["wptrunner_infrastructure" ]) == {"wptrunner_infrastructure"} assert jobs.get_jobs(["infrastructure/assumptions/ahem.html"], includes=["wptrunner_infrastructure" ]) == {"wptrunner_infrastructure"}
def test_testharness(): assert jobs.get_jobs(["resources/testharness.js"]) == default_jobs | set(["resources_unittest"]) assert jobs.get_jobs(["resources/testharness.js"], includes=["resources_unittest"]) == set(["resources_unittest"]) assert jobs.get_jobs(["tools/wptserve/wptserve/config.py"], includes=["resources_unittest"]) == set(["resources_unittest"]) assert jobs.get_jobs(["foo/resources/testharness.js"], includes=["resources_unittest"]) == set()
def test_testharness(): assert jobs.get_jobs(["resources/testharness.js" ]) == default_jobs | set(["resources_unittest"]) assert jobs.get_jobs(["resources/testharness.js"], includes=["resources_unittest" ]) == set(["resources_unittest"]) assert jobs.get_jobs(["foo/resources/testharness.js"], includes=["resources_unittest"]) == set()
def test_testharness(): assert jobs.get_jobs(["resources/testharness.js"]) == default_jobs | {"resources_unittest", "wptrunner_infrastructure"} assert jobs.get_jobs(["resources/testharness.js"], includes=["resources_unittest"]) == {"resources_unittest"} assert jobs.get_jobs(["tools/wptserve/wptserve/config.py"], includes=["resources_unittest"]) == {"resources_unittest"} assert jobs.get_jobs(["foo/resources/testharness.js"], includes=["resources_unittest"]) == set()
def test_testharness(): assert jobs.get_jobs(["resources/testharness.js"]) == default_jobs | {"resources_unittest", "wptrunner_infrastructure"} assert jobs.get_jobs(["resources/testharness.js"], includes=["resources_unittest"]) == {"resources_unittest"} assert jobs.get_jobs(["tools/wptserve/wptserve/config.py"], includes=["resources_unittest"]) == {"resources_unittest"} assert jobs.get_jobs(["foo/resources/testharness.js"], includes=["resources_unittest"]) == set()
def test_testharness(): assert jobs.get_jobs(["resources/testharness.js" ]) == default_jobs | set(["resources_unittest"]) assert jobs.get_jobs(["resources/testharness.js"], includes=["resources_unittest" ]) == set(["resources_unittest"]) assert jobs.get_jobs(["tools/wptserve/wptserve/config.py"], includes=["resources_unittest" ]) == set(["resources_unittest"]) assert jobs.get_jobs(["foo/resources/testharness.js"], includes=["resources_unittest"]) == set()
def get_run_jobs(event): from tools.ci import jobs revish = "%s..%s" % (event["pull_request"]["base"]["sha"] if "pull_request" in event else event["before"], event["pull_request"]["head"]["sha"] if "pull_request" in event else event["after"]) logger.info("Looking for changes in range %s" % revish) paths = jobs.get_paths(revish=revish) logger.info("Found changes in paths:%s" % "\n".join(paths)) path_jobs = jobs.get_jobs(paths) all_jobs = path_jobs | get_extra_jobs(event) logger.info("Including jobs:\n * %s" % "\n * ".join(all_jobs)) return all_jobs
def test_lint(): assert jobs.get_jobs(["README.md"]) == set(["lint"])
def test_wptrunner_unittest(): assert jobs.get_jobs(["tools/wptrunner/wptrunner/wptrunner.py"], includes=["wptrunner_unittest"]) == set(["wptrunner_unittest"]) assert jobs.get_jobs(["tools/example.py"], includes=["wptrunner_unittest"]) == set(["wptrunner_unittest"])
def test_testharness(): assert jobs.get_jobs(["resources/testharness.js"]) == default_jobs | set(["resources_unittest"]) assert jobs.get_jobs(["resources/testharness.js"], includes=["resources_unittest"]) == set(["resources_unittest"]) assert jobs.get_jobs(["foo/resources/testharness.js"], includes=["resources_unittest"]) == set()
def test_stability(): assert jobs.get_jobs(["dom/historical.html"], includes=["stability"]) == set(["stability"]) assert jobs.get_jobs(["tools/pytest.ini"], includes=["stability"]) == set() assert jobs.get_jobs(["serve"], includes=["stability"]) == set() assert jobs.get_jobs(["resources/testharness.js"], includes=["stability"]) == set() assert jobs.get_jobs(["docs/.gitignore"], includes=["stability"]) == set() assert jobs.get_jobs(["dom/tools/example.py"], includes=["stability"]) == set() assert jobs.get_jobs(["conformance-checkers/test.html"], includes=["stability"]) == set() assert jobs.get_jobs(["dom/README.md"], includes=["stability"]) == set() assert jobs.get_jobs(["css/build-css-testsuite.sh"], includes=["stability"]) == set() assert jobs.get_jobs(["css/CSS21/test-001.html"], includes=["stability"]) == set(["stability"]) assert jobs.get_jobs(["css/build-css-testsuite.sh", "css/CSS21/test-001.html"], includes=["stability"]) == set(["stability"])
def test_default(): assert jobs.get_jobs(["README.md"]) == default_jobs
def test_all(): assert jobs.get_jobs(["README.md"], all=True) == all_jobs
def test_wpt_infrastructure(): assert jobs.get_jobs(["tools/hammer.html"], includes=["wptrunner_infrastructure"]) == set(["wptrunner_infrastructure"]) assert jobs.get_jobs(["infrastructure/assumptions/ahem.html"], includes=["wptrunner_infrastructure"]) == set(["wptrunner_infrastructure"])
def test_wdspec_support(): assert jobs.get_jobs(["webdriver/tests/support/__init__.py"], includes=["wptrunner_infrastructure"]) == {"wptrunner_infrastructure"}
def test_affected_tests(): assert jobs.get_jobs(["dom/historical.html"], includes=["affected_tests"]) == {"affected_tests"} assert jobs.get_jobs(["tools/pytest.ini"], includes=["affected_tests"]) == set() assert jobs.get_jobs(["serve"], includes=["affected_tests"]) == set() assert jobs.get_jobs(["resources/testharness.js"], includes=["affected_tests"]) == set() assert jobs.get_jobs(["docs/.gitignore"], includes=["affected_tests"]) == set() assert jobs.get_jobs(["dom/tools/example.py"], includes=["affected_tests"]) == set() assert jobs.get_jobs(["conformance-checkers/test.html"], includes=["affected_tests"]) == set() assert jobs.get_jobs(["dom/README.md"], includes=["affected_tests"]) == set() assert jobs.get_jobs(["css/build-css-testsuite.sh"], includes=["affected_tests"]) == set() assert jobs.get_jobs(["css/CSS21/test-001.html"], includes=["affected_tests"]) == {"affected_tests"} assert jobs.get_jobs( ["css/build-css-testsuite.sh", "css/CSS21/test-001.html"], includes=["affected_tests"]) == {"affected_tests"} assert jobs.get_jobs(["resources/idlharness.js"], includes=["affected_tests"]) == {"affected_tests"}
def test_default(): assert jobs.get_jobs(["README.md"]) == default_jobs
def test_all(): assert jobs.get_jobs(["README.md"], all=True) == all_jobs
def test_wpt_integration(): assert jobs.get_jobs(["tools/wpt/wpt.py"], includes=["wpt_integration"]) == set(["wpt_integration"]) assert jobs.get_jobs(["tools/wptrunner/wptrunner/wptrunner.py"], includes=["wpt_integration"]) == set(["wpt_integration"])
def test_lint(): assert jobs.get_jobs(["README.md"]) == set(["lint"])