Merge lp://staging/~sylvain-pineau/checkbox/fixes into lp://staging/checkbox

Proposed by Sylvain Pineau
Status: Merged
Approved by: Sylvain Pineau
Approved revision: 2719
Merged at revision: 2713
Proposed branch: lp://staging/~sylvain-pineau/checkbox/fixes
Merge into: lp://staging/checkbox
Diff against target: 802 lines (+425/-231)
1 file modified
checkbox-ng/checkbox_ng/commands/cli.py (+425/-231)
To merge this branch: bzr merge lp://staging/~sylvain-pineau/checkbox/fixes
Reviewer Review Type Date Requested Status
Sylvain Pineau (community) Approve
Zygmunt Krynicki (community) Approve
Review via email: mp+208082@code.staging.launchpad.net

Description of the change

Add Textland versions of curses widgets and a test selection screen for checkbox-ng cli tools.

As checkbox-gui it pre-run all local jobs to build the list of categories.

The test selection screen window is scrollable with the mouse (without clipping), categories can be collapsed/expanded, selection of a test automatically refresh ancestors and children tests.

To post a comment you must log in.
Revision history for this message
Zygmunt Krynicki (zyga) wrote :

This looks mostly okay. As said on IRC the only thing I found so far was the fact that you use SessionManager objects as 'session' where we previously had SessionState+LegacyAPIs being the session. I would much rather see 'manager' instead.

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

Done, manager replaced the confusing word session;

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

Thanks, +1

review: Approve
Revision history for this message
Daniel Manrique (roadmr) wrote :
Download full text (3.7 KiB)

The attempt to merge lp:~sylvain-pineau/checkbox/fixes into lp:checkbox failed. Below is the output from the failed tests.

[precise] Bringing VM 'up'
[precise] (timing) 7.96user 3.49system 4:07.83elapsed 4%CPU (0avgtext+0avgdata 21524maxresident)k
[precise] (timing) 0inputs+192outputs (0major+184077minor)pagefaults 0swaps
[precise] Starting tests...
[precise] Checkbox GUI build: PASS
[precise] (timing) 0.86user 0.30system 1:03.08elapsed 1%CPU (0avgtext+0avgdata 19896maxresident)k
[precise] (timing) 0inputs+64outputs (0major+61518minor)pagefaults 0swaps
[precise] CheckBox test suite: PASS
[precise] (timing) 0.84user 0.33system 0:38.11elapsed 3%CPU (0avgtext+0avgdata 20080maxresident)k
[precise] (timing) 0inputs+40outputs (0major+61843minor)pagefaults 0swaps
[precise] (timing) 0.80user 0.39system 0:05.99elapsed 19%CPU (0avgtext+0avgdata 20560maxresident)k
[precise] (timing) 0inputs+16outputs (0major+61166minor)pagefaults 0swaps
[precise] PlainBox test suite: PASS
[precise] (timing) 1.19user 0.35system 0:18.69elapsed 8%CPU (0avgtext+0avgdata 20188maxresident)k
[precise] (timing) 0inputs+344outputs (0major+61684minor)pagefaults 0swaps
[precise] PlainBox documentation build: PASS
[precise] (timing) 0.93user 0.37system 0:32.60elapsed 4%CPU (0avgtext+0avgdata 20780maxresident)k
[precise] (timing) 0inputs+32outputs (0major+62104minor)pagefaults 0swaps
[precise] CheckBoxNG test suite: FAIL
[precise] stdout: http://paste.ubuntu.com/6994285/
[precise] stderr: http://paste.ubuntu.com/6994286/
[precise] (timing) Command exited with non-zero status 1
[precise] (timing) 0.78user 0.34system 0:06.92elapsed 16%CPU (0avgtext+0avgdata 20016maxresident)k
[precise] (timing) 0inputs+24outputs (0major+61530minor)pagefaults 0swaps
[precise] Integration tests: PASS
[precise] (timing) 0.79user 0.34system 0:09.49elapsed 11%CPU (0avgtext+0avgdata 19992maxresident)k
[precise] (timing) 0inputs+8outputs (0major+61897minor)pagefaults 0swaps
[precise] Destroying VM
[trusty] Bringing VM 'up'
[trusty] (timing) 10.49user 4.64system 5:06.78elapsed 4%CPU (0avgtext+0avgdata 21304maxresident)k
[trusty] (timing) 0inputs+248outputs (0major+280263minor)pagefaults 0swaps
[trusty] Starting tests...
[trusty] Checkbox GUI build: PASS
[trusty] (timing) 1.22user 0.44system 1:08.98elapsed 2%CPU (0avgtext+0avgdata 20800maxresident)k
[trusty] (timing) 5944inputs+64outputs (75major+61184minor)pagefaults 0swaps
[trusty] CheckBox test suite: PASS
[trusty] (timing) 0.94user 0.36system 0:42.36elapsed 3%CPU (0avgtext+0avgdata 20652maxresident)k
[trusty] (timing) 0inputs+48outputs (0major+59794minor)pagefaults 0swaps
[trusty] (timing) 0.86user 0.30system 0:07.87elapsed 14%CPU (0avgtext+0avgdata 20636maxresident)k
[trusty] (timing) 0inputs+16outputs (0major+59521minor)pagefaults 0swaps
[trusty] PlainBox test suite: PASS
[trusty] (timing) 1.15user 0.40system 0:21.03elapsed 7%CPU (0avgtext+0avgdata 20504maxresident)k
[trusty] (timing) 0inputs+336outputs (0major+59617minor)pagefaults 0swaps
[trusty] PlainBox documentation build: PASS
[trusty] (timing) 0.84user 0.35sy...

