Commit Graph

142 Commits

Author SHA1 Message Date
Martchus 93ecee3e71 Fix version constraint for `qputenv` usage
The QByteArray overload has only been removed since Qt 6.5 and without the removal
a QByteArray is attempted to be instantiated.
2024-02-16 19:18:02 +01:00
Martchus 0f1bcae534 Fix build with c++utilities change to add header for compile definitions
* Add include directory for testhelper library manually as using the
  imported target was not possibly
* Fix visibility when using libsyncthing in syncthingwidgets
* Update changed global headers along the way
2024-01-30 22:35:47 +01:00
Martchus afe9cb2135 Add actions/shortcuts to desktop file
* Remove the old approach to specify actions as it is lacking the `Actions`
  key and doesn't allow customizing the executable name
* Add actions for most important use cases
2024-01-27 02:56:33 +01:00
Martchus aa524aa8b7 Make event handling of `syncthingctl wait-for-idle` more efficient
Don't go though the list of dirs/devs for every dir/dev change event. Just
go though the list once after receiving new events. This makes also the
code a little bit easier to follow.
2023-09-20 18:12:55 +02:00
Martchus 78e97e34a2 Adapt CLI tests to c2a0eee029 2023-09-18 22:12:36 +02:00
John Veness c2a0eee029 Change Directory to Folder in user-facing strings 2023-09-17 19:33:31 +01:00
Martchus 5fa69e4f5a Rename `SyncthingDevStatus::OwnDevice` in accordance with UI change 2023-09-16 22:28:35 +02:00
Martchus d623dfdf5e Replace "own device" with "this device" where it makes sense
* Be consistent with official UI
* See https://github.com/Martchus/syncthingtray/issues/203
2023-09-16 22:19:04 +02:00
Martchus 2fab93a00a Fix compiling tests against Qt 5 2023-09-01 21:51:58 +02:00
Martchus 89caa76102 Add option for CLI's `wait-for-idle` to require devs to be connected
See https://github.com/Martchus/syncthingtray/issues/199
2023-08-27 00:09:48 +02:00
Martchus 652497d06e Allow running CLI tests under Windows 2023-08-19 19:15:09 +02:00
Martchus 66a8dda244 Improve test setup
* Improve code for reading environment variables
* Make tests work when the temp directory is not `/tmp` because e.g. `TEMP`
  has been set or tests are executed under Windows
2023-08-02 17:36:26 +02:00
Martchus e4bbe852bd Avoid CMake deprecation warning by bumping version 2023-07-23 21:05:22 +02:00
Martchus 0f5da7fa50 Avoid that shell completion of syncthingctl blocks shell for too long 2023-07-04 19:07:03 +02:00
Martchus 7d6c7de834 Allow setting request timeout in syncthingctl 2023-07-04 19:04:20 +02:00
Martchus d766bfeb66 Return early when config for shell completion cannot be loaded 2023-07-04 18:49:03 +02:00
Martchus 5a2334cda4 Mark internal function of `cli/application.cpp` static 2023-07-04 18:47:06 +02:00
Martchus bca1e1bda5 Avoid warning about unreferenced variable 2023-06-08 12:33:11 +02:00
Martchus 42a0d9c9f7 Show the connection type of a device 2023-05-11 23:44:10 +02:00
Martchus 1ea029f2a2 Avoid use of non-standard escape sequence 2023-05-11 23:43:18 +02:00
Martchus 96e92f13a3 Avoid relying on symlink for include directories
Symlinks aren't working very well with Git under Windows so better avoid
them.
2023-02-27 18:27:33 +01:00
Martchus 5f44e2b49e Avoid relying on symlink to share testfiles between connector and cli
Symlinks aren't working very well with Git under Windows so better avoid
them.
2023-02-27 18:02:58 +01:00
Martchus 98852bacc5 Avoid unconditional use of platform-specific header `unistd.h`
* Also avoid use of platform-specific tempdir
* Use functions from the C++ standard library instead
* Improve error handling of related function calls
2023-02-11 15:55:45 +01:00
Martchus c4eee6bc27 Adapt syncthingctl tests to latest changes 2023-01-28 20:40:00 +01:00
Martchus 4d96f791b6 Apply clang-format 2023-01-28 20:19:43 +01:00
Martchus 818b40801a Allow referencing directories by their labels in syncthingctl 2023-01-28 17:17:34 +01:00
Martchus f865d1ffbc Use folder label as "caption" in syncthingctl instead of ID
This makes it easier to identify folders when one is not using
human-readable folder IDs and is more consistent with other UIs.
2023-01-28 17:05:49 +01:00
Martchus 256e90a0cb Avoid warning about unqualified std cast 2022-11-04 16:51:01 +01:00
Martchus a90e79b78f Enable virtual terminal processing or disable ANSI escape codes
See https://github.com/Martchus/syncthingtray/issues/132
2022-06-07 16:52:17 +02:00
Martchus e81166cd79 Fix several warnings when building against Qt 6 2021-11-04 00:16:27 +01:00
Martchus 3b50d78f1e Use resource lock to avoid concurrent execution of tests requiring Syncthing test instance
This is likely the cleaner approach compared to just enforcing a serial run
for the CLI test.
2021-10-13 00:14:35 +02:00
Martchus 6c23bb6e82 Avoid running CLI and connector tests in parallel
* Fix the test execution when parallel ctest jobs are configured
  via e.g. `CTEST_PARALLEL_LEVEL`
