diff options
author | Alexander V. Wolf <alex.v.wolf@gmail.com> | 2022-01-11 19:03:05 +0700 |
---|---|---|
committer | Alexander V. Wolf <alex.v.wolf@gmail.com> | 2022-01-11 19:03:05 +0700 |
commit | 4deb7bc6de8970e866d65fd9002f43496cdb6cc8 (patch) | |
tree | e3f6d9cf1592cac2640bb26e13930de70a0c7007 | |
parent | bd3565246624a70b1bba1cae66ce61eff605c7ab (diff) |
added unit test
-rw-r--r-- | src/tests/testConversions.cpp | 141 | ||||
-rw-r--r-- | src/tests/testConversions.hpp | 6 |
2 files changed, 147 insertions, 0 deletions
diff --git a/src/tests/testConversions.cpp b/src/tests/testConversions.cpp index 2268c059cb..c0d4d56089 100644 --- a/src/tests/testConversions.cpp +++ b/src/tests/testConversions.cpp @@ -1330,6 +1330,75 @@ void TestConversions::testVec3iToStr() } } +void TestConversions::testVec3iToQColor() +{ + QVariantList data; + + data << "255,255,255" << 255 << 255 << 255; + data << "255,0,255" << 255 << 0 << 255; + data << "0,255,0" << 0 << 255 << 0; + data << "0,0,0" << 0 << 0 << 0; + + while (data.count()>=4) + { + QStringList vec = data.takeFirst().toString().split(","); + QColor color = QColor(vec.at(0).toInt(), vec.at(1).toInt(), vec.at(2).toInt()); + int v1 = data.takeFirst().toInt(); + int v2 = data.takeFirst().toInt(); + int v3 = data.takeFirst().toInt(); + Vec3i srcVec = Vec3i(v1, v2, v3); + QColor dstColor = srcVec.toQColor(); + + QVERIFY2(color==dstColor, qPrintable(QString("%1 = %2").arg(color.name(), dstColor.name()))); + } +} + +void TestConversions::testVec3fToQColor() +{ + QVariantList data; + + data << "255,255,255" << 1.f << 1.f << 1.f; + data << "255,0,255" << 1.f << 0.f << 1.f; + data << "0,255,0" << 0.f << 1.f << 0.f; + data << "0,0,0" << 0.f << 0.f << 0.f; + + while (data.count()>=4) + { + QStringList vec = data.takeFirst().toString().split(","); + QColor color = QColor(vec.at(0).toInt(), vec.at(1).toInt(), vec.at(2).toInt()); + float v1 = data.takeFirst().toFloat(); + float v2 = data.takeFirst().toFloat(); + float v3 = data.takeFirst().toFloat(); + Vec3f srcVec = Vec3f(v1, v2, v3); + QColor dstColor = srcVec.toQColor(); + + QVERIFY2(color==dstColor, qPrintable(QString("%1 = %2").arg(color.name(), dstColor.name()))); + } +} + +void TestConversions::testVec3dToQColor() +{ + QVariantList data; + + data << "255,255,255" << 1. << 1. << 1.; + data << "255,0,255" << 1. << 0. << 1.; + data << "0,255,0" << 0. << 1. << 0.; + data << "0,0,0,0" << 0. << 0. << 0.; + + while (data.count()>=5) + { + QStringList vec = data.takeFirst().toString().split(","); + QColor color = QColor(vec.at(0).toInt(), vec.at(1).toInt(), vec.at(2).toInt()); + double v1 = data.takeFirst().toDouble(); + double v2 = data.takeFirst().toDouble(); + double v3 = data.takeFirst().toDouble(); + Vec3d srcVec = Vec3d(v1, v2, v3); + QColor dstColor = srcVec.toQColor(); + + QVERIFY2(color==dstColor, qPrintable(QString("%1 = %2").arg(color.name(), dstColor.name()))); + } +} + void TestConversions::testStrToVec4d() { QVariantList data; @@ -1433,6 +1502,78 @@ void TestConversions::testVec4iToStr() } } +void TestConversions::testVec4iToQColor() +{ + QVariantList data; + + data << "255,255,255,255" << 255 << 255 << 255 << 255; + data << "255,0,255,0" << 255 << 0 << 255 << 0; + data << "0,255,0,255" << 0 << 255 << 0 << 255; + data << "0,0,0,0" << 0 << 0 << 0 << 0; + + while (data.count()>=5) + { + QStringList vec = data.takeFirst().toString().split(","); + QColor color = QColor(vec.at(0).toInt(), vec.at(1).toInt(), vec.at(2).toInt(), vec.at(3).toInt()); + int v1 = data.takeFirst().toInt(); + int v2 = data.takeFirst().toInt(); + int v3 = data.takeFirst().toInt(); + int v4 = data.takeFirst().toInt(); + Vec4i srcVec = Vec4i(v1, v2, v3, v4); + QColor dstColor = srcVec.toQColor(); + + QVERIFY2(color==dstColor, qPrintable(QString("%1 = %2").arg(color.name(), dstColor.name()))); + } +} + +void TestConversions::testVec4fToQColor() +{ + QVariantList data; + + data << "255,255,255,255" << 1.f << 1.f << 1.f << 1.f; + data << "255,0,255,0" << 1.f << 0.f << 1.f << 0.f; + data << "0,255,0,255" << 0.f << 1.f << 0.f << 1.f; + data << "0,0,0,0" << 0.f << 0.f << 0.f << 0.f; + + while (data.count()>=5) + { + QStringList vec = data.takeFirst().toString().split(","); + QColor color = QColor(vec.at(0).toInt(), vec.at(1).toInt(), vec.at(2).toInt(), vec.at(3).toInt()); + float v1 = data.takeFirst().toFloat(); + float v2 = data.takeFirst().toFloat(); + float v3 = data.takeFirst().toFloat(); + float v4 = data.takeFirst().toFloat(); + Vec4f srcVec = Vec4f(v1, v2, v3, v4); + QColor dstColor = srcVec.toQColor(); + + QVERIFY2(color==dstColor, qPrintable(QString("%1 = %2").arg(color.name(), dstColor.name()))); + } +} + +void TestConversions::testVec4dToQColor() +{ + QVariantList data; + + data << "255,255,255,255" << 1. << 1. << 1. << 1.; + data << "255,0,255,0" << 1. << 0. << 1. << 0.; + data << "0,255,0,255" << 0. << 1. << 0. << 1.; + data << "0,0,0,0" << 0. << 0. << 0. << 0.; + + while (data.count()>=5) + { + QStringList vec = data.takeFirst().toString().split(","); + QColor color = QColor(vec.at(0).toInt(), vec.at(1).toInt(), vec.at(2).toInt(), vec.at(3).toInt()); + double v1 = data.takeFirst().toDouble(); + double v2 = data.takeFirst().toDouble(); + double v3 = data.takeFirst().toDouble(); + double v4 = data.takeFirst().toDouble(); + Vec4d srcVec = Vec4d(v1, v2, v3, v4); + QColor dstColor = srcVec.toQColor(); + + QVERIFY2(color==dstColor, qPrintable(QString("%1 = %2").arg(color.name(), dstColor.name()))); + } +} + void TestConversions::testQDateTimeToJD() { QMap<double, QString> map; diff --git a/src/tests/testConversions.hpp b/src/tests/testConversions.hpp index 54bf1d6f91..f2acffb2d8 100644 --- a/src/tests/testConversions.hpp +++ b/src/tests/testConversions.hpp @@ -63,10 +63,16 @@ private slots: void testVec3fToStr(); void testVec3dToStr(); void testVec3iToStr(); + void testVec3iToQColor(); + void testVec3fToQColor(); + void testVec3dToQColor(); void testStrToVec4d(); void testVec4dToStr(); void testVec4fToStr(); void testVec4iToStr(); + void testVec4iToQColor(); + void testVec4fToQColor(); + void testVec4dToQColor(); void testQDateTimeToJD(); void testJDToQDateTime(); void testHoursFromJD(); |