jason-lang / jason

Jason is a fully-fledged interpreter for an extended version of AgentSpeak, a BDI agent-oriented logic programming language.
http://jason-lang.github.io
GNU Lesser General Public License v3.0
224 stars 67 forks source link

Develop #70

Closed cleberjamaral closed 4 years ago

cleberjamaral commented 4 years ago

Main improvements:

Now tests are being shutdown quicker. It is periodically checking if all tester_agents already finished their tasks and just after that it shut down, if the tests are short it will take about 3 seconds. For more elaborated tests it is according to the time they take.

IMPORTANT: There is a timeout hook configured for 600 seconds (10 minutes). This hook will shut down the tests after this time. It is not a good solution. For the future we may need a way to set this time.

Now the tests tool is fully embedded which means that other jason/jacamo project may create tester_agents and use the test library from the jar file just referring to "$jasonJar" in the path of an asl. The default folder for tester agents is "src/test/jason/asl".

IMPORTANT 1: All agents in this folder should be tester_agent (i.e., should { include("$jasonJar/test/jason/inc/tester_agent.asl") }). All agents in this folder will be automatically launched. IMPORTANT 2: The other agents of the project should be in one of the default folders "src/agt" and/or "src/asl". Example, a project with an agent called bob should have its file for instance at src/asl/bob.asl and its tester agent can set in a file at "src/test/jason/asl/test_bob.asl".

Another change is referred to te tester_agent skeleton which now is automatically launching the test plans. In case that it is not desired to launch a test, the user can just remove the test annotation of the plan(s).