Пример #1
0
 def test_version(self):
     """Test tokenising version."""
     self.assertEqual(['52'],
                      search_tokenizer.tokenize_impact_version('52'))
     self.assertSetEqual(
         set(['52', '52.1', '52.1.2', '52.1.2.3']),
         set(search_tokenizer.tokenize_impact_version('52.1.2.3')))
Пример #2
0
    def populate_indices(self):
        """Populate keywords for fast test case list searching."""
        self.keywords = list(
            search_tokenizer.tokenize(self.crash_state)
            | search_tokenizer.tokenize(self.crash_type)
            | search_tokenizer.tokenize(self.fuzzer_name)
            | search_tokenizer.tokenize(self.overridden_fuzzer_name)
            | search_tokenizer.tokenize(self.job_type)
            | search_tokenizer.tokenize(self.platform_id))

        self.bug_indices = search_tokenizer.tokenize_bug_information(self)
        self.has_bug_flag = bool(self.bug_indices)
        self.is_a_duplicate_flag = bool(self.duplicate_of)
        fuzzer_name_indices = list(
            set([self.fuzzer_name, self.overridden_fuzzer_name]))
        self.fuzzer_name_indices = [f for f in fuzzer_name_indices if f]

        # If the impact task hasn't been run (aka is_impact_set_flag=False) OR
        # if impact isn't applicable (aka has_impacts() is False), we wipe all
        # the impact fields' indices.
        if self.has_impacts() and self.is_impact_set_flag:
            self.impact_extended_stable_version_indices = (
                search_tokenizer.tokenize_impact_version(
                    self.impact_extended_stable_version))
            self.impact_stable_version_indices = (
                search_tokenizer.tokenize_impact_version(
                    self.impact_stable_version))
            self.impact_beta_version_indices = (
                search_tokenizer.tokenize_impact_version(
                    self.impact_beta_version))
            self.impact_head_version_indices = (
                search_tokenizer.tokenize_impact_version(
                    self.impact_head_version))
            self.impact_version_indices = list(
                set(self.impact_extended_stable_version_indices +
                    self.impact_stable_version_indices +
                    self.impact_head_version_indices +
                    self.impact_beta_version_indices))
            if self.impact_extended_stable_version:
                self.impact_version_indices.append('extended_stable')
            if self.impact_beta_version:
                self.impact_version_indices.append('beta')
            if self.impact_stable_version:
                self.impact_version_indices.append('stable')
            if not self.impacts_production():
                self.impact_version_indices.append('head')
        else:
            self.impact_version_indices = []
            self.impact_extended_stable_version_indices = []
            self.impact_stable_version_indices = []
            self.impact_beta_version_indices = []
 def test_empty(self):
   """Test empty."""
   self.assertEqual([], search_tokenizer.tokenize_impact_version(''))
   self.assertEqual([], search_tokenizer.tokenize_impact_version(None))