summaryrefslogtreecommitdiff
path: root/tests/auto/qsvgrenderer/tst_qsvgrenderer.cpp
diff options
context:
space:
mode:
authorQt Forward Merge Bot <qt_forward_merge_bot@qt-project.org>2020-01-14 03:00:08 +0100
committerQt Forward Merge Bot <qt_forward_merge_bot@qt-project.org>2020-01-14 03:00:08 +0100
commit97c5949d1376293220283ab1bc7b64f4eadafdcb (patch)
treec8d98124275c0fbc4fc51fa678647f90ab0c6edd /tests/auto/qsvgrenderer/tst_qsvgrenderer.cpp
parent9db51feb3a59682ab73c75700c63db5a5ed7f163 (diff)
parent2f58f925cc16946a474f066c739c4682246afa0f (diff)
downloadqtsvg-97c5949d1376293220283ab1bc7b64f4eadafdcb.tar.gz
Merge remote-tracking branch 'origin/5.15' into dev
Change-Id: I535fa2bbee58d1cd15e1c25f0ac6321d502518fb
Diffstat (limited to 'tests/auto/qsvgrenderer/tst_qsvgrenderer.cpp')
-rw-r--r--tests/auto/qsvgrenderer/tst_qsvgrenderer.cpp31
1 files changed, 31 insertions, 0 deletions
diff --git a/tests/auto/qsvgrenderer/tst_qsvgrenderer.cpp b/tests/auto/qsvgrenderer/tst_qsvgrenderer.cpp
index 309c646..8ad74f2 100644
--- a/tests/auto/qsvgrenderer/tst_qsvgrenderer.cpp
+++ b/tests/auto/qsvgrenderer/tst_qsvgrenderer.cpp
@@ -60,6 +60,7 @@ private slots:
void testMapViewBoxToTarget();
void testRenderElement();
void testRenderElementToBounds();
+ void testRenderDocumentWithSizeToBounds();
void constructorQXmlStreamReader() const;
void loadQXmlStreamReader() const;
void nestedQXmlStreamReader() const;
@@ -372,6 +373,36 @@ void tst_QSvgRenderer::testRenderElementToBounds()
QCOMPARE(reference, rendering);
}
+void tst_QSvgRenderer::testRenderDocumentWithSizeToBounds()
+{
+ // QTBUG-80888
+ QImage reference(400, 200, QImage::Format_ARGB32);
+ {
+ reference.fill(Qt::transparent);
+ QPainter p(&reference);
+ p.fillRect(100, 100, 100, 50, Qt::blue);
+ p.fillRect(200, 50, 100, 50, Qt::blue);
+ }
+
+ QImage rendering(400, 200, QImage::Format_ARGB32);
+ {
+ const char *const src = R"src(
+ <svg width="20" height="80">
+ <g transform="translate(-100,-100)">
+ <path d="m 110,180 v -80 h 10 v 40 h -20 v 40 z" fill="blue" />
+ </g>
+ </svg>
+ )src";
+ const QByteArray data(src);
+ QSvgRenderer rend(data);
+ rendering.fill(Qt::transparent);
+ QPainter p(&rendering);
+ rend.render(&p, QRectF(100, 50, 200, 100));
+ }
+
+ QCOMPARE(reference, rendering);
+}
+
void tst_QSvgRenderer::constructorQXmlStreamReader() const
{
const QByteArray data(src);