Пример #1
0
 def test_discard_taxon_label_error(self):
     tns = TaxonNamespace(self.str_labels)
     key = "zzz"
     assert key not in self.str_labels
     try:
         tns.discard_taxon_label(key)
     except LookupError:
         self.fail()
     else:
         self.validate_taxon_concepts(tns, self.str_labels)
Пример #2
0
 def test_discard_taxon_label(self):
     taxa = [Taxon(s) for s in self.str_labels]
     tns = TaxonNamespace(taxa)
     expected = taxa[:]
     for idx, label in enumerate(set(self.str_labels)):
         tns.discard_taxon_label(label)
         for t in taxa:
             if t.label == label and t in expected:
                 expected.remove(t)
         self.assertEqual(len(tns), len(expected))
         for t1, t2 in zip(tns, expected):
             self.assertIs(t1, t2)
Пример #3
0
 def test_discard_taxon_label_case_insensitive(self):
     ucase_labels = [s.upper() for s in self.str_labels]
     assert ucase_labels
     assert ucase_labels != self.str_labels
     taxa = [Taxon(s) for s in self.str_labels]
     tns = TaxonNamespace(taxa)
     expected = taxa[:]
     # default: case-insensitive
     for idx, label in enumerate(set(ucase_labels)):
         tns.discard_taxon_label(label)
         for t in taxa:
             if t.label.upper() == label.upper() and t in expected:
                 expected.remove(t)
         self.assertEqual(len(tns), len(expected))
         for t1, t2 in zip(tns, expected):
             self.assertIs(t1, t2)
Пример #4
0
 def test_discard_taxon_label_case_sensitive(self):
     ucase_labels = [s.upper() for s in self.str_labels]
     assert ucase_labels
     assert ucase_labels != self.str_labels
     taxa = [Taxon(s) for s in self.str_labels]
     tns = TaxonNamespace(taxa)
     expected = taxa[:]
     # test: case sensitive
     tns.is_case_sensitive = True
     for idx, label in enumerate(set(ucase_labels)):
         if label != label.lower():
             x1 = len(tns)
             try:
                 tns.discard_taxon_label(label)
             except LookupError:
                 self.fail()
             else:
                 self.assertEqual(len(tns), x1)