This bug was fixed in the package checkbox - 0.15 --------------- checkbox (0.15) raring; urgency=low * New upstream release (LP: #1097626): * Launchpad automated translation updates [ Daniel Manrique ] * New version 0.15 for Raring Ringtail development. * Fail gracefully with a friendly and useful error message if audio settings file format is invalid. (LP: #1065703) * Added environ key to poweroff and reboot jobs so they create logs in the expected location (LP: #1085833) * Added reporting of dependencies that are outright missing from the whitelist to avoid confusion (LP: #1084986) * scripts/memory_compare: Fixed accumulator expression to give good results (LP: #1089046) * added scripts/key_test to the list of translatable files (LP: #1073359) * Added wireless network devices to networking/info local job (LP: #1089787) * Updated call to Thread constructor to use positional arguments (LP: #1097866) * [FEATURE] checkbox/job.py: Fixed intltool warning about unnamed parameters in string, applied pep8 fixes. * checkbox-cli progress indicator is now static, spinning around instead of filling the screen with dots. (LP: #926104) * Increased version number after final Ubuntu Quantal release. * Added environment resource to whitelists (LP: #1067038) * Added retrying pactl commands in case audio layer is not up yet (LP: #1065908) * Removed references to inexistent opts.verbose setting (LP: #1070829) * Added unit test to catch jobs with mismatching environ and actual variables used in shell command (LP: #955053) * Forced utf-8 decoding on modinfo output and updated to use check_output instead of communicate (LP: #1055730) * [FEATURE] Added oem-config directory to setup.py so it builds correctly. * jobs/peripheral.txt.in: Fixed a typo in the DSL job. (LP: #1039192) * jobs/resource.txt.in: Added usb resource that indicates which versions of the protocol are supported (currently only reports for USB 2.0 and 3.0). * scripts/removable_storage_watcher, scripts/removable_storage_test: Added a parameter to specify minimum speed to accept a device, and a parameter to fail removable_storage_test if the transfer speed is below a threshold. * jobs/usb.txt.in: Added usb3 jobs that will only pass if an actual USB 3.0 device is inserted/removed/tested. * scripts/audio_test: made the default mode verbose, it now sends all output to stderr (but still exits a proper return value). Jobs using it are updated to remove the now-unneeded -v parameter. * Added tests to ensure all job files are declared in setup.cfg, po/POTFILES.in and included in jobs/local.txt.in. (LP: #1052986) * setup.cfg, po/POTFILES.in, jobs/local.txt.in: Fixed so the tests pass. (LP: #1052986) * [FEATURE] checkbox/tests/message_files.py: Added a test to validate that all shell jobs have descriptions (LP: #1052992). * [FEATURE] jobs/stress.txt.in: Updated some shell jobs that had no description (LP: #1052992). * [FEATURE] Added a test to verify that jobs contain only keys declared in the schema (avoid stray keys). [ Brendan Donegan ] * [FEATURE] Add environment_info plugin which sets environment variables according to the values set in the plugin via Checkboxes INI files. * [FEATURE] Added semi-automated wireless tests which require only a single router to run, prompting the user to modify the routers config during the test. * [FEATURE] Added semi-automated wireless after suspend tests to suspend.txt.in, since they were missed in the previous merge * Attach the output of udev_resource, for debugging purposes (LP: #974271) * Remove default value from windows_number argument since the logic following it dictates that it's only valid for certain tests (LP: #1047621) * jobs/audio.txt.in - fix description of audio/playback_hdmi (LP: #1052136) * [FEATURE] plugin/environment_info.py - allow BT device address to be set in the checkbox.ini file to facilitate self-testing * jobs/keys.txt.in, scripts/key_test - Fix keys/battery test to have correct fields and tidy up pep8 violations in key_test script (LP: #1054410) * [FEATURE] jobs/power-management.txt.in, jobs/touchpad.txt.in, jobs/sniff.txt.in - Fix incorrect formatting of job descriptions to allow steps to be displayed by the UI (LP: #1054208) * Remove networking/bandwidth job since it is not useful (LP: #1009658) * [FEATURE] jobs/suspend.txt.in - pipe output of bluetooth_obex jobs through ansi_parser to avoid invalid characters ending up in the submission.xml (LP: #1060332) * scripts/network_reconnect_resume_test - map reconnect time strings to float that they can be used in calculations later on (LP: #1064385) * scripts/network_reconnect_resume_test - convert map of reconnect times into a list in order to check if the list is empty (LP: #1064425) * Change forward-slashes to asterisks in the filename of a connection, since this is what NetworkManager does internally (LP: #1073335) * Create a test to move a 3D window around the screen to check if there is any tearing or other artifacts. * jobs/info.txt.in - add an xrandr attachment job to provide information about displays connected to the system (LP: #1085219) * jobs/suspend.txt.in - changed suspend_advanced_auto dependency of key_after_suspend and led_after_suspend tests to suspend/suspend_advanced, since they are manual and should depend on the manual suspend test (LP: #1089227) * scripts/piglit_test, jobs/piglit.txt.in - create a script which wraps and parses the piglit test results and use it in the piglit jobs * scripts/touchhpad_driver_info - changed the shebang to python3, since it is using modules that will only be installed for python3 (LP: #1089727) * plugins/recover_prompt.py - changed the order of the buttons in the recover prompt to put them in the same order as mentioned in the text (LP: #1092143) * jobs/suspend.txt.in - fix typo that was introduced into suspend_advanced job by a previous bug fix (LP: #1096799) * jobs/miscellanea.txt.in, plugins/environment_info.py - added test to check a sources file for specific repositories to make sure they are present * jobs/suspend.txt.in - make sure FWTS logs end with .log so file names don't get tampered with (LP: #1065932) * plugins/launchpad_exchange.py - Remove call to string_to_type on self.timeout, which is an int (LP: #1066967) * checkbox/lib/templates.py, jobs/resources.txt.in, jobs/wireless.txt.in, jobs/suspend.txt.in - Don't try and coerce keys of resource jobs to lowercase, as it upset the core of Checkbox (LP: #1067280) * jobs/suspend.txt.in - created new batch of wireless tests depending only on suspend_advanced so that they will run in manual testing (LP: #1067678) * jobs/suspend.txt.in - Let suspend_advanced only depend on power-management/rtc (LP: #1067692) * scripts/resolution_test - Slightly clarify output of script so that it's a bit more obvious why it failed (LP: #1065976) * Allow verification and interaction to be used as aliases for manual tests so that we can distinguish between tests which are partly manual and those which are entirely manual. * plugins/launchpad_exchange.py - make sure exchange-error signal is sent with a string instead of an Exception (LP: #1066862) * scripts/network_check - Get the base page for cdimage.ubuntu.com instead of some subdirectory which may or may not change in future (LP: #1065855) * scripts/internet_test - Wait some time (ten seconds) for the ARP cache to be populated, as it can be slow on some systems * Change the plugin types verification and interaction to user-verify and user-interact, to clarify their meaning. * Added a unit test to ensure user-verify and user-interact jobs have a command * Change most of the job plugin fields to use the appropriate new plugin type, i.e. user-verify or user-interact. * scripts/audio_settings - Use pactl instead of pacmd where possible as it is better maintained than pacmd (LP: #1067026) [ Jeff Lane ] * jobs/suspend.txt.in - removed incorrect multiple router requirement for suspend/wireless_after_suspend (LP: #1070333) * jobs/suspend.txt.in - fixed cycle_resolutions_after_suspend_auto so that it properly depends on suspend_advanced_auto rather than suspend_advanced (LP: #1071605) * jobs/graphics.txt.in - removed perl wrappings from tests using unity_support_test. They should pipe through ansi_parser like other jobs. (LP: #1087777) * jobs/info.txt.in - added job info/disk_partitions (LP: #1081833) * jobs/stress.txt.in, jobs/suspend.txt.in - fixed a bug in the command for the suspend jobs where checkbox was getting the exitcode for tee rather than for sleep_test or fwts_test (LP: #1095713) * jobs/stress.txt.in, jobs/hibernate.txt.in - increased device-check-delay from 30 seconds to 45 seconds to avoid a race condition. jobs/suspend.txt.in - added 45 second device-check-delay to the suspend_advanced and suspend_avanced_auto jobs to avoid a race condition. (LP: #1095668) * jobs/bluetooth.txt.in - added pipefail to bluetooth/detect-output jobs/suspend.txt.in - added pipefail to suspend/network_before_suspend (LP: #1096948) * scripts/sleep_test - Added timeing code to create start/end markers in for each sleep/resume iteration. Pull kernel timestamps to determine the time to sleep and time to resume for each iteration. Output the times for each iteration and an average time for all iterations. Tweaks to output to make it all look better. Verified perf code doesn't run on S4 tests. scripts/fwts_test - Added similar performance code to fwts_test. Added sleep test functions to fwts_test to provide the ability to run sleep tests via fwts using the wrapper. Tweaked the output to make it pretty. Added some code to prevent the perf stuff from running on S4 tests. jobs/suspend.txt, jobs/stress.txt, jobs/hibernate.txt - modifed jobs to use the shell code to call fwts_test if fwts is installed and fall back to sleep_test otherwise. Modifed the commands so that they all call fwts_test rather than fwts directly. Ensured all are calling with the proper options. Fixed log name problems that caused log attachment jobs to not work. * checkbox/parsers/modinfo.py - added exception handling to address possible bad output from modinfo causing a ValueError to occur. (LP: #1066118) * [FEATURE] jobs/expresscard.txt.in - renamed pcmcia-pcix.txt to expresscard.txt. renamed pcmcia-pcix/detect to expresscard/verification. Modified instructions slightly. data/whitelists/default.whitelist - modified list to reflect new expresscard test name. jobs/local.txt.in - changed __pcmcia-pcix__ job to reflect changes to the job name qt/frontend/qtfront.cpp - modified the list of testnames to reflect changes to the expresscard test setup.cfg - modified the list of job files since I renamed pcmcia-pcix.txt * scripts/sleep_test, scripts/fwts_test - removed the code that triggered a fail if the system took too long to sleep or resume. Also removed the options to set sleep or resume time from sleep_test as they were no longer necessary. jobs/hibernate.txt.in, jobs/suspend.txt.in, jobs/stress.txt.in - added environ: to the sleep jobs so the logs would be written properly. Modified suspend jobs to also write output to log files so we can capture timing data. Added jobs to parse the new sleep times logs and faile if outside the threshold. scripts/sleep_time_check - added script to check the logs generated by the sleept tests and fail if the average times exceed a given threshold po/POTFILES.in - changed the pcmcia-pcix.txt.in pointer to expresscard.txt.in * removed xorg_memory_test and graphics/xorg-memory as the test produces no real benefit and fails about 100% of the time. (LP: #764376) * scrips/volume_test - script now only fails if volume is greater than maxvol or less than minvol, not when equal to either. (LP: #1077008) * Added root user requirement to all jobs using removable storage test (LP: #1014813) * scripts/alsa_info - updated script to latest version available (LP: #1078837) * jobs/mediacard.txt.in - fixed the depends for all *remove* mediacard tests to more properly depend on the insert tests rather than storage. (LP: #1070328) * scripts/removable_storage_test (total overhaul): * Added --iterations option, now you can run -i iterations of -c files of -s size. * Added RandomData class to generate test files using a much faster method. * Replaced copy_file() with file_write() and file_read() to take advantage of buffer flushing and fsync() opeations not available to shutils/copy2. * Redid the runtime bits of main() so now for every device found, it runs I iterations of C files. * Redid output so now you get an avg write speed per iteration and a summary at the end of all iterations for each device. * scripts/wifi_reconnect_resume_test: fixed a bug where timestamps being grabbed from dmesg were strings instead of floats (LP: #1038270) * jobs/stress.txt.in: added two sample jobs to demonstrate the new features of removable_storage_test * jobs/piglit.txt.in: added jobs that run the piglit graphics test suite * scripts/lsmod_info: added script to provide better lsmod output for the lsmod_attachment job using the power of the modinfo parser jobs/info.txt.in: modified lsmod_attachment job to use lsmod_info script rather than just lsmod output (LP: #1043531) * Cleaning up duplicated modinfo code: (LP: #1043521) * checkbox/parsers/modinfo.py: added a parser to handle output from modinfo * scripts/audio_driver_info: modified to use modinfo parser * scripts/network_device_info: modified to use modinfo parser * scripts/accelerometer_test: modified to use modinfo parser * Cleaning up missing touchpad driver info bits: (LP: #1052942) * scripts/touchpad_driver_info: added script from automation sprint to get driver info for installed/detected touchpad devices * jobs/info.txt.in: added job to get driver info during info job phase. Moved audio_driver_info and network_driver_info into info.txt.in because they are better suited there. Moved network_device_info job into info.txt.in. * jobs/wireless.txt.in: Added jobs to individually test 802.11a/b/g/n connections. This is necessary for adequate QA testing (LP: #1042425) * setup.py: added checkbox.dbus to packages (LP: #1052601) * jobs/optical.txt.in: removed the optical/dvd_movie_playback job definition as it was redundant (LP: #868643) * [FEATURE] jobs/fingerprint.txt.in: Cleaned up the definitions to match current Unity (LP: #946184) * [FEATURE] jobs/usb.txt.in: replaced the usb/mouse and usb/keyboard tests with usb/HID to combine them so the tester can choose one device rather than requiring multiple devices. (LP: #1053032) * [FEATURE] jobs/keys.txt.in: modified the battery info key job to use the keys_test script as we do with other hotkey tests (LP: #990538) * [FEATURE] jobs/bluetooth.txt.in: removed the bluetooth/keyboard job and modified bluetooth/mouse to be bluetooth/HID and allow the tester to choose a device to use. (LP: #1053010) * jobs/piglit.txt.in: fixed the texturing job that was incorrectly using the word texturize, causing the tests to not run (LP: #1060432) [Sylvain Pineau] * jobs/info.txt.in: Fixed the requirement of info/touchpad_driver. * jobs/info.txt.in: Fixed the info/xrandr command. * jobs/audio.txt.in: Added Line In/Out and Display Port tests. * checkbox/tests/test_message_files.py: test_shell_jobs_with_root_have_needed_environ now checks every jobs containing a command line parameter. * jobs/graphics.txt.in: Set the bash pipefail option for tests using unity_support_test and piped to ansi_parser. * scripts/network_device_info: Set the driver version to 'Unknown' if the modinfo_parser returns nothing (LP: #1089911) * scripts/kvm_test: Add verbose output on errors (LP: #1086048) * [FEATURE] scripts/network_restart, jobs/stress.txt.in: Added a new stress test: network restart. * debian/control: Fixed a missing dependency (python3-pkg-resources) to build the package (LP: #1066502) * jobs/stress.txt.in: stress/sdhc now launches removable_storage_test with --memorycard. stress/sdhc and stress/usb run with root privileges to mount all partitions (LP: #1065862) * [FEATURE] jobs/stress.txt.in: Added a wireless hotkey stress test. * jobs/power-management.txt.in: Fixed path to the /proc acpi lid button (LP: #1068799) * scripts/fwts_test: Properly handle UnicodeDecodeError when parsing syslog (LP: #1075080) * scripts/camera_test: Fix the camera resolution test to give the pixelformat to use with fswebcam (LP: #1073176) * checkbox/parsers/udevadm.py: Enhanced bluetooth detection by looking at the RFKILL_TYPE property (LP: #1075052) * jobs/virtualization.txt.in, scripts/kvm_test, jobs/miscellanea.txt.in, setup.cfg: Added a new KVM test to ensure that a VM boots and works properly with KVM. * jobs/suspend.txt.in, scripts/gpu_test: Update the job description and the script docstrings from Flash to HTML5 video playback. * [FEATURE] scripts/removable_storage_test, scripts/removable_storage_watcher, jobs/mediacard.txt.in: Added memory cards detection (on bus other than sdio) and a new automated (based on usb/storage-pre-inserted) for SD cards. * scripts/camera_test, jobs/camera.txt.in: Added a 10s timeout to the camera still test (LP: #990133) * scripts/graphics_stress_test, scripts/rendercheck_test, jobs/stress.txt.in: Exit with proper error message if rendercheck is not installed. (LP: #1048262) * [FEATURE] jobs/suspend.txt.in: Add usb wakeup tests (mouse and keyboard). * [FEATURE] jobs/rendercheck.txt.in, po/POTFILES.in, setup.cfg: Fixed the rendercheck tests, added the suite file to setup.cfg/POTFILES.in and moved the rendercheck/tarball job into an attachment (LP #1053033) * scripts/memorycard_resource, scripts/removable_storage_test, scripts/removable_storage_watcher: Fixed the memorycard regexp flags and add the DriveVendor Udisks property to the re.search() string (LP: #1050920) * [FEATURE] jobs/mediacard.txt.in: Added SDXC, MS, MSP and XD memory card tests. * setup.py: Add the missing checkbox.heuristics module (LP: #1064220) * scripts/pts_run: Force pts_run to exit on errors as phoronix-test-suite always exits with success (LP: #1061297) * [FEATURE] jobs/keys.txt.in: Added video-out and touchpad keys tests. * [FEATURE] jobs/keys.txt.in, jobs/led.txt.in, jobs/suspend.txt.in: Provide leds and special keys tests after suspend. Volume and Mute key tests now use the key_test script. Fix steps numbering for led/wireless. [Marc Tardif] * plugins/environment_info.py: Enabling environment to take precedence over configuration files. * setup.py: added support for installing in virtualenv * setup.py: made build dependency on qt4-make optional * debian/control: Added python3-gi to run checkbox-qt. * jobs/input.txt.in, jobs/touchpad.txt.in: Added input/pointing tests and simplified horizontal/vertical scrolling tests. * scripts/touchpad_scroll_resource, scripts/xinput_resource: Replaced the touchpad_scroll_resource by reusing the xinput_resource script. * plugins/error_prompt.py: Fixed call to show_error (LP: #1075605) * scripts/touchpad_scroll_resource: Added support for systems without a touchpad (LP #1045066) * [FEATURE] scripts/xinput_resource, checkbox/parsers/xinput.py: Xinput resource script to test multitouch devices. * patch/0.14.2: Fixed patch to rmtree instead of rmdir scripts directory. * [FEATURE] debian/checkbox.templates, debian/checkbox.config: Added support to preseed properties in environment_info plugin. * setup.py: Fixed required dependency on distutils-extra by providing fake implementations of build_i18n and build_icons (LP #1049218) * checkbox/parsers/description.py: Fixed the PURPOSE and STEPS parts of the description parser to automatically fix bad descriptions. * [FEATURE] tools/lint: Added script to consistently check syntax. * [FEATURE] jobs/touchpad.txt.in, jobs/touchscreen.txt.in: Added singletouch and multitouch for touchpads and touchscreens. * Cleaning up test modules. * Removed package.name == 'linux' only needed by the apport_prompt plugin. [Sean Feole] * [FEATURE] jobs/optical.txt.in: modified existing automation test jobs. Added a _description field to each so that the test cases properly appear in the checkbox UI (LP: #1064189) * scripts/network-reconnect-resume-time: fixed the wifi-reconnect-resume-time script to also check wired connections for completeness (LP: #1042391) * [FEATURE] scripts/battery_test: measures battery capacity before and after an activity and determines battery life at the rate of drain. jobs/power-management.txt.in: added two manual tests to ask the user to unplug and then re-plug the laptop so that three new automated battery drain tests can run: * power-management/battery_drain_idle * power-management/battery_drain_movie * power-management/battery_drain_sleep [Zygmunt Krynicki] * scripts/removable_storage_watcher - properly detect removal of 'firewire', 'usb' and 'sdio devices' when either or both 'ata_serial_esata' or 'scsi' were provided on command line, in addition to the device actually being manipulated. (LP: #1066948) * checkbox/dbus/udisks2.py: Fix typo in fireware name LP: #1070859 * scripts/udev_resource: Use simpler interfaces * checkbox/parsers/udevadm.py: Allow using UdevadmParser with a string * Fixed simple duplicate 'the' mistakes (LP: #1040022) * Fix incorrect debconf template description for 802.11n open access point SSID (LP: #1049563) * Add new utility, scripts/udisks2_monitor, for looking at various storage changes interactively * Make scripts/removable_storage_watcher {insert,remove} properly validate the 'device' argument (bus type) and require at least one value * [FEATURE] scripts/removable_storage_watcher: add support for debugging [Jeff Marcom] * jobs/keys.txt.in - Fixed job command line to have appropriate volume "Up" and Volume "Down" UI instructions. * Fixed bug where previous test description and instructions were displayed while an automated test was running (LP: #1012377) * scripts/accelerometer_test, jobs/input.txt.in: Improved ability to detect oem manufacturer info, and cleanup up job step formatting. * /jobs/touchpad.txt.in: Fixed instruction steps for manual touchpad horizontal and vertical tests. * scripts/audio_settings, jobs/audio.txt.in: Added automated switch to HDMI interface, modified corresponding jobs file.. * jobs/audio.txt.in, added method to bypass return code of /scripts/audio_settings and instead only return the exit code for the appropriate audio test. * scripts/audio_settings: Added automated switch to restore previous audio profile setting [Alberto Milone] * [FEATURE] scripts/rendercheck_test: added test to take advantage of the rendercheck test suites. [FEATURE] jobs/rendercheck.txt.in: added jobs to run the rendercheck_test script. [FEATURE] jobs/local.txt.in: added job to parse rendercheck.txt.in job file * checkbox/contrib/gdk.py: removed legacy code and used python 3. * scripts/rotation_test: * Made sure to report all failures, not only the first. * Made it look more pythonic. * Fixed issues with python 3 and used python 3. * checkbox/contrib/xrandr.py: * Fixed issues with python 3 and used python 3 (LP: #1043155). * [FEATURE] scripts/window_test, jobs/graphics.txt.in: Added script window_test to open and close 3D windows in various conditions for graphics testing. Added three new window_test based jobs to graphics.txt.in. * [FEATURE] scripts/graphics_stress_test, jobs/stress.txt.in: Added script to do some graphics stress by ensuring the graphics system continues to function after several iterations of: switching VTs, suspend/resume, screen rotation and running the rendercheck graphics suite. [Chris Wayne] * [FEATURE] Added oem_config_test, related jobs and data files * [FEATURE] scripts/touchpad_scroll_resource, jobs/touchpad.txt.in: adding in touchpad scroll detection resource job, and modified jobs to require the capability to be present. [Matt Fischer] * scripts/audio_driver_info: added script to find info on loaded drivers jobs/audio.txt.in: added automated job to determine audio drivers loaded jobs/networking.txt.in: added a requires on networking/info for module-init-tools package. scripts/volume_test: cleanup and fixing a small issue -- Sylvain Pineau