Read more...

2709. By Sylvain Pineau

checkbox_ng:commands:cli: Rely on Textland to display the first screens

The Welcome screen and the suite selection menu.

textland

2710. By Sylvain Pineau

checkbox_ng:commands:cli: Remove the curses versions of the first screens

The Welcome screen and the suite selection menu

2711. By Sylvain Pineau

checkbox_ng:commands:cli: New ScrollableTreeNode class

Class used to display/interact with a SelectableJobTreeNode.

the Key mapping is quite simple:
    UP/DOWN: Scroll the tree view
    SPACE: Select a test
    ENTER: Toggle expand/collapse
    S: Select all
    D: Deselect all
    T: Start testing

2712. By Sylvain Pineau

checkbox_ng:commands:cli: Use the new SessionManager API

2713. By Sylvain Pineau

checkbox_ng:commands:cli: Reduce test execution verbosity (1/3)

Avoid displaying information related to local or resource jobs.

2714. By Sylvain Pineau

checkbox_ng:commands:cli: Reduce test execution verbosity (2/3)

Do not display empty comments.

2715. By Sylvain Pineau

checkbox_ng:commands:cli: Reduce test execution verbosity (3/3)

Turn off the IO delegate printing all stdout/stderr of job commands.

2716. By Sylvain Pineau

checkbox_ng:commands:cli: Use select_job() to populate the desired job list

2717. By Sylvain Pineau

checkbox_ng:commands:cli: Pre-run local jobs to create the tree view categories

_run_jobs() is no longer responsible for starting the session, this code has
been moved to the run() method so that local job results are kept and the
session still opened before updating the desired job list with the result of
the TreeNode selection.

2718. By Sylvain Pineau

checkbox_ng:commands:cli: Only print job description if the job can start

2719. By Sylvain Pineau

checkbox_ng:commands:cli: Print the unsupported outcome if the job cannot start

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

Re-approving, the textland import paths have been fixed.

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

I depend on https://code.launchpad.net/~sylvain-pineau/checkbox/textland_project_with_bzr_mv/+merge/208140
just waiting for it to land and I'll re-approve the MR.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
The diff is not available at this time. You can reload the page or download it.

Subscribers

People subscribed via source and target branches