Commit graph

788 commits

Author SHA1 Message Date
Claudio Cambra
b7c2e16aa9 Make client language gender-neutral and more clear
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-06-24 14:36:36 +02:00
alex-z
300446579c Fail build when Windows tests fail. Use GH Actions to build and run Windows tests. Create coverage and uppload it to codecov.io.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-06-10 15:18:54 +03:00
Matthieu Gallien
5f6277b3ee if an exclude file is deleted, skip it and remove it from internal list
ignore files can be removed: not an error so adjust tests

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-05-16 21:00:52 +02:00
alex-z
53654b2a50 Allow manual renaming of files and folders with spaces. Allow uploading invalid file name via the InvalidFileName dialog.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-05-16 18:07:26 +03:00
Claudio Cambra
b6def51945 Fix notifications not being shown when they should be
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-05-16 14:28:33 +02:00
Camila
e4a0d57bc8
Do not replace strings in action links coming from the notification api.
Signed-off-by: Camila <hello@camila.codes>
2022-05-12 12:47:48 +02:00
Matthieu Gallien
b55a099b61 allow lock/unlock of files from files explorer integration
add new commands to the contextual menu provided by our files explorer
plugins to allow locking/unlocking a file

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-05-02 13:52:05 +02:00
Matthieu Gallien
2ea68d75bd add automated tests for LockFileJob to validate proper behavior
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-05-02 13:52:05 +02:00
Matthieu Gallien
dc95f29165 fetch and store in sync database information abot lock state of files
fetch lock properties from server

decode them and store them in sync database

test to ensure we do properly handle those properties

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-05-02 13:52:05 +02:00
Matthieu Gallien
860d7dd9de detect capabilities for lock/unlock of files
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-05-02 13:52:05 +02:00
Camila
56825825b5
Update ActivityListModel tests.
Signed-off-by: Camila <hello@camila.codes>
2022-04-06 10:38:01 +02:00
Matthieu Gallien
908066072a avoid deleting renamed file with spaces in name
ensure that normal sync engine will nto delete new file renamed due to
trailing/leading spaces in name

rename before upload in the same job to avoid having invalid state in
local desktop client database to ensure any subsequent run of the sync
engine will not make wrong decisions

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-04-06 07:32:02 +00:00
Claudio Cambra
3d086ae305 Fix dark mode stuff relating to unified search, fix macOS auto dark/light theme switching not always working, fix Windows detection of dark/light theme switching
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-03-28 09:21:35 +00:00
Matthieu Gallien
dc0026704e ensure discovery phase will not try to upload files with invalid mtime
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-03-17 23:28:02 +00:00
Matthieu Gallien
b5a10d7829 add new tests dedicated for recovery scenario of wrong mtime on server
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-03-17 23:28:02 +00:00
Matthieu Gallien
d4081c99a7 prevent updating files when that would result in invalid mtime
ensure that we never try to sync a file with a sync that would result in
setting it up to an invalid mtime

test a recovery scenario with plain old sync folder and virtual files

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-03-17 23:28:02 +00:00
Matthieu Gallien
541447723a remove all usage of QDateTime::toTime_t() to avoid overflow
QDateTime::toTime_t() can overflow if called with a date outside its
domain of working

this method is obsolete and QDateTime::toSecsSinceEpoch() is the
replacement

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-03-17 23:28:02 +00:00
Camila
73bae8cd30
Add TalkReply class and tests.
- Add struct TalkNotificationData to handle token and messageId.
- Handle chat and call notifications with the new struct.
- Add talk token and messageId to data roles in ActivityListModel.
- Add Talk Reply component to the ActivityList.
- User Loader to display the TalkReply component.
- Move Talk Reply from ActivityItem to ActivityItemContent due to PR #4186.
- Use TextField instead of Text.
- Disable send reply button instead of changing border color when field is empty.

