Enhance jobs created by input/pointing

Bug #1420531 reported by Sylvain Pineau
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Checkbox Provider - Base
Fix Released
High
Sylvain Pineau
Provider for Plainbox - Canonical Certification (Legacy)
Fix Released
Undecided
Unassigned

Bug Description

We currently have a local job called input/pointing.
It takes the output of xinput to find pointing devices and creates pointing jobs for each of them.

Problem is that the job descriptions are too terse to catch driver issues where the device can become erratically unresponsive for 1-2 seconds.

1. The test should last at least 10s and ask the tester to move constantly the pointing device to confirm that the driver properly sends the right events.

2. This kind of test should be user-interact instead of just manual (i.e verification is automated). A simple QML test could be a good candidate.

Related branches

Revision history for this message
Sylvain Pineau (sylvain-pineau) wrote :

The following QML file should confirm that the mouse cursor has constantly moved for 10s:

import QtQuick 2.0
import Ubuntu.Components 0.1

Rectangle {
    width: 500
    height: 500

    MouseArea {
        anchors.fill: parent
        anchors.margins: 30
        onPositionChanged: {
            if (timer2.running) {
                timer2.restart();
            }
        }
        hoverEnabled: true
    }

    Button {
        id: control
        anchors.centerIn: parent
        text: "START"
        onClicked: {
            timer3.running = true
            text = "MOVE YOUR MOUSE"
        }
    }

    Timer {
        id: timer1
        interval: 1000
        running: true
        repeat: true
        property int timeout: 8
        onTriggered: {
            timeout = timeout - 1
            if (timeout <= 0) {
                running = false
                console.log("PASS")
                Qt.quit()
            }
        }
    }

    Timer {
        id: timer2
        interval: 200
        running: false
        repeat: true
        onTriggered: {
            running = false
            console.log("FAIL !!!!")
            Qt.quit()
        }
    }

    Timer {
        id: timer3
        interval: 2000
        running: false
        onTriggered: {
            timer2.running = true
        }
    }
}

Changed in plainbox-provider-checkbox:
status: New → Triaged
Revision history for this message
Sylvain Pineau (sylvain-pineau) wrote :

Running the test with --fullscreen will avoid false alarms

Changed in plainbox-provider-checkbox:
assignee: nobody → Sylvain Pineau (sylvain-pineau)
status: Triaged → In Progress
Changed in plainbox-provider-checkbox:
status: In Progress → Fix Committed
Changed in plainbox-provider-canonical-certification:
status: New → Fix Committed
milestone: none → 0.17.1
Changed in plainbox-provider-checkbox:
milestone: none → 0.21.2
Changed in plainbox-provider-checkbox:
status: Fix Committed → Fix Released
Changed in plainbox-provider-canonical-certification:
status: Fix Committed → Fix Released
Pierre Equoy (pieq)
tags: added: ce-qa-concern
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.