| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277 |
- #include <QTest>
- #include "capabilities.h"
- class TestCapabilities : public QObject
- {
- Q_OBJECT
- private slots:
- void testPushNotificationsAvailable_pushNotificationsForActivitiesAvailable_returnTrue()
- {
- QStringList typeList;
- typeList.append("activities");
- QVariantMap notifyPushMap;
- notifyPushMap["type"] = typeList;
- QVariantMap capabilitiesMap;
- capabilitiesMap["notify_push"] = notifyPushMap;
- const auto &capabilities = OCC::Capabilities(capabilitiesMap);
- const auto activitiesPushNotificationsAvailable = capabilities.availablePushNotifications().testFlag(OCC::PushNotificationType::Activities);
- QCOMPARE(activitiesPushNotificationsAvailable, true);
- }
- void testPushNotificationsAvailable_pushNotificationsForActivitiesNotAvailable_returnFalse()
- {
- QStringList typeList;
- typeList.append("noactivities");
- QVariantMap notifyPushMap;
- notifyPushMap["type"] = typeList;
- QVariantMap capabilitiesMap;
- capabilitiesMap["notify_push"] = notifyPushMap;
- const auto &capabilities = OCC::Capabilities(capabilitiesMap);
- const auto activitiesPushNotificationsAvailable = capabilities.availablePushNotifications().testFlag(OCC::PushNotificationType::Activities);
- QCOMPARE(activitiesPushNotificationsAvailable, false);
- }
- void testPushNotificationsAvailable_pushNotificationsForFilesAvailable_returnTrue()
- {
- QStringList typeList;
- typeList.append("files");
- QVariantMap notifyPushMap;
- notifyPushMap["type"] = typeList;
- QVariantMap capabilitiesMap;
- capabilitiesMap["notify_push"] = notifyPushMap;
- const auto &capabilities = OCC::Capabilities(capabilitiesMap);
- const auto filesPushNotificationsAvailable = capabilities.availablePushNotifications().testFlag(OCC::PushNotificationType::Files);
- QCOMPARE(filesPushNotificationsAvailable, true);
- }
- void testPushNotificationsAvailable_pushNotificationsForFilesNotAvailable_returnFalse()
- {
- QStringList typeList;
- typeList.append("nofiles");
- QVariantMap notifyPushMap;
- notifyPushMap["type"] = typeList;
- QVariantMap capabilitiesMap;
- capabilitiesMap["notify_push"] = notifyPushMap;
- const auto &capabilities = OCC::Capabilities(capabilitiesMap);
- const auto filesPushNotificationsAvailable = capabilities.availablePushNotifications().testFlag(OCC::PushNotificationType::Files);
- QCOMPARE(filesPushNotificationsAvailable, false);
- }
- void testPushNotificationsAvailable_pushNotificationsForNotificationsAvailable_returnTrue()
- {
- QStringList typeList;
- typeList.append("notifications");
- QVariantMap notifyPushMap;
- notifyPushMap["type"] = typeList;
- QVariantMap capabilitiesMap;
- capabilitiesMap["notify_push"] = notifyPushMap;
- const auto &capabilities = OCC::Capabilities(capabilitiesMap);
- const auto notificationsPushNotificationsAvailable = capabilities.availablePushNotifications().testFlag(OCC::PushNotificationType::Notifications);
- QCOMPARE(notificationsPushNotificationsAvailable, true);
- }
- void testPushNotificationsAvailable_pushNotificationsForNotificationsNotAvailable_returnFalse()
- {
- QStringList typeList;
- typeList.append("nonotifications");
- QVariantMap notifyPushMap;
- notifyPushMap["type"] = typeList;
- QVariantMap capabilitiesMap;
- capabilitiesMap["notify_push"] = notifyPushMap;
- const auto &capabilities = OCC::Capabilities(capabilitiesMap);
- const auto notificationsPushNotificationsAvailable = capabilities.availablePushNotifications().testFlag(OCC::PushNotificationType::Notifications);
- QCOMPARE(notificationsPushNotificationsAvailable, false);
- }
- void testPushNotificationsAvailable_pushNotificationsNotAvailable_returnFalse()
- {
- const auto &capabilities = OCC::Capabilities(QVariantMap());
- const auto activitiesPushNotificationsAvailable = capabilities.availablePushNotifications().testFlag(OCC::PushNotificationType::Activities);
- const auto filesPushNotificationsAvailable = capabilities.availablePushNotifications().testFlag(OCC::PushNotificationType::Files);
- const auto notificationsPushNotificationsAvailable = capabilities.availablePushNotifications().testFlag(OCC::PushNotificationType::Notifications);
- QCOMPARE(activitiesPushNotificationsAvailable, false);
- QCOMPARE(filesPushNotificationsAvailable, false);
- QCOMPARE(notificationsPushNotificationsAvailable, false);
- }
- void testPushNotificationsWebSocketUrl_urlAvailable_returnUrl()
- {
- QString websocketUrl("testurl");
- QVariantMap endpointsMap;
- endpointsMap["websocket"] = websocketUrl;
- QVariantMap notifyPushMap;
- notifyPushMap["endpoints"] = endpointsMap;
- QVariantMap capabilitiesMap;
- capabilitiesMap["notify_push"] = notifyPushMap;
- const auto &capabilities = OCC::Capabilities(capabilitiesMap);
- QCOMPARE(capabilities.pushNotificationsWebSocketUrl(), websocketUrl);
- }
- void testUserStatus_userStatusAvailable_returnTrue()
- {
- QVariantMap userStatusMap;
- userStatusMap["enabled"] = true;
- QVariantMap capabilitiesMap;
- capabilitiesMap["user_status"] = userStatusMap;
- const OCC::Capabilities capabilities(capabilitiesMap);
- QVERIFY(capabilities.userStatus());
- }
- void testUserStatus_userStatusNotAvailable_returnFalse()
- {
- QVariantMap userStatusMap;
- userStatusMap["enabled"] = false;
- QVariantMap capabilitiesMap;
- capabilitiesMap["user_status"] = userStatusMap;
- const OCC::Capabilities capabilities(capabilitiesMap);
- QVERIFY(!capabilities.userStatus());
- }
- void testUserStatus_userStatusNotInCapabilites_returnFalse()
- {
- QVariantMap capabilitiesMap;
- const OCC::Capabilities capabilities(capabilitiesMap);
- QVERIFY(!capabilities.userStatus());
- }
- void testUserStatusSupportsEmoji_supportsEmojiAvailable_returnTrue()
- {
- QVariantMap userStatusMap;
- userStatusMap["enabled"] = true;
- userStatusMap["supports_emoji"] = true;
- QVariantMap capabilitiesMap;
- capabilitiesMap["user_status"] = userStatusMap;
- const OCC::Capabilities capabilities(capabilitiesMap);
- QVERIFY(capabilities.userStatus());
- }
- void testUserStatusSupportsEmoji_supportsEmojiNotAvailable_returnFalse()
- {
- QVariantMap userStatusMap;
- userStatusMap["enabled"] = true;
- userStatusMap["supports_emoji"] = false;
- QVariantMap capabilitiesMap;
- capabilitiesMap["user_status"] = userStatusMap;
- const OCC::Capabilities capabilities(capabilitiesMap);
- QVERIFY(!capabilities.userStatusSupportsEmoji());
- }
- void testUserStatusSupportsEmoji_supportsEmojiNotInCapabilites_returnFalse()
- {
- QVariantMap userStatusMap;
- userStatusMap["enabled"] = true;
- QVariantMap capabilitiesMap;
- capabilitiesMap["user_status"] = userStatusMap;
- const OCC::Capabilities capabilities(capabilitiesMap);
- QVERIFY(!capabilities.userStatusSupportsEmoji());
- }
-
- void testShareDefaultPermissions_defaultSharePermissionsNotInCapabilities_returnZero()
- {
- QVariantMap filesSharingMap;
- filesSharingMap["api_enabled"] = false;
-
- QVariantMap capabilitiesMap;
- capabilitiesMap["files_sharing"] = filesSharingMap;
-
- const OCC::Capabilities capabilities(capabilitiesMap);
- const auto defaultSharePermissionsNotInCapabilities = capabilities.shareDefaultPermissions();
- QCOMPARE(defaultSharePermissionsNotInCapabilities, {});
- }
-
- void testShareDefaultPermissions_defaultSharePermissionsAvailable_returnPermissions()
- {
- QVariantMap filesSharingMap;
- filesSharingMap["api_enabled"] = true;
- filesSharingMap["default_permissions"] = 31;
-
- QVariantMap capabilitiesMap;
- capabilitiesMap["files_sharing"] = filesSharingMap;
-
- const OCC::Capabilities capabilities(capabilitiesMap);
- const auto defaultSharePermissionsAvailable = capabilities.shareDefaultPermissions();
- QCOMPARE(defaultSharePermissionsAvailable, 31);
- }
- void testBulkUploadAvailable_bulkUploadAvailable_returnTrue()
- {
- QVariantMap bulkuploadMap;
- bulkuploadMap["bulkupload"] = "1.0";
- QVariantMap capabilitiesMap;
- capabilitiesMap["dav"] = bulkuploadMap;
- const auto &capabilities = OCC::Capabilities(capabilitiesMap);
- const auto bulkuploadAvailable = capabilities.bulkUpload();
- QCOMPARE(bulkuploadAvailable, true);
- }
- void testFilesLockAvailable_filesLockAvailable_returnTrue()
- {
- QVariantMap filesMap;
- filesMap["locking"] = "1.0";
- QVariantMap capabilitiesMap;
- capabilitiesMap["files"] = filesMap;
- const auto &capabilities = OCC::Capabilities(capabilitiesMap);
- const auto filesLockAvailable = capabilities.filesLockAvailable();
- QCOMPARE(filesLockAvailable, true);
- }
- };
- QTEST_GUILESS_MAIN(TestCapabilities)
- #include "testcapabilities.moc"
|