unity autopilot tests fails to move mouse, leading to infinite test run

Bug #1219636 reported by Timo Jyrinki on 2013-09-02
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Unity
Fix Released
Critical
Christopher Townsend
unity (Ubuntu)
Critical
Christopher Townsend

Bug Description

Unity tests have started consistently failing on the intel autopilot machine, prevent unity stack from releasing.

The problem seems to occur in the test unity.tests.test_quicklist.QuicklistActionTests.test_right_click_opens_quicklist_if_already_open (remmina) and shown as infinitely repeating "/var/local/autopilot/autopilot.log: 04:34:23.870 DEBUG _X11:344 - Moving mouse to position 32,782 with animation." message.

An example autopilot snippet attached. The test run was manually stopped to let other stacks run (it will also automatically abort after two hours).

There not too many datapoints because of other problems, but I can find these:
- 29.8.2013 7:23:20 run succeeded on the intel machine, ie. got to the end
- 30.8.2013 20:36:44 run and all after that that have been tried on intel machine have failed as described here

Related branches

Timo Jyrinki (timo-jyrinki) wrote :

No video seems to be available. This one is which got self-aborted after 7200 seconds: http://10.97.0.1:8080/job/autopilot-saucy-daily_release/1483/label=autopilot-intel/

Stephen M. Webb (bregma) on 2013-09-03
Changed in unity:
status: New → Triaged
Jean-Baptiste Lallement (jibel) wrote :

Here is a screenshot of the testing environment when this situation occurs. There are lot of launchers and AP cannot reach the one it is looking for.

Stephen M. Webb (bregma) wrote :

Apparently something has activated the BFB quicklist, which does a pointer grab bounded by the physical display window. The Launcher scroll works by trying to move the mouse outside of the physical display window, and the grab prevents that.

Something in the entire test stack has changed recently so that either (1) the BFB quicklist has been left showing when previously it hadn't been, or (2) many applications are left running by other tests so the Launcher is full, requiring a scroll, when previously it hadn't been. Either way, it looks like the results of previous tests are affecting the functioning of this test.

Christopher Townsend (townsend) wrote :

This was really a perfect storm of failures that caused this.

1. Enough icons have to be present on the Launcher to create the concertina effect.
2. An AP test was ran that would show Quicklists on icons the are lower on the Launcher.
3. A keynav AP test was ran in which a Quicklist would get left dangling and grab input.
4. An AP test to move the mouse to an icon at the end of Launcher would get "stuck" because the dangling Quicklist from 3. would have input.

The keynav test (3. above) would fail because of bug #1068166. I have a fix for that bug which should help here.

Changed in unity:
assignee: nobody → Christopher Townsend (townsend)
milestone: none → 7.1.1
Changed in unity:
status: Triaged → In Progress
Changed in unity (Ubuntu):
status: New → In Progress
importance: Undecided → Critical
assignee: nobody → Christopher Townsend (townsend)
PS Jenkins bot (ps-jenkins) wrote :

Fix committed into lp:unity at revision 3490, scheduled for release in unity, milestone 7.1.1

Changed in unity:
status: In Progress → Fix Committed
Christopher Townsend (townsend) wrote :

Apparently, what I thought was the problem is not the problem since the AP test is still getting in the infinite loop. Re-opening this bug.

Changed in unity:
status: Fix Committed → In Progress
Christopher Townsend (townsend) wrote :

Oh, and I'll add that the screen shot in comment #3 is not the same issue that we are seeing in this bug. However, the original fix for this bug should take care of the issue in that screen shot.

It is not clear why the AP test is caught in the infinite loop. I cannot reproduce it on my test machine (no surprise). What I may do is change the AP test to timeout the loop and assert a failure so we can at least get a video of what's going on with this guy. Once we have that, then we should have a clue about what the real issue is.

Christopher Townsend (townsend) wrote :

So, based on the coords listed in the log, I think I have a theory about what's going on here.

