Пример #1
0
    def random_points_test(min, max, delay, n, lines, columns, max_count,
                           fps, test_class = DiagramTest):
        # test main-thread execution (previewer run as main thread): 
        preview = Preview(title = test_class.__name__ + 
                          " - Main-thread test with random points", 
                          lines = lines, columns = columns, fps_limit = fps,
                          painter_class = VoronoiDiagram)

        x, y = preview.panel_dimensions()
        preview.interactive(True)
        preview.start()
        # create tests 
        threads = []
        remove = None
        while True:
            
            if len(threads) < n:
                test = test_class(TestCases.random_points(min, max, x, y), 
                                   delay)
                threads.append(test)
                test.start()
                preview.add_view(test.diagram)

            for i in xrange(0, len(threads)):
                if threads[i].counter >= max_count:
                    preview.del_view(threads[i].diagram)
                    threads[i].stop()
                    del threads[i]
                    break
                    
            if not preview.step():
                break

        # stop tests threads
        for t in threads:
            t.stop()