Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/owncloud/client.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Kamm <mail@ckamm.de>2017-03-20 16:28:32 +0300
committerckamm <mail@ckamm.de>2017-03-21 19:07:35 +0300
commitf67989afea6c2c98b6a3d2f4ee12ca0b01df97c8 (patch)
treeab656e3473fce7bd8575365c06f366f63c3c7d08 /test/testfolderman.cpp
parent14fef4a0d3d259b538f59c8831cf65719c642f3c (diff)
Wizards: Never propose an existing folder for syncing #5597
Diffstat (limited to 'test/testfolderman.cpp')
-rw-r--r--test/testfolderman.cpp48
1 files changed, 48 insertions, 0 deletions
diff --git a/test/testfolderman.cpp b/test/testfolderman.cpp
index e62437bdd..b6e6478f5 100644
--- a/test/testfolderman.cpp
+++ b/test/testfolderman.cpp
@@ -153,6 +153,54 @@ private slots:
QSKIP("Test not supported with Qt4", SkipSingle);
#endif
}
+
+ void testFindGoodPathForNewSyncFolder()
+ {
+#if QT_VERSION >= QT_VERSION_CHECK(5, 1, 0)
+ // SETUP
+
+ QTemporaryDir dir;
+ ConfigFile::setConfDir(dir.path()); // we don't want to pollute the user's config file
+ QVERIFY(dir.isValid());
+ QDir dir2(dir.path());
+ QVERIFY(dir2.mkpath("sub/ownCloud1/folder/f"));
+ QVERIFY(dir2.mkpath("ownCloud"));
+ QVERIFY(dir2.mkpath("ownCloud2"));
+ QVERIFY(dir2.mkpath("ownCloud2/foo"));
+ QVERIFY(dir2.mkpath("sub/free"));
+ QVERIFY(dir2.mkpath("free2/sub"));
+ QString dirPath = dir2.canonicalPath();
+
+ AccountPtr account = Account::create();
+ QUrl url("http://example.de");
+ HttpCredentialsTest *cred = new HttpCredentialsTest("testuser", "secret");
+ account->setCredentials(cred);
+ account->setUrl( url );
+
+ AccountStatePtr newAccountState(new AccountState(account));
+ FolderMan *folderman = FolderMan::instance();
+ QCOMPARE(folderman, &_fm);
+ QVERIFY(folderman->addFolder(newAccountState.data(), folderDefinition(dirPath + "/sub/ownCloud/")));
+ QVERIFY(folderman->addFolder(newAccountState.data(), folderDefinition(dirPath + "/ownCloud2/")));
+
+ // TEST
+
+ QCOMPARE(folderman->findGoodPathForNewSyncFolder(dirPath + "/oc", url),
+ QString(dirPath + "/oc"));
+ QCOMPARE(folderman->findGoodPathForNewSyncFolder(dirPath + "/ownCloud", url),
+ QString(dirPath + "/ownCloud3"));
+ QCOMPARE(folderman->findGoodPathForNewSyncFolder(dirPath + "/ownCloud2", url),
+ QString(dirPath + "/ownCloud22"));
+ QCOMPARE(folderman->findGoodPathForNewSyncFolder(dirPath + "/ownCloud2/foo", url),
+ QString(dirPath + "/ownCloud2/foo"));
+ QCOMPARE(folderman->findGoodPathForNewSyncFolder(dirPath + "/ownCloud2/bar", url),
+ QString(dirPath + "/ownCloud2/bar"));
+ QCOMPARE(folderman->findGoodPathForNewSyncFolder(dirPath + "/sub", url),
+ QString(dirPath + "/sub2"));
+#else
+ QSKIP("Test not supported with Qt4", SkipSingle);
+#endif
+ }
};
QTEST_APPLESS_MAIN(TestFolderMan)