summaryrefslogtreecommitdiffstats
path: root/tests/auto/gui/painting
diff options
context:
space:
mode:
authorLeander Beernaert <leander.beernaert@qt.io>2020-01-22 13:47:08 +0100
committerLeander Beernaert <leander.beernaert@qt.io>2020-01-24 13:17:33 +0100
commit502d3d6744913899da87acfda5ebdab42c40329e (patch)
tree16658a328503bfd5a62b4fd5d69ffb66e9854b18 /tests/auto/gui/painting
parentd1be8b9ceb2c7b20bbe53a07154c79699540ea3d (diff)
parent06bb315beb6c2c398223cfe52cbc7f66e14a8557 (diff)
Merge remote-tracking branch 'origin/dev' into merge-dev
Diffstat (limited to 'tests/auto/gui/painting')
-rw-r--r--tests/auto/gui/painting/qbrush/tst_qbrush.cpp6
-rw-r--r--tests/auto/gui/painting/qcolor/tst_qcolor.cpp37
-rw-r--r--tests/auto/gui/painting/qcolorspace/tst_qcolorspace.cpp34
-rw-r--r--tests/auto/gui/painting/qpainter/tst_qpainter.cpp4
-rw-r--r--tests/auto/gui/painting/qpdfwriter/tst_qpdfwriter.cpp23
5 files changed, 87 insertions, 17 deletions
diff --git a/tests/auto/gui/painting/qbrush/tst_qbrush.cpp b/tests/auto/gui/painting/qbrush/tst_qbrush.cpp
index f35d4f330b..ac357c92db 100644
--- a/tests/auto/gui/painting/qbrush/tst_qbrush.cpp
+++ b/tests/auto/gui/painting/qbrush/tst_qbrush.cpp
@@ -341,12 +341,6 @@ void tst_QBrush::gradientPresets()
QCOMPARE(lg->stops().at(0), QGradientStop(0, QColor(QLatin1String("#ff9a9e"))));
QCOMPARE(lg->stops().at(1), QGradientStop(0.99, QColor(QLatin1String("#fad0c4"))));
QCOMPARE(lg->stops().at(2), QGradientStop(1, QColor(QLatin1String("#fad0c4"))));
-
-
- QGradient invalidPreset(QGradient::Preset(-1));
- QCOMPARE(invalidPreset.type(), QGradient::NoGradient);
- QBrush brush(invalidPreset);
- QCOMPARE(brush.style(), Qt::NoBrush);
}
void fill(QPaintDevice *pd) {
diff --git a/tests/auto/gui/painting/qcolor/tst_qcolor.cpp b/tests/auto/gui/painting/qcolor/tst_qcolor.cpp
index 07c820dc86..f8502c1e2f 100644
--- a/tests/auto/gui/painting/qcolor/tst_qcolor.cpp
+++ b/tests/auto/gui/painting/qcolor/tst_qcolor.cpp
@@ -1032,6 +1032,15 @@ void tst_QColor::setRgbF()
QCOMPARE(qfloat16(b2), qfloat16(b));
}
}
+ QVERIFY(color.isValid());
+ QColor invalidRgb = color;
+ QColor invalidRgbF = color;
+ QTest::ignoreMessage(QtWarningMsg, "QColor::setRgb: RGB parameters out of range");
+ invalidRgb.setRgb(-1, -1, -1);
+ QTest::ignoreMessage(QtWarningMsg, "QColor::setRgb: RGB parameters out of range");
+ invalidRgbF.setRgb(-1, -1, -1, -1);
+ QVERIFY(!invalidRgb.isValid());
+ QVERIFY(!invalidRgbF.isValid());
}
void tst_QColor::setRgba()
@@ -1146,6 +1155,16 @@ void tst_QColor::setHsv()
QCOMPARE(v2, v);
}
}
+ QVERIFY(color.isValid());
+ QVERIFY(color.isValid());
+ QColor invalidHsv = color;
+ QColor invalidHsvF = color;
+ QTest::ignoreMessage(QtWarningMsg, "QColor::setHsv: HSV parameters out of range");
+ invalidHsv.setHsv(-1, -1, -1);
+ QTest::ignoreMessage(QtWarningMsg, "QColor::setHsvF: HSV parameters out of range");
+ invalidHsvF.setHsvF(-1, -1, -1);
+ QVERIFY(!invalidHsv.isValid());
+ QVERIFY(!invalidHsvF.isValid());
}
void tst_QColor::setCmyk()
@@ -1271,6 +1290,15 @@ void tst_QColor::setCmyk()
QCOMPARE(k2, k);
}
}
+ QVERIFY(color.isValid());
+ QColor invalidCmyk = color;
+ QColor invalidCmykF = color;
+ QTest::ignoreMessage(QtWarningMsg, "QColor::setCmyk: CMYK parameters out of range");
+ invalidCmyk.setCmyk(-1, -1, -1, -1, -1);
+ QTest::ignoreMessage(QtWarningMsg, "QColor::setCmykF: CMYK parameters out of range");
+ invalidCmykF.setCmykF(-1, -1, -1, -1, -1);
+ QVERIFY(!invalidCmyk.isValid());
+ QVERIFY(!invalidCmykF.isValid());
}
void tst_QColor::setHsl()
@@ -1372,6 +1400,15 @@ void tst_QColor::setHsl()
QCOMPARE(l2, l);
}
}
+ QVERIFY(color.isValid());
+ QColor invalidHsl = color;
+ QColor invalidHslF = color;
+ QTest::ignoreMessage(QtWarningMsg, "QColor::setHsl: HSL parameters out of range");
+ invalidHsl.setHsl(-1, -1, -1, -1);
+ QTest::ignoreMessage(QtWarningMsg, "QColor::setHslF: HSL parameters out of range");
+ invalidHslF.setHslF(-1, -1, -1, -1);
+ QVERIFY(!invalidHsl.isValid());
+ QVERIFY(!invalidHslF.isValid());
}
void tst_QColor::toRgb_data()
diff --git a/tests/auto/gui/painting/qcolorspace/tst_qcolorspace.cpp b/tests/auto/gui/painting/qcolorspace/tst_qcolorspace.cpp
index 531e14d25b..945a4772f3 100644
--- a/tests/auto/gui/painting/qcolorspace/tst_qcolorspace.cpp
+++ b/tests/auto/gui/painting/qcolorspace/tst_qcolorspace.cpp
@@ -105,37 +105,47 @@ void tst_QColorSpace::movable()
void tst_QColorSpace::namedColorSpaces_data()
{
QTest::addColumn<QColorSpace::NamedColorSpace>("namedColorSpace");
+ QTest::addColumn<bool>("isValid");
QTest::addColumn<QColorSpace::Primaries>("primariesId");
QTest::addColumn<QColorSpace::TransferFunction>("transferFunctionId");
- QTest::newRow("sRGB") << QColorSpace::SRgb
+ QTest::newRow("sRGB") << QColorSpace::SRgb << true
<< QColorSpace::Primaries::SRgb
<< QColorSpace::TransferFunction::SRgb;
- QTest::newRow("sRGB Linear") << QColorSpace::SRgbLinear
+ QTest::newRow("sRGB Linear") << QColorSpace::SRgbLinear << true
<< QColorSpace::Primaries::SRgb
<< QColorSpace::TransferFunction::Linear;
- QTest::newRow("Adobe RGB") << QColorSpace::AdobeRgb
+ QTest::newRow("Adobe RGB") << QColorSpace::AdobeRgb << true
<< QColorSpace::Primaries::AdobeRgb
<< QColorSpace::TransferFunction::Gamma;
- QTest::newRow("Display-P3") << QColorSpace::DisplayP3
+ QTest::newRow("Display-P3") << QColorSpace::DisplayP3 << true
<< QColorSpace::Primaries::DciP3D65
<< QColorSpace::TransferFunction::SRgb;
- QTest::newRow("ProPhoto RGB") << QColorSpace::ProPhotoRgb
+ QTest::newRow("ProPhoto RGB") << QColorSpace::ProPhotoRgb << true
<< QColorSpace::Primaries::ProPhotoRgb
<< QColorSpace::TransferFunction::ProPhotoRgb;
+ QTest::newRow("0") << QColorSpace::NamedColorSpace(0)
+ << false
+ << QColorSpace::Primaries::Custom
+ << QColorSpace::TransferFunction::Custom;
+ QTest::newRow("1027") << QColorSpace::NamedColorSpace(1027)
+ << false
+ << QColorSpace::Primaries::Custom
+ << QColorSpace::TransferFunction::Custom;
}
void tst_QColorSpace::namedColorSpaces()
{
QFETCH(QColorSpace::NamedColorSpace, namedColorSpace);
+ QFETCH(bool, isValid);
QFETCH(QColorSpace::Primaries, primariesId);
QFETCH(QColorSpace::TransferFunction, transferFunctionId);
+ if (!isValid)
+ QTest::ignoreMessage(QtWarningMsg, QRegularExpression("QColorSpace attempted constructed from invalid QColorSpace::NamedColorSpace"));
QColorSpace colorSpace = namedColorSpace;
- QVERIFY(colorSpace.isValid());
-
- QCOMPARE(colorSpace, namedColorSpace);
+ QCOMPARE(colorSpace.isValid(), isValid);
QCOMPARE(colorSpace.primaries(), primariesId);
QCOMPARE(colorSpace.transferFunction(), transferFunctionId);
}
@@ -149,15 +159,21 @@ void tst_QColorSpace::toIccProfile_data()
void tst_QColorSpace::toIccProfile()
{
QFETCH(QColorSpace::NamedColorSpace, namedColorSpace);
+ QFETCH(bool, isValid);
QFETCH(QColorSpace::Primaries, primariesId);
QFETCH(QColorSpace::TransferFunction, transferFunctionId);
Q_UNUSED(primariesId);
Q_UNUSED(transferFunctionId);
+ if (!isValid)
+ QTest::ignoreMessage(QtWarningMsg, QRegularExpression("QColorSpace attempted constructed from invalid QColorSpace::NamedColorSpace"));
QColorSpace colorSpace = namedColorSpace;
QByteArray iccProfile = colorSpace.iccProfile();
- QVERIFY(!iccProfile.isEmpty());
+ QCOMPARE(iccProfile.isEmpty(), !isValid);
+
+ if (!isValid)
+ return;
QColorSpace colorSpace2 = QColorSpace::fromIccProfile(iccProfile);
QVERIFY(colorSpace2.isValid());
diff --git a/tests/auto/gui/painting/qpainter/tst_qpainter.cpp b/tests/auto/gui/painting/qpainter/tst_qpainter.cpp
index 6e48439944..e05de64be5 100644
--- a/tests/auto/gui/painting/qpainter/tst_qpainter.cpp
+++ b/tests/auto/gui/painting/qpainter/tst_qpainter.cpp
@@ -715,7 +715,7 @@ void tst_QPainter::drawBorderPixmap()
QPainter p(&pm);
p.setTransform(QTransform(-1,0,0,-1,173.5,153.5));
qDrawBorderPixmap(&p, QRect(0,0,75,105), QMargins(39,39,39,39), src, QRect(0,0,79,79), QMargins(39,39,39,39),
- QTileRules(Qt::StretchTile,Qt::StretchTile), 0);
+ QTileRules(Qt::StretchTile,Qt::StretchTile), { });
}
#endif
@@ -1739,7 +1739,7 @@ void tst_QPainter::renderHints()
// Turn off all...
p.setRenderHints(QPainter::RenderHints(0xffffffff), false);
- QCOMPARE(p.renderHints(), QPainter::RenderHints(0));
+ QCOMPARE(p.renderHints(), QPainter::RenderHints{});
// Single set/get
p.setRenderHint(QPainter::Antialiasing);
diff --git a/tests/auto/gui/painting/qpdfwriter/tst_qpdfwriter.cpp b/tests/auto/gui/painting/qpdfwriter/tst_qpdfwriter.cpp
index b2b2b685ae..3fbe16575d 100644
--- a/tests/auto/gui/painting/qpdfwriter/tst_qpdfwriter.cpp
+++ b/tests/auto/gui/painting/qpdfwriter/tst_qpdfwriter.cpp
@@ -112,6 +112,29 @@ void tst_QPdfWriter::basics()
QCOMPARE(writer.pageLayout().fullRect(QPageLayout::Millimeter), QRectF(0, 0, 297, 210));
QCOMPARE(writer.pageLayout().paintRect(QPageLayout::Millimeter), QRectF(50, 50, 197, 110));
+
+ QByteArray metadata (
+ "<?xpacket begin='' id='W5M0MpCehiHzreSzNTczkc9d'?>\n"
+ "<x:xmpmeta xmlns:x=\"adobe:ns:meta/\">\n"
+ " <rdf:RDF xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\"\n"
+ " <rdf:Description xmlns:dc=\"http://purl.org/dc/elements/1.1/\" rdf:about=\"\">\n"
+ " <dc:title>\n"
+ " <rdf:Alt>\n"
+ " <rdf:li xml:lang=\"x-default\">TITLE</rdf:li>\n"
+ " </rdf:Alt>\n"
+ " </dc:title>\n"
+ " </rdf:Description>\n"
+ " <rdf:Description xmlns:xmp=\"http://ns.adobe.com/xap/1.0/\" rdf:about="" xmp:CreatorTool=\"OUR_OWN_XMP\" xmp:CreateDate=\"2019-12-16T00:00:00+01:00\" xmp:ModifyDate=\"2019-12-16T00:00:00+01:00\"/>\n"
+ " <rdf:Description xmlns:pdf=\"http://ns.adobe.com/pdf/1.3/\" rdf:about="" pdf:Producer=\"MetaType Info Producer\"/>\n"
+ " <rdf:Description xmlns:pdfaid=\"http://www.aiim.org/pdfa/ns/id/\" rdf:about=\"THI IS ALL ABOUT\" pdfaid:part=\"1\" pdfaid:conformance=\"B\"/>\n"
+ " </rdf:RDF>\n"
+ "</x:xmpmeta>\n"
+ "<?xpacket end='w'?>\n"
+ );
+
+ QCOMPARE(writer.documentXmpMetadata(), QByteArray());
+ writer.setDocumentXmpMetadata(metadata);
+ QCOMPARE(writer.documentXmpMetadata(), metadata);
}
// Test the old page metrics methods, see also QPrinter tests for the same.