* tests: Add QString/QStringView << operators for std::ostream
This makes it easier to print QString/QStringView's in ASSERT_EQ outputs
* tests: clean up toStdString usages
* fix: use QByteArray.toStdString instead
* Remove unused `setAccountData` function
* Move PubSub out of TwitchIrcServer and into Application
* Add changelog entry
* fix: assert feedback
* Add PubSub::unlistenPrefix as per review suggestion
* Fix tests
* quit pubsub on exit
might conflict with exit removal, so can be reverted but this shows it's possible
* Don't manually call stop on clients, it's called when the connection is closed
* nit: rename `mainThread` to `thread`
* Join in a thread!!!!!!!!
* EmptyApplication: Add asserts to rest of getters (except for getSeventvAPI)
* Theme: make getTheme call getIApp()->getThemes() instead
this allows it to be used in tests
realistically this should be deprecated & users of it should just call
getIApp()->getThemes() directly
* Use getIApp() instead of getApp() in a few places
This changes the `make coverage` function to use `gcovr` instead of `lcov`, and to have it generate an html file directly at `coverage/index.html` under the build directory
The only thing this changes, other than adding tests, is making the `Expression` class pure virtual. Every derived class should implement each of the functions
* Add a few pre-made sanitizer suppressions
* Test Sanitization: Fix threading issues
* Test Sanitization: Allow deletion of PubSub
We still don't delete it in main code, but this allows us to try
deleting it in tests.
* Test Sanitization: Fix some memory leaks
* fix gtest clang-tidy warning
* const emojis test :-)
* Tests: Fix InputCompletion tests in Qt6
This is achieved by not checking exact order for certain completion tests
* Tests: Use Ubuntu 22.04 for all tests
This allows us to be a bit more loose and use more C++20 features in
tests
* Update dockerfiles
* feat: more hype chat
* Add `std::chrono::seconds` overload to formatTime
* Move & rename it to HypeChat + some other mini things
* Add changelog entry
* fix formattime test
---------
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
Use QTemporaryDir to create the test directory
Add option to use httpbin over local docker
Increase delay for opening a connection
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>