Mercurial > dedupe
annotate TestSqliteDBLink.cpp @ 81:69a30d9f126e
Make the DBLink reusable.
| author | Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no> |
|---|---|
| date | Thu, 10 Oct 2013 14:12:17 +0200 |
| parents | b5943e4bf676 |
| children |
| rev | line source |
|---|---|
|
2
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
1 #include "SqliteDBLink.hpp" |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
2 #include "TestFramework.hpp" |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
3 |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
4 #include <QtCore/QTemporaryFile> |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
5 |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
6 BOOST_AUTO_TEST_CASE( TestSave ) |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
7 { |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
8 QDateTime now = QDateTime::currentDateTime(); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
9 now = now.addSecs(-1000); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
10 |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
11 QTemporaryFile sqlfile("XXXXXX.sqlite"); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
12 sqlfile.open(); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
13 |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
14 SqliteDBLink db(sqlfile.fileName()); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
15 |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
16 QTemporaryFile testfile("XXXXXX.test"); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
17 testfile.open(); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
18 |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
19 db.addFile(testfile.fileName(), 4, now, "Sau"); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
20 BOOST_REQUIRE(db.existsWithMtime(testfile.fileName(), now)); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
21 { |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
22 const QList<QSharedPointer<FileDBLink::DBInfo> > values = db.values(); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
23 BOOST_REQUIRE_EQUAL(values.size(), 1); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
24 } |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
25 |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
26 now = now.addSecs(1); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
27 |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
28 db.updateFile(testfile.fileName(), 4, now, "Jau"); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
29 BOOST_REQUIRE(db.existsWithMtime(testfile.fileName(), now)); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
30 { |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
31 const QList<QSharedPointer<FileDBLink::DBInfo> > values = db.values(); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
32 BOOST_REQUIRE_EQUAL(values.size(), 1); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
33 } |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
34 |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
35 testfile.write(QByteArray("test")); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
36 testfile.close(); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
37 |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
38 QFileInfo finf(testfile.fileName()); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
39 |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
40 db.updateIfModified(testfile.fileName()); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
41 { |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
42 const QList<QSharedPointer<FileDBLink::DBInfo> > values = db.values(); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
43 BOOST_REQUIRE_EQUAL(values.size(), 1); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
44 |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
45 QSharedPointer<FileDBLink::DBInfo> file = values[0]; |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
46 BOOST_REQUIRE_EQUAL(file->mtime(), finf.lastModified()); |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
47 } |
|
2833b7f8884a
Sql backend is working.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
48 } |
