summaryrefslogtreecommitdiffstats
path: root/tests/auto/gui/util/qtexturefilereader
diff options
context:
space:
mode:
authorEirik Aavitsland <eirik.aavitsland@qt.io>2018-08-15 10:58:12 +0200
committerEirik Aavitsland <eirik.aavitsland@qt.io>2018-09-12 08:41:38 +0000
commit9d1c881f491363f330284ddb177cbee5f3e9952d (patch)
tree1d2021e513fe1b020ad0ed2f04abeb7bc28e77ab /tests/auto/gui/util/qtexturefilereader
parent307d0b32f08f159e7c3700d96d424d9725b5cc71 (diff)
Texture file support: add mipmap reading to ktx handlerv5.12.0-alpha1
Change-Id: Ic2c10b3e64d63d2272a8a3922d2b3f99dfd45bdb Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Diffstat (limited to 'tests/auto/gui/util/qtexturefilereader')
-rw-r--r--tests/auto/gui/util/qtexturefilereader/qtexturefilereader.qrc1
-rw-r--r--tests/auto/gui/util/qtexturefilereader/texturefiles/car_mips.ktxbin0 -> 8088 bytes
-rw-r--r--tests/auto/gui/util/qtexturefilereader/tst_qtexturefilereader.cpp36
3 files changed, 26 insertions, 11 deletions
diff --git a/tests/auto/gui/util/qtexturefilereader/qtexturefilereader.qrc b/tests/auto/gui/util/qtexturefilereader/qtexturefilereader.qrc
index 74f33d57ad..ab882b5db2 100644
--- a/tests/auto/gui/util/qtexturefilereader/qtexturefilereader.qrc
+++ b/tests/auto/gui/util/qtexturefilereader/qtexturefilereader.qrc
@@ -2,5 +2,6 @@
<qresource prefix="/">
<file>texturefiles/car.ktx</file>
<file>texturefiles/pattern.pkm</file>
+ <file>texturefiles/car_mips.ktx</file>
</qresource>
</RCC>
diff --git a/tests/auto/gui/util/qtexturefilereader/texturefiles/car_mips.ktx b/tests/auto/gui/util/qtexturefilereader/texturefiles/car_mips.ktx
new file mode 100644
index 0000000000..82822e6c0b
--- /dev/null
+++ b/tests/auto/gui/util/qtexturefilereader/texturefiles/car_mips.ktx
Binary files differ
diff --git a/tests/auto/gui/util/qtexturefilereader/tst_qtexturefilereader.cpp b/tests/auto/gui/util/qtexturefilereader/tst_qtexturefilereader.cpp
index f480184067..9ff4f0ccf2 100644
--- a/tests/auto/gui/util/qtexturefilereader/tst_qtexturefilereader.cpp
+++ b/tests/auto/gui/util/qtexturefilereader/tst_qtexturefilereader.cpp
@@ -44,26 +44,38 @@ void tst_qtexturefilereader::checkHandlers_data()
QTest::addColumn<QSize>("size");
QTest::addColumn<quint32>("glFormat");
QTest::addColumn<quint32>("glInternalFormat");
- // todo: glBaseInternalFormat
+ QTest::addColumn<quint32>("glBaseInternalFormat");
QTest::addColumn<int>("levels");
- QTest::addColumn<int>("dataOffset");
- QTest::addColumn<int>("dataLength");
+ QTest::addColumn<QList<int>>("dataOffsets");
+ QTest::addColumn<QList<int>>("dataLengths");
QTest::addRow("pattern.pkm") << QStringLiteral(":/texturefiles/pattern.pkm")
<< QSize(64, 64)
<< quint32(0x0)
<< quint32(0x8d64)
+ << quint32(0x0)
<< 1
- << 16
- << 2048;
+ << (QList<int>() << 16)
+ << (QList<int>() << 2048);
QTest::addRow("car.ktx") << QStringLiteral(":/texturefiles/car.ktx")
<< QSize(146, 80)
<< quint32(0x0)
<< quint32(0x9278)
+ << quint32(0x1908)
<< 1
- << 68
- << 11840;
+ << (QList<int>() << 68)
+ << (QList<int>() << 11840);
+
+ QTest::addRow("car_mips.ktx") << QStringLiteral(":/texturefiles/car_mips.ktx")
+ << QSize(146, 80)
+ << quint32(0x0)
+ << quint32(0x9274)
+ << quint32(0x1907)
+ << 8
+ << (QList<int>() << 68 << 5992 << 7516 << 7880 << 8004 << 8056 << 8068 << 8080)
+ << (QList<int>() << 5920 << 1520 << 360 << 120 << 48 << 8 << 8 << 8);
+
}
void tst_qtexturefilereader::checkHandlers()
@@ -73,8 +85,8 @@ void tst_qtexturefilereader::checkHandlers()
QFETCH(quint32, glFormat);
QFETCH(quint32, glInternalFormat);
QFETCH(int, levels);
- QFETCH(int, dataOffset);
- QFETCH(int, dataLength);
+ QFETCH(QList<int>, dataOffsets);
+ QFETCH(QList<int>, dataLengths);
QFile f(fileName);
QVERIFY(f.open(QIODevice::ReadOnly));
@@ -88,8 +100,10 @@ void tst_qtexturefilereader::checkHandlers()
QCOMPARE(tex.glFormat(), glFormat);
QCOMPARE(tex.glInternalFormat(), glInternalFormat);
QCOMPARE(tex.numLevels(), levels);
- QCOMPARE(tex.dataOffset(), dataOffset);
- QCOMPARE(tex.dataLength(), dataLength);
+ for (int i = 0; i < tex.numLevels(); i++) {
+ QCOMPARE(tex.dataOffset(i), dataOffsets.at(i));
+ QCOMPARE(tex.dataLength(i), dataLengths.at(i));
+ }
}
QTEST_MAIN(tst_qtexturefilereader)