def testSimpleMatch(self): stream1 = AudioStream(gst.Caps("audio/x-vorbis")) stream2 = AudioStream(gst.Caps("audio/x-raw-int")) stream3 = AudioStream(gst.Caps("audio/x-vorbis, meh=asd")) group_a = [stream1, stream2] group_b = [stream3] walker = StreamGroupWalker(group_a, group_b) walkers = walker.advance() self.failUnlessEqual(len(walkers), 2) walker = walkers[0] self.failUnlessEqual(walker.advance(), []) self.failUnlessEqual(walker.getMatches(), {(stream1, stream3): STREAM_MATCH_COMPATIBLE_CAPS}) walker = walkers[1] self.failUnlessEqual(walker.advance(), []) self.failUnlessEqual(walker.getMatches(), {(stream2, stream3): STREAM_MATCH_SAME_TYPE})
def testEmptyGroups(self): group_a = [] group_b = [] walker = StreamGroupWalker(group_a, group_b) self.failUnlessEqual(walker.advance(), []) self.failUnlessEqual(walker.getMatches(), {}) stream = AudioStream(gst.Caps("audio/x-vorbis")) group_a = [stream] group_b = [] walker = StreamGroupWalker(group_a, group_b) self.failUnlessEqual(walker.advance(), []) self.failUnlessEqual(walker.getMatches(), {}) group_a = [] group_b = [stream] walker = StreamGroupWalker(group_a, group_b) self.failUnlessEqual(walker.advance(), []) self.failUnlessEqual(walker.getMatches(), {})