more chrono types for unit tests

This commit is contained in:
2022-12-16 16:04:13 +01:00
parent 6c87b11d8f
commit 8a44b1ecf7
2 changed files with 56 additions and 0 deletions

View File

@@ -21,6 +21,42 @@ char *toString(const espchrono::LocalDateTime &dateTime)
return ::QTest::toString(espchrono::toString(dateTime));
}
template<>
char *toString(const std::chrono::microseconds &duration)
{
return ::QTest::toString(QString{"%0us"}.arg(duration.count()));
}
template<>
char *toString(const std::chrono::milliseconds &duration)
{
return ::QTest::toString(QString{"%0ms"}.arg(duration.count()));
}
template<>
char *toString(const std::chrono::seconds &duration)
{
return ::QTest::toString(QString{"%0s"}.arg(duration.count()));
}
template<>
char *toString(const std::chrono::minutes &duration)
{
return ::QTest::toString(QString{"%0m"}.arg(duration.count()));
}
template<>
char *toString(const std::chrono::hours &duration)
{
return ::QTest::toString(QString{"%0h"}.arg(duration.count()));
}
template<>
char *toString(const espchrono::millis_clock::time_point &ts)
{
return ::QTest::toString(ts.time_since_epoch());
}
template<>
char *toString(const espchrono::utc_clock::time_point &ts)
{

View File

@@ -11,6 +11,7 @@
#include "espchrono.h"
#include "cpputilstestutils.h"
Q_DECLARE_METATYPE(std::chrono::microseconds)
Q_DECLARE_METATYPE(std::chrono::milliseconds)
Q_DECLARE_METATYPE(std::chrono::seconds)
Q_DECLARE_METATYPE(std::chrono::minutes)
@@ -19,6 +20,7 @@ Q_DECLARE_METATYPE(espchrono::milliseconds32)
Q_DECLARE_METATYPE(espchrono::seconds32)
Q_DECLARE_METATYPE(espchrono::minutes32)
Q_DECLARE_METATYPE(espchrono::hours32)
Q_DECLARE_METATYPE(espchrono::millis_clock::time_point)
Q_DECLARE_METATYPE(espchrono::utc_clock::time_point)
Q_DECLARE_METATYPE(espchrono::local_clock::time_point)
Q_DECLARE_METATYPE(espchrono::DateTime)
@@ -55,6 +57,24 @@ char *toString(const espchrono::DateTime &dateTime);
template<>
char *toString(const espchrono::LocalDateTime &dateTime);
template<>
char *toString(const std::chrono::microseconds &duration);
template<>
char *toString(const std::chrono::milliseconds &duration);
template<>
char *toString(const std::chrono::seconds &duration);
template<>
char *toString(const std::chrono::minutes &duration);
template<>
char *toString(const std::chrono::hours &duration);
template<>
char *toString(const espchrono::millis_clock::time_point &ts);
template<>
char *toString(const espchrono::utc_clock::time_point &ts);