focus issues breaking autopilot tests entering text
| Affects | Status | Importance | Assigned to | Milestone | |
|---|---|---|---|---|---|
| | Canonical System Image |
Undecided
|
Unassigned | ||
| | Mir |
Fix Released
|
Critical
|
Robert Carr | |
| | 0.14 |
Fix Released
|
Critical
|
Robert Carr | |
| | mir (Ubuntu) |
Undecided
|
Unassigned | ||
| | ubuntu-system-settings (Ubuntu) |
Undecided
|
Unassigned | ||
Bug Description
When running the autopilot tests for ubuntu-
My device:
current build number: 234
device name: mako
channel: ubuntu-
last update: 2015-06-23 00:04:08
version version: 234
version ubuntu: 20150623
version device: 20150529.1
version custom: 20150623
@osomon has seen the same problem while running the webbrowser-app tests on krillin with vivid-proposed.
Related branches
- PS Jenkins bot: Needs Fixing (continuous-integration) on 2015-07-01
- Jonas G. Drange (community): Approve on 2015-06-30
-
Diff: 17 lines (+3/-3)1 file modifiedtests/autopilot/ubuntu_system_settings/tests/test_search.py (+3/-3)
- PS Jenkins bot: Approve (continuous-integration) on 2015-07-08
- Chris Halse Rogers: Approve on 2015-07-08
- Alberto Aguirre: Approve on 2015-07-08
-
Diff: 105 lines (+16/-10)4 files modifiedsrc/server/input/default_configuration.cpp (+3/-2)
src/server/input/key_repeat_dispatcher.cpp (+5/-3)
src/server/input/key_repeat_dispatcher.h (+3/-1)
tests/unit-tests/input/test_key_repeat_dispatcher.cpp (+5/-4)
- Andreas Pokorny (community): Approve on 2015-07-09
-
Diff: 105 lines (+16/-10)4 files modifiedsrc/server/input/default_configuration.cpp (+3/-2)
src/server/input/key_repeat_dispatcher.cpp (+5/-3)
src/server/input/key_repeat_dispatcher.h (+3/-1)
tests/unit-tests/input/test_key_repeat_dispatcher.cpp (+5/-4)
| Allan LeSage (allanlesage) wrote : | #1 |
| Launchpad Janitor (janitor) wrote : | #2 |
Status changed to 'Confirmed' because the bug affects multiple users.
| Changed in unity8 (Ubuntu): | |
| status: | New → Confirmed |
| Ken VanDine (ken-vandine) wrote : | #3 |
| Changed in unity8 (Ubuntu): | |
| importance: | Undecided → High |
| Christopher Lee (veebers) wrote : | #4 |
It seems I was debugging something similar with rhuddie the other day (without solution). In case it's useful I'll mention it here:
What I observed was the test in question would stop then start the maliit-server, then the test immediately clicked on a text input and failed as the OSK never came up on screen within the time limit (presumably due to the process still starting up to the point it could accept the input etc.). At this point onwards any attempt to use the non-osk keyboard would fail. If we point a sleep between starting and trying to use the OSK everything worked fine.
Perhaps there is some interaction here which is stopping the text field to actually get focus? Or perhaps attempting to interact with the OSK before it's ready is confusing something?
As mentioned, I was unable to determine the actual issue, perhaps this information might help though.
| Olivier Tilloy (osomon) wrote : | #5 |
I am seeing the same issue intermittently when running the webbrowser_app test suite on devices (both in CI runs on mako and locally on my krillin). See e.g. https:/
At some point during the test run, something happens and inputting text with the OSK doesn’t work any longer, thus causing all subsequent tests to fail.
| summary: |
- unity8 crash breaking autopilot tests entering text with OSK + unity8 crash breaking autopilot tests entering text |
| Changed in unity8 (Ubuntu): | |
| assignee: | nobody → Daniel d'Andrada (dandrader) |
| status: | Confirmed → In Progress |
Ran "autopilot3 run ubuntu_
Got 38 test failures but unity8 didn't crash and I could still type normally on the virtual keyboard afterwards.
I was running a debug build of unity8 under gdb. With very nasty bugs this has an influence.
| Olivier Tilloy (osomon) wrote : | #7 |
This now seems to affect all automated CI runs for webbrowser-app merge requests on mako (vivid), thus preventing any automated validation. Can the importance be bumped to critical?
| Olivier Tilloy (osomon) wrote : | #8 |
Daniel: note that when autopilot tests start failing, manually typing with the OSK works (as you’ve observed), what doesn’t is autopilot’s write() method that simulates keyboard input.
| Changed in unity8 (Ubuntu): | |
| importance: | High → Critical |
| Daniel d'Andrada (dandrader) wrote : | #9 |
Which makes me wonder why was unity8 the first team summoned to investigate it.
| Olivier Tilloy (osomon) wrote : | #10 |
I guess because we initially thought the unity8 crash was causing the issue. It seems you’ve been able to observe the issue without a crash though, which would indicate that the issue might be somewhere else in the stack.
| description: | updated |
| Daniel d'Andrada (dandrader) wrote : | #11 |
I reboot the phone and run:
$ autopilot3 run ubuntu_
And it fails:
"""
testtools.
"""
The test does "self._
On a second run nothing gets typed at all.
Note that autopilot's keyboard.type() function emulates a physical keyboard entering chars via evdev, which is a whole different code path from how the virtual keyboard feeds chars into the client app, which is done via D-Bus.
| Daniel d'Andrada (dandrader) wrote : | #12 |
But still, entering text via a physical keyboard should still work.
| Ken VanDine (ken-vandine) wrote : | #13 |
It seems be related to a test failure that puts the fake keyboard into a bad state. The only way to fix that state is by restarting unity8. I'm not sure what that has to do with unity8, but somehow restarting it clears it up. In the case of settings there was a real failure buried in the noise caused by the bad state.
| Daniel d'Andrada (dandrader) wrote : | #14 |
So the problem is that unity-system-
"""
[1435688811.380008] android-input: [InputDispatche
""""
| no longer affects: | unity8 (Ubuntu) |
| Changed in mir: | |
| importance: | Undecided → Critical |
| Daniel d'Andrada (dandrader) wrote : | #15 |
Set the mir bug to "Critical" as that was the importance set on untiy8
| Changed in mir: | |
| assignee: | nobody → Robert Carr (robertcarr) |
| Changed in mir: | |
| status: | New → In Progress |
| Changed in mir: | |
| milestone: | none → 0.15.0 |
| tags: | added: input regression |
| Launchpad Janitor (janitor) wrote : | #16 |
This bug was fixed in the package ubuntu-
---------------
ubuntu-
[ CI Train Bot ]
* New rebuild forced.
[ Ken VanDine ]
* Test searching for WiFi instead of Sound, online-accounts now has a
soundcloud account type (LP: #1468029)
[ Matthew Paul Thomas ]
* Changes "Install & Restart" to "Restart & Install" and "Not Now" to
"Cancel". lp:1359344 (LP: #1359344)
[ jonas-drange ]
* implement CFB, CFNRy and CFNRc as well as autopilot tests (LP:
#1463828)
-- CI Train Bot <email address hidden> Thu, 02 Jul 2015 22:48:32 +0000
| Changed in ubuntu-system-settings (Ubuntu): | |
| status: | New → Fix Released |
| Timo Jyrinki (timo-jyrinki) wrote : | #17 |
Just a brief thank you for an interesting bug report, I was on holidays so I didn't reply earlier. Digesting the messages, it sounds like nothing yet points to a Qt internal problem? One useful tidbit is that wily has Qt 5.4.2 while vivid has Qt 5.4.1, so it's useful to compare in case of problems.
| Robert Carr (robertcarr) wrote : | #18 |
I'm developing a theory related to mirscreencast stealing focus and triggering a bug in sessions without surfaces...it may be fixed in Mir 0.14 but it doesn't seem like I can test for a few more hours (so perhaps not until tomorrow)
| summary: |
- unity8 crash breaking autopilot tests entering text + focus issues breaking autopilot tests entering text |
| Robert Carr (robertcarr) wrote : | #19 |
Hi Everyone, just a quick update!
It seems that this bug has disappeared with the introduction of Mir 0.14...I suspect due to some reshuffling of USC window management logic.
Unfortunately a new issue has arisen in that Mir 0.14 repeats keys far too quickly causing autopilot tests to fail. I've prepared a fix here: https:/
| PS Jenkins bot (ps-jenkins) wrote : | #20 |
Fix committed into lp:mir at revision None, scheduled for release in mir, milestone 0.15.0
| Changed in mir: | |
| status: | In Progress → Fix Committed |
| Changed in mir (Ubuntu): | |
| status: | New → Fix Released |
| tags: | added: focus |
| Changed in mir: | |
| status: | Fix Committed → Fix Released |
| Changed in canonical-devices-system-image: | |
| status: | New → Fix Released |
| tags: |
added: regression-proposed removed: regression |
| Daniel van Vugt (vanvugt) wrote : | #21 |
Please keep that tag. I use it for periodic quality analysis.
| tags: | added: regression |

Added Mirv as recent Qt landings may be implicated?