def test_integration_init_stage_content_step_12_t1(self): step1.get_plan("../release1.0/domain_blocks.pddl", "../release1.0/problems/bw01.pddl") problem_json = step2.get_problem_json( "../release1.0/problems/bw01.pddl") pattern = re.compile(r'\w\s\w') result = pattern.findall(str(problem_json)) self.assertTrue(result)
def test_integration_goal_stage_step_12(self): step1.get_plan("../release1.0/domain_blocks.pddl", "../release1.0/problems/bw01.pddl") problem_json = step2.get_problem_json( "../release1.0/problems/bw01.pddl") text = ''.join(str(e) for e in problem_json) st = text[text.index("goal") + len("goal"):] self.assertTrue(st)
def test_integration_init_stage_content_step_12_t1(self): step1.get_plan("../../input/domain_blocks.pddl", "../../input/bw08.pddl") predicates_list = dom_par.get_domain_json( "../../input/domain_blocks.pddl") problem_json = step2.get_problem_json("../../input/bw08.pddl", predicates_list) pattern = re.compile(r'\w\s\w') result = pattern.findall(str(problem_json)) self.assertTrue(result)
def test_integration_goal_stage_step_12(self): step1.get_plan("../../input/domain_blocks.pddl", "../../input/bw08.pddl") predicates_list = dom_par.get_domain_json( "../../input/domain_blocks.pddl") problem_json = step2.get_problem_json("../../input/bw08.pddl", predicates_list) text = ''.join(str(e) for e in problem_json) st = text[text.index("goal") + len("goal"):] self.assertTrue(st)
def test_integration_predicate_each_stage_step123(self): domain_file = "../release1.0/domain_blocks.pddl" problem_file = "../release1.0/problems/bw01.pddl" plan = step1.get_plan(domain_file, problem_file) problem_json = step2.get_problem_json(problem_file) stages = step3.get_stages(plan, problem_json, problem_file) self.assertTrue(stages)
def test_integration_predicates_object_list_step123(self): domain_file = "../release1.0/domain_blocks.pddl" problem_file = "../release1.0/problems/bw01.pddl" plan = step1.get_plan(domain_file, problem_file) problem_json = step2.get_problem_json(problem_file) stages = step3.get_stages(plan, problem_json, problem_file) objectList = copy.deepcopy(stages["objects"]) self.assertTrue(len(objectList) > 1)
def test_integration_predicate_each_stage_step123(self): domain_file = "../../input/domain_blocks.pddl" problem_file = "../../input/bw08.pddl" predicates_list = dom_par.get_domain_json( "../../input/domain_blocks.pddl") plan = step1.get_plan(domain_file, problem_file) problem_json = step2.get_problem_json(problem_file, predicates_list) stages = step3.get_stages(plan, problem_json, problem_file, predicates_list) self.assertTrue(stages)
def test_integration_predicates_object_list_step123(self): domain_file = "../../input/domain_blocks.pddl" problem_file = "../../input/bw08.pddl" predicates_list = dom_par.get_domain_json( "../../input/domain_blocks.pddl") plan = step1.get_plan(domain_file, problem_file) problem_json = step2.get_problem_json(problem_file, predicates_list) stages = step3.get_stages(plan, problem_json, problem_file, predicates_list) objectList = copy.deepcopy(stages["objects"]) self.assertTrue(len(objectList) > 1)
def post(self, request, filename, format=None): domain_file = request.data['domain'] problem_file = request.data['problem'] animation_file = json.loads(request.data['animation']) plan = plan_generator.get_plan(domain_file, problem_file) problem_json = problem_parser.get_problem_json(problem_file) stages = predicates_generator.get_stages(plan, problem_json, problem_file) # A file called visualistaion.json will be generated in the folder if successful final = visualisation_generator.get_visualisation_json(stages,animation_file) return Response(final)
def test_integration_predicates_add2_step123(self): domain_file = "../release1.0/domain_blocks.pddl" problem_file = "../release1.0/problems/bw01.pddl" plan = step1.get_plan(domain_file, problem_file) problem_json = step2.get_problem_json(problem_file) stages = step3.get_stages(plan, problem_json, problem_file) objectList = copy.deepcopy(stages["objects"]) stages = copy.deepcopy(stages["stages"]) register = 1 for counter in range(0, len(stages)): if("remove" in stages[counter].keys()): register += 1 self.assertEqual(register,len(stages))
def test_integration_predicates_stage_size_step123(self): domain_file = "../release1.0/domain_blocks.pddl" problem_file = "../release1.0/problems/bw01.pddl" plan = step1.get_plan(domain_file, problem_file) problem_json = step2.get_problem_json(problem_file) stages = step3.get_stages(plan, problem_json, problem_file) objectList = copy.deepcopy(stages["objects"]) stages = copy.deepcopy(stages["stages"]) register = 0 for counter in range(0, len(stages)): if len(stages[counter]) > 1: register += 1 self.assertTrue(register > 2)
def test_integration_predicates_add1_step123(self): domain_file = "../../input/domain_blocks.pddl" problem_file = "../../input/bw08.pddl" predicates_list = dom_par.get_domain_json( "../../input/domain_blocks.pddl") plan = step1.get_plan(domain_file, problem_file) problem_json = step2.get_problem_json(problem_file, predicates_list) stages = step3.get_stages(plan, problem_json, problem_file, predicates_list) objectList = copy.deepcopy(stages["objects"]) stages = copy.deepcopy(stages["stages"]) register = 1 for counter in range(0, len(stages)): if ("add" in stages[counter].keys()): register += 1 self.assertEqual(register, len(stages))
def test_integration_number_of_stages_step1234(self): # amount of stages from step 123 domain_file = "../release1.0/domain_blocks.pddl" problem_file = "../release1.0/problems/bw01.pddl" plan = step1.get_plan(domain_file, problem_file) problem_json = step2.get_problem_json(problem_file) stages = step3.get_stages(plan, problem_json, problem_file) objectList = copy.deepcopy(stages["objects"]) stages = copy.deepcopy(stages["stages"]) register = 1 for counter in range(0, len(stages)): if ("add" in stages[counter].keys()): register += 1 # amount of stages from step 4 fileop = open("../release1.0/visualisation.json") strfile = fileop.read() st = json.loads(strfile)["visualStages"] print(register, len(st)) self.assertTrue(len(st) == register)
def get_visualisation_file(): """This function will call the other modules to generate the visualisaiton file. """ if len(sys.argv) < 4: print("some file is missing, please follow the command below to run the program") print("python main.py [dommainfile] [problemfile] [animationprofile]") sys.exit() domain_file = sys.argv[1] problem_file = sys.argv[2] animation_file = sys.argv[3] # read animation profile from json file = open(animation_file) content = file.read() animation_profile = json.loads(content) plan = plan_generator.get_plan(domain_file, problem_file) problem_json = problem_parser.get_problem_json(problem_file) stages = predicates_generator.get_stages(plan, problem_json, problem_file) with open('blockstage.json', 'w') as outfile: json.dump(stages, outfile)
def test_integration_api_result(self): self.assertTrue( step1.get_plan("../release1.0/domain_blocks.pddl", "../release1.0/problems/bw01.pddl"))
def test_integration_input_domain_step_12(self): step1.get_plan("../../input/domain_blocks.pddl", "../../input/bw08.pddl") with open("../../input/bw08.pddl", "r") as f1: problemTest = f1.read() self.assertTrue(problemTest)
def test_integration_api_result(self): self.assertTrue( step1.get_plan("../../input/domain_blocks.pddl", "../../input/bw08.pddl"))