def test_multiple_tasks(self): self.test_vm = init_vm(self.test_vm) self.test_vm = start_vm(self.test_vm) self.test_vm = load_user_task(self.test_vm, self.test_program) self.test_vm = load_user_task(self.test_vm, self.test_program2) for i in range(0, 30): self.test_vm = run_sheduled_tasks(self.test_vm) assert (self.test_vm["VBUS"]["INST_LOGS"]["OUT"][0] == "1:1:3.0") assert (self.test_vm["VBUS"]["INST_LOGS"]["OUT"][1] == "1:2:99.0")
def test_vm_scheduler(self): self.test_vm = init_vm(self.test_vm) self.test_vm = start_vm(self.test_vm) self.test_vm = load_user_task(self.test_vm, self.test_program) for i in range(0, 10): self.test_vm = run_sheduled_tasks(self.test_vm) assert (self.test_vm["VBUS"]["INST_LOGS"]["OUT"][0] == "1:1:3.0") self.test_vm = {}
def test_run_vm_task(self): self.test_vm = init_vm(self.test_vm) self.test_vm = load_user_task(self.test_vm, self.test_program) for item in self.test_vm["VRAM"]["PROGRAM_CODE_MEMORY"].items(): for i in item[1].items(): self.test_vm = vm_execute(self.test_vm, i[1]) assert (self.test_vm["VBUS"]["INST_LOGS"]["OUT"][0] == "1:1:3.0") self.test_vm = {}
def test_load_from_file(self): f = open(SITE_ROOT + "/data/test_a3.splc", "r") data = f.read().split("\n") line_data = data[:-1] self.test_vm = init_vm(self.test_vm) self.test_vm = start_vm(self.test_vm) self.test_vm = load_user_task(self.test_vm, line_data) for i in range(0, 10): self.test_vm = run_sheduled_tasks(self.test_vm) assert (self.test_vm["VBUS"]["INST_LOGS"]["OUT"] == [ '1:3:0.7853975296020508', '1:3:0.9999987324100084' ])
def test_load_multiple_files(self): self.test_vm = init_vm(self.test_vm) self.test_vm = start_vm(self.test_vm) for item in self.test_filenames: f = open(SITE_ROOT + item, "r") data = f.read().split("\n") line_data = data[:-1] self.test_vm = load_user_task(self.test_vm, line_data) for i in range(0, 13): self.test_vm = run_sheduled_tasks(self.test_vm) test_result = [ '1:5:1', '1:5:0', '1:5:-10', '1:5:-10', '1:5:-10', '1:5:-1', '1:4:2.0', '1:4:10.0', '1:4:100.0', '1:4:4.605170185988092' ] assert (self.test_vm["VBUS"]["INST_LOGS"]["OUT"] == test_result)
def test_clear_vm(self): self.test_vm = init_vm(self.test_vm) self.test_vm = load_user_task(self.test_vm, self.test_program) self.test_vm = clear_task_list(self.test_vm) assert (self.test_vm == self.test_snapshot_blank) self.test_vm = {}