Martchus
34f3ebb45d
Let tests find the application path without extra args
...
Currently the path of the application to be tested always had to
be specified either manually using the -a argument or by running
the tests via the build system targets. The first option is annoying
and the second option not so nice when using Qt Creator and the
debugger.
This commit makes tests assume the application to be tested is
called like the test executable itself, just without "_tests"-suffix.
2017-10-30 23:03:43 +01:00
Martchus
2bb4aa36a4
Let tests find the testfiles from sources without extra args
...
Currently the path of the testfiles always had to be specified
either manually using the -p argument or by running the tests
via the build system targets. The first option is annoying and
the second option not so nice when using Qt Creator and the
debugger.
This commit allows tests to find the testfiles from the source
directory automatically (as fallback). This is achieved by
creating a file containing the path of the source directory
with CMake. Note that this file can only be found if the working
directory is set to the binary directory (default in Qt Creator).
2017-10-30 23:01:07 +01:00
Martchus
3c16d2beb8
Export determineTerminalSize() correctly
2017-10-30 22:34:10 +01:00
Martchus
fa39e2a1aa
Add traits to check for reserve() and size()
2017-10-27 18:25:32 +02:00
Martchus
60e4fead05
Deprecate FakeQtConfigArguments
2017-10-25 19:32:45 +02:00
Martchus
dab05bdade
Improve coding style in test utilities
2017-10-24 01:02:07 +02:00
Martchus
2203e0a335
Set dependencies of tidy target correctly
2017-10-24 01:01:29 +02:00
Martchus
a869aa8def
Do not add sources to header-only libs
2017-10-23 01:12:51 +02:00
Martchus
e393af5dbb
testutils: Print indices of iteratables (on assert equal fail)
2017-10-23 01:11:11 +02:00
Martchus
a0c6868e88
Add conversion methods: multiline str <=> array of lines
2017-10-23 01:09:59 +02:00
Martchus
d25265fee1
Don't add include path for config.h to header-only libs
...
This causes CMake errors and CMake is acutally right, it makes
no sense because the config header is only available during build
but a header-only lib is not being built.
2017-10-23 01:08:25 +02:00
Martchus
2ec3df889f
Allow accessing application path from TestApplication
...
Make it static because when this function becomes useful,
the (singleton) instance is likely not available.
2017-10-21 21:25:26 +02:00
Martchus
cb02d5c733
Add target for building all tests
...
This allows to build all tests at once without
adding them to "all" target. In contrast to the
check target, the tests are not executed.
2017-10-19 16:20:49 +02:00
Martchus
ba620c5e0a
Apply clang-format
2017-10-19 01:07:38 +02:00
Martchus
46f652ad00
Improve readability of ArgumentReader::read and use Phrases
2017-10-19 00:51:47 +02:00
Martchus
e459dca98d
Merge pull request #8 from svnpenn/master
...
commandlineutils.cpp: correct rows and columns
2017-10-17 09:43:55 +02:00
Steven Penny
e07782ae16
commandlineutils.cpp: correct rows and columns
...
From here:
http://docs.microsoft.com/windows/console/coord-str
- X is columns
- Y is rows
currently that is reversed with the codebase
2017-10-16 18:04:35 -05:00
Martchus
9829dbe727
Make use of escape codes configurable
2017-10-17 00:00:46 +02:00
Martchus
6933b7b33e
argument parser: Add public accessor for callback
2017-10-16 23:46:21 +02:00
Martchus
4011040e57
Add Phrases::EndFlush
2017-10-09 20:43:18 +02:00
Martchus
f35124eff5
Document META_PUBLIC_*_LIB_DEPENDS
2017-10-08 20:27:09 +02:00
Martchus
ae249140bc
Use also actual lib name to check whether dependency is public
...
In accordance to 'Fix adding public Qt modules in pkg-config'
in qtutilities (b2e3506ff59ae4b610c91bd9ee96333871fa5864).
2017-10-08 20:24:48 +02:00
Martchus
472e0296d0
Fix adding public static lib dependencies
2017-10-08 19:42:55 +02:00
Martchus
cf09db8166
Export ostream &operator<<(std::ostream&,const Failure&failure)
2017-10-07 23:02:29 +02:00
Martchus
0b19d0b523
Export std::ostream&operator<<(std::ostream&,Phrases) correctly
2017-10-07 22:52:06 +02:00
Martchus
784f3d963a
Add 'makepkg'-style messages to Phrases
2017-09-30 19:16:43 +02:00
Martchus
ee66c56905
Improve documentation
2017-09-30 18:42:34 +02:00
Martchus
46bfbdd829
Allow initialization of values for shell completion in callback
...
Use case is implementing completion for syncthingctl also for
device and folder IDs.
2017-09-30 18:42:21 +02:00
Martchus
b7b218c831
Wrap strings which are likely long when printing help
...
to preserve indentation
2017-09-29 21:00:49 +02:00
Martchus
6e80640db5
Add method to determine terminal size
2017-09-29 20:56:50 +02:00
Martchus
027e784f1c
Only make extra newline before example for top-level args
2017-09-29 20:56:13 +02:00
Martchus
8750e385f1
Improve doc for ArgumentParser::parseArgs()/readArgs()
2017-09-29 17:15:39 +02:00
Martchus
2f5f197b95
Add ArgumentParser::parseArgsOrExit()
...
to reduce boilerplate code for error handling when
parsing CLI arguments.
2017-09-29 17:14:57 +02:00
Martchus
1c450d43a2
Add method to find specified operation
2017-09-26 16:46:17 +02:00
Martchus
a1d6c3ba7b
Make invokeCallbacks() static as no members used
2017-09-26 16:44:22 +02:00
Martchus
09efb1ff3e
Move phrases from tag editor to c++utilities
...
because they are also useful for syncthingctl
2017-09-26 15:23:23 +02:00
Martchus
37a84d64f1
Fix warnings about use of NULL in startConsole()
...
Can't fix warnings about old-style casts because those
macros are defined in windows headers.
2017-09-24 19:57:13 +02:00
Martchus
49d626702c
Fix implicit sign conversion
2017-09-22 00:23:02 +02:00
Martchus
72806d69fd
Add << overloads for formatting output
2017-09-22 00:22:08 +02:00
Martchus
b4556c0481
Move OutputCheck to its own header file
...
* So it can be used in tests for tageditor and
other applications
* Make it a header-only class so c++utilities
does not depend on cppunit
2017-09-20 17:09:34 +02:00
Martchus
5f14d55f25
Use Argument::varValueCount to fix warnings
2017-09-20 17:07:06 +02:00
Martchus
868162742b
Adjust argument parser tests
2017-09-19 16:02:42 +02:00
Martchus
e52fd5a4af
Apply tidy after updating to clang-format 5.0.0
...
The behavior of clang-format slightly changed in Clang 5.0.0:
http://releases.llvm.org/5.0.0/tools/clang/docs/ReleaseNotes.html#clang-format
2017-09-17 21:45:23 +02:00
Martchus
12be122d66
Improve printing argument info
2017-09-17 21:37:24 +02:00
Martchus
05605a1b25
Filter files for tidy
2017-09-09 21:35:55 +02:00
Martchus
840700d7af
Fix compiling math tests under 32-bit architectures
...
Same problem as with size_t. The types must match exactly
when using CPPUNIT_ASSERT_EQUAL and using 'l' or 'ul' suffix
is not sufficient under 32-bit.
2017-09-03 20:13:27 +02:00
Martchus
04050069c3
Update documentation about static plugins
2017-09-03 18:20:06 +02:00
Martchus
6df6474840
Allow configuring supported image formats
...
This allows to add an option for linking against static Qt
image format plugins in qtutilities.
2017-09-03 17:53:20 +02:00
Martchus
7754cf82d8
dependency info: Support prefixed static Qt 5 modules
2017-09-03 17:50:23 +02:00
Martchus
357ede4ee7
chrono utils: Improve handling micro- and nanoseconds
...
DateTime and TimeSpan have an accuracy of 100 nanoseconds.
This commit ensures this is also handled in toString() and
fromString() methods and adds relevant convenience methods.
2017-08-31 02:17:05 +02:00