]> git.lyx.org Git - lyx.git/blobdiff - development/autotests/README
ctests: invert ja ps2pdf Additional, UserGuide
[lyx.git] / development / autotests / README
index 6f437cdc7ce7b4ff55fb5adc42a434ca113cf61c..bd28751216f6657fb94e8b88cde1201fa362e63f 100644 (file)
@@ -19,6 +19,7 @@ The following programs are needed by the testing framework:
          be built before running the tests
 - wmctrl
 - pcregrep
+- Tcl/Tk (wish8.5)
 
 
 USAGE
@@ -37,6 +38,19 @@ as argument to the run-tests.sh script, e.g.:
 For failed tests you get a folder with the logs that help you identify
 the problem.
 
+Despite the efforts to avoid it, sometimes a test fails simply because
+the key presses provided to the process are someway lost due to slow
+hardware, slow window manager, too beautiful and animated desktop,...
+When this happens, the tests should be run with a higher delay among
+key presses. The default of 100 milliseconds can be changed by setting
+the XVKBD_DELAY environment variable.
+
+The standard xvkbd available on your system may be used to run the
+tests. However, a custom xvkbd may optionally be used that forbids the
+testing framework to type into non-LyX windows and may mitigate the
+issue described right above. This option can be activated by defining
+the XVKBD_HACKED environment variable to any value.
+
 
 SYNTAX
 ----------------------------------------------------------------------
@@ -44,6 +58,19 @@ Each test-case script should be named as xxx-in.txt. The syntax of the
 script is described in detail in the sample test-case script
 hello-world-in.txt.
 
+Alternatively, a test-case can be an arbitrary executable script with
+name ending in "-in.sh", that is launched inside a dedicated folder,
+and to which the variables LYX_ROOT and LYX_EXE are exported, so that
+you can easily reference the root LyX sources folder and the program
+executable. The test script needs to complete with a no-error return
+value (zero), otherwise a failure is reported (see export-in.sh for
+an example).
+
+Whenever LyX is launched, in both cases, the LYX_USERDIR variable is
+set to autotests/out-home, in order to rely on clean preferences
+settings (use make clean or make without arguments in order to let
+that folder be created again).
+
 
 TODO
 ----------------------------------------------------------------------
@@ -54,3 +81,7 @@ the condition we're waiting for).
 Allow for tests with multiple LyX instances, e.g., for copy&paste
 across LyX instances, or multiple applications, i.e., for testing
 the interaction between LyX and other applications.
+
+The modified xvkbd forces the focus on the specified target window
+(for safety reasons).  Allow for a temporary disable of this within
+the scripts, whenever we need to interact with a pop-up dialog.