diff --git a/justfile b/justfile index 74964eae..41f9c7c6 100644 --- a/justfile +++ b/justfile @@ -6,11 +6,11 @@ ci: ci-up-solve ci-up-val # Run planning tests for UP integration ci-up-solve: - python3 planning/unified/deps/unified-planning/up_test_cases/report.py aries + python3 planning/unified/deps/unified-planning/up_test_cases/report.py aries -e up_aries_tests # Run validation tests for UP integration ci-up-val: - python3 planning/unified/deps/unified-planning/up_test_cases/report.py aries-val + python3 planning/unified/deps/unified-planning/up_test_cases/report.py aries-val -e up_aries_tests # Solve a UP test case up-solve problem: diff --git a/planning/unified/plugin/up_aries_tests/__init__.py b/planning/unified/plugin/up_aries_tests/__init__.py new file mode 100644 index 00000000..3f1611bb --- /dev/null +++ b/planning/unified/plugin/up_aries_tests/__init__.py @@ -0,0 +1,26 @@ +from unified_planning.shortcuts import * +from unified_planning.test import TestCase +import unified_planning.model.scheduling as sched + + +def get_test_cases(): + """Creates on test case for each function starting with `test_` in the file""" + res = {} + gens = [(name.removeprefix('test_'), fn) for name, fn in globals().items() + if callable(fn) and fn.__module__ == __name__ and name.startswith('test_')] + + for (name, generator) in gens: + print(name) + res[name] = generator() + + return res + + +def test_sched_bool_param(): + problem = sched.SchedulingProblem() + + a = problem.add_activity('a', 10) + + a.add_parameter('p', BoolType()) + + return TestCase(problem=problem, solvable=True)