It should not be mandatory to press ENTER between each tests when using checkbox-cli

Bug #1400646 reported by Pierre Equoy
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
PlainBox (Toolkit)
Fix Released
Medium
Zygmunt Krynicki

Bug Description

Since checkbox 0.17.9.1~ubuntu14.04.1, when using checkbox CLI, we have to press ENTER before being able to input the test result.

Beforehands, this step was mandatory only before running an automatic test (for instance before a test where you have 20 seconds to insert an USB key).

We would prefer not to have to press ENTER when not necessary.

Example:

----------------------------------[ led/wlan ]----------------------------------
ID: 2013.com.canonical.certification::led/wlan
Category: 2013.com.canonical.plainbox::uncategorised
PURPOSE:
    WLAN LED verification
STEPS:
    1. During the keys/wireless test you should have observed the
    wireless LED while turning wireless back on.
    2. WLAN LED should light or change color when wireless is turned on
VERIFICATION:
    Did the WLAN LED turn on or change color as expected?
Pick an action
    => press ENTER to continue
  c => add a comment
  s => skip this job
  q => save the session and quit
[csq]: <ENTER>
Please decide what to do next:
  outcome: job needs verification
  comments: none
Pick an action
  c => add a comment
  p => set outcome to pass
  f => set outcome to fail
  s => set outcome to skip
[cpfs]:

$ dpkg -l | grep checkbox
ii checkbox 0.17.9.1~ubuntu14.04.1 amd64 System testing application
ii checkbox-certification-tools 0.19~ubuntu14.04.1 all Checkbox Certification Tools
ii checkbox-gui 0.29~ppa~ubuntu14.04.1 amd64 QML based interface for system testing based on PlainBox.
ii checkbox-hw-collection 0.17.9.1~ubuntu14.04.1 amd64 CLI tool for collecting HW information from a system
ii checkbox-ng 0.15~ppa~ubuntu14.04.1 all PlainBox based test runner
ii checkbox-ng-service 0.15~ppa~ubuntu14.04.1 all CheckBox D-Bus service
ii checkbox-oem-bug 1.4-1-ubuntu1 all Checkbox OEM bug
ii plainbox-provider-checkbox 0.16~ppa2~ubuntu14.04.1 amd64 CheckBox provider for PlainBox
ii python3-checkbox 0.17.9.1~ubuntu14.04.1 all CheckBox python3 library
ii python3-checkbox-ng 0.15~ppa~ubuntu14.04.1 all PlainBox based test runner (Python 3 library)
ii python3-checkbox-support 0.15~ppa~ubuntu14.04.1 all collection of Python modules used by PlainBox providers

Related branches

Pierre Equoy (pieq)
information type: Public → Private
Changed in checkbox:
assignee: nobody → Sylvain Pineau (sylvain-pineau)
Zygmunt Krynicki (zyga)
affects: checkbox → checkbox-ng
information type: Private → Public
Changed in checkbox-ng:
status: New → Triaged
Changed in checkbox-ng:
milestone: none → 0.17
assignee: Sylvain Pineau (sylvain-pineau) → nobody
Pierre Equoy (pieq)
tags: added: ce-qa-concern
Revision history for this message
Sylvain Pineau (sylvain-pineau) wrote :

We'll have to solve this one with care to avoid regressing on jobs to still oby to the user-verify/user-interact control flow.

Revision history for this message
Zygmunt Krynicki (zyga) wrote :

I have a feeling this bug is a ping pong game. In the past we were asked to provide exactly this behaviour (to be able to comment or skip a job even before starting it). Now we're being asked to remove that.

Revision history for this message
Zygmunt Krynicki (zyga) wrote :

Syvalin: 2013.com.canonical.certification::led/wlan is a manual job. By definition that job is interactive and we are displaying the interactivity prompt before all interactive jobs.

I think the expected (but painful) thing is to merge the interaction options offered by pre-job and intra-job choices offered by the manual plugin.

Revision history for this message
Zygmunt Krynicki (zyga) wrote :