Signed-off-by: Camila <hello@camila.codes>
2022-03-17 17:50:33 +01:00
Claudio Cambra
65f2bada3e Add thumbnails for files in the activity view
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-03-17 10:46:09 +00:00
Claudio Cambra
02f3a1aed6 File activity dialog now works for all file actions activities (e.g. deleted files)
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-03-16 08:38:14 +01:00
alex-z
01eb050cd8 Do not remove files from a Group folder and its nested folders whe it is renamed or removed while not allowed.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-03-09 10:54:39 +02:00
alex-z
37168fce9f Fix review comments.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-02-25 15:31:26 +00:00
alex-z
1a300d0d56 Unit tests for new files restore logic when the parent folder is removed on the server.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-02-25 15:31:26 +00:00
alex-z
3443de4388 Rollback local move when server move has failed.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-02-23 16:53:26 +02:00
Matthieu Gallien
e4590d7a3b ensure that bulk upload network job errors are handled
in case we get a network error during bulk propagator POST network
request, report all files within this upload as files in error that will
then be sent using the plain old WebDAV protocol

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-02-11 09:44:20 +01:00
Matthieu Gallien
d0c2570b04 simplify sync folder in some automated local discovery tests
should be faster and easier to understand

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-02-07 21:32:06 +00:00
Matthieu Gallien
8decd475e5 clean transition when files with spaces exist already
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-02-07 21:32:06 +00:00
Matthieu Gallien
e89268bdd7 ensure we emit a rename command for renamed files
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-02-07 21:32:05 +00:00
alex-z
ae44dd5978 Adjust icons for activity entries in main dialog. Refactor the dialog by splitting it to separate components.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-02-04 17:52:37 +02:00
Claudio Cambra
ce5494b4ec Add testing for ActivityListModel
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-02-01 13:57:08 +00:00
alex-z
225753a8c0 Refactor DeleteJob and DeleteApiJob to use SimpleFileJob.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-01-11 13:37:09 +00:00
alex-z
190d278fd4 Checksum validation PropagateDownload unit tests.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-01-11 13:37:09 +00:00
alex-z
5b0e2d8ed0 Checksum validator unit tests.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-01-11 13:37:09 +00:00
alex-z
b7be10f712 Ask server to recalculate checksum on validatin failure.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-01-11 13:37:09 +00:00
Matthieu Gallien
c88f57b42d check modified time sent by upload jobs in automated tests
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-01-11 08:46:11 +00:00
Matthieu Gallien
6ceb45bac4 test files that should be renamed in sub-directory
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2021-12-07 11:35:38 +01:00
Matthieu Gallien
18ef471332 let auto tests of batch upload return proper file paths
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2021-11-26 15:49:25 +01:00
Matthieu Gallien
c194605c35 implement bulk upload
add PutMultiFileJob to send many files at once

use it in BulkPropagatorJob to implement bulk upload feature

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2021-11-24 16:17:47 +01:00
Matthieu Gallien
112be18635 read capabilities for bulk upload from server
use it in dedicated tests

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2021-11-24 16:17:47 +01:00
rakekniven
416d98716f Make argument singular to fix i18n issue
Reported at Transifex.
See https://www.transifex.com/nextcloud/nextcloud/translate/#hu_HU/client/309577611

Signed-off-by: rakekniven <2069590+rakekniven@users.noreply.github.com>
2021-11-05 10:00:17 +01:00
alex-z
2f3c58daac Fix review comments. Use QImage for QML and QPixmap for rest of code. Do not cache images for QML. Fix tests. Use signal in QML.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2021-11-04 20:50:51 +00:00
alex-z
0b8ab5c079 Use SvgRenderer for Unified Search input icons. Refactor IconUtils. Extend unit tests.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2021-11-04 20:50:51 +00:00
alex-z
c52718c104 Replace deprecated QRegExp with QRegularExpression.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2021-11-02 08:54:06 +00:00
Camila
5decbd0b21
Expand ExcludedFiles tests.
Signed-off-by: Camila <hello@camila.codes>
2021-10-28 11:38:03 +02:00
Camila
5788f35e82
Skip sync exclude file from list of exclude files if it doesn't exist.
The file might not exist anymore because the user deleted it by hand or
the folder where it was located got unchecked in the selective sync
view. It is a fix for #2632.