* See https://github.com/Martchus/syncthingtray/issues/116
2021-10-12 23:40:35 +02:00
Hannah Rittich 2968898195 Allow finding of packages in namespaces 2021-10-03 02:07:18 +02:00
Martchus 0ef3b80447 Fix typos found via `codespell --skip .git -w` 2021-07-03 19:29:49 +02:00
Martchus 695696bb00 Add linebreak before Syncthing's output in `syncthingctl` test 2021-07-01 17:25:45 +02:00
Martchus 1bc52ebb0f Improve Boost.Process-based SyncthingProcess
* Implement member functions required to run tests
* Add documentation
* Add minor tweaks
2021-06-17 20:32:40 +02:00
Martchus 239f750028 Improve timestamp parsing/handling
* Use local time consistently for timestamps which might get displayed
  within the UI, e.g. the dir status was in one case set to the local time
  and in other cases GMT was used which could lead to discarding status
  updates
* Print warning when timestamp parsing fails (instead of ignoring it
  silently)
* Set directory status from folder status response even when parsing the
  timestamp fails
* Catch possible exception when printing log timestamps in syncthingctl
2021-05-18 00:08:21 +02:00
Martchus f75966aadc Fix warnings 2021-03-20 22:39:40 +01:00
Martchus 975e86c895 Allow backend libraries to be used from other projects
So far the backend libraries' include paths were relative within this
repository. This means the header files could not be used at their
installed location.

This change replaces them with "<>" includes to fix that problem and adds
a new include directory so building everything at once still works.

With this change it should be easier to actually split some parts into
another repository if this one would become too big.
2021-01-25 19:48:11 +01:00
Martchus b350aaf879 cli: Mark RelevantDir as explicit and ~Application() as override 2021-01-11 18:50:28 +01:00
Martchus 2eaddb0464 cli: Print own device always on top to fix test failures
* Otherwise tests fail when the name of the own device preceeds the other
  device names
* See https://github.com/Martchus/PKGBUILDs/issues/102
2021-01-11 18:49:35 +01:00
Martchus b2ba8c01ea Use header-only target of qtutilities
See the commit message of the corresponding commit in c++utilities
(9fb3bbe179698fb10339d4911b98531b0847cfa1) and also the related commit in
reflective-rapidjson (5c49a438ade5ae4253ae978e3a22cf88bd7cb2e2).
2021-01-01 18:50:46 +01:00
Martchus da911c6350 Refactor overall status compution
* Allow configuring the information to consider for computing the overall
  status via SyncthingStatusComputionFlags
    * Add flag to allow considering the status of remote devices for
      https://github.com/Martchus/syncthingtray/issues/74
    * Show only plain "idle" status when no flags are present for
      https://github.com/Martchus/syncthingtray/issues/76
* Set the default flags to keep the default behavior as-is
2020-12-31 02:48:18 +01:00
Martchus 49bbebd1ad Allow configuring package suffix for qtutilities individually 2020-10-23 17:03:57 +02:00
Martchus 3b49e9e312 Support Qt 6 (commit 174154b) 2020-09-04 01:09:18 +02:00
Martchus bcb2b49b72 Don't use lower-case Qt macros 2020-03-08 13:50:32 +01:00
Martchus 6497f74046 Use override in test fixtures 2019-10-13 18:28:32 +02:00
Martchus 5271a56397 Adapt syncthingctl test to changed logging behavior 2019-08-08 22:36:47 +02:00
Martchus dc7d9b815f Adapt to changes in c++utilities 2019-06-14 19:15:26 +02:00
Martchus 64473df5ba Adapt to changes in c++utilities 2019-06-10 22:48:26 +02:00