diff options
author | Christian Kamm <mail@ckamm.de> | 2019-01-08 17:15:17 +0300 |
---|---|---|
committer | Olivier Goffart <olivier@woboq.com> | 2019-01-18 12:59:12 +0300 |
commit | 44a579d32ca8ed9ffa588ad44de448ae5a42c75a (patch) | |
tree | cc19f229ca962f3ba727d3746f63308e726da76b /test/testsyncjournaldb.cpp | |
parent | 67f5585033837c72bd8e9a10432c9badaabf17ac (diff) |
vfs: Allow retrieving of pin state paths and flags
Diffstat (limited to 'test/testsyncjournaldb.cpp')
-rw-r--r-- | test/testsyncjournaldb.cpp | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/test/testsyncjournaldb.cpp b/test/testsyncjournaldb.cpp index 6a0cedd72..960e9f8e3 100644 --- a/test/testsyncjournaldb.cpp +++ b/test/testsyncjournaldb.cpp @@ -352,7 +352,12 @@ private slots: return *state; }; + _db.wipePinStateForPathAndBelow(""); + auto list = _db.rawPinStates(); + QCOMPARE(list->size(), 0); + // Make a thrice-nested setup + make("", PinState::AlwaysLocal); make("local", PinState::AlwaysLocal); make("online", PinState::OnlineOnly); make("inherit", PinState::Inherited); @@ -362,12 +367,15 @@ private slots: make(QByteArray(base) + "online", PinState::OnlineOnly); for (auto base2 : {"local/", "online/", "inherit/"}) { - make(QByteArray(base) + base2 + "/inherit", PinState::Inherited); - make(QByteArray(base) + base2 + "/local", PinState::AlwaysLocal); - make(QByteArray(base) + base2 + "/online", PinState::OnlineOnly); + make(QByteArray(base) + base2 + "inherit", PinState::Inherited); + make(QByteArray(base) + base2 + "local", PinState::AlwaysLocal); + make(QByteArray(base) + base2 + "online", PinState::OnlineOnly); } } + list = _db.rawPinStates(); + QCOMPARE(list->size(), 4 + 9 + 27); + // Baseline direct checks (the fallback for unset root pinstate is AlwaysLocal) QCOMPARE(get("local"), PinState::AlwaysLocal); QCOMPARE(get("online"), PinState::OnlineOnly); @@ -417,12 +425,16 @@ private slots: QCOMPARE(getRaw("local/local"), PinState::Inherited); QCOMPARE(getRaw("local/local/local"), PinState::Inherited); QCOMPARE(getRaw("local/local/online"), PinState::Inherited); + list = _db.rawPinStates(); + QCOMPARE(list->size(), 4 + 9 + 27 - 4); // Wiping everything _db.wipePinStateForPathAndBelow(""); QCOMPARE(getRaw(""), PinState::Inherited); QCOMPARE(getRaw("local"), PinState::Inherited); QCOMPARE(getRaw("online"), PinState::Inherited); + list = _db.rawPinStates(); + QCOMPARE(list->size(), 0); } private: |