def emit()

in geneve/events_emitter.py [0:0]


    def emit(self, root=None, *, timestamp=True, complete=False, count=1, corpus=None):
        corpus = iter(corpus) if corpus else self.corpus
        if timestamp:
            timestamp = [datetime.now(timezone.utc).astimezone()]
        if complete:
            if root:
                events = (events_from_root(root, self.__environment, timestamp, corpus) for _ in range(count))
            else:
                events = (events_from_root(root, self.__environment, timestamp, corpus) for _ in range(count) for root in self.__roots)
        else:
            if root:
                events = (events_from_branch(random.choice(root), self.__environment, timestamp, root.meta, corpus) for _ in range(count))
            else:
                events = (
                    events_from_branch(random.choice(root), self.__environment, timestamp, root.meta, corpus)
                    for root in random.choices(self.__roots, k=count)
                )
        return chain(*events)