ubuntu-sdk-bugs team mailing list archive
-
ubuntu-sdk-bugs team
-
Mailing list archive
-
Message #07253
[Bug 1610349] Re: QML compare() does not reliably compare colours
This bug was fixed in the package qtdeclarative-opensource-src -
5.6.1-7ubuntu1~2
---------------
qtdeclarative-opensource-src (5.6.1-7ubuntu1~2) yakkety; urgency=medium
* debian/patches/Fix-visibility-of-properties-in-value-types.patch:
- Fix compare() in QML (LP: #1610349)
* Update symbols.
* debian/patches/Fix-V4-on-big-endian.patch:
- Fixes value/tag reads on 32-bit big-endian and offsets on 64-bit.
(LP: #1606927)
-- Timo Jyrinki <timo-jyrinki@xxxxxxxxxx> Mon, 22 Aug 2016 13:31:32
+0000
** Changed in: qtdeclarative-opensource-src (Ubuntu)
Status: In Progress => Fix Released
--
You received this bug notification because you are a member of Ubuntu
SDK bug tracking, which is subscribed to qtdeclarative-opensource-src in
Ubuntu.
https://bugs.launchpad.net/bugs/1610349
Title:
QML compare() does not reliably compare colours
Status in qtdeclarative-opensource-src package in Ubuntu:
Fix Released
Bug description:
See upstream bug https://bugreports.qt.io/browse/QTBUG-34878
There is already a fix upstream which has been merged to Qt5.8 ( see https://codereview.qt-project.org/#/c/158967/ )
Without that fix, all the unit tests relying on compare() to compare colours must be considered unreliable and potentially misleading, as they could be producing PASSes instead of FAILs.
Bug description copied from that link:
"QtTest's compare() function considers two colors (the QML basic type) as equal when they aren't.
I am aware that Qt.colorEqual exists (and it works correctly), but I think that this makes it far too easy to write tests that don't catch an error.
Consider the following test case:
import QtQuick 2.2
import QtTest 1.0
Item {
Rectangle {
id: black
color: "#000000"
}
Rectangle {
id: white
color: "#ffffff"
}
TestCase {
name: "ColorComparison"
function test_this_should_fail() {
compare(black.color, white.color)
}
function test_this_is_ok() {
compare(black.color == white.color, false)
compare(Qt.colorEqual(black.color, white.color), false)
}
}
}"
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/qtdeclarative-opensource-src/+bug/1610349/+subscriptions
References