def get(self, project_name, test_name): project = Project.objects(name=project_name).get() test = Test.objects(project=project, name=test_name).get() # transforms 30:60:90 in [10:20:30, 10:20:30, 10:20:30] test_cycles = [':'.join([str(int(cycle) / test.number_of_workers) for cycle in test.cycles.split(':')])] \ * test.number_of_workers result = TestResult(test=test, number_of_workers=test.number_of_workers, created_date=datetime.now()) result.stats = TestStats() for index, worker in enumerate(range(test.number_of_workers)): test_cycle = test_cycles[index] run = TestRun(uuid=str(uuid4()), git_repo=project.git_repo, module=test.module, test_class=test.test_class, server_url=test.server_url, cycles=test_cycle, cycle_duration=test.cycle_duration) result.runs.append(run) result.save() self.redirect('/?test_scheduled=true')