def setUp(self):
     helpers.patch(self, [
         'clusterfuzz.binary_providers.GenericBuilder.get_source_dir_path',
     ])
     self.builder = binary_providers.GenericBuilder(
         libs.make_testcase(testcase_id='1234', revision='999'),
         libs.make_definition(), libs.make_options(current=False))
 def setUp(self):
     helpers.patch(self, [
         'clusterfuzz.binary_providers.GenericBuilder.get_source_dir_path'
     ])
     self.builder = binary_providers.GenericBuilder(
         libs.make_testcase(),
         libs.make_definition(source_name='something'), libs.make_options())
 def setUp(self):
     helpers.patch(self, [
         'clusterfuzz.binary_providers.sha_from_revision',
         'clusterfuzz.binary_providers.get_third_party_sha'
     ])
     self.builder = binary_providers.PdfiumBuilder(
         libs.make_testcase(revision=1234), libs.make_definition(),
         libs.make_options())
 def setUp(self):
     helpers.patch(self, [
         'clusterfuzz.common.execute',
         'clusterfuzz.binary_providers.GenericBuilder.get_source_dir_path',
     ])
     self.builder = binary_providers.GenericBuilder(libs.make_testcase(),
                                                    libs.make_definition(),
                                                    libs.make_options())
 def setUp(self):
     helpers.patch(self, [
         'clusterfuzz.binary_providers.install_build_deps',
         'clusterfuzz.binary_providers.ChromiumBuilder.get_source_dir_path',
         'clusterfuzz.binary_providers.ChromiumBuilder.install_deps',
     ])
     self.mock.get_source_dir_path.return_value = '/chrome/src'
     self.builder = binary_providers.ChromiumBuilder32Bit(
         libs.make_testcase(), libs.make_definition(), libs.make_options())
 def setUp(self):
     helpers.patch(self, [
         'clusterfuzz.binary_providers.ChromiumBuilder.get_gn_args',
         'clusterfuzz.binary_providers.ChromiumBuilder.get_source_dir_path',
         'clusterfuzz.binary_providers.ChromiumBuilder.gclient_runhooks',
         'clusterfuzz.binary_providers.gclient_runhooks_msan',
     ])
     self.builder = binary_providers.MsanChromiumBuilder(
         libs.make_testcase(), libs.make_definition(), libs.make_options())
 def test_run(self):
     """Test run."""
     builder = binary_providers.GenericBuilder(
         libs.make_testcase(), libs.make_definition(),
         libs.make_options(skip_deps=False))
     builder.setup_all_deps()
     self.mock.gclient_sync.assert_called_once_with(builder)
     self.mock.gclient_runhooks.assert_called_once_with(builder)
     self.mock.install_deps.assert_called_once_with(builder)
 def test_skip(self):
     """Test skip."""
     builder = binary_providers.GenericBuilder(
         libs.make_testcase(), libs.make_definition(),
         libs.make_options(skip_deps=True))
     builder.setup_all_deps()
     self.assert_n_calls(0, [
         self.mock.gclient_sync, self.mock.gclient_runhooks,
         self.mock.install_deps
     ])
 def setUp(self):
     helpers.patch(self, [
         'clusterfuzz.common.execute',
         'clusterfuzz.binary_providers.sha_from_revision',
         'clusterfuzz.binary_providers.ChromiumBuilder.install_deps',
         'clusterfuzz.binary_providers.ChromiumBuilder.get_source_dir_path',
         'os.path.exists'
     ])
     self.mock.get_source_dir_path.return_value = '/chrome/src'
     self.builder = binary_providers.CfiChromiumBuilder(
         libs.make_testcase(), libs.make_definition(), libs.make_options())
 def setUp(self):
     helpers.patch(self, [
         'clusterfuzz.binary_providers.GenericBuilder.get_source_dir_path',
         'clusterfuzz.binary_providers.sha_from_revision',
         'clusterfuzz.binary_providers.get_third_party_sha',
         'clusterfuzz.binary_providers.install_build_deps',
         'clusterfuzz.common.execute',
     ])
     self.mock.get_source_dir_path.return_value = '/src'
     self.builder = binary_providers.V8Builder(
         libs.make_testcase(revision=1234), libs.make_definition(),
         libs.make_options())
    def setUp(self):
        helpers.patch(self, [
            'clusterfuzz.binary_providers.setup_debug_symbol_if_needed',
            'clusterfuzz.binary_providers.setup_gn_goma_params',
        ])
        self.builder = binary_providers.GenericBuilder(
            libs.make_testcase(raw_gn_args='a=b\nc=d'),
            libs.make_definition(sanitizer='ASAN'),
            libs.make_options(current=False, enable_debug=True))
        self.builder.extra_gn_args = {'e': 'f'}

        self.mock.setup_debug_symbol_if_needed.side_effect = lambda v, _1, _2: v
        self.mock.setup_gn_goma_params.side_effect = lambda v, _: v
 def setUp(self):
     helpers.patch(self, [
         'clusterfuzz.binary_providers.get_clank_sha',
         'clusterfuzz.common.execute',
         'clusterfuzz.binary_providers.ChromiumBuilder.get_source_dir_path',
         'clusterfuzz.binary_providers.ChromiumBuilder.get_build_dir_path',
         'clusterfuzz.binary_providers.ChromiumBuilder.get_binary_name',
         'clusterfuzz.binary_providers.ChromiumBuilder.install_deps',
         'clusterfuzz.binary_providers.ChromiumBuilder.get_gn_args',
     ])
     self.builder = binary_providers.ClankiumBuilder(
         libs.make_testcase(revision='1234'),
         libs.make_definition(revision_url='test_url/%s'),
         libs.make_options())
 def setUp(self):
     helpers.patch(self, [
         'clusterfuzz.binary_providers.download_build_if_needed',
         'clusterfuzz.binary_providers.get_or_ask_for_source_location',
         'clusterfuzz.binary_providers.BinaryProvider.get_binary_path',
     ])
     self.definition = libs.make_definition(binary_name='d8')
     self.testcase = libs.make_testcase(
         testcase_id=12345,
         build_url='https://storage.cloud.google.com/abc.zip')
     self.provider = binary_providers.DownloadedBinary(
         testcase=self.testcase,
         definition=self.definition,
         options=libs.make_options())
    def setUp(self):
        helpers.patch(self, [
            'clusterfuzz.common.execute',
            'clusterfuzz.common.edit_if_needed',
            'clusterfuzz.binary_providers.GenericBuilder.get_build_dir_path',
            'clusterfuzz.binary_providers.GenericBuilder.get_gn_args',
            'clusterfuzz.binary_providers.GenericBuilder.get_source_dir_path',
        ])
        self.setup_fake_filesystem()
        self.builder = binary_providers.GenericBuilder(
            libs.make_testcase(), libs.make_definition(),
            libs.make_options(edit_mode=True))

        self.mock.edit_if_needed.side_effect = (
            lambda content, prefix, comment, should_edit: content)
    def test_call(self):
        """Tests calling the method."""
        self.mock.stat.return_value = mock.Mock(st_mode=0600)

        build_dir = os.path.expanduser(
            os.path.join('~', 'chrome_src', 'out', '12345_build'))
        self.mock.get_build_dir_path.return_value = build_dir

        provider = binary_providers.BinaryProvider(
            libs.make_testcase(testcase_id=12345, build_url='build_url'),
            libs.make_definition(binary_name='d8'), libs.make_options())

        path = os.path.join(build_dir, 'd8')
        self.assertEqual(path, provider.get_binary_path())
        self.mock.stat.assert_called_once_with(path)
        self.mock.chmod.assert_called_once_with(path, 0700)
 def setUp(self):
     helpers.patch(self, [
         'clusterfuzz.binary_providers.GenericBuilder.setup_all_deps',
         'clusterfuzz.binary_providers.GenericBuilder.gn_gen',
         'clusterfuzz.binary_providers.GenericBuilder.get_git_sha',
         'clusterfuzz.binary_providers.GenericBuilder.get_build_dir_path',
         'clusterfuzz.binary_providers.GenericBuilder.get_source_dir_path',
         'clusterfuzz.binary_providers.compute_goma_cores',
         'clusterfuzz.binary_providers.compute_goma_load',
         'clusterfuzz.binary_providers.git_checkout',
         'clusterfuzz.common.execute',
     ])
     self.builder = binary_providers.GenericBuilder(
         libs.make_testcase(revision=213),
         libs.make_definition(targets=['d8']),
         libs.make_options(current=False))
 def setUp(self):
     self.builder = binary_providers.GenericBuilder(
         libs.make_testcase(),
         libs.make_definition(binary_name='binary', targets=['d8']),
         libs.make_options())
 def setUp(self):
     self.builder = binary_providers.GenericBuilder(libs.make_testcase(),
                                                    libs.make_definition(),
                                                    libs.make_options())
 def setUp(self):
     helpers.patch(self, ['clusterfuzz.binary_providers.get_binary_name'])
     self.builder = binary_providers.LibfuzzerAndAflBuilder(
         libs.make_testcase(stacktrace_lines='trace'),
         libs.make_definition(), libs.make_options())
     self.mock.get_binary_name.return_value = 'target'