diff options
author | Berthold Stoeger <bstoeger@mail.tuwien.ac.at> | 2019-03-03 15:12:22 +0100 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2019-04-12 18:19:07 +0300 |
commit | 82af1b2377cec03a989f86b8009d4ac226c6541e (patch) | |
tree | a875f194f7174c8673b2f7bd5cc43aa8ca3c51c6 /tests/testmerge.cpp | |
parent | 37146c5742503becf75468fb07aab56011cb9101 (diff) | |
download | subsurface-82af1b2377cec03a989f86b8009d4ac226c6541e.tar.gz |
Undo: make undo-system dive site-aware
As opposed to dive trips, dive sites were always directly added
to the global table, even on import. Instead, parse the divesites
into a distinct table and merge them on import.
Currently, this does not do any merging of dive sites, i.e. dive
sites are considered as either equal or different. Nevertheless,
merging of data should be rather easy to implement and simply
follow the code of the dive merging.
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
Diffstat (limited to 'tests/testmerge.cpp')
-rw-r--r-- | tests/testmerge.cpp | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/tests/testmerge.cpp b/tests/testmerge.cpp index 70f22ee73..c8a103c82 100644 --- a/tests/testmerge.cpp +++ b/tests/testmerge.cpp @@ -23,10 +23,11 @@ void TestMerge::testMergeEmpty() */ struct dive_table table = { 0 }; struct trip_table trips = { 0 }; - QCOMPARE(parse_file(SUBSURFACE_TEST_DATA "/dives/test47.xml", &table, &trips, &dive_site_table), 0); - add_imported_dives(&table, &trips, IMPORT_MERGE_ALL_TRIPS); - QCOMPARE(parse_file(SUBSURFACE_TEST_DATA "/dives/test48.xml", &table, &trips, &dive_site_table), 0); - add_imported_dives(&table, &trips, IMPORT_MERGE_ALL_TRIPS); + struct dive_site_table sites = { 0 }; + QCOMPARE(parse_file(SUBSURFACE_TEST_DATA "/dives/test47.xml", &table, &trips, &sites), 0); + add_imported_dives(&table, &trips, &sites, IMPORT_MERGE_ALL_TRIPS); + QCOMPARE(parse_file(SUBSURFACE_TEST_DATA "/dives/test48.xml", &table, &trips, &sites), 0); + add_imported_dives(&table, &trips, &sites, IMPORT_MERGE_ALL_TRIPS); QCOMPARE(save_dives("./testmerge47+48.ssrf"), 0); QFile org(SUBSURFACE_TEST_DATA "/dives/test47+48.xml"); org.open(QFile::ReadOnly); @@ -48,10 +49,11 @@ void TestMerge::testMergeBackwards() */ struct dive_table table = { 0 }; struct trip_table trips = { 0 }; - QCOMPARE(parse_file(SUBSURFACE_TEST_DATA "/dives/test48.xml", &table, &trips, &dive_site_table), 0); - add_imported_dives(&table, &trips, IMPORT_MERGE_ALL_TRIPS); - QCOMPARE(parse_file(SUBSURFACE_TEST_DATA "/dives/test47.xml", &table, &trips, &dive_site_table), 0); - add_imported_dives(&table, &trips, IMPORT_MERGE_ALL_TRIPS); + struct dive_site_table sites = { 0 }; + QCOMPARE(parse_file(SUBSURFACE_TEST_DATA "/dives/test48.xml", &table, &trips, &sites), 0); + add_imported_dives(&table, &trips, &sites, IMPORT_MERGE_ALL_TRIPS); + QCOMPARE(parse_file(SUBSURFACE_TEST_DATA "/dives/test47.xml", &table, &trips, &sites), 0); + add_imported_dives(&table, &trips, &sites, IMPORT_MERGE_ALL_TRIPS); QCOMPARE(save_dives("./testmerge47+48.ssrf"), 0); QFile org(SUBSURFACE_TEST_DATA "/dives/test47+48.xml"); org.open(QFile::ReadOnly); |