summaryrefslogtreecommitdiff
path: root/units
diff options
authorSylvain Pineau <sylvain.pineau@canonical.com>2018-12-06 13:16:29 +0100
committerSylvain Pineau <sylvain.pineau@canonical.com>2018-12-06 13:16:29 +0100
commitff7f7de5f946bc45e254f09d5da76850b4dd9b73 (patch)
tree6fc5fc8fef8e36a15120396c7dd7e1394463ae22 /units
parent55d41fffe89e893e79ad7bd5e3ec833989b53090 (diff)
Import plainbox-provider-checkbox_0.47.0~rc1.orig.tar.gzupstream-0.47.0_rc1patched-0.47.0_rc1-1
Diffstat (limited to 'units')
-rw-r--r--units/bluetooth/jobs.pxu14
-rw-r--r--units/bluetooth/test-plan.pxu5
-rw-r--r--units/camera/jobs.pxu58
-rw-r--r--units/camera/packaging.pxu3
-rw-r--r--units/camera/test-plan.pxu35
-rw-r--r--units/cpu/jobs.pxu13
-rw-r--r--units/disk/test-plan.pxu6
-rw-r--r--units/ethernet/jobs.pxu7
-rw-r--r--units/ethernet/test-plan.pxu50
-rw-r--r--units/firmware/jobs.pxu22
-rw-r--r--units/firmware/test-plan.pxu11
-rw-r--r--units/info/jobs.pxu21
-rw-r--r--units/info/packaging.pxu5
-rw-r--r--units/info/test-plan.pxu37
-rw-r--r--units/led/jobs.pxu15
-rw-r--r--units/led/test-plan.pxu8
-rw-r--r--units/miscellanea/jobs.pxu53
-rw-r--r--units/miscellanea/test-plan.pxu22
-rw-r--r--units/networking/ipv6.pxu26
-rw-r--r--units/networking/test-plan.pxu50
-rw-r--r--units/socketcan/test-plan.pxu36
-rw-r--r--units/stress/test-plan.pxu2
-rw-r--r--units/submission/jobs.pxu7
-rw-r--r--units/submission/packaging.pxu4
-rw-r--r--units/suspend/suspend.pxu65
-rw-r--r--units/suspend/test-plan.pxu12
-rw-r--r--units/usb/usb.pxu1
27 files changed, 460 insertions, 128 deletions
diff --git a/units/bluetooth/jobs.pxu b/units/bluetooth/jobs.pxu
index 1f85fa6..7ab5243 100644
--- a/units/bluetooth/jobs.pxu
+++ b/units/bluetooth/jobs.pxu
@@ -214,3 +214,17 @@ requires:
{%- if __on_ubuntucore__ %}
connections.slot == 'bluez:service' and connections.plug == '{{ __system_env__["SNAP_NAME"] }}:bluez'
{% endif -%}
+
+unit: template
+template-resource: device
+template-filter: device.category == 'BLUETOOTH'
+template-unit: job
+id: bluetooth4/beacon_eddystone_url_{interface}
+_summary: Test system can get beacon EddyStone URL advertisements on the {interface} adapter
+command:
+ checkbox-support-eddystone_scanner -D {interface}
+plugin: shell
+user: root
+flags: also-after-suspend also-after-suspend-manual
+category_id: com.canonical.plainbox::bluetooth
+estimated_duration: 10
diff --git a/units/bluetooth/test-plan.pxu b/units/bluetooth/test-plan.pxu
index 498a4ce..1aca5be 100644
--- a/units/bluetooth/test-plan.pxu
+++ b/units/bluetooth/test-plan.pxu
@@ -14,7 +14,7 @@ _name: Bluetooth tests (Manual)
_description:
Bluetooth tests (Manual)
include:
- bluetooth/audio-a2dp certification-status=non-blocker
+ bluetooth/audio-a2dp certification-status=blocker
bluetooth/HID
bluetooth4/HOGP-mouse certification-status=blocker
bluetooth4/HOGP-keyboard certification-status=blocker
@@ -25,7 +25,7 @@ unit: test plan
_name: Bluetooth tests (automated)
_description: Bluetooth tests (automated)
include:
- bluetooth/detect-output certification-status=blocker
+ bluetooth/detect-output certification-status=blocker
id: bluetooth-cert-blockers
unit: test plan
@@ -34,3 +34,4 @@ _description: Bluetooth tests (certification blockers only)
include:
bluetooth4/HOGP-mouse certification-status=blocker
bluetooth4/HOGP-keyboard certification-status=blocker
+ bluetooth/audio-a2dp certification-status=blocker
diff --git a/units/camera/jobs.pxu b/units/camera/jobs.pxu
index 4219462..b1e4b9c 100644
--- a/units/camera/jobs.pxu
+++ b/units/camera/jobs.pxu
@@ -8,65 +8,95 @@ command:
camera_test detect
_description: This Automated test attempts to detect a camera.
+unit: template
+template-resource: device
+template-filter: device.category == 'CAPTURE' and device.name != ''
+template-unit: job
plugin: user-interact-verify
category_id: com.canonical.plainbox::camera
-id: camera/display
+id: camera/display_{name}
+_summary: Webcam video display test for {product_slug}
estimated_duration: 120.0
depends: camera/detect
-requires:
- device.category == 'CAPTURE'
command:
- camera_test display
+ camera_test display -d /dev/{name}
_description:
PURPOSE:
- This test will check that the built-in camera works
+ This test will check that the {product_slug} camera works
STEPS:
1. Click on Test to display a video capture from the camera for ten seconds.
VERIFICATION:
Did you see the video capture?
+unit: template
+template-resource: device
+template-filter: device.category == 'CAPTURE' and device.name != ''
+template-unit: job
+plugin: user-interact-verify
+category_id: com.canonical.plainbox::camera
+id: camera/led_{name}
+_summary: Webcam LED test for {product_slug}
+estimated_duration: 120.0
+depends: camera/detect
+command:
+ camera_test led -d /dev/{name}
+_description:
+ PURPOSE:
+ This test will check that the {product_slug} camera LED works
+ STEPS:
+ 1. Select Test to activate camera
+ 2. Camera LED should light for a few seconds
+ VERIFICATION:
+ Did the camera LED light?
+
+unit: template
+template-resource: device
+template-filter: device.category == 'CAPTURE' and device.name != ''
+template-unit: job
plugin: user-interact-verify
template-engine: jinja2
category_id: com.canonical.plainbox::camera
-id: camera/still
+id: camera/still_{{ name }}
+_summary: Webcam still image capture test for {{ product_slug }}
estimated_duration: 120.0
depends: camera/detect
requires:
{%- if __on_ubuntucore__ %}
executable.name == 'fswebcam'
- device.category == 'CAPTURE'
{%- else %}
package.name == 'gir1.2-gst-plugins-base-1.0'
package.name == 'eog'
package.name == 'fswebcam' or package.name == 'gir1.2-gst-plugins-base-1.0'
- device.category == 'CAPTURE'
{% endif -%}
command:
- camera_test still
+ camera_test still -d /dev/{{ name }}
_description:
PURPOSE:
- This test will check that the built-in camera works
+ This test will check that the {{ product_slug }} works
STEPS:
1. Click on Test to display a still image from the camera for ten seconds.
VERIFICATION:
Did you see the image?
+unit: template
+template-resource: device
+template-filter: device.category == 'CAPTURE' and device.name != ''
+template-unit: job
plugin: shell
template-engine: jinja2
category_id: com.canonical.plainbox::camera
-id: camera/multiple-resolution-images
+id: camera/multiple-resolution-images_{{ name }}
+_summary: Webcam multiple resolution capture test for {{ product_slug }}
estimated_duration: 1.2
depends: camera/detect
requires:
{%- if __on_ubuntucore__ %}
executable.name == 'fswebcam'
- device.category == 'CAPTURE'
{%- else %}
package.name == 'fswebcam' or package.name == 'gir1.2-gst-plugins-base-1.0'
- device.category == 'CAPTURE'
{% endif -%}
command:
- camera_test resolutions
+ camera_test resolutions -d /dev/{{ name }}
_description:
Takes multiple pictures based on the resolutions supported by the camera and
validates their size and that they are of a valid format.
diff --git a/units/camera/packaging.pxu b/units/camera/packaging.pxu
deleted file mode 100644
index bb12d64..0000000
--- a/units/camera/packaging.pxu
+++ /dev/null
@@ -1,3 +0,0 @@
-unit: packaging meta-data
-os-id: debian
-Depends: gir1.2-cheese-3.0
diff --git a/units/camera/test-plan.pxu b/units/camera/test-plan.pxu
index e4302be..578a7ce 100644
--- a/units/camera/test-plan.pxu
+++ b/units/camera/test-plan.pxu
@@ -14,40 +14,49 @@ _name: Camera tests (Manual)
_description:
Camera tests (Manual)
include:
- camera/still certification-status=blocker
- camera/display certification-status=blocker
-
+ camera/still_.* certification-status=blocker
+ camera/display_.* certification-status=blocker
+bootstrap_include:
+ device
id: after-suspend-camera-cert-full
unit: test plan
_name: Camera tests (after suspend)
_description: Camera tests (after suspend)
include:
- camera/display_after_suspend certification-status=blocker
- camera/still_after_suspend certification-status=blocker
+ after-suspend-manual-camera/still_.* certification-status=blocker
+ after-suspend-manual-camera/display_.* certification-status=blocker
+bootstrap_include:
+ device
id: camera-cert-automated
unit: test plan
_name: Camera tests (automated)
_description: Camera tests (automated)
include:
- camera/detect certification-status=blocker
- camera/multiple-resolution-images certification-status=blocker
+ camera/detect certification-status=blocker
+ camera/multiple-resolution-images_.* certification-status=blocker
+bootstrap_include:
+ device
id: camera-cert-blockers
unit: test plan
_name: Camera tests (certification blockers only)
_description: Camera tests (certification blockers only)
include:
- camera/detect certification-status=blocker
- camera/still certification-status=blocker
- camera/display certification-status=blocker
- camera/multiple-resolution-images certification-status=blocker
+ camera/detect certification-status=blocker
+ camera/still_.* certification-status=blocker
+ camera/display_.* certification-status=blocker
+ camera/multiple-resolution-images_.* certification-status=blocker
+bootstrap_include:
+ device
id: after-suspend-camera-cert-blockers
unit: test plan
_name: Camera tests (after suspend, certification blockers only)
_description: Camera tests (after suspend, certification blockers only)
include:
- camera/display_after_suspend certification-status=blocker
- camera/still_after_suspend certification-status=blocker
+ after-suspend-manual-camera/still_.* certification-status=blocker
+ after-suspend-manual-camera/display_.* certification-status=blocker
+bootstrap_include:
+ device
diff --git a/units/cpu/jobs.pxu b/units/cpu/jobs.pxu
index 5cd80a0..a027aa9 100644
--- a/units/cpu/jobs.pxu
+++ b/units/cpu/jobs.pxu
@@ -135,7 +135,9 @@ _description:
plugin:shell
id: cpu/cstates
estimated_duration: 10.0
-requires: executable.name == 'fwts'
+requires:
+ executable.name == 'fwts'
+ cpuinfo.platform not in ("aarch64", "armv7l")
user: root
_summary:
Run C-States tests
@@ -172,12 +174,3 @@ _siblings: [
"command": "cpuinfo_resource | diff $PLAINBOX_SESSION_SHARE/cpuinfo_before_suspend -",
"depends": "com.canonical.certification::suspend/suspend_advanced_auto"}
]
-
-plugin: shell
-category_id: com.canonical.plainbox::cpu
-estimated_duration: 0.5
-id: cpu/purley_id
-command:
- egrep -q avx512 /proc/cpuinfo && echo "This is a Purley CPU" || echo "CPU is NOT Purley"
-_description: Identifies Purley Platform CPUs
-
diff --git a/units/disk/test-plan.pxu b/units/disk/test-plan.pxu
index b080966..3c59a64 100644
--- a/units/disk/test-plan.pxu
+++ b/units/disk/test-plan.pxu
@@ -36,6 +36,12 @@ include:
nested_part:
disk-automated
+id: disk-manual
+unit: test plan
+_name: Manual disks tests
+_description: Manual QA disk tests for Ubuntu Core devices
+include:
+
id: disk-automated
unit: test plan
_name: Automated disk tests
diff --git a/units/ethernet/jobs.pxu b/units/ethernet/jobs.pxu
index c6e679a..cf1c02b 100644
--- a/units/ethernet/jobs.pxu
+++ b/units/ethernet/jobs.pxu
@@ -347,6 +347,7 @@ unit: template
template-resource: device
template-filter: device.category == 'NETWORK' and device.interface != 'UNKNOWN'
id: ethernet/hotplug-{__index__}-end-cycle
+category_id: com.canonical.plainbox::ethernet
after: ethernet/hotplug-{interface}-disconnect
command: true
flags: simple
@@ -364,7 +365,7 @@ user: root
environ:
TEST_TARGET_IPERF
LD_LIBRARY_PATH
-command: checkbox-support-network test -i {interface} -t iperf --iperf3 --scan-timeout 3600 --fail-threshold 80 --cpu-load-fail-threshold 90 --runtime 90 --num_runs 4
+command: network test -i {interface} -t iperf --iperf3 --scan-timeout 3600 --fail-threshold 80 --cpu-load-fail-threshold 90 --runtime 90 --num_runs 4
_description:
This test uses iperf3 to ensure network devices pass data at an acceptable
minimum percentage of advertized speed.
@@ -386,8 +387,12 @@ plugin: shell
estimated_duration: 2s
command: check_static {{ interface }}
requires:
+ {%- if __on_ubuntucore__ %}
snap.name == 'network-manager'
connections.slot == 'network-manager:service' and connections.plug == '{{ __system_env__["SNAP_NAME"] }}:network-manager'
+ {%- else %}
+ executable.name == 'nmcli'
+ {% endif -%}
plugin: shell
category_id: com.canonical.plainbox::ethernet
diff --git a/units/ethernet/test-plan.pxu b/units/ethernet/test-plan.pxu
new file mode 100644
index 0000000..6ad7620
--- /dev/null
+++ b/units/ethernet/test-plan.pxu
@@ -0,0 +1,50 @@
+id: ethernet-full
+unit: test plan
+_name: QA tests for ethernet
+_description: Ethernet tests for Ubuntu Core devices
+estimated_duration: 1m
+include:
+nested_part:
+ ethernet-manual
+ ethernet-automated
+
+id: ethernet-manual
+unit: test plan
+_name: Manual ethernet tests
+_description: Manual tests for ethernet connections
+include:
+ ethernet/wol_S5_.*
+ ethernet/wol_S4_.*
+ ethernet/wol_S3_.*
+ ethernet/hotplug-.*
+
+id: ethernet-automated
+unit: test plan
+_name: Automated ethernet tests
+_description: Automated ethernet tests for Ubuntu Core devices
+estimated_duration: 1m
+include:
+ ethernet/detect
+ ethernet/ping_.*
+bootstrap_include:
+ device
+
+id: after-suspend-ethernet-full
+unit: test plan
+_name: QA tests for ethernet (after suspend)
+_description: Ethernet tests for Ubuntu Core devices
+estimated_duration: 1m
+include:
+nested_part:
+ after-suspend-ethernet-automated
+
+id: after-suspend-ethernet-automated
+unit: test plan
+_name: Automated ethernet tests (after suspend)
+_description: Automated ethernet tests for Ubuntu Core devices
+estimated_duration: 1m
+include:
+ after-suspend-ethernet/detect
+ after-suspend-ethernet/ping_.*
+bootstrap_include:
+ device
diff --git a/units/firmware/jobs.pxu b/units/firmware/jobs.pxu
index 5c8dcee..4dae484 100644
--- a/units/firmware/jobs.pxu
+++ b/units/firmware/jobs.pxu
@@ -74,3 +74,25 @@ user: root
estimated_duration: 0.5
command: ! sudo grep -r "_REV" /sys/firmware/acpi/tables/* | grep [DS]SDT
_description: This Automated test checks misuse of the _REV interface in ACPI DSDT and SSDT tables
+
+plugin:shell
+category_id: com.canonical.plainbox::firmware
+id: firmware/fwts_server
+estimated_duration: 10.0
+requires: executable.name == 'fwts'
+user: root
+_description:
+ Run Firmware Test Suite (fwts) Server Cert selected tests.
+_summary: Run FWTS Server Cert selected tests.
+environ: PLAINBOX_SESSION_SHARE
+command:
+ checkbox-support-fwts_test --server -q -l $PLAINBOX_SESSION_SHARE/fwts_server_results.log
+
+plugin: attachment
+category_id: com.canonical.plainbox::firmware
+estimated_duration: 0.5
+id: firmware/fwts_server_results.log.gz
+command:
+ [ -f $PLAINBOX_SESSION_SHARE/fwts_server_results.log ] && gzip -c $PLAINBOX_SESSION_SHARE/fwts_server_results.log
+_description: Attaches the FWTS Server Cert results log to the submission
+_summary: Attach FWTS Server Cert test log to submission
diff --git a/units/firmware/test-plan.pxu b/units/firmware/test-plan.pxu
new file mode 100644
index 0000000..62b4e05
--- /dev/null
+++ b/units/firmware/test-plan.pxu
@@ -0,0 +1,11 @@
+id: server-firmware
+unit: test plan
+_name: Server Firmware Tests
+_description:
+ Server Focused Firmware Tests
+mandatory_include:
+ firmware/fwts_server
+ firmware/fwts_results.log.gz
+include:
+bootstrap_include:
+ fwts
diff --git a/units/info/jobs.pxu b/units/info/jobs.pxu
index dee4fd5..4485829 100644
--- a/units/info/jobs.pxu
+++ b/units/info/jobs.pxu
@@ -429,3 +429,24 @@ id: info/systemd-analyze
estimated_duration: 0.2
_summary: System boot-up performance statistics
command: systemd-analyze
+
+id: lstopo_verbose_attachment
+plugin: attachment
+category_id: com.canonical.plainbox::info
+command: lstopo -v
+estimated_duration: 0.015
+requires: package.name == 'hwloc' or executable.name == 'lstopo'
+_description: Attaches the system topology as presented by the lstopo command
+_summary: Attach the output of lstopo
+
+id: lstopo_visual_attachment
+plugin: attachment
+category_id: com.canonical.plainbox::info
+estimated_duration: 0.015
+requires: package.name == 'hwloc' or executable.name == 'lstopo'
+_description: Attaches the system topology as presented by the lstopo command
+_summary: Attach the output of lstopo
+command:
+ lstopo $PLAINBOX_SESSION_SHARE/lstopo_visual.png; \
+ [ -e "$PLAINBOX_SESSION_SHARE/lstopo_visual.png" ] && \
+ cat "$PLAINBOX_SESSION_SHARE/lstopo_visual.png"
diff --git a/units/info/packaging.pxu b/units/info/packaging.pxu
index 26d76cb..67f18c2 100644
--- a/units/info/packaging.pxu
+++ b/units/info/packaging.pxu
@@ -12,3 +12,8 @@ Depends: python3-guacamole (>= 0.9)
unit: packaging meta-data
os-id: debian
Depends: util-linux
+
+# This is to install hwloc for the lstopo attachment jobs
+unit: packaging meta-data
+os-id: debian
+Depends: hwloc
diff --git a/units/info/test-plan.pxu b/units/info/test-plan.pxu
index e54b443..d293954 100644
--- a/units/info/test-plan.pxu
+++ b/units/info/test-plan.pxu
@@ -42,6 +42,8 @@ include:
lsmod_attachment
lspci_attachment
lspci_standard_config_attachment
+ lstopo_verbose_attachment
+ lstopo_visual_attachment
lsusb_attachment
meminfo_attachment
modinfo_attachment
@@ -53,3 +55,38 @@ include:
bootstrap_include:
device
+id: server-info-attachment-automated
+unit: test plan
+_name: Info attachment jobs for Server Cert (Automated)
+_description:
+ Info attachment jobs for Server Cert(Automated)
+include:
+ config_file_attachment
+ cpuinfo_attachment
+ dkms_info_attachment
+ dmesg_attachment
+ dmi_attachment
+ dmidecode_attachment
+ efi_attachment
+ info/disk_partitions
+ info/hdparm_.*.txt
+ installer_debug.gz
+ kernel_cmdline_attachment
+ lsblk_attachment
+ lshw_attachment
+ lsmod_attachment
+ lspci_attachment
+ lstopo_verbose_attachment
+ lstopo_visual_attachment
+ lsusb_attachment
+ meminfo_attachment
+ modinfo_attachment
+ modprobe_attachment
+ modules_attachment
+ sysctl_attachment
+ sysfs_attachment
+ udev_attachment
+ udev-summary_attachment
+bootstrap_include:
+ device
+ fwts
diff --git a/units/led/jobs.pxu b/units/led/jobs.pxu
index 15d3065..2c2ea16 100644
--- a/units/led/jobs.pxu
+++ b/units/led/jobs.pxu
@@ -171,21 +171,6 @@ plugin: manual
category_id: led
estimated_duration: 180
-plugin: user-interact-verify
-category_id: led
-id: led/camera
-estimated_duration: 20.0
-depends: camera/detect
-command: camera_test led
-_description:
- PURPOSE:
- Camera LED verification
- STEPS:
- 1. Select Test to activate camera
- 2. Camera LED should light for a few seconds
- VERIFICATION:
- Did the camera LED light?
-
plugin: manual
category_id: led
id: led/touchpad
diff --git a/units/led/test-plan.pxu b/units/led/test-plan.pxu
index 88d38a6..0329717 100644
--- a/units/led/test-plan.pxu
+++ b/units/led/test-plan.pxu
@@ -25,10 +25,12 @@ include:
led/battery-charged
led/battery-charging
led/battery-low
- led/camera
+ camera/led_.*
led/caps-lock
led/power
led/touchpad
+bootstrap_include:
+ device
id: led-cert-automated
unit: test plan
@@ -50,10 +52,12 @@ include:
suspend/led_after_suspend/battery-charged
suspend/led_after_suspend/battery-charging
suspend/led_after_suspend/battery-low
- suspend/led_after_suspend/camera
+ after-suspend-manual-camera/led_.*
suspend/led_after_suspend/caps-lock
suspend/led_after_suspend/power
suspend/led_after_suspend/touchpad
+bootstrap_include:
+ device
id: led-full
unit: test plan
diff --git a/units/miscellanea/jobs.pxu b/units/miscellanea/jobs.pxu
index 7ddcc1b..cccec4c 100644
--- a/units/miscellanea/jobs.pxu
+++ b/units/miscellanea/jobs.pxu
@@ -24,6 +24,8 @@ depends:
raw_devices_dmi_json
modprobe_json
lspci_standard_config_json
+ system_info_json
+ kernel_cmdline_attachment
estimated_duration: 1.0
command: true
_summary:
@@ -314,11 +316,14 @@ _description:
plugin:shell
id: miscellanea/oops
+category_id: com.canonical.plainbox::miscellanea
estimated_duration: 10.0
requires: executable.name == 'fwts'
user: root
_description:
Run Firmware Test Suite (fwts) oops tests.
+_summary:
+ Run FWTS OOPs check
environ: PLAINBOX_SESSION_SHARE
command:
checkbox-support-fwts_test -l $PLAINBOX_SESSION_SHARE/fwts_oops_results.log -t oops
@@ -331,6 +336,52 @@ command:
[ -e ${PLAINBOX_SESSION_SHARE}/fwts_oops_results.log ] && xz -c ${PLAINBOX_SESSION_SHARE}/fwts_oops_results.log
_description: Attaches the FWTS oops results log to the submission
+plugin:shell
+id: miscellanea/olog
+category_id: com.canonical.plainbox::miscellanea
+estimated_duration: 10.0
+requires:
+ executable.name == 'fwts'
+ cpuinfo.platform in ("ppc64el")
+user: root
+_description:
+ Run Firmware Test Suite (fwts) olog tests (ppc64el only).
+_summary:
+ Run FWTS OLOG check on ppc64el
+environ: PLAINBOX_SESSION_SHARE
+command:
+ checkbox-support-fwts_test -l $PLAINBOX_SESSION_SHARE/fwts_olog_results.log -t olog
+
+plugin: attachment
+category_id: com.canonical.plainbox::miscellanea
+estimated_duration: 0.5
+id: miscellanea/olog_results.log
+command:
+ [ -e ${PLAINBOX_SESSION_SHARE}/fwts_olog_results.log ] && xz -c ${PLAINBOX_SESSION_SHARE}/fwts_olog_results.log
+_description: Attaches the FWTS olog results log to the submission
+
+plugin:shell
+id: miscellanea/klog
+category_id: com.canonical.plainbox::miscellanea
+estimated_duration: 10.0
+requires: executable.name == 'fwts'
+user: root
+_description:
+ Run Firmware Test Suite (fwts) klog tests.
+_summary:
+ Run FWTS Kernel Log check
+environ: PLAINBOX_SESSION_SHARE
+command:
+ checkbox-support-fwts_test -l $PLAINBOX_SESSION_SHARE/fwts_klog_results.log -t oops
+
+plugin: attachment
+category_id: com.canonical.plainbox::miscellanea
+estimated_duration: 0.5
+id: miscellanea/klog_results.log
+command:
+ [ -e ${PLAINBOX_SESSION_SHARE}/fwts_klog_results.log ] && xz -c ${PLAINBOX_SESSION_SHARE}/fwts_klog_results.log
+_description: Attaches the FWTS klog results log to the submission
+
plugin: shell
category_id: com.canonical.plainbox::miscellanea
estimated_duration: 0.1
@@ -354,7 +405,7 @@ plugin: user-interact-verify
category_id: com.canonical.plainbox::miscellanea
estimated_duration: 5.0
id: miscellanea/device_check
-command: udev_resource -l VIDEO NETWORK WIRELESS DISK ACCELEROMETER | tee >([[ $DISPLAY ]] && zenity --text-info --title="Device report")
+command: udev_resource -l VIDEO NETWORK WIRELESS BLUETOOTH DISK CAPTURE ACCELEROMETER | tee >([[ $DISPLAY ]] && zenity --text-info --title="Device report")
_summary: Device Check
_purpose:
Device check
diff --git a/units/miscellanea/test-plan.pxu b/units/miscellanea/test-plan.pxu
index 758386e..9c17b3a 100644
--- a/units/miscellanea/test-plan.pxu
+++ b/units/miscellanea/test-plan.pxu
@@ -53,3 +53,25 @@ include:
miscellanea/oops_results.log
bootstrap_include:
fwts
+
+id: server-miscellaneous
+unit: test plan
+_name: Miscellaneous server cert tests
+_description:
+ Miscellaneous server tests (log checks, dmi data, etc)
+mandatory_include:
+ miscellanea/submission-resources
+ miscellanea/get_make_and_model
+ miscellanea/get_maas_version certification-status=blocker
+ miscellanea/efi_boot_mode certification-status=blocker
+ miscellanea/secure_boot_mode
+ miscellanea/efi_pxeboot
+ miscellanea/check_prerelease
+ miscellanea/cpus_are_not_samples
+ miscellanea/ipmi_test certification-status=blocker
+ miscellanea/bmc_info
+ miscellanea/fwupdate
+ miscellanea/dmitest_server
+ miscellanea/sosreport
+ miscellanea/sosreport_attachment
+include:
diff --git a/units/networking/ipv6.pxu b/units/networking/ipv6.pxu
new file mode 100644
index 0000000..1cdcbdf
--- /dev/null
+++ b/units/networking/ipv6.pxu
@@ -0,0 +1,26 @@
+
+id: ipv6_detect
+category_id: com.canonical.plainbox::networking
+_summary: Test if the kernel is IPv6 ready
+command:
+ if test -f /proc/net/if_inet6; then
+ echo "Running kernel is IPv6 ready"
+ exit 0
+ fi
+ echo "/proc/net/if_inet6 not present"
+ echo "Running kernel does not appear to be IPv6 ready"
+ exit 1
+flags: simple also-after-suspend
+
+unit: template
+template-resource: device
+template-filter: device.category == 'NETWORK' and device.interface != 'UNKNOWN'
+template-unit: job
+depends: ipv6_detect
+id: ipv6_link_local_address_{interface}
+_summary: Test that {interface} has an IPv6 link local address
+plugin: shell
+category_id: com.canonical.plainbox::networking
+command:
+ [ $(ip -6 -o addr show dev {interface} scope link | wc -l) -eq 1 ]
+flags: also-after-suspend
diff --git a/units/networking/test-plan.pxu b/units/networking/test-plan.pxu
index d6a3ddb..5a7da04 100644
--- a/units/networking/test-plan.pxu
+++ b/units/networking/test-plan.pxu
@@ -37,3 +37,53 @@ include:
networking/ntp certification-status=blocker
bootstrap_include:
device
+
+id: networking-full
+unit: test plan
+_name: Networking tests for devices
+_description: Networking tests for devices
+include:
+nested_part:
+ networking-manual
+ networking-automated
+
+id: networking-manual
+unit: test plan
+_name: Manual networking tests for devices
+_description: Manual networking tests for devices
+include:
+
+id: networking-automated
+unit: test plan
+_name: Automated networking tests for devices
+_description: Automated networking tests for devices
+include:
+ ipv6_detect
+ ipv6_link_local_address_.*
+bootstrap_include:
+ device
+
+id: after-suspend-networking-full
+unit: test plan
+_name: Networking tests for devices (after suspend)
+_description: Networking tests for devices (after suspend)
+include:
+nested_part:
+ after-suspend-networking-manual
+ after-suspend-networking-automated
+
+id: after-suspend-networking-manual
+unit: test plan
+_name: Manual networking tests for devices (after suspend)
+_description: Manual networking tests for devices (after suspend)
+include:
+
+id: after-suspend-networking-automated
+unit: test plan
+_name: Automated networking tests for devices (after suspend)
+_description: Automated networking tests for devices (after suspend)
+include:
+ after-suspend-ipv6_detect
+ after-suspend-ipv6_link_local_address_.*
+bootstrap_include:
+ device
diff --git a/units/socketcan/test-plan.pxu b/units/socketcan/test-plan.pxu
index 0e60f3b..bcd1b6c 100644
--- a/units/socketcan/test-plan.pxu
+++ b/units/socketcan/test-plan.pxu
@@ -8,6 +8,14 @@ include:
socketcan/send_packet_remote_.*
+id: socketcan-manual-remote
+unit: test plan
+_name: SocketCAN Tests (Manual, Remote)
+_description:
+ SocketCAN Tests (Manual, Remote)
+include:
+
+
id: after-suspend-socketcan-auto-remote
unit: test plan
_name: SocketCAN Tests (Automated, Remote, After Suspend)
@@ -17,6 +25,14 @@ include:
after-suspend-socketcan/send_packet_remote_.*
+id: after-suspend-socketcan-manual-remote
+unit: test plan
+_name: SocketCAN Tests (Manual, Remote, After Suspend)
+_description:
+ SocketCAN Tests (Manual, Remote, After Suspend)
+include:
+
+
id: socketcan-auto-local
unit: test plan
_name: SocketCAN Tests (Automated, Local)
@@ -26,6 +42,14 @@ include:
socketcan/send_packet_local_.*
+id: socketcan-manual-local
+unit: test plan
+_name: SocketCAN Tests (Manual, Local)
+_description:
+ SocketCAN Tests (Manual, Local)
+include:
+
+
id: after-suspend-socketcan-auto-local
unit: test plan
_name: SocketCAN Tests (Automated, Local, After Suspend)
@@ -35,6 +59,14 @@ include:
after-suspend-socketcan/send_packet_local_.*
+id: after-suspend-socketcan-manual-local
+unit: test plan
+_name: SocketCAN Tests (Manual, Local, After Suspend)
+_description:
+ SocketCAN Tests (Manual, Local, After Suspend)
+include:
+
+
id: socketcan-full
unit: test plan
_name: SocketCAN Tests
@@ -42,6 +74,8 @@ _description:
SocketCAN Tests
include:
nested_part:
+ socketcan-manual-remote
+ socketcan-manual-local
socketcan-auto-remote
socketcan-auto-local
@@ -53,5 +87,7 @@ _description:
SocketCAN Tests (After Suspend)
include:
nested_part:
+ after-suspend-socketcan-manual-remote
+ after-suspend-socketcan-manual-local
after-suspend-socketcan-auto-remote
after-suspend-socketcan-auto-local
diff --git a/units/stress/test-plan.pxu b/units/stress/test-plan.pxu
index 4286443..2f6ff8b 100644
--- a/units/stress/test-plan.pxu
+++ b/units/stress/test-plan.pxu
@@ -18,8 +18,6 @@ include:
power-management/suspend-30-cycle-log-attach
power-management/suspend-30-cycles-time-check certification-status=non-blocker
power-management/hibernate_30_cycles certification-status=non-blocker
-nested_part:
- stress-cert-automated
id: stress-cert-automated
diff --git a/units/submission/jobs.pxu b/units/submission/jobs.pxu
index 9ee5a55..7d20950 100644
--- a/units/submission/jobs.pxu
+++ b/units/submission/jobs.pxu
@@ -82,3 +82,10 @@ _description:
image_version: somerville-trusty-amd64-20140620-0
bto_version: A00_dell-bto-trusty-houston-15-A11-iso-20141203-0.iso
command: recovery_info version | python3 -m plainbox dev parse recovery-info
+
+id: system_info_json
+plugin: attachment
+category_id: com.canonical.plainbox::info
+command: system_info.py
+_description: Attaches json dumps of system info tools (inxi + udev)
+_summary: Attaches json dumps of system info tools
diff --git a/units/submission/packaging.pxu b/units/submission/packaging.pxu
index d293608..c7ab5d8 100644
--- a/units/submission/packaging.pxu
+++ b/units/submission/packaging.pxu
@@ -1,3 +1,7 @@
unit: packaging meta-data
os-id: debian
Depends: jq
+
+unit: packaging meta-data
+os-id: debian
+Depends: libjson-xs-perl
diff --git a/units/suspend/suspend.pxu b/units/suspend/suspend.pxu
index 1ab5829..0c3a942 100644
--- a/units/suspend/suspend.pxu
+++ b/units/suspend/suspend.pxu
@@ -1449,23 +1449,6 @@ _description:
VERIFICATION:
Did the bluetooth LED turn off and on twice after resuming from suspend?
-plugin: user-interact-verify
-category_id: com.canonical.plainbox::suspend
-id: suspend/led_after_suspend/camera
-estimated_duration: 120.0
-depends:
- camera/detect
- suspend/suspend_advanced
-command: camera_test led
-_description:
- PURPOSE:
- Validate that the camera LED still works as expected after resuming from suspend
- STEPS:
- 1. Select Test to activate camera
- 2. Camera LED should light for a few seconds
- VERIFICATION:
- Did the camera LED still turn on and off after resuming from suspend?
-
plugin: manual
category_id: com.canonical.plainbox::suspend
id: suspend/led_after_suspend/touchpad
@@ -2090,54 +2073,6 @@ _description:
VERIFICATION:
Does tap recognition work?
-plugin: user-interact-verify
-category_id: com.canonical.plainbox::suspend
-id: camera/display_after_suspend
-estimated_duration: 120.0
-depends: suspend/suspend_advanced
-requires:
- device.category == 'CAPTURE'
-command: camera_test display
-_description:
- PURPOSE:
- This test will check that the built-in camera works after suspend
- STEPS:
- 1. Click on Test to display a video capture from the camera for ten seconds.
- VERIFICATION:
- Did you see the video capture?
-
-plugin: user-interact-verify
-category_id: com.canonical.plainbox::suspend
-id: camera/still_after_suspend
-estimated_duration: 120.0
-depends: camera/display_after_suspend
-requires:
- package.name == 'gir1.2-gst-plugins-base-0.10' or package.name == 'gir1.2-gst-plugins-base-1.0'
- package.name == 'eog'
- package.name == 'fswebcam' or package.name == 'gir1.2-gst-plugins-base-0.10' or package.name == 'gir1.2-gst-plugins-base-1.0'
- device.category == 'CAPTURE'
-command: camera_test still
-_description:
- PURPOSE:
- This test will check that the built-in camera works after suspend
- STEPS:
- 1. Click on Test to display a still image from the camera for ten seconds.
- VERIFICATION:
- Did you see the image?
-
-plugin: shell
-category_id: com.canonical.plainbox::suspend
-id: camera/multiple_resolution_after_suspend
-estimated_duration: 1.2
-depends: camera/still_after_suspend
-requires:
- package.name == 'fswebcam' or package.name == 'gir1.2-gst-plugins-base-0.10' or package.name == 'gir1.2-gst-plugins-base-1.0'
- device.category == 'CAPTURE'
-command: camera_test resolutions
-_description:
- Takes multiple pictures based on the resolutions supported by the camera and
- validates their size and that they are of a valid format after suspend
-
unit: template
template-resource: device
template-filter: device.category == 'MOUSE' or device.category == 'TOUCHPAD' or device.category == 'TOUCHSCREEN'
diff --git a/units/suspend/test-plan.pxu b/units/suspend/test-plan.pxu
index a9068d2..e7359c0 100644
--- a/units/suspend/test-plan.pxu
+++ b/units/suspend/test-plan.pxu
@@ -37,6 +37,9 @@ include:
suspend/bluetooth_obex_send_before_suspend certification-status=blocker
suspend/bluetooth_obex_browse_before_suspend certification-status=blocker
suspend/bluetooth_obex_get_before_suspend certification-status=blocker
+ bluetooth4/beacon_eddystone_url_.* certification-status=blocker
+bootstrap_include:
+ device
id: after-suspend-reference-cert-automated
unit: test plan
@@ -51,6 +54,9 @@ include:
suspend/bluetooth_obex_send_after_suspend certification-status=blocker
suspend/bluetooth_obex_browse_after_suspend certification-status=blocker
suspend/bluetooth_obex_get_after_suspend certification-status=blocker
+ after-suspend-manual-bluetooth4/beacon_eddystone_url_.* certification-status=blocker
+bootstrap_include:
+ device
id: before-suspend-reference-cert-blockers
unit: test plan
@@ -64,6 +70,9 @@ include:
suspend/bluetooth_obex_send_before_suspend certification-status=blocker
suspend/bluetooth_obex_browse_before_suspend certification-status=blocker
suspend/bluetooth_obex_get_before_suspend certification-status=blocker
+ bluetooth4/beacon_eddystone_url_.* certification-status=blocker
+bootstrap_include:
+ device
id: after-suspend-reference-cert-blockers
unit: test plan
@@ -78,6 +87,9 @@ include:
suspend/bluetooth_obex_send_after_suspend certification-status=blocker
suspend/bluetooth_obex_browse_after_suspend certification-status=blocker
suspend/bluetooth_obex_get_after_suspend certification-status=blocker
+ after-suspend-manual-bluetooth4/beacon_eddystone_url_.* certification-status=blocker
+bootstrap_include:
+ device
id: suspend-key-led-oops-check-cert-blockers
unit: test plan
diff --git a/units/usb/usb.pxu b/units/usb/usb.pxu
index 00a4318..99623fb 100644
--- a/units/usb/usb.pxu
+++ b/units/usb/usb.pxu
@@ -84,6 +84,7 @@ _verification:
The verification of this test is automated.
Do not change the automatically selected result.
plugin: user-interact
+flags: also-after-suspend
user: root
command:
{%- if __on_ubuntucore__ %}