aboutsummaryrefslogtreecommitdiff
path: root/infra/cifuzz/build_fuzzers_test.py
diff options
context:
space:
mode:
authorjonathanmetzman <31354670+jonathanmetzman@users.noreply.github.com>2021-06-30 07:34:42 -0700
committerGitHub <noreply@github.com>2021-06-30 07:34:42 -0700
commit0672aa4e1f2cc332f6e6a020259c35007292cd91 (patch)
treed3a6dee092ff2722c5f9e28de1d21b652026092c /infra/cifuzz/build_fuzzers_test.py
parenta9c49afb784f0deaaffba8b388333c36074550c2 (diff)
downloadoss-fuzz-0672aa4e1f2cc332f6e6a020259c35007292cd91.tar.gz
[CIFuzz] Don't make everything a subdirectory of /out (#5970)
Use different subdirectories of workspace for builds, old builds, coverage reports, corpora and artifacts/testscases.
Diffstat (limited to 'infra/cifuzz/build_fuzzers_test.py')
-rw-r--r--infra/cifuzz/build_fuzzers_test.py28
1 files changed, 15 insertions, 13 deletions
diff --git a/infra/cifuzz/build_fuzzers_test.py b/infra/cifuzz/build_fuzzers_test.py
index 35194f754..b88552301 100644
--- a/infra/cifuzz/build_fuzzers_test.py
+++ b/infra/cifuzz/build_fuzzers_test.py
@@ -136,7 +136,7 @@ class BuildFuzzersIntegrationTest(unittest.TestCase):
def setUp(self):
self.tmp_dir_obj = tempfile.TemporaryDirectory()
self.workspace = self.tmp_dir_obj.name
- self.out_dir = os.path.join(self.workspace, 'out')
+ self.out_dir = os.path.join(self.workspace, 'build-out')
test_helpers.patch_environ(self)
def tearDown(self):
@@ -268,29 +268,32 @@ class CheckFuzzerBuildTest(unittest.TestCase):
def setUp(self):
self.tmp_dir_obj = tempfile.TemporaryDirectory()
- self.test_files_path = os.path.join(self.tmp_dir_obj.name, 'test_files')
- shutil.copytree(TEST_DATA_PATH, self.test_files_path)
+ workspace_path = os.path.join(self.tmp_dir_obj.name, 'workspace')
+ self.workspace = test_helpers.create_workspace(workspace_path)
+ shutil.copytree(TEST_DATA_PATH, workspace_path)
def tearDown(self):
self.tmp_dir_obj.cleanup()
def test_correct_fuzzer_build(self):
"""Checks check_fuzzer_build function returns True for valid fuzzers."""
- test_fuzzer_dir = os.path.join(self.test_files_path, 'out')
self.assertTrue(
- build_fuzzers.check_fuzzer_build(test_fuzzer_dir, self.SANITIZER,
+ build_fuzzers.check_fuzzer_build(self.workspace, self.SANITIZER,
self.LANGUAGE))
- def test_not_a_valid_fuzz_path(self):
- """Tests that False is returned when a bad path is given."""
+ def test_not_a_valid_path(self):
+ """Tests that False is returned when a nonexistent path is given."""
+ workspace = test_helpers.create_workspace('not/a/valid/path')
self.assertFalse(
- build_fuzzers.check_fuzzer_build('not/a/valid/path', self.SANITIZER,
+ build_fuzzers.check_fuzzer_build(workspace, self.SANITIZER,
self.LANGUAGE))
- def test_not_a_valid_fuzzer(self):
- """Checks a directory that exists but does not have fuzzers is False."""
+ def test_no_valid_fuzzers(self):
+ """Tests that False is returned when an empty directory is given."""
+ with tempfile.TemporaryDirectory() as tmp_dir:
+ workspace = test_helpers.create_workspace(tmp_dir)
self.assertFalse(
- build_fuzzers.check_fuzzer_build(self.test_files_path, self.SANITIZER,
+ build_fuzzers.check_fuzzer_build(workspace, self.SANITIZER,
self.LANGUAGE))
@mock.patch('helper.docker_run')
@@ -298,8 +301,7 @@ class CheckFuzzerBuildTest(unittest.TestCase):
"""Tests that ALLOWED_BROKEN_TARGETS_PERCENTAGE is set when running
docker if passed to check_fuzzer_build."""
mocked_docker_run.return_value = 0
- test_fuzzer_dir = os.path.join(TEST_DATA_PATH, 'out')
- build_fuzzers.check_fuzzer_build(test_fuzzer_dir,
+ build_fuzzers.check_fuzzer_build(self.workspace,
self.SANITIZER,
self.LANGUAGE,
allowed_broken_targets_percentage='0')