| 35 | } |
| 36 | |
| 37 | void UtilsTest::testDurationFromString_data() |
| 38 | { |
| 39 | QTest::addColumn<QString>("str"); |
| 40 | QTest::addColumn<std::chrono::microseconds>("us"); |
| 41 | QTest::addColumn<bool>("ok"); |
| 42 | |
| 43 | QTest::newRow("valid-us-01") << u"123456us"_s << 123456us << true; |
| 44 | QTest::newRow("valid-us-02") << u"123456 usec"_s << 123456us << true; |
| 45 | |
| 46 | QTest::newRow("valid-ms-01") << u"123ms"_s << 123000us << true; |
| 47 | QTest::newRow("valid-ms-02") << u"123456 msec"_s << 123456000us << true; |
| 48 | |
| 49 | QTest::newRow("valid-sec-01") << u"12seconds"_s << 12000000us << true; |
| 50 | QTest::newRow("valid-sec-02") << u"12 second"_s << 12000000us << true; |
| 51 | QTest::newRow("valid-sec-03") << u"12 sec"_s << 12000000us << true; |
| 52 | QTest::newRow("valid-sec-04") << u" 12 s"_s << 12000000us << true; |
| 53 | QTest::newRow("valid-sec-05") << u" 12 "_s << 12000000us << true; |
| 54 | |
| 55 | QTest::newRow("valid-min-01") << u"12minutes"_s << 720000000us << true; |
| 56 | QTest::newRow("valid-min-02") << u"12 minute"_s << 720000000us << true; |
| 57 | QTest::newRow("valid-min-03") << u"12 min"_s << 720000000us << true; |
| 58 | QTest::newRow("valid-min-04") << u" 12 m "_s << 720000000us << true; |
| 59 | |
| 60 | QTest::newRow("valid-hr-01") << u"1hours"_s << 3600000000us << true; |
| 61 | QTest::newRow("valid-hr-02") << u"1 hour"_s << 3600000000us << true; |
| 62 | QTest::newRow("valid-hr-03") << u"1 hr"_s << 3600000000us << true; |
| 63 | QTest::newRow("valid-hr-04") << u" 1 h "_s << 3600000000us << true; |
| 64 | |
| 65 | QTest::newRow("valid-day-01") << u"1days"_s << 86400000000us << true; |
| 66 | QTest::newRow("valid-day-02") << u"1 day"_s << 86400000000us << true; |
| 67 | QTest::newRow("valid-day-03") << u" 1 d "_s << 86400000000us << true; |
| 68 | |
| 69 | QTest::newRow("valid-week-01") << u"1weeks"_s << 604800000000us << true; |
| 70 | QTest::newRow("valid-week-02") << u"1 week"_s << 604800000000us << true; |
| 71 | QTest::newRow("valid-week-03") << u" 1 w "_s << 604800000000us << true; |
| 72 | |
| 73 | QTest::newRow("valid-month-01") << u"1months"_s << 2629746000000us << true; |
| 74 | QTest::newRow("valid-month-02") << u"1 month"_s << 2629746000000us << true; |
| 75 | QTest::newRow("valid-month-03") << u" 1 M "_s << 2629746000000us << true; |
| 76 | |
| 77 | QTest::newRow("valid-year-01") << u"1years"_s << 31556952000000us << true; |
| 78 | QTest::newRow("valid-year-02") << u"1 year"_s << 31556952000000us << true; |
| 79 | QTest::newRow("valid-year-03") << u" 1 y "_s << 31556952000000us << true; |
| 80 | |
| 81 | QTest::newRow("combined-valid-01") << u"1hour 12 minutes"_s << 4320000000us << true; |
| 82 | QTest::newRow("combined-valid-02") << u" 12 min 1hr "_s << 4320000000us << true; |
| 83 | QTest::newRow("combined-valid-03") << u"1 sec 1"_s << 2000000us << true; |
| 84 | |
| 85 | QTest::newRow("invalid-digit-too-long") |
| 86 | << u"184467440737095516152934759234234"_s << std::chrono::microseconds::zero() << false; |
| 87 | QTest::newRow("invalid-no-digit") << u"seconds"_s << std::chrono::microseconds::zero() << false; |
| 88 | QTest::newRow("invalid-unit") << u"1 Stunde"_s << std::chrono::microseconds::zero() << false; |
| 89 | QTest::newRow("invalid-empty") << u" "_s << std::chrono::microseconds::zero() << false; |
| 90 | } |
| 91 | |
| 92 | QTEST_MAIN(UtilsTest) |
| 93 |
nothing calls this directly
no outgoing calls
no test coverage detected