Exemple #1
0
    def iter_annotations(self, media=None,
                               begin=None, begin_min=None, begin_max=None,
                               end=None, end_min=None, end_max=None,
                               at=None):
        """FIXME: missing docstring.
        """
        o = self._owner

        if hasattr(media, '_get_uriref'):
            media = media._get_uriref()
        elif media is not None:
            # It should be a sequence/iterator of medias
            media = (m._get_uriref() for m in media)
        if at is not None:
            begin_max = end_min = at
        def annotation_iterator(be, pdict):
            for i in be.iter_annotations(pdict, None, media,
                                                begin, begin_min, begin_max,
                                                end, end_min, end_max):
                yield pdict[i[1]].get_element(i)
        all_annotation_iterators = [ annotation_iterator(be, pdict)
                                     for be, pdict
                                     in o._backends_dict.items() ]
        return interclass(*all_annotation_iterators)
Exemple #2
0
 def test_not_compatable_with_None(self):
     l1 = [Sortable(i) for i in range(0, 20, 2)]
     l2 = [Sortable(i) for i in range(1, 6, 2)]
     r = l1 + l2
     r.sort()
     self.assertEqual(r, list(interclass(l1, l2, [])))
Exemple #3
0
 def test_no_doublons(self):
     self.assertEquals(list(interclass(self.l1, self.l1)), self.l1)
Exemple #4
0
 def test4(self):
     self.assertEquals(
         list(interclass(self.l1, self.l2, self.l3, self.l4)),
         [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15, 16, 17, 19],
     )
Exemple #5
0
 def test2(self):
     self.assertEquals(list(interclass(self.l2, self.l3)), [2, 4, 6, 8, 10, 12, 16])
Exemple #6
0
 def test1(self):
     self.assertEquals(list(interclass(self.l1)), self.l1)