From b54839b8976b5c1455c838828f2bc92cdeb178eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Mr=C3=A1zek?= Date: Wed, 2 Mar 2016 03:03:44 +0100 Subject: NOISSUE eliminate timestamp strings --- tests/CMakeLists.txt | 1 + tests/tst_ParseUtils.cpp | 45 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 46 insertions(+) create mode 100644 tests/tst_ParseUtils.cpp (limited to 'tests') diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 4e37fa34..1e5c1aa9 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -31,6 +31,7 @@ add_unit_test(ModList tst_ModList.cpp) add_unit_test(Resource tst_Resource.cpp) add_unit_test(GZip tst_GZip.cpp) add_unit_test(JavaVersion tst_JavaVersion.cpp) +add_unit_test(ParseUtils tst_ParseUtils.cpp) # Tests END # diff --git a/tests/tst_ParseUtils.cpp b/tests/tst_ParseUtils.cpp new file mode 100644 index 00000000..d961e52b --- /dev/null +++ b/tests/tst_ParseUtils.cpp @@ -0,0 +1,45 @@ +#include +#include "TestUtil.h" + +#include "minecraft/ParseUtils.h" + +class ParseUtilsTest : public QObject +{ + Q_OBJECT +private +slots: + void test_Through_data() + { + QTest::addColumn("timestamp"); + const char * timestamps[] = + { + "2016-02-29T13:49:54+01:00", + "2016-02-26T15:21:11+00:01", + "2016-02-24T15:52:36+01:13", + "2016-02-18T17:41:00+00:00", + "2016-02-17T15:23:19+00:00", + "2016-02-16T15:22:39+09:22", + "2016-02-10T15:06:41+00:00", + "2016-02-04T15:28:02-05:33" + }; + for(int i = 0; i < (sizeof(timestamps) / sizeof(const char *)); i++) + { + QTest::newRow(timestamps[i]) << QString(timestamps[i]); + } + } + void test_Through() + { + QFETCH(QString, timestamp); + + auto time_parsed = timeFromS3Time(timestamp); + auto time_serialized = timeToS3Time(time_parsed); + + QCOMPARE(time_serialized, timestamp); + } + +}; + +QTEST_GUILESS_MAIN(ParseUtilsTest) + +#include "tst_ParseUtils.moc" + -- cgit v1.2.3