Commit Graph

302 Commits

Author SHA1 Message Date
Martchus 2625f82e49 ios_base::failure workaround: Ensure c++config.h is included 2017-06-01 11:29:33 +02:00
Martchus be4901ce2c Add missing #include <function>
This fixes compilation using libc++ instead
of libstdc++
2017-05-31 00:35:39 +02:00
Martchus dc73538170 Adjust ios_base::failure workaround for GCC 7
* Use new ABI under GCC >= 7
* See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66145
2017-05-31 00:35:31 +02:00
Martchus 5388337bcc Fix compiling tests under 32-bit arch 2017-05-30 23:56:08 +02:00
Martchus ecce539a18 Do not set global include dirs
TODO: Set include dirs on target level
2017-05-24 23:29:17 +02:00
Martchus ac348ee3b9 Find cppunit via pkg-config 2017-05-23 00:49:45 +02:00
Martchus 13ac2305d5 Allow not to link tests against cppunit 2017-05-23 00:10:27 +02:00
Martchus 3bc1756425 Add Argument::varValueCount 2017-05-19 00:12:07 +02:00
Martchus 2e98e3bd11 testutils: Fix finding testfiles dir in pwd 2017-05-19 00:08:27 +02:00
Martchus 18fef23724 testutils: Add execHelperApp() 2017-05-19 00:07:38 +02:00
Martchus cab1a76ecf Allow printing iteratable objects
So those can be asserted using CPPUNIT_ASSERT_EQUAL
2017-05-10 23:32:48 +02:00
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