summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorQt Forward Merge Bot <qt_forward_merge_bot@qt-project.org>2020-01-07 03:03:20 +0100
committerQt Forward Merge Bot <qt_forward_merge_bot@qt-project.org>2020-01-07 03:03:20 +0100
commit2f58f925cc16946a474f066c739c4682246afa0f (patch)
tree0ba495f8a83eba922c0eb8226cf8bdde05c6dbfb /tests
parentbf173000d90a718d4a4c36fd1f8ceb5720ff87ac (diff)
parentacb66cad2280bda20d26d08d606a66b9660b17aa (diff)
downloadqtsvg-2f58f925cc16946a474f066c739c4682246afa0f.tar.gz
Merge remote-tracking branch 'origin/5.14' into 5.15
Change-Id: If6bf34ca3216ab9e0866d8c4eea7c4e92a7f3f4d
Diffstat (limited to 'tests')
-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);