diff options
| author | Pierre Equoy <pierre.equoy@canonical.com> | 2016-05-11 12:46:19 +0800 |
|---|---|---|
| committer | Pierre Equoy <pierre.equoy@canonical.com> | 2016-05-11 12:46:19 +0800 |
| commit | e487d1fd8a8bcf2ee78f24aad299d6a3c75374d8 (patch) | |
| tree | 60c32ee9f34e56f5344bf860e3e258c224778823 /jobs | |
| parent | d524537d77ad8437e01e13e7950ad272f7ff7bdc (diff) | |
providers:checkbox: Add USB Type-C and Thunderbolt 3 jobs
This commit adds the following to the Checkbox providers: - 2 audio jobs (1 for Thunderbolt 3, 1 for USB Type-C) - 2 monitor jobs (1 for Thunderbolt 3, 1 for USB Type-C) - 4 disk jobs (for Thunderbolt 3) - 8 USB jobs (for USB Type-C, with and without Type-C to Type-A adapter)
Diffstat (limited to 'jobs')
| -rw-r--r-- | jobs/audio.txt.in | 57 | ||||
| -rw-r--r-- | jobs/monitor.txt.in | 40 | ||||
| -rw-r--r-- | jobs/power-management.txt.in | 3 | ||||
| -rw-r--r-- | jobs/thunderbolt.pxu | 81 | ||||
| -rw-r--r-- | jobs/usb.txt.in | 159 |
5 files changed, 338 insertions, 2 deletions
diff --git a/jobs/audio.txt.in b/jobs/audio.txt.in index f6fb6a4..79b0445 100644 --- a/jobs/audio.txt.in +++ b/jobs/audio.txt.in @@ -118,6 +118,63 @@ _steps: _verification: Did you hear the sound from the Thunderbolt device? +unit: template +template-resource: graphics_card +plugin: user-interact-verify +category_id: 2013.com.canonical.plainbox::audio +id: audio/{index}_playback_thunderbolt3_{product_slug} +imports: from 2013.com.canonical.plainbox import manifest +estimated_duration: 30.0 +requires: + manifest.has_thunderbolt3 == 'True' + device.category == 'AUDIO' + package.name == 'alsa-base' + package.name == 'gir1.2-gst-plugins-base-0.10' or package.name == 'gir1.2-gst-plugins-base-1.0' + package.name == 'pulseaudio-utils' +command: + audio_settings store --verbose --file=$PLAINBOX_SESSION_SHARE/pulseaudio_settings + audio_settings set --verbose --device=hdmi --volume=50 + gst_pipeline_test -t 2 --device hdmi 'audiotestsrc wave=sine freq=512 ! audioconvert ! audioresample ! autoaudiosink' + EXIT_CODE=$? + audio_settings restore --verbose --file=$PLAINBOX_SESSION_SHARE/pulseaudio_settings + exit $EXIT_CODE +_purpose: + Thunderbolt audio interface verification +_steps: + 1. Plug an external Thunderbolt device with sound (Use only one HDMI/DisplayPort/Thunderbolt interface at a time for this test) + 2. Commence the test +_verification: + Did you hear the sound from the Thunderbolt device? + +unit: template +template-resource: graphics_card +plugin: user-interact-verify +category_id: 2013.com.canonical.plainbox::audio +id: audio/{index}_playback_type-c_displayport_{product_slug} +imports: from 2013.com.canonical.plainbox import manifest +estimated_duration: 30.0 +requires: + manifest.has_usb_type_c + display.dp == 'supported' + device.category == 'AUDIO' + package.name == 'alsa-base' + package.name == 'gir1.2-gst-plugins-base-0.10' or package.name == 'gir1.2-gst-plugins-base-1.0' + package.name == 'pulseaudio-utils' +command: + audio_settings store --verbose --file=$PLAINBOX_SESSION_SHARE/pulseaudio_settings + audio_settings set --verbose --device=hdmi --volume=50 + gst_pipeline_test -t 2 --device hdmi 'audiotestsrc wave=sine freq=512 ! audioconvert ! audioresample ! autoaudiosink' + EXIT_CODE=$? + audio_settings restore --verbose --file=$PLAINBOX_SESSION_SHARE/pulseaudio_settings + exit $EXIT_CODE +_purpose: + DisplayPort audio via USB Type-C port interface verification +_steps: + 1. Plug an external DisplayPort device with sound on a USB Type-C port using a "USB Typce-C to DisplayPort" adapter (Use only one HDMI/DisplayPort/Thunderbolt interface at a time for this test) + 2. Commence the test +_verification: + Did you hear the sound from the DisplayPort device? + plugin: user-interact-verify category_id: 2013.com.canonical.plainbox::audio id: audio/playback_headphones diff --git a/jobs/monitor.txt.in b/jobs/monitor.txt.in index 53a787d..1502a14 100644 --- a/jobs/monitor.txt.in +++ b/jobs/monitor.txt.in @@ -149,3 +149,43 @@ _steps: _verification: Was the desktop displayed correctly with {vendor} {product} on the Thunderbolt-connected screen in every mode? + +unit: template +template-resource: graphics_card +id: monitor/{index}_thunderbolt3_{product_slug} +imports: from 2013.com.canonical.plainbox import manifest +requires: manifest.has_thunderbolt3 == 'True' +estimated_duration: 15.0 +plugin: manual +category_id: 2013.com.canonical.plainbox::monitor +_summary: Display connected via Thunderbolt 3 for {vendor} {product} +_purpose: + This test will check your Thunderbolt 3 port as a monitor interconnect for {vendor} {product}. +_steps: + 1. Connect a display (if not already connected) to the Thunderbolt 3 port on + your system + 2. Switch display modes between in your Display Settings, check if it can be + set to mirrored, extended, displayed on external or onboard only +_verification: + Was the desktop displayed correctly with {vendor} {product} on the Thunderbolt-connected + screen in every mode? + +unit: template +template-resource: graphics_card +id: monitor/{index}_type-c_displayport_{product_slug} +imports: from 2013.com.canonical.plainbox import manifest +requires: manifest.has_usb_type_c +estimated_duration: 15.0 +plugin: manual +category_id: 2013.com.canonical.plainbox::monitor +_summary: Display connected via DisplayPort using an USB Type-C port for {vendor} {product} +_purpose: + This test will check the connection of a screen using a "USB Type-C to DisplayPort" adapter for {vendor} {product}. +_steps: + 1. Connect a display (if not already connected) to the USB Type-C port on + your system using a "USB Type-C to DisplayPort" adapter + 2. Switch display modes between in your Display Settings, check if it can be + set to mirrored, extended, displayed on external or onboard only +_verification: + Was the desktop displayed correctly with {vendor} {product} on the screen + connected using a "USB Type-C to DisplayPort" adapter in every mode? diff --git a/jobs/power-management.txt.in b/jobs/power-management.txt.in index 047a783..5240b77 100644 --- a/jobs/power-management.txt.in +++ b/jobs/power-management.txt.in @@ -231,8 +231,7 @@ estimated_duration: 30.0 depends: power-management/battery_drain_idle power-management/battery_drain_movie power-management/battery_drain_sleep _description: PURPOSE: - This test will ensure that the AC is plugged back in after the battery. - tests + This test will ensure that the AC is plugged back in after the battery tests. STEPS: 1. Plug laptop into AC. VERIFICATION: diff --git a/jobs/thunderbolt.pxu b/jobs/thunderbolt.pxu index f4b4395..d4d2c1b 100644 --- a/jobs/thunderbolt.pxu +++ b/jobs/thunderbolt.pxu @@ -3,6 +3,11 @@ id: has_thunderbolt _name: Thunderbolt Support value-type: bool +unit: manifest entry +id: has_thunderbolt3 +_name: Thunderbolt 3 Support +value-type: bool + plugin: user-interact category_id: 2013.com.canonical.plainbox::disk id: thunderbolt/insert @@ -79,3 +84,79 @@ _description: with the result for the display. 2. Was the desktop displayed correctly on the Thunderbolt-connected screen? +plugin: user-interact +category_id: 2013.com.canonical.plainbox::disk +id: thunderbolt3/insert +imports: from 2013.com.canonical.plainbox import manifest +requires: manifest.has_thunderbolt3 == 'True' +estimated_duration: 20.0 +command: removable_storage_watcher insert --timeout 40 scsi +_summary: Storage insert detection on Thunderbolt 3 port +_description: + PURPOSE: + This test will check if the insertion of a Thunderbolt HDD could be detected + STEPS: + 1. Click 'Test' to begin the test. This test will + timeout and fail if the insertion has not been detected within 40 seconds. + 2. Plug a Thunderbolt HDD into an available Thunderbolt 3 port, if it's not + mounted automatically, please click the HDD icon to mount it. + VERIFICATION: + The verification of this test is automated. Do not change the automatically + selected result + +plugin: shell +category_id: 2013.com.canonical.plainbox::disk +id: thunderbolt3/storage-test +user: root +imports: from 2013.com.canonical.plainbox import manifest +requires: manifest.has_thunderbolt3 == 'True' +depends: thunderbolt3/insert +estimated_duration: 45.0 +command: removable_storage_test -s 268400000 scsi +_summary: Storage test on Thunderbolt 3 +_description: + This is an automated test which performs read/write operations on an attached + Thunderbolt HDD + +plugin: user-interact +category_id: 2013.com.canonical.plainbox::disk +id: thunderbolt3/remove +imports: from 2013.com.canonical.plainbox import manifest +requires: manifest.has_thunderbolt3 == 'True' +depends: thunderbolt3/insert +estimated_duration: 10.0 +command: removable_storage_watcher remove scsi +_summary: Storage removal detection on Thunderbolt 3 port +_description: + PURPOSE: + This test will check the system can detect the removal of a Thunderbolt HDD + STEPS: + 1. Click 'Test' to begin the test. This test will timeout and fail if + the removal has not been detected within 20 seconds. + 2. Remove the previously attached Thunderbolt HDD from the Thunderbolt port. + VERIFICATION: + The verification of this test is automated. Do not change the automatically + selected result + +plugin: user-interact-verify +category_id: 2013.com.canonical.plainbox::disk +id: thunderbolt3/daisy-chain +imports: from 2013.com.canonical.plainbox import manifest +requires: manifest.has_thunderbolt3 == 'True' +estimated_duration: 45.0 +command: removable_storage_test -s 268400000 scsi +_summary: Daisy-chain testing for Thunderbolt 3 storage and display device +_description: + PURPOSE: + This test will check if your system can support daisy-chaining of a storage + and a monitor over Thunderbolt 3 port + STEPS: + 1. Connect your Thunderbolt monitor to your systems + 2. Connect and mount your Thunderbolt HDD to another Thunderbolt 3 port of the + monitor (you can do this with HDD first as well) + 3. Click 'Test' to perform the storage test on the Thunderbolt HDD + VERIFICATION: + 1. The verification for storage is automated, please select the result combine + with the result for the display. + 2. Was the desktop displayed correctly on the Thunderbolt-connected screen? + diff --git a/jobs/usb.txt.in b/jobs/usb.txt.in index 8826fc1..48e517b 100644 --- a/jobs/usb.txt.in +++ b/jobs/usb.txt.in @@ -1,3 +1,13 @@ +unit: manifest entry +id: has_usb_type_c +_name: USB Type-C Support +value-type: bool + +unit: manifest entry +id: has_usb_type_c_charging +_name: USB Type-C Charging Port +value-type: bool + plugin: shell category_id: 2013.com.canonical.plainbox::usb id: usb/detect @@ -37,6 +47,42 @@ _description: VERIFICATION: Did the device work as expected? +plugin: user-interact-verify +category_id: 2013.com.canonical.plainbox::usb +id: usb-c/c-to-a-adapter/hid +imports: from 2013.com.canonical.plainbox import manifest +requires: manifest.has_usb_type_c +depends: usb/detect +estimated_duration: 10.0 +command: keyboard_test +_purpose: + This test will check that you can use a USB HID device plugged in a USB + Type-C port using a "USB Type-C to Type-A" adapter +_steps: + 1. Enable either a USB mouse or keyboard by plugging it in the USB Type-C port using a "USB Type-C to Type-A" adapter + 2. For mice, perform actions such as moving the pointer, right and left button clicks and double clicks + 3. For keyboards, commence the test to launch a small tool. Type some text and close the tool. +_verification: + Did the device work as expected? + +plugin: user-interact-verify +category_id: 2013.com.canonical.plainbox::usb +id: usb-c/hid +imports: from 2013.com.canonical.plainbox import manifest +requires: manifest.has_usb_type_c +depends: usb/detect +estimated_duration: 10.0 +command: keyboard_test +_purpose: + This test will check that you can use a USB HID device plugged in a USB + Type-C port +_steps: + 1. Enable either a USB mouse or keyboard by plugging it in the USB Type-C port + 2. For mice, perform actions such as moving the pointer, right and left button clicks and double clicks + 3. For keyboards, commence the test to launch a small tool. Type some text and close the tool. +_verification: + Did the device work as expected? + plugin: user-interact category_id: 2013.com.canonical.plainbox::usb id: usb/insert @@ -76,6 +122,48 @@ _description: plugin: user-interact category_id: 2013.com.canonical.plainbox::usb +id: usb-c/c-to-a-adapter/insert +imports: from 2013.com.canonical.plainbox import manifest +requires: + usb.usb3 == 'supported' + manifest.has_usb_type_c +estimated_duration: 10.0 +command: removable_storage_watcher -m 500000000 insert usb +_purpose: + This test will check that the system correctly detects the insertion of + a USB 3 storage device in a USB Type-C connector using a "Type-C to Type-A" + adapter +_steps: + 1. Click "Test" and insert a USB 3 storage device in a USB Type-C port + using a "USB Type-C to Type-A" adapter. + (Note: this test will time-out after 20 seconds.) + 2. Do not unplug the device after the test. +_verification: + The verification of this test is automated. Do not change the + automatically selected result. + +plugin: user-interact +category_id: 2013.com.canonical.plainbox::usb +id: usb-c/insert +imports: from 2013.com.canonical.plainbox import manifest +requires: + usb.usb3 == 'supported' + manifest.has_usb_type_c +estimated_duration: 10.0 +command: removable_storage_watcher -m 500000000 insert usb +_purpose: + This test will check that the system correctly detects the insertion of + a USB 3 storage device in a USB Type-C connector +_steps: + 1. Click "Test" and insert a USB 3 storage device in a USB Type-C port. + (Note: this test will time-out after 20 seconds.) + 2. Do not unplug the device after the test. +_verification: + The verification of this test is automated. Do not change the + automatically selected result. + +plugin: user-interact +category_id: 2013.com.canonical.plainbox::usb id: usb/remove depends: usb/insert estimated_duration: 10.0 @@ -110,6 +198,47 @@ _description: The verification of this test is automated. Do not change the automatically selected result. +plugin: user-interact +category_id: 2013.com.canonical.plainbox::usb +id: usb-c/c-to-a-adapter/remove +imports: from 2013.com.canonical.plainbox import manifest +depends: usb-c/c-to-a-adapter/insert +requires: + usb.usb3 == 'supported' + manifest.has_usb_type_c +estimated_duration: 10.0 +command: removable_storage_watcher -m 500000000 remove usb +_purpose: + This test will check that the system correctly detects the removal of + a USB 3 storage device connected to a USB Type-C port using a "USB Type-C + to Type-A" adapter. +_steps: + 1. Click "Test" and remove the USB 3 device. + (Note: this test will time-out after 20 seconds.) +_verification: + The verification of this test is automated. Do not change the + automatically selected result. + +plugin: user-interact +category_id: 2013.com.canonical.plainbox::usb +id: usb-c/remove +imports: from 2013.com.canonical.plainbox import manifest +depends: usb-c/insert +requires: + usb.usb3 == 'supported' + manifest.has_usb_type_c +estimated_duration: 10.0 +command: removable_storage_watcher -m 500000000 remove usb +_purpose: + This test will check that the system correctly detects the removal of + a USB 3 storage device connected to a USB Type-C port. +_steps: + 1. Click "Test" and remove the USB 3 device. + (Note: this test will time-out after 20 seconds.) +_verification: + The verification of this test is automated. Do not change the + automatically selected result. + plugin: user-interact-verify category_id: 2013.com.canonical.plainbox::usb id: usb/storage-transfer @@ -172,6 +301,36 @@ _description: plugin: shell category_id: 2013.com.canonical.plainbox::usb +id: usb-c/c-to-a-adapter/storage-automated +imports: from 2013.com.canonical.plainbox import manifest +requires: + usb.usb3 == 'supported' + manifest.has_usb_type_c +depends: usb-c/c-to-a-adapter/insert +user: root +estimated_duration: 45.0 +command: removable_storage_test -s 268400000 -m 500000000 usb --driver xhci_hcd +_description: + This test is automated and executes after the usb-c/c-to-a-adapter/insert test + is run. + +plugin: shell +category_id: 2013.com.canonical.plainbox::usb +id: usb-c/storage-automated +imports: from 2013.com.canonical.plainbox import manifest +requires: + usb.usb3 == 'supported' + manifest.has_usb_type_c +depends: usb-c/insert +user: root +estimated_duration: 45.0 +command: removable_storage_test -s 268400000 -m 500000000 usb --driver xhci_hcd +_description: + This test is automated and executes after the usb-c/insert test + is run. + +plugin: shell +category_id: 2013.com.canonical.plainbox::usb id: usb/storage-preinserted user: root estimated_duration: 45.0 |
