2016-02-24 11:56:43 |
Andrea Bernabei |
bug |
|
|
added bug |
2016-02-24 11:57:45 |
Andrea Bernabei |
description |
revision 1864
System setup: Vivid + Overlay PPA (i.e. same as phones/tablets)
libqt5qml5:
Installed: 5.4.1-1ubuntu11~overlay3
libqt5core5a:
Installed: 5.4.1+dfsg-2ubuntu11~vivid4
UbuntuTestCase provides a flick() function whose main purpose is to produce a flick event when executed on Flickable.
I noticed that this does not always happen, causing flakiness of some of the UITK tests (in my case, it's the Scrollbar/ScrollView tests I'm working on)
Here is a test case that reproduces the issue, once every 10-200 runs, depending on the configuration (I use a simple script to run it until it fails)
Please note that uncommenting the debug lines such as onMovingChanged onFlickingChanged will make it harder to reproduce the bug.
Enabling QT_LOGGING_RULES="qt.quick.mouse.debug=true" or onContentYChanged will make it even harder.
Since I already went through the effort, I'm posting here the debug log coming from the failed and successful runs:
- Typical failed run ---> http://pastebin.ubuntu.com/15186789/ Note how "flicking" never becomes true
- Typical successful run ---> http://pastebin.ubuntu.com/15186784/
Here's the code I used to reproduce the bug:
import QtQuick 2.4
import QtTest 1.0
import Ubuntu.Test 1.0
import Ubuntu.Components 1.3
import Ubuntu.Components.Styles 1.3
import QtQml.Models 2.1
Item {
id: main
width: units.gu(50)
height: units.gu(100)
SignalSpy {
id: signalSpy
}
SignalSpy {
id: anotherSignalSpy
}
Item {
anchors.fill: parent
Item {
width: units.gu(20)
height: units.gu(30)
property alias flickable: freshFlickable
Flickable {
id: freshFlickable
anchors.fill: parent
contentHeight: content.height
contentWidth: content.width
clip: true
//onContentYChanged: console.log(contentY)
//onMovingChanged: console.log("MOVING", moving)
//onFlickingChanged: console.log("FLICKING", flicking)
Rectangle {
id: content
width: units.gu(40)
height: units.gu(200)
color: "blue"
}
}
}
}
UbuntuTestCase {
name: "FlickBug"
when: windowShown
function setupSignalSpy(spy, target, signalName) {
spy.clear()
//reset signalName otherwise it will look for the old signalName in the new target
spy.signalName = ""
spy.target = target
spy.signalName = signalName
}
function test_flickUbuntuTestCase() {
setupSignalSpy(signalSpy, freshFlickable, "movingChanged")
flick(freshFlickable, 50, 50, -units.gu(10), -units.gu(10))
signalSpy.wait()
compare(signalSpy.count, 1, "No movingChanged signal after simulating a flick.")
}
}
} |
revision 1864
System setup: Vivid + Overlay PPA (i.e. same as phones/tablets)
libqt5qml5:
Installed: 5.4.1-1ubuntu11~overlay3
libqt5core5a:
Installed: 5.4.1+dfsg-2ubuntu11~vivid4
UbuntuTestCase provides a flick() function whose main purpose is to produce a flick event when executed on Flickable.
I noticed that this does not always happen, causing flakiness of some of the UITK tests (in my case, it's the Scrollbar/ScrollView tests I'm working on)
Here is a test case that reproduces the issue, once every 10-200 runs, depending on the configuration (I use a simple script to run it until it fails)
Please note that uncommenting the debug lines such as onMovingChanged onFlickingChanged will make it harder to reproduce the bug.
Enabling QT_LOGGING_RULES="qt.quick.mouse.debug=true" or onContentYChanged will make it even harder.
Since I already went through the effort, I'm posting here the debug log coming from the failed and successful runs:
- Typical failed run ---> http://pastebin.ubuntu.com/15186789/ Note how "flicking" never becomes true
- Typical successful run ---> http://pastebin.ubuntu.com/15186784/
Here's the code I used to reproduce the bug:
import QtQuick 2.4
import QtTest 1.0
import Ubuntu.Test 1.0
import Ubuntu.Components 1.3
import Ubuntu.Components.Styles 1.3
import QtQml.Models 2.1
Item {
id: main
width: units.gu(50)
height: units.gu(100)
SignalSpy {
id: signalSpy
}
SignalSpy {
id: anotherSignalSpy
}
Item {
anchors.fill: parent
Item {
width: units.gu(20)
height: units.gu(30)
property alias flickable: freshFlickable
Flickable {
id: freshFlickable
anchors.fill: parent
contentHeight: content.height
contentWidth: content.width
clip: true
//onContentYChanged: console.log(contentY)
//onMovingChanged: console.log("MOVING", moving)
//onFlickingChanged: console.log("FLICKING", flicking)
Rectangle {
id: content
width: units.gu(40)
height: units.gu(200)
color: "blue"
}
}
}
}
UbuntuTestCase {
name: "FlickBug"
when: windowShown
function setupSignalSpy(spy, target, signalName) {
spy.clear()
spy.signalName = ""
spy.target = target
spy.signalName = signalName
}
function test_flickUbuntuTestCase() {
setupSignalSpy(signalSpy, freshFlickable, "movingChanged")
flick(freshFlickable, 50, 50, -units.gu(10), -units.gu(10))
signalSpy.wait()
compare(signalSpy.count, 1, "Wrong number of movingChanged signals.")
}
}
} |
|
2016-02-24 11:58:34 |
Andrea Bernabei |
description |
revision 1864
System setup: Vivid + Overlay PPA (i.e. same as phones/tablets)
libqt5qml5:
Installed: 5.4.1-1ubuntu11~overlay3
libqt5core5a:
Installed: 5.4.1+dfsg-2ubuntu11~vivid4
UbuntuTestCase provides a flick() function whose main purpose is to produce a flick event when executed on Flickable.
I noticed that this does not always happen, causing flakiness of some of the UITK tests (in my case, it's the Scrollbar/ScrollView tests I'm working on)
Here is a test case that reproduces the issue, once every 10-200 runs, depending on the configuration (I use a simple script to run it until it fails)
Please note that uncommenting the debug lines such as onMovingChanged onFlickingChanged will make it harder to reproduce the bug.
Enabling QT_LOGGING_RULES="qt.quick.mouse.debug=true" or onContentYChanged will make it even harder.
Since I already went through the effort, I'm posting here the debug log coming from the failed and successful runs:
- Typical failed run ---> http://pastebin.ubuntu.com/15186789/ Note how "flicking" never becomes true
- Typical successful run ---> http://pastebin.ubuntu.com/15186784/
Here's the code I used to reproduce the bug:
import QtQuick 2.4
import QtTest 1.0
import Ubuntu.Test 1.0
import Ubuntu.Components 1.3
import Ubuntu.Components.Styles 1.3
import QtQml.Models 2.1
Item {
id: main
width: units.gu(50)
height: units.gu(100)
SignalSpy {
id: signalSpy
}
SignalSpy {
id: anotherSignalSpy
}
Item {
anchors.fill: parent
Item {
width: units.gu(20)
height: units.gu(30)
property alias flickable: freshFlickable
Flickable {
id: freshFlickable
anchors.fill: parent
contentHeight: content.height
contentWidth: content.width
clip: true
//onContentYChanged: console.log(contentY)
//onMovingChanged: console.log("MOVING", moving)
//onFlickingChanged: console.log("FLICKING", flicking)
Rectangle {
id: content
width: units.gu(40)
height: units.gu(200)
color: "blue"
}
}
}
}
UbuntuTestCase {
name: "FlickBug"
when: windowShown
function setupSignalSpy(spy, target, signalName) {
spy.clear()
spy.signalName = ""
spy.target = target
spy.signalName = signalName
}
function test_flickUbuntuTestCase() {
setupSignalSpy(signalSpy, freshFlickable, "movingChanged")
flick(freshFlickable, 50, 50, -units.gu(10), -units.gu(10))
signalSpy.wait()
compare(signalSpy.count, 1, "Wrong number of movingChanged signals.")
}
}
} |
revision 1864
System setup: Vivid + Overlay PPA (i.e. same as phones/tablets)
libqt5qml5:
Installed: 5.4.1-1ubuntu11~overlay3
libqt5core5a:
Installed: 5.4.1+dfsg-2ubuntu11~vivid4
UbuntuTestCase provides a flick() function whose main purpose is to produce a flick event when executed on Flickable.
I noticed that this does not always happen, causing flakiness of some of the UITK tests (in my case, it's the Scrollbar/ScrollView tests I'm working on)
Here is a test case that reproduces the issue, once every 10-200 runs, depending on the configuration (I use a simple script to run it until it fails)
Please note that uncommenting the debug lines such as onMovingChanged onFlickingChanged will make it harder to reproduce the bug.
Enabling QT_LOGGING_RULES="qt.quick.mouse.debug=true" or onContentYChanged will make it even harder. I could not manager to reproduce it with both enabled.
Since I already went through the effort, I'm posting here the debug log coming from the failed and successful runs (all debug enabled except qt.quick.mouse.debug:
- Typical failed run ---> http://pastebin.ubuntu.com/15186789/ Note how "flicking" never becomes true
- Typical successful run ---> http://pastebin.ubuntu.com/15186784/
Here's the code I used to reproduce the bug:
import QtQuick 2.4
import QtTest 1.0
import Ubuntu.Test 1.0
import Ubuntu.Components 1.3
import Ubuntu.Components.Styles 1.3
import QtQml.Models 2.1
Item {
id: main
width: units.gu(50)
height: units.gu(100)
SignalSpy {
id: signalSpy
}
SignalSpy {
id: anotherSignalSpy
}
Item {
anchors.fill: parent
Item {
width: units.gu(20)
height: units.gu(30)
property alias flickable: freshFlickable
Flickable {
id: freshFlickable
anchors.fill: parent
contentHeight: content.height
contentWidth: content.width
clip: true
//onContentYChanged: console.log(contentY)
//onMovingChanged: console.log("MOVING", moving)
//onFlickingChanged: console.log("FLICKING", flicking)
Rectangle {
id: content
width: units.gu(40)
height: units.gu(200)
color: "blue"
}
}
}
}
UbuntuTestCase {
name: "FlickBug"
when: windowShown
function setupSignalSpy(spy, target, signalName) {
spy.clear()
spy.signalName = ""
spy.target = target
spy.signalName = signalName
}
function test_flickUbuntuTestCase() {
setupSignalSpy(signalSpy, freshFlickable, "movingChanged")
flick(freshFlickable, 50, 50, -units.gu(10), -units.gu(10))
signalSpy.wait()
compare(signalSpy.count, 1, "Wrong number of movingChanged signals.")
}
}
} |
|
2016-02-24 12:21:03 |
Andrea Bernabei |
description |
revision 1864
System setup: Vivid + Overlay PPA (i.e. same as phones/tablets)
libqt5qml5:
Installed: 5.4.1-1ubuntu11~overlay3
libqt5core5a:
Installed: 5.4.1+dfsg-2ubuntu11~vivid4
UbuntuTestCase provides a flick() function whose main purpose is to produce a flick event when executed on Flickable.
I noticed that this does not always happen, causing flakiness of some of the UITK tests (in my case, it's the Scrollbar/ScrollView tests I'm working on)
Here is a test case that reproduces the issue, once every 10-200 runs, depending on the configuration (I use a simple script to run it until it fails)
Please note that uncommenting the debug lines such as onMovingChanged onFlickingChanged will make it harder to reproduce the bug.
Enabling QT_LOGGING_RULES="qt.quick.mouse.debug=true" or onContentYChanged will make it even harder. I could not manager to reproduce it with both enabled.
Since I already went through the effort, I'm posting here the debug log coming from the failed and successful runs (all debug enabled except qt.quick.mouse.debug:
- Typical failed run ---> http://pastebin.ubuntu.com/15186789/ Note how "flicking" never becomes true
- Typical successful run ---> http://pastebin.ubuntu.com/15186784/
Here's the code I used to reproduce the bug:
import QtQuick 2.4
import QtTest 1.0
import Ubuntu.Test 1.0
import Ubuntu.Components 1.3
import Ubuntu.Components.Styles 1.3
import QtQml.Models 2.1
Item {
id: main
width: units.gu(50)
height: units.gu(100)
SignalSpy {
id: signalSpy
}
SignalSpy {
id: anotherSignalSpy
}
Item {
anchors.fill: parent
Item {
width: units.gu(20)
height: units.gu(30)
property alias flickable: freshFlickable
Flickable {
id: freshFlickable
anchors.fill: parent
contentHeight: content.height
contentWidth: content.width
clip: true
//onContentYChanged: console.log(contentY)
//onMovingChanged: console.log("MOVING", moving)
//onFlickingChanged: console.log("FLICKING", flicking)
Rectangle {
id: content
width: units.gu(40)
height: units.gu(200)
color: "blue"
}
}
}
}
UbuntuTestCase {
name: "FlickBug"
when: windowShown
function setupSignalSpy(spy, target, signalName) {
spy.clear()
spy.signalName = ""
spy.target = target
spy.signalName = signalName
}
function test_flickUbuntuTestCase() {
setupSignalSpy(signalSpy, freshFlickable, "movingChanged")
flick(freshFlickable, 50, 50, -units.gu(10), -units.gu(10))
signalSpy.wait()
compare(signalSpy.count, 1, "Wrong number of movingChanged signals.")
}
}
} |
revision 1864
System setup: Vivid + Overlay PPA (i.e. same as phones/tablets)
libqt5qml5:
Installed: 5.4.1-1ubuntu11~overlay3
libqt5core5a:
Installed: 5.4.1+dfsg-2ubuntu11~vivid4
UbuntuTestCase provides a flick() function whose main purpose is to produce a flick event when executed on Flickable.
I noticed that this does not always happen, causing flakiness of some of the UITK tests (in my case, it's the Scrollbar/ScrollView tests I'm working on)
Here is a test case that reproduces the issue, once every 10-200 runs, depending on the configuration (I use a simple script to run it until it fails)
Please note that uncommenting the debug lines such as onMovingChanged onFlickingChanged will make it harder to reproduce the bug.
Enabling QT_LOGGING_RULES="qt.quick.mouse.debug=true" or onContentYChanged will make it even harder. I could not manager to reproduce it with both enabled.
Since I already went through the effort, I'm posting here the debug log coming from the failed and successful runs (all debug enabled except qt.quick.mouse.debug:
PLEASE NOTE THE ERROR MESSAGE IN THE TEST IS WRONG, SIGNALSPY.COUNT IS 2, WHEN THE TEST FAILS.
- Typical failed run ---> http://pastebin.ubuntu.com/15186789/ Note how "flicking" never becomes true
- Typical successful run ---> http://pastebin.ubuntu.com/15186784/
Here's the code I used to reproduce the bug:
import QtQuick 2.4
import QtTest 1.0
import Ubuntu.Test 1.0
import Ubuntu.Components 1.3
import Ubuntu.Components.Styles 1.3
import QtQml.Models 2.1
Item {
id: main
width: units.gu(50)
height: units.gu(100)
SignalSpy {
id: signalSpy
}
SignalSpy {
id: anotherSignalSpy
}
Item {
anchors.fill: parent
Item {
width: units.gu(20)
height: units.gu(30)
property alias flickable: freshFlickable
Flickable {
id: freshFlickable
anchors.fill: parent
contentHeight: content.height
contentWidth: content.width
clip: true
//onContentYChanged: console.log(contentY)
//onMovingChanged: console.log("MOVING", moving)
//onFlickingChanged: console.log("FLICKING", flicking)
Rectangle {
id: content
width: units.gu(40)
height: units.gu(200)
color: "blue"
}
}
}
}
UbuntuTestCase {
name: "FlickBug"
when: windowShown
function setupSignalSpy(spy, target, signalName) {
spy.clear()
spy.signalName = ""
spy.target = target
spy.signalName = signalName
}
function test_flickUbuntuTestCase() {
setupSignalSpy(signalSpy, freshFlickable, "movingChanged")
flick(freshFlickable, 50, 50, -units.gu(10), -units.gu(10))
signalSpy.wait()
compare(signalSpy.count, 1, "Wrong number of movingChanged signals.")
}
}
} |
|
2016-02-24 12:22:50 |
Andrea Bernabei |
description |
revision 1864
System setup: Vivid + Overlay PPA (i.e. same as phones/tablets)
libqt5qml5:
Installed: 5.4.1-1ubuntu11~overlay3
libqt5core5a:
Installed: 5.4.1+dfsg-2ubuntu11~vivid4
UbuntuTestCase provides a flick() function whose main purpose is to produce a flick event when executed on Flickable.
I noticed that this does not always happen, causing flakiness of some of the UITK tests (in my case, it's the Scrollbar/ScrollView tests I'm working on)
Here is a test case that reproduces the issue, once every 10-200 runs, depending on the configuration (I use a simple script to run it until it fails)
Please note that uncommenting the debug lines such as onMovingChanged onFlickingChanged will make it harder to reproduce the bug.
Enabling QT_LOGGING_RULES="qt.quick.mouse.debug=true" or onContentYChanged will make it even harder. I could not manager to reproduce it with both enabled.
Since I already went through the effort, I'm posting here the debug log coming from the failed and successful runs (all debug enabled except qt.quick.mouse.debug:
PLEASE NOTE THE ERROR MESSAGE IN THE TEST IS WRONG, SIGNALSPY.COUNT IS 2, WHEN THE TEST FAILS.
- Typical failed run ---> http://pastebin.ubuntu.com/15186789/ Note how "flicking" never becomes true
- Typical successful run ---> http://pastebin.ubuntu.com/15186784/
Here's the code I used to reproduce the bug:
import QtQuick 2.4
import QtTest 1.0
import Ubuntu.Test 1.0
import Ubuntu.Components 1.3
import Ubuntu.Components.Styles 1.3
import QtQml.Models 2.1
Item {
id: main
width: units.gu(50)
height: units.gu(100)
SignalSpy {
id: signalSpy
}
SignalSpy {
id: anotherSignalSpy
}
Item {
anchors.fill: parent
Item {
width: units.gu(20)
height: units.gu(30)
property alias flickable: freshFlickable
Flickable {
id: freshFlickable
anchors.fill: parent
contentHeight: content.height
contentWidth: content.width
clip: true
//onContentYChanged: console.log(contentY)
//onMovingChanged: console.log("MOVING", moving)
//onFlickingChanged: console.log("FLICKING", flicking)
Rectangle {
id: content
width: units.gu(40)
height: units.gu(200)
color: "blue"
}
}
}
}
UbuntuTestCase {
name: "FlickBug"
when: windowShown
function setupSignalSpy(spy, target, signalName) {
spy.clear()
spy.signalName = ""
spy.target = target
spy.signalName = signalName
}
function test_flickUbuntuTestCase() {
setupSignalSpy(signalSpy, freshFlickable, "movingChanged")
flick(freshFlickable, 50, 50, -units.gu(10), -units.gu(10))
signalSpy.wait()
compare(signalSpy.count, 1, "Wrong number of movingChanged signals.")
}
}
} |
revision 1864
System setup: Vivid + Overlay PPA (i.e. same as phones/tablets)
libqt5qml5:
Installed: 5.4.1-1ubuntu11~overlay3
libqt5core5a:
Installed: 5.4.1+dfsg-2ubuntu11~vivid4
UbuntuTestCase provides a flick() function whose main purpose is to produce a flick event when executed on Flickable.
I noticed that this does not always happen, causing flakiness of some of the UITK tests (in my case, it's the Scrollbar/ScrollView tests I'm working on)
Here is a test case that reproduces the issue, once every 10-200 runs, depending on the configuration (I use a simple script to run it until it fails)
Please note that uncommenting the debug lines such as onMovingChanged onFlickingChanged will make it harder to reproduce the bug.
Enabling QT_LOGGING_RULES="qt.quick.mouse.debug=true" or onContentYChanged will make it even harder.
Since I already went through the effort, I'm posting here the debug log coming from the failed and successful runs:
- Typical failed run ---> http://pastebin.ubuntu.com/15186789/ Note how "flicking" never becomes true
- Typical successful run ---> http://pastebin.ubuntu.com/15186784/
- Failed test with qt.quick.mouse.debug=true --> http://pastebin.ubuntu.com/15186851/
- Successful test with qt.quick.mouse.debug=true -> http://pastebin.ubuntu.com/15186853/
Here's the code I used to reproduce the bug:
import QtQuick 2.4
import QtTest 1.0
import Ubuntu.Test 1.0
import Ubuntu.Components 1.3
import Ubuntu.Components.Styles 1.3
import QtQml.Models 2.1
Item {
id: main
width: units.gu(50)
height: units.gu(100)
SignalSpy {
id: signalSpy
}
SignalSpy {
id: anotherSignalSpy
}
Item {
anchors.fill: parent
Item {
width: units.gu(20)
height: units.gu(30)
property alias flickable: freshFlickable
Flickable {
id: freshFlickable
anchors.fill: parent
contentHeight: content.height
contentWidth: content.width
clip: true
//onContentYChanged: console.log(contentY)
//onMovingChanged: console.log("MOVING", moving)
//onFlickingChanged: console.log("FLICKING", flicking)
Rectangle {
id: content
width: units.gu(40)
height: units.gu(200)
color: "blue"
}
}
}
}
UbuntuTestCase {
name: "FlickBug"
when: windowShown
function setupSignalSpy(spy, target, signalName) {
spy.clear()
//reset signalName otherwise it will look for the old signalName in the new target
spy.signalName = ""
spy.target = target
spy.signalName = signalName
}
function test_flickUbuntuTestCase() {
setupSignalSpy(signalSpy, freshFlickable, "movingChanged")
flick(freshFlickable, 50, 50, -units.gu(10), -units.gu(10))
signalSpy.wait()
compare(signalSpy.count, 1, "No movingChanged signal after simulating a flick.")
}
}
} |
|
2016-02-26 15:02:43 |
Andrea Bernabei |
branch linked |
|
lp:~faenil/ubuntu-ui-toolkit/UbuntuTestCase_flick_flakiness_fix |
|
2016-02-26 15:04:29 |
Cris Dywan |
ubuntu-ui-toolkit (Ubuntu): status |
New |
In Progress |
|
2016-02-26 15:04:33 |
Cris Dywan |
ubuntu-ui-toolkit (Ubuntu): importance |
Undecided |
High |
|
2016-02-26 15:17:12 |
Andrea Bernabei |
ubuntu-ui-toolkit (Ubuntu): assignee |
|
Andrea Bernabei (faenil) |
|
2016-02-26 15:17:16 |
Andrea Bernabei |
ubuntu-ui-toolkit (Ubuntu): status |
In Progress |
Fix Committed |
|
2016-02-26 15:39:55 |
Andrea Bernabei |
bug task added |
|
canonical-devices-system-image |
|
2016-02-29 21:41:34 |
Pat McGowan |
bug task deleted |
canonical-devices-system-image |
|
|
2016-03-10 02:26:35 |
Launchpad Janitor |
ubuntu-ui-toolkit (Ubuntu): status |
Fix Committed |
Fix Released |
|
2016-03-17 13:23:51 |
Timo Jyrinki |
bug task added |
|
canonical-devices-system-image |
|
2016-03-17 13:30:24 |
Timo Jyrinki |
canonical-devices-system-image: status |
New |
Fix Committed |
|
2016-03-17 13:30:27 |
Timo Jyrinki |
canonical-devices-system-image: importance |
Undecided |
High |
|
2016-03-17 13:30:31 |
Timo Jyrinki |
canonical-devices-system-image: assignee |
|
Zoltan Balogh (bzoltan) |
|
2016-03-17 13:30:33 |
Timo Jyrinki |
canonical-devices-system-image: milestone |
|
ww08-2016 |
|
2016-04-12 17:54:01 |
Pat McGowan |
canonical-devices-system-image: status |
Fix Committed |
Fix Released |
|