10:08 < ePierre> if you or spineau can dig out why this behaviour of having to press ENTER before anything else was introduced, it would be helpful I guess
10:08 <@zyga> ePierre: I'm pretty sure it's because interaction jobs require the user to understand what the test is about
10:08 <@zyga> ePierre: this code is pretty old now, this isn't a "new" regression, right?
10:09 < ePierre> zyga, I don't know. I guess not?
10:09 < ePierre> it also depends on the devices
10:10 < ePierre> since this is related to device freezing when we test resume/suspend, it's not on all the devices
10:10 < ePierre> and it depends on what pm-method is being used
10:10 <@zyga> ePierre: wait, no
10:10 <@zyga> ePierre: not the stuff you've just mentioned
10:10 <@zyga> ePierre: the extra prompt bug
10
:10 < ePierre> no it's not that old
10:11 < ePierre> when I joined Canonical (Nov 2014) it was not there
10:11 < ePierre> I'm pretty positive we didn't have to press ENTER before choosing the test result
10:11 < ePierre> but I don't know when this behaviour was introduced
10:14 <@zyga> ok, let's investigate
10:15 < ePierre> spineau, how many official checkbox/plainbox releases have they been since November 17th 2014? :)
10:15 < ePierre> (it's when I joined :))
10:15 <@zyga> ePierre: ok, found it
10:16 <@zyga> ePierre: http://paste.ubuntu.com/9783841/
10:16 <@zyga> spineau: ^^
10:16 <@spineau> ePierre: 3 maybe 4
10:16 <@zyga> releases are irrelevant, we have git
10:17 <@zyga> so I guess the thing is "interactive but not plugin=manual"
10:17 < ePierre> "This should be the case for both user-interact and user-interact-verify jobs only."
10:17 < ePierre> oh wait.
10:19 <@zyga> this is all changed later by
10:19 <@zyga> http://paste.ubuntu.com/9783855/
10:20 <@zyga> but that's not the end yet
10:21 <@zyga> ha
10:21 <@zyga> kissiel: you broke it
10:22 < ePierre> wait it's changed by an anterior commit?
10:22 < ePierre> ahahaha
10:22 <@zyga> http://paste.ubuntu.com/9783872/
10:22 < ePierre> booh!!!! kissiel !!!! :P
10:22 * kissiel runs away
10:22 <@zyga> ePierre: look at timestamps
10:23 < ePierre> no but I mean Ara's bug was filed on June 2nd, and the second link you pasted is from May 30th
10:23 <@zyga> kissiel, ePierre: in this large, underdocumented (*grin*) patch, you've added the new UI notification methods and have somehow removed the test that was using user-interact and user-verify as the
              filter
10:23 <@zyga> ePierre: ignore bugs, look at changes and dates
10:24 <@zyga> ePierre: the chrono order is 2, 1, 3 (olders is smaller)
10:24 <@zyga> ePierre: of the three patches above
10:24 <@zyga> brb
10:25 < ePierre> ok, I see
10:26 < ePierre> I gotta go
10:26 < ePierre> please document your findings in the pad.lv/1400646 bug
10
:26 < ePierre> I'll have a look at that tomorrow
10:26 < ePierre> if I can be of any help, e-mail me
10:26 < ePierre> talk to you tomorrow!

Revision history for this message
Zygmunt Krynicki (zyga) wrote :

Proposed a fix (linked to this bug):

To test run:
 stubbox run -i 2013.com.canonical.plainbox::stub/manual
 stubbox run -i 2013.com.canonical.plainbox::stub/user-interact

Both before and after applying the fix

Changed in checkbox-ng:
assignee: nobody → Zygmunt Krynicki (zkrynicki)
status: Triaged → In Progress
affects: checkbox-ng → plainbox
Changed in plainbox:
milestone: 0.17 → none
Changed in plainbox:
importance: Undecided → Medium
milestone: none → 0.19
Changed in plainbox:
status: In Progress → Fix Committed
Changed in plainbox:
status: Fix Committed → Fix Released
tags: added: test
tags: removed: test
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.