def start_test(self, poll_period=1): self.reader = self.generator.get_reader() self.stats_reader = self.generator.get_stats_reader() aggregator_config = self.load_config() verbose_histogram = True if verbose_histogram: logger.info("using verbose histogram") if self.reader and self.stats_reader: pipeline = Aggregator( TimeChopper( DataPoller(source=self.reader, poll_period=poll_period), cache_size=3), aggregator_config, verbose_histogram) self.drain = Drain(pipeline, self.results) self.drain.start() self.stats_drain = Drain( Chopper(DataPoller( source=self.stats_reader, poll_period=poll_period)), self.stats) self.stats_drain.start() else: logger.warning("Generator not found. Generator must provide a reader and a stats_reader interface")
def test_output(self): source = (range(i) for i in range(5)) expected = [0, 0, 1, 0, 1, 2, 0, 1, 2, 3] assert list(Chopper(source)) == expected