diff --git a/integration-tests/readme.txt b/integration-tests/readme.txt index 60ff3d3fd9f2f36a5ad383aaa663e4e68d3e8c57..19008119f2502e2d9ad083f5f860ddc66a5192c7 100644 --- a/integration-tests/readme.txt +++ b/integration-tests/readme.txt @@ -21,7 +21,8 @@ Directories Launching ----------------- -Simply run ant with default target in build directory to start tests. Target 'clean' cleans everything afterwards. +Tests are run automatically in Continuous Integration process. +You can also run them manually. To do that, simply run ant with default target in build directory (integration-tests/build). Testing is fully automatic. Script returns non-zero value if error occurs. When testing is launched, following things happen: - source code is fetched from the repository and is built @@ -29,5 +30,7 @@ When testing is launched, following things happen: - all pieces of software are launched - Approriate assertions are made to ensure the result is ok. Exact reason of an error can be checked by reading standard output or playground/all_err_log.txt. -If you want to restart tests without building from source, delete playground directory and leave install directory untouched. +Launching run.sh again will redo the tests without rebuilding or reinstaling anything. +To reinstall everything without rebuilding binaries, delete playground directory. +If you want to starting tests from the scratch, run ant with 'clean' target before. diff --git a/integration-tests/run.sh b/integration-tests/run.sh index 62e49052a4e9cbacbff45067b943be6f8fd818bd..f1fbb9e5aa0d22e5025112f157ef0a7dccaf6e70 100755 --- a/integration-tests/run.sh +++ b/integration-tests/run.sh @@ -3,7 +3,8 @@ # Implementation assumptions: # - the current directory after calling a function does not change -TEST_FAILED=false # if true then some tests failed +# ----------------------------- configuration +TIME_TO_COMPLETE=40 # time (in seconds) needed by the whole pipline to process everything SVN_PATHS="/opt/local/bin /usr/bin" LSOF_PATHS="/usr/sbin" @@ -20,6 +21,9 @@ LIMS_CLIENT=$WORK/$LIMS_CLIENT_NAME DATA=$WORK/data ERR_LOG=$WORK/all_err_log.txt +# ---- global state +TEST_FAILED=false # working variable, if true then some tests failed + # -------------------------- instalation function get_env_path { @@ -49,7 +53,7 @@ function build_zips { rm -fr $RSC run_svn checkout svn+ssh://source.systemsx.ch/repos/cisd/build_resources/trunk $RSC cd $RSC - ./build.sh lims + ./build.sh lims_webclient ./build.sh datamover ./build.sh etlserver cd .. @@ -337,7 +341,7 @@ function launch_tests { sleep 4 generate_test_data - sleep 30 + sleep $TIME_TO_COMPLETE switch_processing_pipeline "off" } diff --git a/integration-tests/templates/lims-client/commands.txt b/integration-tests/templates/lims-client/commands.txt index b17ff863049ab4c33d7852e9d2699a4b243a5d1b..7a43e4f8051ae621803ca70204eb49e283ce6d29 100644 --- a/integration-tests/templates/lims-client/commands.txt +++ b/integration-tests/templates/lims-client/commands.txt @@ -1,5 +1,6 @@ login -o 3V -u test -p <password> register-project NEMO +register-controls testdata/controlMaterials.txt register-master-plate testdata/MP001-1.txt code1 register-master-plate testdata/MP002-1.txt code2 register-dilution-plates testdata/exampleDilutionPlates.txt diff --git a/integration-tests/templates/lims-client/testdata/controlMaterials.txt b/integration-tests/templates/lims-client/testdata/controlMaterials.txt new file mode 100644 index 0000000000000000000000000000000000000000..0f479386bfe9231dfdac1e7345bebb2d8e5fe55c --- /dev/null +++ b/integration-tests/templates/lims-client/testdata/controlMaterials.txt @@ -0,0 +1,3 @@ +code description +SCRAM scrambled materials +GFP Green fluorescent protein \ No newline at end of file