Comprehensive integration tests for LPhyBeast + BEAST2 tutorials
prerelease.xml defines the dependencies of lphybeast and LPhyBeastExt, it also can be used to download their SNAPSHOT versions from the Maven repo. These SNAPSHOT versions map to the different versions for testing. The complex tests, therefore, can be done with minimised manual process using NeSI, and also are not engaging with the formal BEAST release framework.
-
working dir is
$HOME/LPhyBeastTest
in NeSI. -
install beast2.7.* under that folder, for example:
tar -xf BEAST.v2.7.*.Linux.x86.tgz
- install lphy 1.6.* under this folder, for example:
unzip lphy-studio-1.6.*.zip -d lphy-studio-1.6.*
-
install all beast2 packages under
$BEAST_LIB
. -
make modified beauti.properties available under that folder.
-
ssh mahuika
-
cd $HOME/LPhyBeastTest
andscp
all required files by alphabetic order into that folder:- beauti.properties, which points to the URL of pre-released versions;
- prerelease.xml, which is for Package Manager.
- beast.txt, which is a NeSI job template for beast runs, see also
runBEAST.sh
; - config.sh, which sets up required environment variables;
- install-pkgs.sl, which submit a job to install the testing version of lphybeast and LPhyBeastExt, and their dependencies;
- runBEAST.sh, which submits 4 jobs (one for each tutorial) to run beast XML, and analyses log and summarises trees.
Note: update the versions in _prerelease.xml and config.sh before scp
.
-
rm install-pkgs.txt
, which contains the previous installation and lphybeast message.rm xmls/* lphybeast/*
, which may contain previous results. -
sbatch install-pkgs.sl
, which installs lphybeast, LPhyBeastExt and their dependencies, then call lphybeast to saves XMLs into the subfolderxmls
. -
ls lphybeast/ xmls/
to check files, or alternativelyvi install-pkgs.txt
to check messages, after the job is done.
-
run
runBEAST.sh
under $HOME/LPhyBeastTest, which will submit one job for each tutorial for testing. -
after all jobs are done, transfer the entire subfolder
xmls
to the local, such asscp -r mahuika:$HOME/LPhyBeastTest/xmls/ $LOCAL/LPhyBeastTest/lphybeast
. The subfolder should contain all beast results. -
run all JUnit tests under
lphybeast.tutorial
, to validate the estimated parameter values.