It seems like there are many icons in the Launcher which is creating the concertina effect. So the first test is to right click to open a Quicklist on an icon. When the mouse hovers over the Launcher, the icons expand and many end up off the bottom of the screen. The test is to then go to another icon while the fist Quicklist is still open and then right click on that icon to see if the first Quicklist closes and the new one opens. I think the test is trying to get to the second icon off the bottom of the screen, but the Launcher will not scroll if a Quicklist is already open.

I tested this theory manually, and I do see that behavior. Need to think how best to handle this condition...

PS Jenkins bot (ps-jenkins) wrote :

Fix committed into lp:unity at revision None, scheduled for release in unity, milestone 7.1.1

Changed in unity:
status: In Progress → Fix Committed
Andrea Azzarone (azzar1) on 2013-09-16
Changed in unity (Ubuntu):
status: In Progress → Fix Committed
Launchpad Janitor (janitor) wrote :
Download full text (5.9 KiB)

This bug was fixed in the package unity - 7.1.0+13.10.20130920-0ubuntu1

---------------
unity (7.1.0+13.10.20130920-0ubuntu1) saucy; urgency=low

  [ Stephen M. Webb ]
  * render the Dash frame all the way to the bottom of the screen (lp:
    #1100120). (LP: #1100120)

  [ Brandon Schaefer ]
  * Ignore mouse movements if the mouse starts over a switcher icon.
    Clicking still works fine, we just wont steal focus from the alt+tab
    work. (LP: #1215630)
  * Make sure we ignore mouse movement over detail icons if the mouse
    starts over it at start. Let the mouse take selection control once
    it moves outside of any icon, vs having to enter a different icon.
    (LP: #1223037, #1223039)
  * Add an option to disable the mouse in the switcher. (LP: #1224048)
  * When the shortcut is open, and we receive a ButtonPress or KeyPress
    hide it. As this causes problems else where, and it really should
    close if the user attempts to do anything (even while holding
    super!). (LP: #932718)
  * Set an upper bound on the amount of icons we go through to check
    tooltips. As the accordion effect was causing the mouse to go
    through the icons to fast, making the test fail.
  * Make sure we move the mouse over the target icon while we are
    dragging the source icon.
  * Get the real shortcut to activate ibus. (LP: #1227056)
  * Only accept focus if the mouse moves in 3 directions on switcher
    start up if the mouse starts over the switcher window. This is an
    attempt to tell the difference between a bump and intentional
    movement. (LP: #1223630)

  [ Marco Trevisan (Treviño) ]
  * DesktopApplicationManager: added new app manager layer so that we
    can emit app events.
  * Application: add desktop_id method, and implement in
    desktop::Application.
  * Launcher: only fade the launcher when in auto-hide and dash is
    opened. (LP: #1223979, #1044926)
  * ApplicationLauncherIcon: log unity zeitgeist events on stick,
    unstick, removal and delete. (LP: #779449)
  * UnityScreen: add support for Super+Arrows shortcuts to manage the
    focused window Super+Arrows shortcut allows to move and maximize /
    restore / minimize the focused window on the screen. (LP: #992697,
    #751050)
  * Launcher: use nux::Animation for all the launcher animations This
    allows to do these when compiz requests to prepare painting, instead
    of using only an idle to perform this. (LP: #1226114, #1224766)
  * ShortcutView: use StaticCairoText instead of StaticText for
    rendering the View Improves the text alignment and visual quality.
  * UnityShell: redraw the dash also if a non-blurred area is damaged If
    the dash is damaged, but not the blurred area, it won't redraw. We
    need to draw it, in order to avoid flickering of its border. Also,
    add the redraw_view_if_damaged utility function to redraw a view if
    really needed. (LP: #1224340)
  * AnimationUtils: add utility functions to handle nux::Animation's
    start and reversion Update the whole code using nux::animation to
    use these facility functions.
  * Launcher: fix style to use postfixed-underscore for private members
    Also remove some tabs and useless members.
  * ...

Read more...

Changed in unity (Ubuntu):
status: Fix Committed → Fix Released
Stephen M. Webb (bregma) wrote :

Fix Released in Nux Unity 7.1.1.

Changed in unity:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers