summaryrefslogtreecommitdiffstats
path: root/tests/testrenumber.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/testrenumber.cpp')
-rw-r--r--tests/testrenumber.cpp38
1 files changed, 38 insertions, 0 deletions
diff --git a/tests/testrenumber.cpp b/tests/testrenumber.cpp
new file mode 100644
index 000000000..86ad6fae4
--- /dev/null
+++ b/tests/testrenumber.cpp
@@ -0,0 +1,38 @@
+#include "windowtitleupdate.h"
+#include "testrenumber.h"
+#include "dive.h"
+#include "file.h"
+#include "divelist.h"
+#include <QTextStream>
+
+void TestRenumber::setup()
+{
+ WindowTitleUpdate *wtu = new WindowTitleUpdate();
+ QCOMPARE(parse_file(SUBSURFACE_SOURCE "/dives/test47.xml"), 0);
+ process_dives(false, false);
+ dive_table.preexisting = dive_table.nr;
+}
+
+void TestRenumber::testMerge()
+{
+ QCOMPARE(parse_file(SUBSURFACE_SOURCE "/dives/test47b.xml"), 0);
+ process_dives(true, false);
+ QCOMPARE(dive_table.nr, 1);
+ QCOMPARE(unsaved_changes(), 1);
+ mark_divelist_changed(false);
+ dive_table.preexisting = dive_table.nr;
+}
+
+void TestRenumber::testMergeAndAppend()
+{
+ QCOMPARE(parse_file(SUBSURFACE_SOURCE "/dives/test47c.xml"), 0);
+ process_dives(true, false);
+ QCOMPARE(dive_table.nr, 2);
+ QCOMPARE(unsaved_changes(), 1);
+ struct dive *d = get_dive(1);
+ QVERIFY(d != NULL);
+ if (d)
+ QCOMPARE(d->number, 2);
+}
+
+QTEST_MAIN(TestRenumber)