|
| 1 | +# odml and odml dependent libraries installation tests |
| 2 | + |
| 3 | +Used to document the minimal automated tests for `python-odml` and `odmltools` and not fully automated tests of `odml-ui` installations with a special focus on the execution of command line scripts and gui with different local installation methods. |
| 4 | + |
| 5 | +## Automated odml and dependent library tests |
| 6 | + |
| 7 | +The tests include |
| 8 | +- basic odml import and file loading and saving |
| 9 | +- `odml` command line script execution using realistic example files |
| 10 | + - odmlview |
| 11 | + - odmltordf |
| 12 | + - odmlconversion |
| 13 | +- `odmltools` command line script execution |
| 14 | + - odmlimportdatacite |
| 15 | +- basic odml-ui installation |
| 16 | + |
| 17 | +### Local installation tests |
| 18 | + |
| 19 | +To test the various local installations of odml, execute `run_test_matrix.sh` with option 'A'. odml will be installed into fresh conda environments using `pip install .` and `python setup.py install` and all Python versions >= 3.5. |
| 20 | + |
| 21 | +### odml Test PyPI installation tests |
| 22 | + |
| 23 | +To test the installation of the odml package from Test PyPI, execute `run_test_matrix.sh` with option 'B'. odml will be installed into fresh conda environments using `pip install odml` and all Python versions >= 3.5. |
| 24 | +The package `odml-ui` will be installed as well and all installable odml command line scripts will be tested after the odml installation. |
| 25 | + |
| 26 | +### odmltools Test PyPI installation tests |
| 27 | + |
| 28 | +When executing `run_test_matrix.sh` with option 'C', the odml dependent package `odmltools` will be pip installed into fresh conda environments for all Python versions >= 3.6 from the Test PyPI repository and appropriate conversion tests will be run using the installed command line tool. |
| 29 | + |
| 30 | +### nixodmlconverter Test PyPI installation tests |
| 31 | + |
| 32 | +When executing `run_test_matrix.sh` with option 'D' the odml dependent package `nixodmlconverter` will be pip installed into fresh conda environments for all Python versions >= 3.6 from the Test PyPI repository and appropriate conversion tests will be run using the installed command line tool. |
| 33 | + |
| 34 | +### odml PyPI installation tests |
| 35 | + |
| 36 | +To test the installation of the odml package from PyPI proper, execute `run_test_matrix.sh` with option 'E'. odml will be installed into fresh conda environments using `pip install odml` and all Python versions >= 3.5. |
| 37 | +The package `odml-ui` will be installed as well and all installable odml command line scripts will be tested after the odml installation. |
| 38 | + |
| 39 | +## Manual odml-ui tests |
| 40 | + |
| 41 | +To set up conda environments and run local or Test PyPI installations run the script `run_test_matrix.sh` with option `B` from the current directory. |
| 42 | +Once set up, the conda environments can be used to manually test `odml-ui` as well. |
| 43 | + |
| 44 | +Activate python installation environment |
| 45 | + |
| 46 | + CONDA_ENV_SETUP=pyinst |
| 47 | + CONDA_ENV_PIP=pipinst |
| 48 | + ROOT_DIR=$(pwd) |
| 49 | + cd $ROOT_DIR/resources/test_load |
| 50 | + conda activate ${CONDA_ENV_SETUP} |
| 51 | + odmlui |
| 52 | + |
| 53 | +Run the following most tests: |
| 54 | +- open `test_load\load_v1.odml.xml` |
| 55 | +- check fail message |
| 56 | +- import `test_load\load_v1.odml.xml` |
| 57 | +- save as `pyi_conv.xml` |
| 58 | +- save as `pyi_conv.yaml` |
| 59 | +- save as `pyi_conv.json` |
| 60 | +- open `pyi_conv.xml` |
| 61 | +- open `pyi_conv.yaml` |
| 62 | +- open `pyi_conv.json` |
| 63 | +- check importing a terminology using the document wizard |
| 64 | + |
| 65 | +Exit and switch to pip environment |
| 66 | + |
| 67 | + conda deactivate |
| 68 | + conda activate ${CONDA_ENV_PIP} |
| 69 | + odmlui |
| 70 | + |
| 71 | +Run manual tests again |
| 72 | + |
| 73 | +Test odmltables plugin |
| 74 | + |
| 75 | + pip install odmltables |
| 76 | + pip install odmltables[gui] |
| 77 | + odmlui |
| 78 | + |
| 79 | +Run the following minimal tests |
| 80 | +- open `pyi_conv.xml` |
| 81 | +- use odmltables `convert` button, save as csv file |
| 82 | +- use odmltables `filter` button |
| 83 | + |
| 84 | +Exit, move back to the root and cleanup |
| 85 | + |
| 86 | + cd $ROOT_DIR |
| 87 | + conda deactivate |
| 88 | + rm $ROOT_DIR/resources/test_load/load_v1.odml_converted.xml |
| 89 | + rm $ROOT_DIR/resources/test_load/pyi_conv.json |
| 90 | + rm $ROOT_DIR/resources/test_load/pyi_conv.xml |
| 91 | + rm $ROOT_DIR/resources/test_load/pyi_conv.yaml |
0 commit comments