Closed althonos closed 5 years ago
@althonos unit tests should usually be run in a few seconds (irrespective if it is in CI or not). I was wondering why you think it is important to run the test over all the Mtbls datasets? this could be available as part of the functionality instead
Parsing on all metabolights datasets is mandatory as most mzML files are not following the standard format defined by the HUPO-PSI, so we end up having lots of slight differences that could make the program fail.
I implemented a long testing series to check that mzml2isa would AT LEAST not fail on MTBLS publicly available mzml.
What i will probably be doing instead is just checking 1 file per study as all mzml files in the same study should follow the same (maybe nonstandard) format.
Implemented in v1.0.0
.
Overview
Since the current build can take up to more than an hour, it would be preferable to have more fine-grained tests to use with mzml2isa. While we want to ensure compatibility with MetaboLights studies, it is useless to generate ISA files for the whole set of mzML files.
A new design of test follows that I'll work on implementing in the feat-tests branch.
Design:
using unittest as a testing framework:
File: test_mzml
Test behaviour of
mzml2isa.mzml.mzMLmeta
on an unique, embedded mzML fileFile: test_imzml
Test behaviour of
mzml2isa.mzml.imzMLmeta
on an unique, embedded imzML fileFile: test_mtbls
ftp.ebi.ac.uk/pub/databases/metabolights/public/studies
using pyfilesystem2 to provide an interface to the files without downloading them.File: test_api
Test functions exposed by the
mzml2isa.parsing
moduleFile: test_cli
Test command line interface of
mzML2isa
with several argument valuesFile: test_usermeta_loader
Test importing of piped json, json file and xlsx file containing metadata
New requirements:
https://github.com/PyFilesystem/pyfilesystem2/archive/master.zip