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)
Exemple #9
0
    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)
Exemple #14
0
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)
Exemple #17
0
 def test_integration_api_result(self):
     self.assertTrue(
         step1.get_plan("../../input/domain_blocks.pddl",
                        "../../input/bw08.pddl"))