Add test for profile data

There was a TestProfile but that was a stub that did not test anything.

We have an export function that serialises the profile data
(including lots of derived data like deco information and
cylinder pressure interpolation). So here is now a simple
tests that can detect regressions in the profle.

Signed-off-by: Robert C. Helling <helling@atdotde.de>
This commit is contained in:
Robert C. Helling 2020-05-02 21:38:55 +02:00 committed by Dirk Hohndel
parent 6066ead0d5
commit b3270222fd
4 changed files with 22039 additions and 3 deletions

11585
dives/abitofeverything.ssrf Normal file

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -3,10 +3,22 @@
#include "core/divesite.h"
#include "core/trip.h"
#include "core/file.h"
#include "core/save-profiledata.h"
void TestProfile::testRedCeiling()
void TestProfile::testProfileExport()
{
parse_file("../dives/deep.xml", &dive_table, &trip_table, &dive_site_table);
parse_file("../dives/abitofeverything.ssrf", &dive_table, &trip_table, &dive_site_table);
save_profiledata("exportprofile.csv", false);
QFile org("../dives/exportprofilereference.csv");
org.open(QFile::ReadOnly);
QFile out("exportprofile.csv");
out.open(QFile::ReadOnly);
QTextStream orgS(&org);
QTextStream outS(&out);
QString readin = orgS.readAll();
QString written = outS.readAll();
QCOMPARE(readin, written);
}
QTEST_GUILESS_MAIN(TestProfile)

View file

@ -8,7 +8,7 @@
class TestProfile : public QObject {
Q_OBJECT
private slots:
void testRedCeiling();
void testProfileExport();
};
#endif