Commit Graph

291 Commits

Author SHA1 Message Date
Martchus 3b74b817ec Add trait to test for strings 2017-05-10 23:31:28 +02:00
Martchus 7faa51c10e Test traits 2017-05-08 19:59:29 +02:00
Martchus f827c2be00 Add trait to check whether type is iteratable 2017-05-08 19:51:24 +02:00
Martchus db46948f2f Apply clang-format 2017-05-04 22:44:15 +02:00
Martchus 53ff69130c Set clang-format standard to Cpp11
* Prevents clang-format to mess up std::string
  literals like "foo"s
* As side-effect is will now use e.g. A<A<int>>
  instead of A<A<int> >
2017-05-04 22:43:20 +02:00
Martchus 04c1f98361 Format test code, too 2017-05-02 23:31:12 +02:00
Martchus 59e20b1043 Apply clang-format 2017-05-01 03:13:11 +02:00
Martchus 7e49d3994f Allow skipping creation of tidy target 2017-05-01 03:03:20 +02:00
Martchus 2ef55c439c Add tidy test 2017-05-01 02:57:58 +02:00
Martchus 7e0f65ed78 Call clang-format with all src files 2017-05-01 02:57:58 +02:00
Martchus b74327d961 Move creation of check target to BasicConfig.cmake
* So other tests like tidy check can be added
* Even if there are no tests after all, the
  check target shoudn't cause any problems
2017-05-01 02:57:58 +02:00
Martchus 0a4fc2d326 Document tidying/clang-format 2017-05-01 02:57:58 +02:00
Martchus 8799698f01 Adapt global.h.in to new coding style 2017-05-01 02:57:58 +02:00
Martchus 223ebd870b Ignore .clang-format
This symlink will be automatically created when
invoking `make tidy`. It is required because I
don't know how to specify the path for the
.clang-format file direclty.
2017-05-01 02:57:58 +02:00
Martchus d76ead0483 Add tidy target using clang-format 2017-05-01 02:57:58 +02:00
Martchus c728f0ffe0 Add hash functions for chrono objects 2017-05-01 02:54:06 +02:00
Martchus 5679460302 Simplify DateTime::fromTimeStampGmt() 2017-04-19 21:50:21 +02:00
Martchus 452954dc1f Add DateTime::exactGmtNow()
* Provides more precise wall-clock time
* Only available under UNIX so far
2017-04-19 21:48:23 +02:00
Martchus ead0fadac3 Unset version info when not available 2017-04-15 23:33:52 +02:00
Martchus 6042336038 Allow checking whether external lib is used 2017-04-15 23:20:27 +02:00
Martchus b8c2e79e3d Use meta-data provided in CMake config for version info
* Don't set custom meta-data on targets
* It isn't exported anyways
* Remove version on application target because itcauses
  CMake to create symlinks
2017-04-15 23:02:41 +02:00
Martchus be03e5ad4c Provide meta-data in CMake config 2017-04-15 22:39:41 +02:00
Martchus 412e725309 Append Git revision to version
* Append Git revision and ID of latest commit
  to version displayed via --help
* Can be turned off via option
* Has no effect if the source dir is not
  a Git checkout or Git is not installed
* Implements
  https://github.com/Martchus/tageditor/issues/13
2017-04-15 01:45:03 +02:00
Martchus 91e5a8b0b0 Show version of used libraries in --help
* Include only own libraries and Qt 5 modules
  so far
* First step to implement
  https://github.com/Martchus/tageditor/issues/13
2017-04-15 01:10:38 +02:00
Martchus bfa12a9870 Allow creation of header-only library
* Create interface target if only headers present
* Include workaround to show header files in Qt Creator
2017-04-14 23:30:46 +02:00
Martchus 2e0df8aa6a Allow linking only tests in 3rdParty macros
So tagparser tests can link against OpenSSL
for computing checksums
2017-04-08 18:29:21 +02:00
Martchus 7c189b18e1 Allow nested operation arguments
eg. syncthingctl pwd rescan
2017-04-06 00:04:30 +02:00
Martchus 864605f5c8 Only assert unique names within same level
It might make sense to 'hide' arguments from
higher level if those wouldn't be combinable
anyways.
2017-04-06 00:01:56 +02:00
Martchus c30011fe09 Fix missleading error message
Unknown arg is treated is causing fatal
error in this case and hence not ignored.
2017-04-05 23:45:56 +02:00
Martchus 71231c29da Fix behavior on empty completion request 2017-04-05 22:56:01 +02:00
Martchus f86a8b3700 Fix adding dependencies of install-mingw-w64 target 2017-04-04 01:01:03 +02:00
Martchus cb82630665 Add general target for generating API doc 2017-04-04 01:00:17 +02:00
Martchus 663b31c5fe Allow skipping install targets
* via variable META_NO_INSTALL_TARGETS
* since this is just to silence some warnings
  no need to bump minor version
2017-04-01 16:18:32 +02:00
Martchus daaedb7ba3 Fix issues in TestTarget.cmake
* Fix error message
* Improve comments
* Improve target names
* Fix working directory for check target
* Add info that calling enable_testing() on root
  level is required for check target to work
* Create workingdir for tests under binary dir to
  prevent polluting source dir
2017-03-27 22:12:20 +02:00
Martchus 7b100010c2 Fix error message in ConfigHeader.cmake 2017-03-27 22:07:36 +02:00
Martchus 2965f0cd00 Improve testing applications
When LINK_TESTS_AGAINST_APP_TARGET set, create a
library in addition to the application so tests can
link against it to check particular functions. This
replaces the current approach of linking against the
application directly which lead to linker errors.
2017-03-27 11:15:14 +02:00
Martchus fdbe874bcd Allow to disable excluding tests from all target 2017-03-23 20:31:57 +01:00
Martchus 89e79275e0 Ensure the console prompt is shown when app terminates 2017-03-22 02:35:28 +01:00
Martchus 5dac8fc76b Improve startConsole()
* Also try to allocate new console
* Don't set buffer info (seems to have not
  effect anyways)
2017-03-22 02:09:27 +01:00
Martchus 9a395a45d3 Fix convertArgsToUtf8() 2017-03-22 00:59:34 +01:00
Martchus 0327049b99 Don't compare signed and unsigned 2017-03-20 23:00:23 +01:00
Martchus d5d8b308e9 Improve build system doc 2017-03-14 23:35:20 +01:00
Martchus 52a76a7bd2 Show warning when a testfile could not be located
TODO: Would throwing an exception instead break
something?
2017-03-12 20:25:06 +01:00
Martchus 78869da195 Extend documentation 2017-03-12 20:23:21 +01:00
Martchus 62fee48ef6 Don't ignore documentation 2017-03-12 20:22:58 +01:00
Martchus 675b49f95c Add all doc files (not only first one) 2017-03-12 19:47:53 +01:00
Martchus 787d541974 Fix conversion of 0 to string
Return "0" instead of an empty string
2017-03-07 00:28:46 +01:00
Martchus f626bdf9c7 Fix typos 2017-03-01 18:18:54 +01:00
Martchus 88196b8076 Allow creation of plugins via LibraryTarget 2017-02-20 20:03:16 +01:00
Martchus 64cc931555 Improve CMake modules 2017-02-11 02:30:46 +01:00