← Back to team overview

sikuli-driver team mailing list archive

Re: [Question #242173]: Sikuli X 1.0.1 uses TextTestRunner or JythonScriptRunner to execution the script ?

 

Question #242173 on Sikuli changed:
https://answers.launchpad.net/sikuli/+question/242173

RaiMan proposed the following answer:
@obiwan-92
--- You say: it's ScriptRunner.java who launch the python in your sikuli folder.

with 1.0.1+ things have changed a little bit (though the all over image you are giving in your answer is ok):
- when scripts are run from command line, then it is always org.sikuli.basics.SikuliScript.java, that will evaluate the command line and finally delegate the script run (no matter wether sikuli-ide.jar or sikuli-script.jar is used)
- when scripts are run from inside the IDE, then the preparations to run the current script are done in org.sikuli.ide.Sikuli.IDE.java, but the delegation of the script run targets the same Java class

In preperation for supporting more than one scripting language in the future (e.g. JRuby), the script running is done by a service, that implements org.sikuli.basics.IScriptrunner.
The service is selected according to the scripting language (signalled by the ending of the script file contained in the .sikuli folder). In the case of Jython/Python ( .py), the finally acting script runner is org.sikuli.scriptrunner.JythonScriptRunner.java.

Hence some time later this year, there will be an
org.sikuli.scriptrunner.JRubyScriptRunner.java and support for JRuby in
the IDE.

@Aravind:
TextTestRunner has nothing to do with Sikuli's script running features: it is part of the Python/Jython unit test modul and might be used by you in your Sikuli script for unit testing.
The confusion might arise from the fact, that RC3 had some basic support for some unit testing based solely on the setup of some test-def()'s. This is no longer available in 1.0+.

-- 
You received this question notification because you are a member of
Sikuli Drivers, which is an answer contact for Sikuli.