summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/gui/painting/qbrush/tst_qbrush.cpp39
1 files changed, 39 insertions, 0 deletions
diff --git a/tests/auto/gui/painting/qbrush/tst_qbrush.cpp b/tests/auto/gui/painting/qbrush/tst_qbrush.cpp
index d252a0e87c..8be9973c64 100644
--- a/tests/auto/gui/painting/qbrush/tst_qbrush.cpp
+++ b/tests/auto/gui/painting/qbrush/tst_qbrush.cpp
@@ -69,6 +69,8 @@ private slots:
void nullBrush();
void isOpaque();
void debug();
+
+ void textureBrushStream();
};
@@ -407,5 +409,42 @@ void tst_QBrush::debug()
qDebug() << pixmap_brush; // don't crash
}
+void tst_QBrush::textureBrushStream()
+{
+ QPixmap pixmap_source(10, 10);
+ QImage image_source(10, 10, QImage::Format_RGB32);
+
+ fill(&pixmap_source);
+ fill(&image_source);
+
+ QBrush pixmap_brush;
+ pixmap_brush.setTexture(pixmap_source);
+ QBrush image_brush;
+ image_brush.setTextureImage(image_source);
+
+ QByteArray data1;
+ QByteArray data2;
+ {
+ QDataStream stream1(&data1, QIODevice::WriteOnly);
+ QDataStream stream2(&data2, QIODevice::WriteOnly);
+ stream1 << pixmap_brush;
+ stream2 << image_brush;
+ }
+
+ QBrush loadedBrush1;
+ QBrush loadedBrush2;
+ {
+ QDataStream stream1(&data1, QIODevice::ReadOnly);
+ QDataStream stream2(&data2, QIODevice::ReadOnly);
+ stream1 >> loadedBrush1;
+ stream2 >> loadedBrush2;
+ }
+
+ QCOMPARE(loadedBrush1.style(), Qt::TexturePattern);
+ QCOMPARE(loadedBrush2.style(), Qt::TexturePattern);
+ QCOMPARE(loadedBrush1.texture(), pixmap_source);
+ QCOMPARE(loadedBrush2.textureImage(), image_source);
+}
+
QTEST_MAIN(tst_QBrush)
#include "tst_qbrush.moc"