Signed-off-by: Camila <hello@camila.codes>
2021-10-28 11:37:56 +02:00
Matthieu Gallien
87c583dcb6 schedule files upload after all other jobs have been completed
should allow smarter policy dedicated to optimizing files upload

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2021-10-26 14:26:28 +02:00
Matthieu Gallien
c6344c05be add test to check the order of actions when uploading new files
should allow to check that uploads are delayed after directories are
created

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2021-10-26 12:45:15 +02:00
Matthieu Gallien
69d6f4acec our source code files have lower case names
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2021-10-25 15:38:21 +02:00
alex-z
c1dab7e4cb Unified Search via Tray window
Signed-off-by: alex-z <blackslayer4@gmail.com>
2021-10-25 14:45:05 +03:00
Felix Weilbach
df11424596 Trim trailing spaces before uploading files
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-10-14 11:22:59 +00:00
Guido Falsi
5667a6aad2 Fix BUILD_TESTING on non Linux unices
vfs_xattr is build only if LINUX is defined, but when building tests it is depended upon when UNIX is defined.

This patch requires it only when LINUX is defined.

Signed-off-by: Guido Falsi <mad@madpilot.net>
2021-10-12 16:32:24 +02:00
Matthieu Gallien
833237b2e4 use alias target for internal libraries
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2021-10-06 07:56:33 +00:00
Camila
1de38a13f3 Extend TestCapabilities with shareDefaultPermissions tests.
Signed-off-by: Camila <hello@camila.codes>
2021-09-27 08:53:45 +00:00
Felix Weilbach
8a8d488454 Add dialog to set user status
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-09-09 11:18:22 +02:00
Felix Weilbach
5622c33f40 Fix various deprecated warnings
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-09-08 08:54:00 +00:00
Felix Weilbach
45f59e7eca Use QDateTime::startOfDay()
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-09-08 08:54:00 +00:00
Felix Weilbach
0af83dd1b6 Use QRandomGenerator instead of qrand
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-09-08 08:54:00 +00:00
allexzander
a3fc812539 Enable share to Talk and Email. Display correct icon. Added unit tests.
Signed-off-by: allexzander <blackslayer4@gmail.com>
2021-09-06 13:27:39 +00:00
Matthieu Gallien
d17d831205 switch from Q_DECL_OVERRIDE to plain override
our requirements guarantee availability of override keyword so we just
use it

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2021-08-31 08:35:57 +00:00
Matthieu Gallien
25669938fd let clang-tidy add missing override after enabling again the check
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2021-08-31 08:35:56 +00:00
Hannah von Reth
acd83a2998 Ensure unit test are using absolute paths 2021-08-23 09:44:34 +02:00
Hannah von Reth
5a7fd3f316 testlockedfiles use long file path 2021-08-23 09:40:27 +02:00
Hannah von Reth
8ca5035c42 Add test for csync_vio_local_stat with long path 2021-08-23 09:40:27 +02:00
Hannah von Reth
56364f1c70 Fix unittests 2021-08-23 09:40:27 +02:00
Klaas Freitag
73549a0529 Ignore the desktop.ini file in every directory, not only in top dir. (#8299)
* Ignore the desktop.ini file in every directory, not only in top dir.

See https://github.com/owncloud/client/issues/8298  for reasons.

* Fix test for ignoring desktop.ini everywhere.

Co-authored-by: Hannah von Reth <hannah.vonreth@owncloud.com>
2021-08-23 09:40:26 +02:00
Hannah von Reth
3a87067348 Cleanup 2021-08-23 09:40:26 +02:00
Hannah von Reth
de2d11125b Move Prepared sql queries to seperate class to manage access 2021-08-23 09:40:26 +02:00
allexzander
ba73b6d914 VFS + E2EE. Improved data alignment and unit tests for StreamingDecryptor. Refactoring and renaming for readability.
Signed-off-by: allexzander <blackslayer4@gmail.com>
2021-08-20 12:57:22 +00:00
allexzander
2c78925acb VFS + E2EE VFS implicit hydration of E2EE files.
Signed-off-by: allexzander <blackslayer4@gmail.com>
2021-08-20 12:57:22 +00:00
Nicolas Fella
43cccb0a73 Don't use variables for CMake target identifiers
This makes the code a bit nicer to read and maybe a bit more robust.

Set the relevant OUTPUT_NAME target properties to keep the ability to
customize the names of the installed binaries.

Signed-off-by: Nicolas Fella <nicolas.fella@gmx.de>
2021-08-19 10:30:23 +00:00
Felix Weilbach
ccd27870a7 Don't compare integers with different signs
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-08-11 20:20:39 +00:00
Felix Weilbach
acf6cc0527 Remove unused functions and variables
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-08-11 20:20:39 +00:00
Felix Weilbach
d72f7e9109 Check result of setPinState()
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-08-11 20:20:39 +00:00
Hannah von Reth
3b99b11849 Always reset prepared sql statements
This allow the creation of checkpoints and fixes the growing wal issue

Fixes: #7646
2021-08-11 17:13:44 +00:00
Hannah von Reth
1284d78599 Fix testblacklist.cpp
The test was broken because we now actually have X-Request-ID set
2021-08-11 17:13:44 +00:00
Hannah von Reth
b01973f95f Enable httplogger on unittests 2021-08-11 17:13:44 +00:00
Hannah von Reth
1b3502bd5a Fix httplogger in unittests with lambdas 2021-08-11 17:13:44 +00:00
Valdnet
dbd061c44b l10n: Replace apostrophe with double quotation. Remove double space and sort sentence.
Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2021-08-03 15:00:53 +03:00
allexzander
71b2b73881 Fix tests.
Signed-off-by: allexzander <blackslayer4@gmail.com>
2021-07-30 06:21:05 +00:00
Matthieu Gallien
badb5c1fba fix review comment
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2021-07-29 08:27:53 +00:00
Matthieu Gallien
391935c90f prevent crash in Accont::davPath without credentials
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2021-07-29 08:27:53 +00:00
Matthieu Gallien
77433f7e1d in wizard always use the correct way to get dav path
fixes listing being incorrect when using dav endpoint

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2021-07-28 09:45:49 +00:00
allexzander
88d18fd5f3 Invoke 'bool Folder::isSyncRunning() const' from tests.
Signed-off-by: allexzander <blackslayer4@gmail.com>
2021-07-28 08:58:00 +00:00
allexzander
8122c63ebc Revert Added config parameter that allows to bypass checksum validation failure.
Signed-off-by: allexzander <blackslayer4@gmail.com>
2021-07-28 07:57:10 +00:00
Felix Weilbach
3e61bdc431 Use dav instead of webdav
Fixes #3342

Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-07-16 12:42:02 +00:00
Matthieu Gallien
8ad6f89fed bring back dynamic load of VFS plugins
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2021-07-08 08:11:17 +00:00
Felix Weilbach
2ee3ca02a4 Add unit test for move custom remote root
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-06-25 10:14:29 +00:00
Felix Weilbach
27f8152b05 Remove unused function declaration
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-06-17 11:22:57 +00:00
allexzander
dc72686ab3 Allow download with mismatched checksum if a config option is set.
Signed-off-by: allexzander <blackslayer4@gmail.com>
2021-06-10 13:39:11 +03:00
allexzander
fe9f934277 Added unit tests for Utility::isPathWindowsDrivePartitionRoot.
Signed-off-by: allexzander <blackslayer4@gmail.com>
2021-06-02 10:30:27 +03:00
Dmytro Korchynskyi
8b6b3023ea use folders in CMake
Signed-off-by: Dmytro Korchynskyi <kdl.dima@gmail.com>
2021-05-18 09:59:17 +03:00
Hannah von Reth
17a1a630a4 Use the http logger with the unittests
This allow better debugging of the tests

Signed-off-by: Matthieu Gallien <matthieu_gallien@yahoo.fr>
2021-05-06 07:35:59 +00:00
Felix Weilbach
7112d2aa78 Push Notifications: Reconnect forever if capabilities allow it
Fixes #3115

Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-05-04 10:05:19 +02:00
Felix Weilbach
aea867c445 Refactor push notification tests
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-05-04 07:27:06 +00:00
Felix Weilbach
d21df33a50 Add missing copyright headers for push notifications
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-05-04 07:27:06 +00:00
Felix Weilbach
da1e5c448a CMake: Use own SQLite3 on macOS and Windows
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-04-15 08:51:06 +02:00
Felix Weilbach
b736355985 Add notification cache
The notification cache helps to not display duplicate desktop
notifications to the user.

Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-04-13 14:58:50 +00:00
Felix Weilbach
b256c6e694 Ping websocket server
This helps the client to recognize if the websocket server is still alive.

Fixes #2983

Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-04-13 12:19:40 +00:00
Felix Weilbach
d7499b0746 Refactor push notification test utils
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-04-13 12:19:40 +00:00
Felix Weilbach
9185956069 Split out wizard welcome page
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-03-10 09:55:40 +01:00