Esempio n. 1
0
    def test_count(self):
        # A basic test of counts
        counter = cobe.counter.MergeCounter()

        def repeat(items):
            # Repeat each key of items as many times as its value
            for item, count in items.iteritems():
                for i in xrange(count):
                    yield item, 1

        counts = counter.count(repeat(self.items))
        self.assert_(isinstance(counts, types.GeneratorType))

        for item, count in counts:
            self.assertEqual(self.items[item], count)
Esempio n. 2
0
    def test_count(self):
        # A basic test of counts
        counter = cobe.counter.MergeCounter()

        def repeat(items):
            # Repeat each key of items as many times as its value
            for item, count in items.iteritems():
                for i in xrange(count):
                    yield item, 1

        counts = counter.count(repeat(self.items))
        self.assert_(isinstance(counts, types.GeneratorType))

        for item, count in counts:
            self.assertEqual(self.items[item], count)
Esempio n. 3
0
    def test_count_overflow(self):
        # Test counts, with restricted max_len. This forces an
        # overflow file to be written for every count logged.
        counter = cobe.counter.MergeCounter(max_len=1)

        def repeat(items):
            # Repeat each key of items as many times as its value
            for item, count in items.iteritems():
                for i in xrange(count):
                    yield item, 1

        counts = counter.count(repeat(self.items))
        self.assert_(isinstance(counts, types.GeneratorType))

        for item, count in counts:
            self.assertEqual(self.items[item], count)
Esempio n. 4
0
    def test_count_overflow(self):
        # Test counts, with restricted max_len. This forces an
        # overflow file to be written for every count logged.
        counter = cobe.counter.MergeCounter(max_len=1)

        def repeat(items):
            # Repeat each key of items as many times as its value
            for item, count in items.iteritems():
                for i in xrange(count):
                    yield item, 1

        counts = counter.count(repeat(self.items))
        self.assert_(isinstance(counts, types.GeneratorType))

        for item, count in counts:
            self.assertEqual(self.items[item], count)
Esempio n. 5
0
    def test_count_overflow_merge(self):
        # Test counts, with restricted max_len and max_fds. This
        # forces overflow files to be merged together on every logged
        # count.
        counter = cobe.counter.MergeCounter(max_fds=1, max_len=1)

        def repeat(items):
            # Repeat each key of items as many times as its value
            for item, count in items.iteritems():
                for i in xrange(count):
                    yield item, 1

        counts = counter.count(repeat(self.items))
        self.assert_(isinstance(counts, types.GeneratorType))

        for item, count in counts:
            self.assertEqual(self.items[item], count)
Esempio n. 6
0
    def test_count_overflow_merge(self):
        # Test counts, with restricted max_len and max_fds. This
        # forces overflow files to be merged together on every logged
        # count.
        counter = cobe.counter.MergeCounter(max_fds=1, max_len=1)

        def repeat(items):
            # Repeat each key of items as many times as its value
            for item, count in items.iteritems():
                for i in xrange(count):
                    yield item, 1

        counts = counter.count(repeat(self.items))
        self.assert_(isinstance(counts, types.GeneratorType))

        for item, count in counts:
            self.assertEqual(self.items[item], count)