eugenemel / maven

Maven GUI: Metabolomics Analysis and Visualization Engine
https://github.com/eugenemel/maven/releases
GNU General Public License v3.0
19 stars 9 forks source link

Migrate mass_spec cmake test project into qmake test project with googletests #582

Closed PMSeitzer closed 1 year ago

PMSeitzer commented 1 year ago

Currently, there are a series of maven-associated tests in https://github.com/calico/mass_spec/tree/master/lib/cpp/mzkit/libmzkit

This is OK, but given that the majority of the code is maven_core, it would probably be better to put these test classes directly into the maven as a subrepository (similar to peakdetector and maven_core).

At present, this is a cmake project which also contains various executables for various other tools. It might be nice to restructure everything into qmake, or at least separate out individual executables into separate qmake projects. Alternatively, everything could be ported to qmake - though this has the disadvantage of being tougher to test with other IDEs/frameworks.

Ultimately, this should all probably be set up in such a way as to carry out automatic unit testing on every build. This had been set up for some DIMS work, but has since fallen by the wayside a bit.

PMSeitzer commented 1 year ago

The module could be called maven_tests.

PMSeitzer commented 1 year ago

http://www.robert-puskas.info/2019/09/lod-setting-up-project-with-unit-testing-qt-creator-proper.html

PMSeitzer commented 1 year ago

Note googletests github: https://github.com/google/googletest

PMSeitzer commented 1 year ago

As a part of this work, explore introducing qmake unit tests, e.g. through qt tutorial: See https://doc.qt.io/qt-5/qttestlib-tutorial1-example.html

PMSeitzer commented 1 year ago

A migration might not be a great choice, but if a test is desired that uses qt-specific components, this might be one option.

PMSeitzer commented 1 year ago

A rudimentary testing module, maven_tests, has been developed. Closing this issue.