plugin: shell
name: suspend/network_before_suspend
depends: networking/detect
description: Record the current network before suspending.
description-ast.UTF-8: Graba la rede actual enantes de suspender.
description-bn.UTF-8: বর্তমান নেটওয়ার্ক স্থগিত করার অাগে সংরক্ষণ করুন।
description-bs.UTF-8: Zabilježi trenutnu mrežu prije suspenzije
description-cs.UTF-8: Zachovat aktuální síťové připojení před uspáním.
description-de.UTF-8: Notieren Sie sich die aktuelle Netzwerkverbindung vor dem in Bereitschaft Versetzen.
description-el.utf-8: Καταγραφή του τρέχοντος δικτύου πριν την αναστολή λειτουργίας.
description-en_AU.UTF-8: Record the current network before suspending.
description-en_GB.UTF-8: Record the current network before suspending.
description-es.UTF-8: Grabando la red actual antes de suspender.
description-fr.UTF-8: Enregistrer le réseau actuel avant mise en veille.
description-gd.UTF-8: Clàraich an lìonradh cuairteach os chionn a chur air thaobh.
description-hu.UTF-8: A hálózati beállítások eltárolása a felfüggesztés előtt.
description-it.UTF-8: Salva la rete attuale prima della sospensione.
description-km.UTF-8: កត់ត្រា​បណ្ដាញ​បច្ចុប្បន្ន​មុន​ពេល​ផ្អាក ។
description-ms.UTF-8: Rakam rangkaian semasa sebelum menangguh.
description-nl.UTF-8: Het huidige netwerk opnemen voordat het systeem in pauzestand gaat.
description-pt_BR.UTF-8: Registre a rede atual antes de suspender.
description-ro.UTF-8: Înregistrează rețeaua curentă înainte de suspendare.
description-ru.UTF-8: Запомнить текущую сеть перед переходом в спящий режим.
description-sl.UTF-8: Posnemi trenutno omrežje pred prehodom v stanje pripravljenosti.
description-tr.UTF-8: Askıya almadan önce kullanılan ağı kaydedin
description-ug.UTF-8: توڭلىتىشتىن بۇرۇن ھازىرقى تورنى خاتىرىلەيدۇ.
description-uk.UTF-8: Запис стану поточної мережі перед сном.
description-zh_CN.UTF-8: 挂起前记录当前网络。
command: set -o pipefail; internet_test | tee $CHECKBOX_DATA/network_before_suspend.txt

plugin: shell
name: suspend/resolution_before_suspend
description: Record the current resolution before suspending.
description-ar.UTF-8: سَجِّل أبعاد حيِّز العرض قبل التعليق.
description-ast.UTF-8: Grabar la resolución actual enantes de suspender.
description-be.UTF-8: Запіс гэтага вырашэння перад пераходам да рэжыма паніжанага энергаспажывання.
description-bn.UTF-8: বাতিল করার আগে বর্তমান রেজল্যুশন সংরক্ষণ করুন।
description-bs.UTF-8: Zapamti trenutnu rezoluciju prije suspendiranja.
description-ca.UTF-8: Enregistreu la resolució actual abans de suspendre.
description-ca@valencia.UTF-8: Enregistreu la resolució actual abans de suspendre.
description-cs.UTF-8: Uložit aktuální rozlišení před uspáním.
description-da.UTF-8: Husk den nuværende skærmopløsning før hvile.
description-de.UTF-8: Notieren Sie sich die aktuelle Bildschirmauflösung vor dem in Bereitschaft Versetzen.
description-el.utf-8: Αποθήκευση της τρέχουσας ανάλυσης πριν την αδρανοποίηση
description-en_AU.UTF-8: Record the current resolution before suspending.
description-en_CA.UTF-8: Record the current resolution before suspending.
description-en_GB.UTF-8: Record the current resolution before suspending.
description-eo.UTF-8: Konservi la nunan distingivon antaŭ la prokrasta reĝimo
description-es.UTF-8: Grabar la resolución actual antes de suspender.
description-fi.UTF-8: Paina muistiin nykyinen tarkkuus ennen valmiustilaan siirtymistä.
description-fr.UTF-8: Enregistrez la résolution actuelle avant la mise en veille.
description-gd.UTF-8: Clàraich an dùmhlachd-bhreacaidh os chionn a chur air thaobh.
description-gl.UTF-8: Gravar a resolución actual antes da suspensión.
description-he.UTF-8: הקלטת הרזולוציה הנוכחית לפני ההשהיה.
description-hi.UTF-8: बरखास्त के पूर्व वर्तमान रिजोलुशन को रिकार्ड कर लें.
description-hu.UTF-8: Az aktuális felbontás rögzítése a felfüggesztés előtt.
description-it.UTF-8: Salva la risoluzione attuale prima della sospensione.
description-ja.UTF-8: サスペンドの前に現在の解像度を記録する。
description-km.UTF-8: កត់ត្រា​គុណភាព​បង្ហាញ​បច្ចុប្បន្ន​មុន​ពេល​ផ្អាក ។
description-ko.UTF-8: 절전 전에 현재 해상도를 기록합니다.
description-lv.UTF-8: Ierakstīt pašreizējo izšķirtspēju pirms iesnaudināšanas.
description-ms.UTF-8: Rekod resolusi semasa sebelum ditangguhkan.
description-nl.UTF-8: Schrijf de huidige resolutie op voordat het systeem in de pauzestand gaat.
description-oc.UTF-8: Enregistrar la resolucion actuala abans la mesa en velha.
description-pl.UTF-8: Zapis bieżącej rozdzielczości przed wstrzymaniem.
description-pt.UTF-8: Guarda a resolução actual antes de suspender.
description-pt_BR.UTF-8: Registre a resolução atual antes de suspender
description-ro.UTF-8: Memorează rezoluția curentă înainte de suspendare.
description-ru.UTF-8: Запись текущего разрешения перед переходом в режим пониженного энергопотребления.
description-sk.UTF-8: Zaznamenať aktuálne rozlíšenie pred prechodom do režimu spánku.
description-sl.UTF-8: Posnemi trenutno ločljivost pred prehodom v stanje pripravljenosti.
description-sq.UTF-8: Regjistro rezolucionin e tanishëm para pezullimit.
description-sr.UTF-8: Сачувајте тренутну сесију пре стављања у режим спавања.
description-sv.UTF-8: Registrera aktuell upplösning före vänteläge.
description-tr.UTF-8: Askıya almadan önce mevcut çözünürlüğü kaydedin.
description-ug.UTF-8: توڭلىتىشتىن ئاۋۋالقى ئېنىقلىقنى خاتىرىلىۋالىدۇ.
description-uk.UTF-8: Записати поточну розільну здатність, перш ніж перейти у режим економії електроенергії.
description-vi.UTF-8: Ghi lại độ phân giải hiện tại trước khi nghỉ.
description-zh_CN.UTF-8: 挂起前记录当前分辨率。
description-zh_HK.UTF-8: 在暫停之前紀錄目前的解析度。
description-zh_TW.UTF-8: 在暫停之前紀錄目前的解析度。
command: xrandr -q |grep '*'| awk '{print $1}' > $CHECKBOX_DATA/resolution_before_suspend.txt

plugin: shell
name: suspend/audio_before_suspend
requires:
 device.category == 'AUDIO'
 package.name == 'alsa-base'
description: Record mixer settings before suspending.
description-ast.UTF-8: Grabar la configuración del entemecedor enantes de suspender.
description-bn.UTF-8: বাতিল করার অাগে মিক্সার সেটিং  সংরক্ষণ করুন।
description-bs.UTF-8: Zabilježi postavke miksera prije suspenzije
description-cs.UTF-8: Zachovat nastavení zvuku před uspáním.
description-de.UTF-8: Notieren Sie sich die Einstellungen der Lautstärkeregler vor dem in Bereitschaft Versetzen.
description-el.utf-8: Καταγραφή των ρυθμίσεων του μίκτη πριν από την αδρανοποίηση.
description-en_AU.UTF-8: Record mixer settings before suspending.
description-en_GB.UTF-8: Record mixer settings before suspending.
description-es.UTF-8: Grabe la configuración del mezclador antes de suspender.
description-fi.UTF-8: Tallenna ääniasetukset ennen valmiustilaan siirtymistä
description-fr.UTF-8: Enregistre les paramètres de son avant la mise en veille.
description-gd.UTF-8: Clàraich suidheachaidhean measgadair os chionn a chur air thaobh.
description-hu.UTF-8: A keverő beállításainak eltárolása a felfüggesztés előtt
description-it.UTF-8: Salva le impostazioni del mixer prima della sospensione.
description-km.UTF-8: កត់ត្រា​ការ​កំណត់​ឧបករណ៍​លាយ​បច្ចុប្បន្ន​មុន​ពេល​ផ្អាក ។
description-ms.UTF-8: Rakam tetapan pengadun sebelum menangguh.
description-nl.UTF-8: Schrijf de huidige geluidsinstellingen op voordat het systeem in de pauzestand gaat.
description-pt_BR.UTF-8: Grava as configurações do mixador antes de suspender.
description-ro.UTF-8: Înregistrează configurările mixerului înainte de suspendare.
description-ru.UTF-8: Записать параметры микшера перед переходом в ждущий режим.
description-sl.UTF-8: Posnemi nastavitve mešalnika pred prehodom v stanje pripravljenosti.
description-tr.UTF-8: Askıya almadan önce karıştırıcı ayarlarını kaydedin.
description-ug.UTF-8: توڭلىتىشتىن بۇرۇن كىرىشتۈرگۈچ تەڭشىكىنى خاتىرىلەيدۇ.
description-zh_CN.UTF-8: 挂起前记录混音器设置。
command: audio_settings store --file=$CHECKBOX_DATA/audio_settings_before_suspend

plugin: shell
name: suspend/cpu_before_suspend
description: Verify that all the CPUs are online before suspending
description-ast.UTF-8: Verifica que toles CPU tán en llinia enantes de suspender
description-bn.UTF-8: বাতিল করার অাগে যাচাই করে দেখুন সকল সিপিইউ অনলাইন কিনা
description-bs.UTF-8: Provjeri d su svi procesori aktivni prije suspenzije
description-cs.UTF-8: Ověřit dostupnost všech CPU před uspáním.
description-de.UTF-8: Stellen Sie vor dem Versetzen in Bereitschaft sicher, dass alle Prozessoren in Betrieb sind.
description-el.utf-8: Επαλήθευση για το ότι όλες οι μονάδες επεξεργασίας (CPU) βρίσκονται σε σύνδεση πριν από την αναστολή λειτουργίας
description-en_AU.UTF-8: Verify that all the CPUs are online before suspending
description-en_GB.UTF-8: Verify that all the CPUs are online before suspending
description-es.UTF-8: Verifica que todas las CPU están en linea antes de suspender
description-fi.UTF-8: Tarkistetaan, että kaikki suoritinytimet ovat käynnissä ennen valmiustilaan siirtymistä.
description-fr.UTF-8: Vérifier que tous les processeurs sont connectés avant la mise en veille
description-gd.UTF-8: Dearbhaich gu bheil na h-uile APM (CPUs) air loidhne os chionn a chur air thaobh.
description-hu.UTF-8: Az összes processzor működésének megerősítése felfüggesztés előtt
description-it.UTF-8: Verifica che tutte le CPU siano online prima della sospensione.
description-km.UTF-8: ផ្ទៀងផ្ទាត់​ថា CPUs គឺ​នៅ​លើ​បណ្ដាញ​មុន​ពេល​ផ្អាក
description-ms.UTF-8: Sahkan sama ada semua CPU aktif sebelum ditangguh
description-nl.UTF-8: Controleer of alle CPU's online zijn voordat het systeem in de pauzestand gaat.
description-pt_BR.UTF-8: Verifica que todas as CPUs estão conectadas antes de suspender
description-ro.UTF-8: Verifică ca toate procesoarele să fie online înainte de suspendare
description-ru.UTF-8: Проверяет доступность все ЦПУ перед переходом в ждущий режим
description-sl.UTF-8: Potrdi, da so vse CPE-ji na voljo pred prehodom v stanje pripravljenosti
description-tr.UTF-8: Askıya almadan önce tüm işlemcilerin çalışmakta olduğunu doğrulayın
description-ug.UTF-8: توڭلىتىشتىن بۇرۇن بارلىق CPU ئويغاقمۇ تەكشۈرۈش
description-uk.UTF-8: Перевірка чи всі процесори працюють перед сном
description-zh_CN.UTF-8: 确认电脑休眠之前所有 CPU 都处于运行状态。
command: cpuinfo_resource > $CHECKBOX_DATA/cpuinfo_before_suspend

plugin: shell
name: suspend/memory_before_suspend
description:
 Dumps memory info to a file for comparison after suspend test has been run
command: meminfo_resource > $CHECKBOX_DATA/meminfo_before_suspend

plugin: shell
name: suspend/wireless_before_suspend
depends: wireless/wireless_connection
requires: device.category == 'WIRELESS'
command: nmcli -t -f UUID con status > $CHECKBOX_DATA/connections && connect_wireless && internet_test --interface=`nmcli dev list | grep -B 1 wireless | grep GENERAL.DEVICE | awk '{print $2}'` && for con in `cat $CHECKBOX_DATA/connections`; do nmcli con up uuid "$con"; done
description:
 This test disconnects all connections and then connects to the wireless
 interface. It then checks the connection to confirm it's working as expected.

plugin: shell
name: suspend/bluetooth_obex_before_suspend
requires:
 package.name == 'bluez' and package.name == 'obexd-client'
 device.category == 'BLUETOOTH'
command:
  if [ -z "$BTDEVADDR" ]
  then
    echo "btdevaddr option not set to device address of Bluetooth target in checkbox.ini"
    exit 1
  fi
  if rfkill list bluetooth | grep -q 'Hard blocked: yes'
  then
    echo "rfkill shows BT is hard blocked"
  fi
  if rfkill list bluetooth | grep -q 'Soft blocked: yes'
  then
    echo "rfkill shows BT is soft blocked, removing before testing."
    rfkill unblock bluetooth
    sleep 3
  fi
  obex_send $BTDEVADDR $CHECKBOX_SHARE/data/images/JPEG_Color_Image_Ubuntu.jpg
description:
 This is an automated Bluetooth file transfer test. It sends an image to the device specified by the BTDEVADDR environment variable.

plugin: shell
name: suspend/bluetooth_obex_send_before_suspend
requires:
 package.name == 'bluez' and package.name == 'obexftp'
 device.category == 'BLUETOOTH'
command:
  if [ -z "$BTDEVADDR" ]
  then
    echo "btdevaddr option not set to device address of Bluetooth target in checkbox.ini"
    exit 1
  fi
  if rfkill list bluetooth | grep -q 'Hard blocked: yes'
  then
    echo "rfkill list shows BT is hard blocked"
  fi
  if rfkill list bluetooth | grep -q 'Soft blocked: yes'
  then
    echo "rfkill list shows BT is soft blocked, removing before testing"
    rfkill unblock bluetooth
    sleep 3
  fi
  set -o pipefail; bluetooth_test $CHECKBOX_SHARE/data/images/JPEG_Color_Image_Ubuntu.jpg $BTDEVADDR send 2>&1 | ansi_parser
description:
 This is an automated Bluetooth file transfer test. It sends an image to the device specified by the BTDEVADDR environment variable.

plugin: shell
name: suspend/bluetooth_obex_browse_before_suspend
requires:
 package.name == 'bluez' and package.name == 'obexftp'
 device.category == 'BLUETOOTH'
command:
  if [ -z "$BTDEVADDR" ]
  then
    echo "btdevaddr option not set to device address of Bluetooth target in checkbox.ini"
    exit 1
  fi
  if rfkill list bluetooth | grep -q 'Hard blocked: yes'
  then
    echo "rfkill list shows BT is hard blocked"
  fi
  if rfkill list bluetooth | grep -q 'Soft blocked: yes'
  then
    echo "rfkill list shows BT is soft blocked, removing before testing"
    rfkill unblock bluetooth
    sleep 3
  fi
  set -o pipefail; bluetooth_test $CHECKBOX_SHARE/data/images/JPEG_Color_Image_Ubuntu.jpg $BTDEVADDR browse 2>&1 | ansi_parser
description:
 This is an automated Bluetooth test. It emulates browsing on a remote device specified by the BTDEVADDR environment variable.

plugin: shell
name: suspend/bluetooth_obex_get_before_suspend
requires:
 package.name == 'bluez' and package.name == 'obexftp'
 device.category == 'BLUETOOTH'
command:
  if [ -z "$BTDEVADDR" ]
  then
    echo "btdevaddr option not set to device address of Bluetooth target in checkbox.ini"
    exit 1
  fi
  if rfkill list bluetooth | grep -q 'Hard blocked: yes'
  then
    echo "rfkill list shows BT is hard blocked"
  fi
  if rfkill list bluetooth | grep -q 'Soft blocked: yes'
  then
    echo "rfkill list shows BT is soft blocked, removing before testing"
    rfkill unblock bluetooth
    sleep 3
  fi
  set -o pipefail; bluetooth_test $CHECKBOX_SHARE/data/images/JPEG_Color_Image_Ubuntu.jpg $BTDEVADDR get 2>&1 | ansi_parser
description:
 This is an automated Bluetooth test. It receives the given file from a remote host specified by the BTDEVADDR environment variable

plugin: manual
name: suspend/bluetooth_obex_before_suspend_manual
requires:
 package.name == 'bluez' and package.name == 'obexd-client'
 device.category == 'BLUETOOTH'
command: rfkill unblock bluetooth; obex_send `bluetooth_scan` $CHECKBOX_SHARE/data/images/JPEG_Color_Image_Ubuntu.jpg
description:
 PURPOSE:
     This test will send the image 'JPEG_Color_Image_Ubuntu.jpg' to a specified device
 STEPS:
     1. Make sure Bluetooth is enabled by checking the Bluetooth indicator applet
     2. Click "Test" and you will be prompted to enter the Bluetooth device name of a device that can accept file transfers (It may take a few moments after entering the name for the file to begin sending)
     3. Accept any prompts that appear on both devices
 VERIFICATION:
     Was the data correctly transferred?

plugin: user-verify
name: suspend/suspend_advanced
depends: power-management/rtc
requires:
 sleep.mem == 'supported'
user: root
environ: CHECKBOX_DATA
command:
 if type -P fwts >/dev/null; then
  echo "Calling fwts"
  set -o pipefail; fwts_test -f critical -l $CHECKBOX_DATA/suspend_single -s s3 --s3-sleep-delay=30 --s3-device-check --s3-device-check-delay=45 | tee $CHECKBOX_DATA/suspend_single_times.log
 else
  echo "Calling sleep_test"
  set -o pipefail; sleep_test -p | tee $CHECKBOX_DATA/suspend_single_times.log
 fi
description:
 PURPOSE:
     This test will check suspend and resume
 STEPS:
     1. Click "Test" and your system will suspend for about 30 - 60 seconds
     2. If your system does not wake itself up after 60 seconds, please press the power button momentarily to wake the system manually
     3. If your system fails to wake at all and must be rebooted, restart System Testing after reboot and mark this test as Failed
 VERIFICATION:
     Did your system suspend and resume correctly?

plugin: shell
name: suspend/suspend_advanced_auto
depends: power-management/rtc
requires:
    sleep.mem == 'supported'
description:
 This is the automated version of suspend/suspend_advanced.
user: root
environ: CHECKBOX_DATA
command: set -o pipefail; fwts_test -f critical -l $CHECKBOX_DATA/suspend_single -s s3 --s3-sleep-delay=30 --s3-device-check --s3-device-check-delay=45 | tee $CHECKBOX_DATA/suspend_single_times.log

plugin: attachment
name: suspend/suspend-single-log-attach
command: [ -e $CHECKBOX_DATA/suspend_single.log ] && cat $CHECKBOX_DATA/suspend_single.log
description:
 Attaches the log from the single suspend/resume test to the results

plugin: shell
name: suspend/suspend-time-check
command: [ -e $CHECKBOX_DATA/suspend_single_times.log ] && sleep_time_check $CHECKBOX_DATA/suspend_single_times.log
description:
 Checks the sleep times to ensure that a machine suspends and resumes within a given threshold

plugin: manual
name: power-management/usb_wakeup_keyboard
user: root
depends: suspend/suspend_advanced
command: pm-suspend
description:
 PURPOSE:
     Wake up by USB keyboard
 STEPS:
     1. Enable "Wake by USB KB/Mouse" item in BIOS
     2. Press "Test" to enter suspend (S3) mode
     3. Press any key of USB keyboard to wake system up
 VERIFICATION:
     Did the system wake up from suspend mode when you pressed a keyboard key?

plugin: manual
name: power-management/usb_wakeup_mouse
user: root
depends: suspend/suspend_advanced
command: pm-suspend
description:
 PURPOSE:
     Wake up by USB mouse
 STEPS:
     1. Enable "Wake by USB KB/Mouse" item in BIOS
     2. Press "Test" to enter suspend (S3) mode
     3. Press any button of USB mouse to wake system up
 VERIFICATION:
     Did the system wake up from suspend mode when you pressed the mouse button?

plugin: shell
name: suspend/network_after_suspend
depends: suspend/suspend_advanced suspend/network_before_suspend
description: Test the network after resuming.
description-ast.UTF-8: Probar la rede dempués de reanudar.
description-be.UTF-8: Праверка сеткі пасля выхаду з рэжыму паніжанага энергаспажывання.
description-bn.UTF-8: বিরত করার পর নেটওয়ার্ক পরীক্ষা করুন।
description-bs.UTF-8: Test mreže nakon povratka.
description-ca.UTF-8: Comprovació de la xarxa després de reprendre.
description-ca@valencia.UTF-8: Comprovació de la xarxa després de reprendre.
description-cs.UTF-8: Otestovat síť po probuzení.
description-da.UTF-8: Test netværket efter genoptagelse.
description-de.UTF-8: Netzwerk nach Wiedereinschalten prüfen.
description-el.utf-8: Δοκιμή της σύνδεσης δικτύου μετά την επαναφορά.
description-en_AU.UTF-8: Test the network after resuming.
description-en_CA.UTF-8: Test the network after resuming.
description-en_GB.UTF-8: Test the network after resuming.
description-eo.UTF-8: Testi la sistemon post revekiĝo.
description-es.UTF-8: Probar la red después de reanudar.
description-fi.UTF-8: Testaa verkkoyhteyden toimiminen valmiustilasta palaamisen jälkeen.
description-fr.UTF-8: Testez le réseau après la sortie de veille.
description-gd.UTF-8: Dearbhaich an lìonradh as dèidh ath-thòiseachadh.
description-gl.UTF-8: Comprobar a rede logo de restaurar.
description-he.UTF-8: יש לבדוק את הרשת לאחר ההמשך.
description-hi.UTF-8: पुनःआरंभ के पश्चात संजाल की जाँच करें.
description-hu.UTF-8: Hálózati kapcsolat tesztelése a visszatérés után.
description-it.UTF-8: Test della rete dopo il ripristino.
description-ja.UTF-8: レジューム後のネットワークをテストする。
description-km.UTF-8: សាកល្បង.
description-ko.UTF-8: 절전 후 네트워크 시험
description-lv.UTF-8: Pārbaudīt tīklu pirms pamošanās.
description-ms.UTF-8: Uji rangkaian selepas disambung semula.
description-nl.UTF-8: Test het netwerk nadat het systeem uit de pauzestand is gekomen.
description-oc.UTF-8: Testar la ret aprèp la represa.
description-pl.UTF-8: Testowanie sieci po wznowieniu systemu
description-pt.UTF-8: Testar a rede depois de resumir.
description-pt_BR.UTF-8: Teste a rede após retornar.
description-ro.UTF-8: Testează rețeaua după revenire.
description-ru.UTF-8: Проверка сети после выхода из режима пониженного энергопотребления.
description-sk.UTF-8: Otestovať sieť po prebudení.
description-sl.UTF-8: Preizkusite omrežje po nadaljevanju.
description-sq.UTF-8: Testo rrjetin as rinisjes.
description-sr.UTF-8: Тестирајте мрежу након наставка.
description-sv.UTF-8: Testa nätverket efter vänteläge.
description-th.UTF-8: ทดสอบระบบเครือข่ายหลังจากกลับคืน
description-tr.UTF-8: Kaldığı yerden devam etmenin ardından ağı sınayın.
description-ug.UTF-8: قايتا باشلىغاندىن كېيىن تورنى سىنايدۇ.
description-uk.UTF-8: Перевірити мережу після виходу з режиму економії електроенергії
description-vi.UTF-8: Kiểm tra hệ thống mạng sau khi hồi phục.
description-zh_CN.UTF-8: 恢复后测试网络。
description-zh_HK.UTF-8: 在回復之後測試網絡。
description-zh_TW.UTF-8: 在回復之後測試網路。
command: network_wait; internet_test | diff $CHECKBOX_DATA/network_before_suspend.txt -

plugin: shell
name: suspend/resolution_after_suspend
depends: suspend/suspend_advanced suspend/resolution_before_suspend
description: Test to see that we have the same resolution after resuming as before.
description-ast.UTF-8: Prueba pa ver si tienes la mesma resolución dempués de reanudar.
description-be.UTF-8: Упэўнімся, што дазвол сістэмы засталося тым жа, што было да пераходу ў рэжым паніжанага энергаспажывання.
description-bn.UTF-8: বিরত করার পরও রেজল্যুশন একই আছে তা দেখার জন্য পরীক্ষা করুন।
description-bs.UTF-8: Test da se vidi da li je ista rezolucija nakon buđenja,
description-ca.UTF-8: Comprovació per veure que hi ha la mateixa resolució després de reprendre.
description-ca@valencia.UTF-8: Comprovació per veure que hi ha la mateixa resolució després de reprendre.
description-cs.UTF-8: Test pro ověření, že máme stejné rozlišení po probuzení z režimu spánku.
description-da.UTF-8: Kontrollér at der bruges samme opløsning efter genoptagelse som før.
description-de.UTF-8: Testen, ob nach Wiedereinschalten dieselbe Auflösung wie vorher eingestellt ist.
description-el.utf-8: Δοκιμή διατήρησης της ανάλυσης μετά την επαναφορά.
description-en_AU.UTF-8: Test to see that we have the same resolution after resuming as before.
description-en_CA.UTF-8: Test to see that we have the same resolution after resuming as before.
description-en_GB.UTF-8: Test to see that we have the same resolution after resuming as before.
description-eo.UTF-8: Tesyo por kontroli ĉu ni havas la saman distingivon post vekiĝo ol antaŭe.
description-es.UTF-8: Prueba para ver si tiene la misma resolución después de reanudar.
description-fi.UTF-8: Testaa onko käytössä sama tarkkuus kuin ennen valmiustilaan siirtymistä.
description-fr.UTF-8: Testez la résolution d'écran et vérifiez qu'elle n'a pas changé après la sortie de veille.
description-gd.UTF-8: Dearbhaich a dh'fhaicinn gu bheil againn an t-aon dùmhlachd-bhreacaidh as dèidh ath-thòiseachadh mar roimh.
description-gl.UTF-8: Comprobar que despois de restaurar a visualización ten a mesma resolución que  tiña antes.
description-he.UTF-8: יש לבדוק כדי לראות האם זוהי אותה הרזולוציה לאחר ההמשך כמו בעבר.
description-hi.UTF-8: देखने के लिए जाँच करे कि पुनःआरंभ के पश्चात पहले की तरह ही रिजोलुशन है.
description-hu.UTF-8: Annak tesztelése, hogy a felbontás megegyezik-e a felfüggesztési és visszatérési teszt előttivel.
description-it.UTF-8: Test di verifica del mantenimento della risoluzione dopo il ripristino.
description-ja.UTF-8: レジューム後の解像度が変わっていないかテストする。
description-km.UTF-8: សាកល្បង.
description-ko.UTF-8: 절전 후에도 이전과 같은 해상도로 되는지를 시험합니다.
description-lv.UTF-8: Pārbaudīt, vai pēc pamošanās izšķirtspēja nemainīsies.
description-ms.UTF-8: Ujian untuk melihat sama ada resolusi adalah sama selepas disambung semula seperti sebelum ini.
description-nl.UTF-8: Test om te controleren of u nog dezelfde resolutie heeft als voor de pauzestand.
description-oc.UTF-8: Testar la resolucion d'ecran e verificar qu'a pas cambiat aprèp la represa.
description-pl.UTF-8: Sprawdzenie czy rozdzielczość po wznowieniu odpowiada rozdzielczości sprzed uśpienia.
description-pt.UTF-8: Teste para verificar se continuamos com a mesma resolução de ecrã depois do retornar do estado anterior.
description-pt_BR.UTF-8: Veja se a resolução permanece a mesma de antes.
description-ro.UTF-8: Testează pentru a vedea dacă s-a păstrat rezoluția după revenire.
description-ru.UTF-8: Убедимся, что разрешение системы осталось тем же, что было до перехода в режим пониженного энергопотребления.
description-sk.UTF-8: Otestovať, že máte rovnaké rozlíšenie po prebudení ako pred tým.
description-sl.UTF-8: Preverite, če imate po nadaljevanju enako ločljivost kot prej.
description-sq.UTF-8: Testoni për të parë që keni të njëjtin rezolucion si më parë pas rinisjes.
description-sr.UTF-8: Тестирајте да видите да ли је резолуција након наставка иста као и пре.
description-sv.UTF-8: Testa för att se att vi har samma upplösning efter vänteläget som vi hade tidigare.
description-tr.UTF-8: Devam etmenin ardından çözünürlüğün daha önce var olanla aynı olduğunu görmek için sınayın.
description-ug.UTF-8: قايتا باشلىغاندا ئېنىقلىق دەرىجىسى ئەسلىدىكىگە ئوخشاشمۇ سىنايدۇ.
description-uk.UTF-8: Переконаємось, що роздільна здатність екрана не змінилась після виходу з режиму економії електроенергії
description-vi.UTF-8: Kiểm tra xem độ phân giải trước và sau khi hồi phục có giống nhau không.
description-zh_CN.UTF-8: 测试恢复后分辨率是否与之前相同。
description-zh_HK.UTF-8: 測試看看在復原之後我們是否能擁有與之前相同的解析度。
description-zh_TW.UTF-8: 測試看看在復原之後我們是否能擁有與之前相同的解析度。
command: xrandr -q |grep '*'| awk '{print $1}' | diff $CHECKBOX_DATA/resolution_before_suspend.txt -

plugin: shell
name: suspend/audio_after_suspend
requires:
 device.category == 'AUDIO'
 package.name == 'alsa-base'
depends: suspend/suspend_advanced suspend/audio_before_suspend
description: Verify that mixer settings after suspend are the same as before suspend.
description-ast.UTF-8: Verificar que les configuraciones del entemecedor dempués de la suspensión son les mesmes qu'enantes de suspender.
description-bn.UTF-8: মিক্সার সেটিং বাতিল করার অাগে এবং পরে একই অাছে কিনা যাচাই করুন।
description-bs.UTF-8: Provjera da su postavke miksera iste kao prije suspenzije.
description-cs.UTF-8: Ověřit, že nastavení zvuku je po probuzení stejné jako před ním.
description-de.UTF-8: Stellen Sie sicher, dass die Einstellungen der Lautstärkeregler nach dem Aufwecken aus der Bereitschaft dieselben sind, wie vorher.
description-el.utf-8: Επαλήθευση της διατήρησης των ρυθμίσεων του μίκτη μετά την αναστολή λειτουργίας.
description-en_AU.UTF-8: Verify that mixer settings after suspend are the same as before suspend.
description-en_GB.UTF-8: Verify that mixer settings after suspend are the same as before suspend.
description-es.UTF-8: Verificar que las configuraciones del mezclador después de la suspensión son las mismas que antes de suspender.
description-fi.UTF-8: Tarkista, että ääniasetukset ovat valmiustilan jälkeen samat kuin ennen valmiustilaa.
description-fr.UTF-8: Vérifier que les paramètres du son après la mise en veille sont les mêmes qu'avant la mise en veille.
description-gd.UTF-8: Dearbhaich gu bheil suidheachaidhean am measgadair mar ceudna as dèidh a chur air thaobh mar roimh a chur air thaobh.
description-hu.UTF-8: Megerősítés, hogy a keverő felfüggesztés utáni beállításai megegyeznek a felfüggesztés előtti beállításokkal.
description-it.UTF-8: Verifica che le impostazioni del mixer dopo la sospensione siano uguali a quelle precedenti.
description-km.UTF-8: ផ្ទៀងផ្ទាត់​ថា​ការ​កំណត់​ឧបករណ៍​លាយ​បន្ទាប់ពី​ផ្អាក​គឺ​ដូចគ្នា​នៅ​មុន​ពេល​ផ្អាក ។
description-ms.UTF-8: Sahkan tetapan pengadun selepas tangguh adalah sama sebagaimana sebelum tangguh.
description-nl.UTF-8: Controleert of de mixer-instellingen na de pauzestand hetzelfde zijn als ervoor.
description-pt_BR.UTF-8: Verifica que as configurações do mixador depois de suspender são as mesmas de antes de suspender.
description-ro.UTF-8: Se verifică dacă mixerul păstrează configurările avute înainte de intrarea în suspendare.
description-ru.UTF-8: Проверить, являются ли пареметры микшера после ждущего режима такими же, как и до него.
description-sl.UTF-8: Potrdi, da so nastavitve mešalnika po povrnitvi iz stanja pripravljenosti enake kot pred prehodom v stanje pripravljenosti.
description-tr.UTF-8: Askıya almadan sonraki karıştırıcı ayarlarının daha öncekiyle aynı olduğunu doğrulayın
description-ug.UTF-8: توڭلىتىشتىن بۇرۇنقى mixer تەڭشىكى بىلەن قايتا ئىشقا كىرىشكەندىكى تەڭشەك قىممىتى ئوخشاشمۇ تەكشۈرىدۇ.
description-zh_CN.UTF-8: 验证在挂起之后混合器设置是否与挂起之前相同。
command: 
 audio_settings store --file=$CHECKBOX_DATA/audio_settings_after_suspend; diff $CHECKBOX_DATA/audio_settings_before_suspend $CHECKBOX_DATA/audio_settings_after_suspend

plugin: shell
name: suspend/cpu_after_suspend
depends: suspend/suspend_advanced suspend/cpu_before_suspend
description: Verify that all CPUs are online after resuming.
description-ast.UTF-8: Verificar que toles CPUs tán en llinia dempués de reaniciar.
description-bn.UTF-8: পুনরায় অরম্ভ করার অাগে সকল সিপিও অনলাইনে অাছে কিনা যাচাই করুন।
description-bs.UTF-8: Provjeri sa su svi procesori aktivni nakon povratka.
description-cs.UTF-8: Ověřit, že jsou všechna CPU po probuzení dstupná.
description-de.UTF-8: Stellen Sie sicher, dass alle Prozessoren nach dem Aufwecken aus dem Ruhezustand in Betrieb sind.
description-el.utf-8: Επαλήθευση για το ότι όλες οι μονάδες επεξεργασίας (CPU) βρίσκονται σε σύνδεση μετά την επαναφορά από την αναστολή λειτουργίας.
description-en_AU.UTF-8: Verify that all CPUs are online after resuming.
description-en_GB.UTF-8: Verify that all CPUs are online after resuming.
description-es.UTF-8: Verificar que todas las CPU están en linea después de reanudar.
description-fi.UTF-8: Tarkista, että kaikki suoritinytimet ovat käynnissä valmiustilasta palaamisen jälkeen.
description-fr.UTF-8: Vérifier que tous les processeurs sont connectés après la reprise.
description-gd.UTF-8: Dearbhaich gu bheil na APM (CPUs) air loidhne as dèidh ath-thòiseachadh.
description-hu.UTF-8: Az összes processzor működésének megerősítése felfüggesztés után.
description-it.UTF-8: Verifica che tutte le CPU siano online dopo il ripristino.
description-km.UTF-8: ផ្ទៀងផ្ទាត់​ថា​ CPUs ទាំងអស់​គឺ​នៅ​លើ​បណ្ដាញ​បន្ទាប់ពី​ផ្អាក ។
description-ms.UTF-8: Sahkan semua CPU adalah aktif selepas disambung semula.
description-nl.UTF-8: Controleer of alle CUP's weer online zijn na hervatten.
description-pt_BR.UTF-8: Verifica que todas as CPUs estão conectadas depois de retomar.
description-ro.UTF-8: Se verifică dacă toate procesoarele sunt online după revenirea din suspendare.
description-ru.UTF-8: Проверяет доступность всех ЦПУ после возобновления рабочего режима
description-sl.UTF-8: Potrdi, da po povrnitvi iz stanja pripravljenosti vsi CPU-ji delujejo.
description-tr.UTF-8: Devam etmeden sonra tüm işlemcilerin çalışmakta olduğunu doğrulayın.
description-ug.UTF-8: قايتا ئىشقا كىرىشكەندە بارلىق CPU ئويغاقمۇ تەكشۈرىدۇ.
description-uk.UTF-8: Перевірка, щот всі задіяні процесори працюють після сну.
description-zh_CN.UTF-8: 确认恢复之后所有 CPU 都处于运行状态。
command: cpuinfo_resource | diff $CHECKBOX_DATA/cpuinfo_before_suspend -

plugin: shell
name: suspend/cpu_after_suspend_auto
depends: suspend/suspend_advanced_auto suspend/cpu_before_suspend
description: Verify that all CPUs are online after resuming.
description-ast.UTF-8: Verificar que toles CPUs tán en llinia dempués de reaniciar.
description-bn.UTF-8: পুনরায় অরম্ভ করার অাগে সকল সিপিও অনলাইনে অাছে কিনা যাচাই করুন।
description-bs.UTF-8: Provjeri sa su svi procesori aktivni nakon povratka.
description-cs.UTF-8: Ověřit, že jsou všechna CPU po probuzení dstupná.
description-de.UTF-8: Stellen Sie sicher, dass alle Prozessoren nach dem Aufwecken aus dem Ruhezustand in Betrieb sind.
description-el.utf-8: Επαλήθευση για το ότι όλες οι μονάδες επεξεργασίας (CPU) βρίσκονται σε σύνδεση μετά την επαναφορά από την αναστολή λειτουργίας.
description-en_AU.UTF-8: Verify that all CPUs are online after resuming.
description-en_GB.UTF-8: Verify that all CPUs are online after resuming.
description-es.UTF-8: Verificar que todas las CPU están en linea después de reanudar.
description-fi.UTF-8: Tarkista, että kaikki suoritinytimet ovat käynnissä valmiustilasta palaamisen jälkeen.
description-fr.UTF-8: Vérifier que tous les processeurs sont connectés après la reprise.
description-gd.UTF-8: Dearbhaich gu bheil na APM (CPUs) air loidhne as dèidh ath-thòiseachadh.
description-hu.UTF-8: Az összes processzor működésének megerősítése felfüggesztés után.
description-it.UTF-8: Verifica che tutte le CPU siano online dopo il ripristino.
description-km.UTF-8: ផ្ទៀងផ្ទាត់​ថា​ CPUs ទាំងអស់​គឺ​នៅ​លើ​បណ្ដាញ​បន្ទាប់ពី​ផ្អាក ។
description-ms.UTF-8: Sahkan semua CPU adalah aktif selepas disambung semula.
description-nl.UTF-8: Controleer of alle CUP's weer online zijn na hervatten.
description-pt_BR.UTF-8: Verifica que todas as CPUs estão conectadas depois de retomar.
description-ro.UTF-8: Se verifică dacă toate procesoarele sunt online după revenirea din suspendare.
description-ru.UTF-8: Проверяет доступность всех ЦПУ после возобновления рабочего режима
description-sl.UTF-8: Potrdi, da po povrnitvi iz stanja pripravljenosti vsi CPU-ji delujejo.
description-tr.UTF-8: Devam etmeden sonra tüm işlemcilerin çalışmakta olduğunu doğrulayın.
description-ug.UTF-8: قايتا ئىشقا كىرىشكەندە بارلىق CPU ئويغاقمۇ تەكشۈرىدۇ.
description-uk.UTF-8: Перевірка, щот всі задіяні процесори працюють після сну.
description-zh_CN.UTF-8: 确认恢复之后所有 CPU 都处于运行状态。
command: cpuinfo_resource | diff $CHECKBOX_DATA/cpuinfo_before_suspend -

plugin: shell
name: suspend/memory_after_suspend
depends: suspend/suspend_advanced suspend/memory_before_suspend
description:
 Verify that all memory is available after resuming from suspend.
command: meminfo_resource | diff $CHECKBOX_DATA/meminfo_before_suspend -

plugin: shell
name: suspend/memory_after_suspend_auto
depends: suspend/suspend_advanced_auto suspend/memory_before_suspend
description:
 Verify that all memory is available after resuming from suspend.
command: meminfo_resource | diff $CHECKBOX_DATA/meminfo_before_suspend -

plugin: manual
name: suspend/display_after_suspend
depends: suspend/suspend_advanced
description:
 PURPOSE:
     This test will check that the display is correct after suspend and resume
 STEPS:
     1. Check that your display does not show up visual artifacts after resuming.
 VERIFICATION:
     Does the display work normally after resuming from suspend?

plugin: shell
name: suspend/wireless_after_suspend
depends: suspend/suspend_advanced suspend/wireless_before_suspend
requires:
 device.category == 'WIRELESS'
command: connect_wireless && internet_test --interface=`nmcli dev list | grep -B 1 wireless | grep GENERAL.DEVICE | awk '{print $2}'` && for con in `cat $CHECKBOX_DATA/connections`; do nmcli con up uuid "$con"; done
description:
 This test checks that the wireless interface is working after suspending the system. It
 disconnects all interfaces and then connects to the wireless interface and checks that the
 connection is working as expected.

plugin: shell
name: suspend/wireless_connection_after_suspend_wpa_bg
depends: suspend/suspend_advanced
requires:
 device.category == 'WIRELESS'
 environment.ROUTERS == 'multiple'
user: root
environ: WPA_BG_SSID WPA_BG_PSK
command: trap "rm -f /etc/NetworkManager/system-connections/$WPA_BG_SSID" EXIT; create_connection $WPA_BG_SSID --security=wpa --key=$WPA_BG_PSK; internet_test --interface=`nmcli dev status | awk '/802-11-wireless/ {print $1}'`
description:
 Tests that the systems wireless hardware can connect to a router using WPA
 security and the 802.11b/g protocols after the system has been suspended.

plugin: shell
name: suspend/wireless_connection_after_suspend_open_bg
depends: suspend/suspend_advanced
requires:
 device.category == 'WIRELESS'
 environment.ROUTERS == 'multiple'
user: root
environ: OPEN_BG_SSID
command: trap "rm -f /etc/NetworkManager/system-connections/$OPEN_BG_SSID" EXIT; create_connection $OPEN_BG_SSID; internet_test --interface=`nmcli dev status | awk '/802-11-wireless/ {print $1}'`
description:
 Tests that the systems wireless hardware can connect to a router using no
 security and the 802.11b/g protocols after the system has been suspended.

plugin: shell
name: suspend/wireless_connection_after_suspend_wpa_n
depends: suspend/suspend_advanced
requires:
 device.category == 'WIRELESS'
 environment.ROUTERS == 'multiple'
user: root
environ: WPA_N_SSID WPA_N_PSK
command: trap "rm -f /etc/NetworkManager/system-connections/$WPA_N_SSID" EXIT; create_connection $WPA_N_SSID --security=wpa --key=$WPA_N_PSK; internet_test --interface=`nmcli dev status | awk '/802-11-wireless/ {print $1}'`
description:
 Tests that the systems wireless hardware can connect to a router using WPA
 security and the 802.11n protocol after the system has been suspended.

plugin: shell
name: suspend/wireless_connection_after_suspend_open_n
depends: suspend/suspend_advanced
requires:
 device.category == 'WIRELESS'
 environment.ROUTERS == 'multiple'
user: root
environ: OPEN_N_SSID
command: trap "rm -f /etc/NetworkManager/system-connections/$OPEN_N_SSID" EXIT; create_connection $OPEN_N_SSID; internet_test --interface=`nmcli dev status | awk '/802-11-wireless/ {print $1}'`
description:
 Tests that the systems wireless hardware can connect to a router using no
 security and the 802.11n protocol after the system has been suspended.

plugin: shell
name: suspend/wireless_connection_after_suspend_wpa_bg_auto
depends: suspend/suspend_advanced_auto
requires:
 device.category == 'WIRELESS'
 environment.ROUTERS == 'multiple'
user: root
environ: WPA_BG_SSID WPA_BG_PSK
command: trap "rm -f /etc/NetworkManager/system-connections/$WPA_BG_SSID" EXIT; create_connection $WPA_BG_SSID --security=wpa --key=$WPA_BG_PSK; internet_test --interface=`nmcli dev status | awk '/802-11-wireless/ {print $1}'`
description:
 Tests that the systems wireless hardware can connect to a router using WPA
 security and the 802.11b/g protocols after the system has been suspended.

plugin: shell
name: suspend/wireless_connection_after_suspend_open_bg_auto
depends: suspend/suspend_advanced_auto
requires:
 device.category == 'WIRELESS'
 environment.ROUTERS == 'multiple'
user: root
environ: OPEN_BG_SSID
command: trap "rm -f /etc/NetworkManager/system-connections/$OPEN_BG_SSID" EXIT; create_connection $OPEN_BG_SSID; internet_test --interface=`nmcli dev status | awk '/802-11-wireless/ {print $1}'`
description:
 Tests that the systems wireless hardware can connect to a router using no
 security and the 802.11b/g protocols after the system has been suspended.

plugin: shell
name: suspend/wireless_connection_after_suspend_wpa_n_auto
depends: suspend/suspend_advanced_auto
requires:
 device.category == 'WIRELESS'
 environment.ROUTERS == 'multiple'
user: root
environ: WPA_N_SSID WPA_N_PSK
command: trap "rm -f /etc/NetworkManager/system-connections/$WPA_N_SSID" EXIT; create_connection $WPA_N_SSID --security=wpa --key=$WPA_N_PSK; internet_test --interface=`nmcli dev status | awk '/802-11-wireless/ {print $1}'`
description:
 Tests that the systems wireless hardware can connect to a router using WPA
 security and the 802.11n protocol after the system has been suspended.

plugin: shell
name: suspend/wireless_connection_after_suspend_open_n_auto
depends: suspend/suspend_advanced_auto
requires:
 device.category == 'WIRELESS'
 environment.ROUTERS == 'multiple'
user: root
environ: OPEN_N_SSID
command: trap "rm -f /etc/NetworkManager/system-connections/$OPEN_N_SSID" EXIT; create_connection $OPEN_N_SSID; internet_test --interface=`nmcli dev status | awk '/802-11-wireless/ {print $1}'`
description:
 Tests that the systems wireless hardware can connect to a router using no
 security and the 802.11n protocol after the system has been suspended.

plugin: manual
name: suspend/wireless_connection_after_suspend_wpa_bg_manual
depends: suspend/suspend_advanced
requires:
 device.category == 'WIRELESS'
 environment.ROUTERS == 'single'
user: root
environ: ROUTER_SSID ROUTER_PSK
command: trap "nmcli con delete id $ROUTER_SSID" EXIT; create_connection $ROUTER_SSID --security=wpa --key=$ROUTER_PSK && internet_test --interface=`nmcli dev status | awk '/802-11-wireless/ {print $1}'`
description:
 PURPOSE:
     Tests that the systems wireless hardware can connect to a router using WPA
     security and the 802.11b/g protocols.
 STEPS:
     1. Open your routers configuration tool
     2. Change the settings to only accept connections on the B and G wireless bands
     3. Make sure the SSID is set to ROUTER_SSID
     4. Change the security settings to use WPA2 and ensure the PSK matches that set in ROUTER_PSK
     5. Click the 'Test' button to create a connection to the router and test the connection
 VERIFICATION:
     Verification is automated, do not change the automatically selected result.

plugin: manual
name: suspend/wireless_connection_after_suspend_open_bg_manual
depends: suspend/suspend_advanced
requires:
 device.category == 'WIRELESS'
 environment.ROUTERS == 'single'
user: root
environ: ROUTER_SSID
command: trap "nmcli con delete id $ROUTER_SSID" EXIT; create_connection $ROUTER_SSID && internet_test --interface=`nmcli dev status | awk '/802-11-wireless/ {print $1}'`
description:
 PURPOSE:
     Tests that the systems wireless hardware can connect to a router using
     no security and the 802.11b/g protocols.
 STEPS:
     1. Open your routers configuration tool
     2. Change the settings to only accept connections on the B and G wireless bands
     3. Make sure the SSID is set to ROUTER_SSID
     4. Change the security settings to use no security
     5. Click the 'Test' button to create a connection to the router and test the connection
 VERIFICATION:
     Verification is automated, do not change the automatically selected result.

plugin: manual
name: suspend/wireless_connection_after_suspend_wpa_n_manual
depends: suspend/suspend_advanced
requires:
 device.category == 'WIRELESS'
 environment.ROUTERS == 'single'
user: root
environ: ROUTER_SSID ROUTER_PSK
command: trap "nmcli con delete id $ROUTER_SSID" EXIT; create_connection $ROUTER_SSID --security=wpa --key=$ROUTER_PSK && internet_test --interface=`nmcli dev status | awk '/802-11-wireless/ {print $1}'`
description:
 PURPOSE:
     Tests that the systems wireless hardware can connect to a router using WPA
     security and the 802.11n protocols.
 STEPS:
     1. Open your routers configuration tool
     2. Change the settings to only accept connections on the N wireless band
     3. Make sure the SSID is set to ROUTER_SSID
     4. Change the security settings to use WPA2 and ensure the PSK matches that set in ROUTER_PSK
     5. Click the 'Test' button to create a connection to the router and test the connection
 VERIFICATION:
     Verification is automated, do not change the automatically selected result.

plugin: manual
name: suspend/wireless_connection_after_suspend_open_n_manual
depends: suspend/suspend_advanced
requires:
 device.category == 'WIRELESS'
 environment.ROUTERS == 'single'
user: root
environ: ROUTER_SSID
command: trap "nmcli con delete id $ROUTER_SSID" EXIT; create_connection $ROUTER_SSID && internet_test --interface=`nmcli dev status | awk '/802-11-wireless/ {print $1}'`
description:
 PURPOSE:
     Tests that the systems wireless hardware can connect to a router using
     no security and the 802.11n protocol.
 STEPS:
     1. Open your routers configuration tool
     2. Change the settings to only accept connections on the N wireless band
     3. Make sure the SSID is set to ROUTER_SSID
     4. Change the security settings to use no security
     5. Click the 'Test' button to create a connection to the router and test the connection
 VERIFICATION:
     Verification is automated, do not change the automatically selected result.

plugin: shell
name: suspend/bluetooth_detect_after_suspend
depends: suspend/suspend_advanced bluetooth/detect-output
requires:
 package.name == 'bluez'
 device.category == 'BLUETOOTH'
command:
 if rfkill list bluetooth | grep -q 'Hard blocked: yes'; then
   echo "rfkill shows BT is hard blocked"
 fi
 if rfkill list bluetooth | grep -q 'Soft blocked: yes'; then
   echo "rfkill shows BT is soft blocked, removing before testing"
   rfkill unblock bluetooth
   sleep 3
 fi
 output=$(hcitool dev | tail -n+2 | awk '{print $2}')
 echo $output | diff $CHECKBOX_DATA/bluetooth_address -
 if [ -z "$output" ]; then
     echo "BT hardware not available"
     exit 1
 fi
description:
 This test grabs the hardware address of the bluetooth adapter after suspend and compares it to the address grabbed before suspend.

plugin: shell
name: suspend/bluetooth_obex_after_suspend
depends: suspend/suspend_advanced suspend/bluetooth_obex_before_suspend
requires:
 package.name == 'bluez' and package.name == 'obexd-client'
 device.category == 'BLUETOOTH'
command:
  if [ -z "$BTDEVADDR" ]
  then
    echo "btdevaddr option not set to device address of Bluetooth target in checkbox.ini"
    exit 1
  fi
  if rfkill list bluetooth | grep -q 'Hard blocked: yes'
  then
    echo "rfkill shows BT is hard blocked"
  fi
  if rfkill list bluetooth | grep -q 'Soft blocked: yes'
  then
    echo "rfkill shows BT is soft blocked, removing before testing."
    rfkill unblock bluetooth
    sleep 3
  fi
  obex_send $BTDEVADDR $CHECKBOX_SHARE/data/images/JPEG_Color_Image_Ubuntu.jpg
description:
 This is an automated Bluetooth file transfer test. It sends an image to the device specified by the BTDEVADDR environment variable.

plugin: shell
name: suspend/bluetooth_obex_after_suspend_auto
depends: suspend/suspend_advanced_auto suspend/bluetooth_obex_before_suspend
requires:
 package.name == 'bluez' and package.name == 'obexd-client'
 device.category == 'BLUETOOTH'
command:
  if [ -z "$BTDEVADDR" ]
  then
    echo "btdevaddr option not set to device address of Bluetooth target in checkbox.ini"
    exit 1
  fi
  if rfkill list bluetooth | grep -q 'Hard blocked: yes'
  then
    echo "rfkill shows BT is hard blocked"
  fi
  if rfkill list bluetooth | grep -q 'Soft blocked: yes'
  then
    echo "rfkill shows BT is soft blocked, removing before testing."
    rfkill unblock bluetooth
    sleep 3
  fi
  obex_send $BTDEVADDR $CHECKBOX_SHARE/data/images/JPEG_Color_Image_Ubuntu.jpg
description:
 This is an automated Bluetooth file transfer test. It sends an image to the device specified by the BTDEVADDR environment variable.

plugin: shell
name: suspend/bluetooth_obex_send_after_suspend
depends: suspend/suspend_advanced
requires:
 package.name == 'bluez' and package.name == 'obexftp'
 device.category == 'BLUETOOTH'
command:
  if [ -z "$BTDEVADDR" ]
  then
    echo "btdevaddr option not set to device address of Bluetooth target in checkbox.ini"
    exit 1
  fi
  if rfkill list bluetooth | grep -q 'Hard blocked: yes'
  then
    echo "rfkill list shows BT is hard blocked"
  fi
  if rfkill list bluetooth | grep -q 'Soft blocked: yes'
  then
    echo "rfkill list shows BT is soft blocked, removing before testing"
    rfkill unblock bluetooth
    sleep 3
  fi
  set -o pipefail; bluetooth_test $CHECKBOX_SHARE/data/images/JPEG_Color_Image_Ubuntu.jpg $BTDEVADDR send 2>&1 | ansi_parser
description:
 This is an automated Bluetooth file transfer test. It sends an image to the device specified by the BTDEVADDR environment variable.

plugin: shell
name: suspend/bluetooth_obex_send_after_suspend_auto
depends: suspend/suspend_advanced_auto
requires:
 package.name == 'bluez' and package.name == 'obexftp'
 device.category == 'BLUETOOTH'
command:
  if [ -z "$BTDEVADDR" ]
  then
    echo "btdevaddr option not set to device address of Bluetooth target in checkbox.ini"
    exit 1
  fi
  if rfkill list bluetooth | grep -q 'Hard blocked: yes'
  then
    echo "rfkill list shows BT is hard blocked"
  fi
  if rfkill list bluetooth | grep -q 'Soft blocked: yes'
  then
    echo "rfkill list shows BT is soft blocked, removing before testing"
    rfkill unblock bluetooth
    sleep 3
  fi
  set -o pipefail; bluetooth_test $CHECKBOX_SHARE/data/images/JPEG_Color_Image_Ubuntu.jpg $BTDEVADDR send 2>&1 | ansi_parser
description:
 This is an automated Bluetooth file transfer test. It sends an image to the device specified by the BTDEVADDR environment variable.

plugin: shell
name: suspend/bluetooth_obex_browse_after_suspend
depends: suspend/suspend_advanced
requires:
 package.name == 'bluez' and package.name == 'obexftp'
 device.category == 'BLUETOOTH'
command:
  if [ -z "$BTDEVADDR" ]
  then
    echo "btdevaddr option not set to device address of Bluetooth target in checkbox.ini"
    exit 1
  fi
  if rfkill list bluetooth | grep -q 'Hard blocked: yes'
  then
    echo "rfkill list shows BT is hard blocked"
  fi
  if rfkill list bluetooth | grep -q 'Soft blocked: yes'
  then
    echo "rfkill list shows BT is soft blocked, removing before testing"
    rfkill unblock bluetooth
    sleep 3
  fi
  set -o pipefail; bluetooth_test $CHECKBOX_SHARE/data/images/JPEG_Color_Image_Ubuntu.jpg $BTDEVADDR browse 2>&1 | ansi_parser
description:
 This is an automated Bluetooth test. It emulates browsing on a remote device specified by the BTDEVADDR environment variable.

plugin: shell
name: suspend/bluetooth_obex_browse_after_suspend_auto
depends: suspend/suspend_advanced_auto
requires:
 package.name == 'bluez' and package.name == 'obexftp'
 device.category == 'BLUETOOTH'
command:
  if [ -z "$BTDEVADDR" ]
  then
    echo "btdevaddr option not set to device address of Bluetooth target in checkbox.ini"
    exit 1
  fi
  if rfkill list bluetooth | grep -q 'Hard blocked: yes'
  then
    echo "rfkill list shows BT is hard blocked"
  fi
  if rfkill list bluetooth | grep -q 'Soft blocked: yes'
  then
    echo "rfkill list shows BT is soft blocked, removing before testing"
    rfkill unblock bluetooth
    sleep 3
  fi
  set -o pipefail; bluetooth_test $CHECKBOX_SHARE/data/images/JPEG_Color_Image_Ubuntu.jpg $BTDEVADDR browse 2>&1 | ansi_parser
description:
 This is an automated Bluetooth test. It emulates browsing on a remote device specified by the BTDEVADDR environment variable.

plugin: shell
name: suspend/bluetooth_obex_get_after_suspend
depends: suspend/suspend_advanced
requires:
 package.name == 'bluez' and package.name == 'obexftp'
 device.category == 'BLUETOOTH'
command:
  if [ -z "$BTDEVADDR" ]
  then
    echo "btdevaddr option not set to device address of Bluetooth target in checkbox.ini"
    exit 1
  fi
  if rfkill list bluetooth | grep -q 'Hard blocked: yes'
  then
    echo "rfkill list shows BT is hard blocked"
  fi
  if rfkill list bluetooth | grep -q 'Soft blocked: yes'
  then
    echo "rfkill list shows BT is soft blocked, removing before testing"
    rfkill unblock bluetooth
    sleep 3
  fi
  set -o pipefail; bluetooth_test $CHECKBOX_SHARE/data/images/JPEG_Color_Image_Ubuntu.jpg $BTDEVADDR get 2>&1 | ansi_parser
description:
 This is an automated Bluetooth test. It receives the given file from a remote host specified by the BTDEVADDR environment variable

plugin: shell
name: suspend/bluetooth_obex_get_after_suspend_auto
depends: suspend/suspend_advanced_auto
requires:
 package.name == 'bluez' and package.name == 'obexftp'
 device.category == 'BLUETOOTH'
command:
  if [ -z "$BTDEVADDR" ]
  then
    echo "btdevaddr option not set to device address of Bluetooth target in checkbox.ini"
    exit 1
  fi
  if rfkill list bluetooth | grep -q 'Hard blocked: yes'
  then
    echo "rfkill list shows BT is hard blocked"
  fi
  if rfkill list bluetooth | grep -q 'Soft blocked: yes'
  then
    echo "rfkill list shows BT is soft blocked, removing before testing"
    rfkill unblock bluetooth
    sleep 3
  fi
  set -o pipefail; bluetooth_test $CHECKBOX_SHARE/data/images/JPEG_Color_Image_Ubuntu.jpg $BTDEVADDR get 2>&1 | ansi_parser
description:
 This is an automated Bluetooth test. It receives the given file from a remote host specified by the BTDEVADDR environment variable

plugin: manual
name: suspend/bluetooth_obex_after_suspend_manual
depends: suspend/suspend_advanced suspend/bluetooth_obex_before_suspend_manual
requires:
 package.name == 'bluez' and package.name == 'obexd-client'
 device.category == 'BLUETOOTH'
command: rfkill unblock bluetooth; obex_send `bluetooth_scan` $CHECKBOX_SHARE/data/images/JPEG_Color_Image_Ubuntu.jpg
description:
 PURPOSE:
     This test will send the image 'JPEG_Color_Image_Ubuntu.jpg' to a specified device
 STEPS:
     1. Click "Test" and you will be prompted to enter the Bluetooth device name of a device that can accept file transfers (It may take a few moments after entering the name for the file to begin sending)
     2. Accept any prompts that appear on both devices
 VERIFICATION:
     Was the data correctly transferred?

plugin: manual
name: suspend/cycle_resolutions_after_suspend
requires: package.name == 'xorg'
depends: suspend/suspend_advanced graphics/cycle_resolution
command: xrandr_cycle --keyword=after_suspend --screenshot-dir $CHECKBOX_DATA
description:
 PURPOSE:
     This test will cycle through the detected display modes
 STEPS:
     1. Click "Test" and the display will cycle trough the display modes
 VERIFICATION:
     Did your display look fine in the detected mode?

plugin: shell
name: suspend/cycle_resolutions_after_suspend_auto
requires: package.name == 'xorg'
depends: suspend/suspend_advanced_auto graphics/cycle_resolution
description:
 This test will check to make sure supported video modes work after a suspend and resume.
 This is done automatically by taking screenshots and uploading them as an attachment.
command: xrandr_cycle --keyword=after_suspend --screenshot-dir $CHECKBOX_DATA

plugin: attachment
name: suspend/xrandr_screens_after_suspend.tar.gz
depends: suspend/cycle_resolutions_after_suspend_auto
command: [ -e $CHECKBOX_DATA/xrandr_screens_after_suspend.tgz ] && cat $CHECKBOX_DATA/xrandr_screens_after_suspend.tgz
description: This attaches screenshots from the suspend/cycle_resolutions_after_suspend_auto test to the results submission.
description-ast.UTF-8: Esto axunta captures de pantalla de la suspensión/ciclu_resoluciones_dempués_suspensión a los resultaos del test .
description-bn.UTF-8: এটি suspend/cycle_resolutions_after_suspend_auto test থেকে একটি স্ক্রীনশট results submission এ সংযুক্ত করে।
description-bs.UTF-8: Ovo prilaže slike ekrana iz suspenzije i ciklusa rezolucija nakon testova suspenzije na slanje rezultata.
description-cs.UTF-8: Připojí snímky obrazovky cyklů uspávání/procházení_rozlišení_po_probuzení k výsledkům.
description-de.UTF-8: Dies legt dem Bericht die Bildschirmfotos vom Test suspend/cycle_resolutions_after_suspend_auto als Anlage bei.
description-el.utf-8: Αυτό επισυνάπτει στιγμιότυπα της οθόνης από το αυτοματοποιημένο_τεστ_ανάλυσης_μετά_τον_κύκλο_αναστολής/επαναφοράς στην αναφορά αποτελεσμάτων.
description-en_AU.UTF-8: This attaches screenshots from the suspend/cycle_resolutions_after_suspend_auto test to the results submission.
description-en_GB.UTF-8: This attaches screenshots from the suspend/cycle_resolutions_after_suspend_auto test to the results submission.
description-es.UTF-8: Adjunta las capturas de pantalla de suspend/cycle_resolutions_after_suspend_auto test a los resultados del informe.
description-fi.UTF-8: Tämä liittää valmiustilatestin ottamat kuvankaappaukset tulosraporttiin.
description-fr.UTF-8: Ceci joint les copies d'écran du test suspend/cycle_resolutions_after_suspend_auto à la soumission des résultats.
description-gd.UTF-8: Tha seo a' ceangal glacaidhean-sgrìn bhon deuchainn suspend/cycle_resolutions_after_suspend_auto gu ruige innteart na toraidhean.
description-he.UTF-8: פעולה זו מצרפת תמונות מסך מהבדיקה suspend/cycle_resolutions_after_suspend_auto למשלוח התוצאות.
description-hu.UTF-8: Képernyőmentés csatolása a suspend/cycle_resolutions_after_suspend_auto teszt eredményéről.
description-it.UTF-8: Allega le schermate provenienti dal test suspend/cycle_resolutions_after_suspend_auto ai risultati da inviare.
description-km.UTF-8: សាកល្បង.
description-ms.UTF-8: Ini akan lampirkan cekupan skrin dari ujian suspend/cycle_resolutions_after_suspend_auto ke penyerahan keputusan.
description-nl.UTF-8: Dit zal schermafdrukken van de pauze/resoluties_doorlopen_na_pauze_auto testen toevoegen aan het resultatenrapport.
description-pt_BR.UTF-8: Isto anexa imagens da tela do teste suspend/cycle_resolutions_after_suspend_auto à submissão dos resultados.
description-ro.UTF-8: Se atașează capturile de ecran luate în testul automat care verifică rezoluțiile după revenirea din suspendare.
description-ru.UTF-8: Прикрепляет снимок экрана теста «suspend/cycle_resolutions_after_suspend_auto» к результатам для отправки.
description-sl.UTF-8: To pripne zaslonski posnetek iz preizkusa suspend/cycle_resolutions_after_suspend_auto pošiljanju rezultatov.
description-tr.UTF-8: Bu, suspend/cycle_resolutions_after_suspend_auto sınamasına ait ekran görüntülerini sonuç teslimine ekler.
description-ug.UTF-8: بۇنداق بولغاندا suspend/cycle_resolutions_after_suspend_auto سىناقتا ئېرىشكەن ئېكران كەسمىسى يوللانما نەتىجىسىگە قوشۇلىدۇ.
description-zh_CN.UTF-8: 这会将 suspend/cycle_resolutions_after_suspend_auto 测试中捕获的屏幕截图附加到提交的结果中。

plugin: shell
name: suspend/record_playback_after_suspend
depends: suspend/suspend_advanced
requires:
 device.category == 'AUDIO'
 package.name == 'python-gst0.10'
 package.name == 'alsa-base'
command: audio_test
description:
 This will check to make sure that your audio device works properly after a suspend and resume.  This may work fine with speakers and onboard microphone, however, it works best if used with a cable connecting the audio-out jack to the audio-in jack.

plugin: attachment
name: suspend/suspend-auto-single-log-attach
command: [ -e $CHECKBOX_DATA/suspend_auto_single_log ] && cat $CHECKBOX_DATA/suspend_auto_single_log
description:
 Attaches the log from the single suspend/resume test to the results

plugin: shell
name: suspend/screenshot_after_suspend
depends: suspend/suspend_advanced_auto
requires: package.name == 'fswebcam'
command: set -o pipefail; camera_test still --device=/dev/external_webcam -f ${CHECKBOX_DATA}/screenshot_after_suspend.jpg -q 2>&1 | ansi_parser
description:
 PURPOSE:
     Take a screengrab of the current screen after suspend (logged on Unity desktop)
 STEPS:
     1. Take picture using USB webcam
 VERIFICATION:
     Review attachment manually later

plugin: attachment
name: screenshot_after_suspend.jpg
depends: suspend/screenshot_after_suspend
command: base64 ${CHECKBOX_DATA}/screenshot_after_suspend.jpg
description: Attaches the screenshot captured in graphics/screenshot.
description-bs.UTF-8: Dodavanje snimke ekrana napravljene u slikama/snimkama ekrana.
description-de.UTF-8: Dies legt dem Bericht das Bildschirmfoto als Anlage bei, das im Test »graphics/screenshot« aufgenommen wurde.
description-el.utf-8: Επισυνάπτει το στιγμιότυπο οθόνης που ελήφθη στο φάκελο γραφικά/στιγμιότυπο οθόνης.
description-en_AU.UTF-8: Attaches the screen shot captured in graphics/screen shot.
description-en_GB.UTF-8: Attaches the screenshot captured in graphics/screenshot.
description-es.UTF-8: Adjunta la instantánea capturada en graphics/screenshot.
description-fr.UTF-8: Ajoute la capture d'écran effectuée dans graphics/screenshot.
description-gd.UTF-8: A' ceangal an glacadh-sgrìn glacte ann an grafaigean/glacadh-sgrìn
description-gl.UTF-8: Anexa a captura de pantalla efectuada en graphics/screenshot.
description-hu.UTF-8: A graphics/screenshot útvonalon lévő képernyőmentés csatolása.
description-it.UTF-8: Allega la schermata catturata in graphics/screenshot.
description-ja.UTF-8: グラフィック/スクリーンショット内にスクリーンショットキャプチャを追加する。
description-ms.UTF-8: Lampirkan cekupan skrin yang ditangkap dalam graphics/screenshot.
description-nl.UTF-8: Voegt de genomen schermafdruk toe aan graphics/screenshot
description-oc.UTF-8: Apond la captura d'ecran efectuada dins graphics/screenshot.
description-pt_BR.UTF-8: Anexa a captura de tela efetuada em graphics/screenshot.
description-ru.UTF-8: Прикрепить снимок экрана созданный в graphics/screenshot.
description-sl.UTF-8: Priloži zaslonsko sliko, shranjeno v graphics/screenshot.
description-ug.UTF-8: گرافىك/ئېكران كۆرۈنۈشى(graphics/screenshot) دە تۇتۇلغان ئېكران كۆرۈنۈشىنى قاتىدۇ.

plugin: shell
name: suspend/gpu_lockup_after_suspend
requires:
 package.name == 'fwts'
 package.name == 'wmctrl'
 package.name == 'mesa-utils'
depends: suspend/suspend_advanced_auto
user: root
command: gpu_test
description:
 PURPOSE:
     Do some challenging operations, suspend the system, do more challenging
     operations - then check for lockup on the GPU
 STEPS:
     1. Create 2 glxgears windows and move them quickly
     2. Switch workspaces/viewports with wmctrl
     3. Launch an HTML5 video playback in firefox
     4. Suspend/resume
 VERIFICATION:
     After a 60s workload, check kern.log for reported GPU errors

plugin: shell
name: suspend/wifi_resume_time
depends: suspend/suspend_advanced
requires:
   device.category == 'WIRELESS'
command: network_reconnect_resume_test -t 20 -d wifi
description:
 Checks the length of time it takes to reconnect an existing wifi connection
 after a suspend/resume cycle.

plugin: shell
name: suspend/network_resume_time
depends: suspend/suspend_advanced
requires:
   device.category == 'NETWORK'
command: network_reconnect_resume_test -t 10 -d wired
description:
 Checks the length of time it takes to reconnect an existing wired connection
  after a suspend/resume cycle.

plugin: manual
name: suspend/led_after_suspend/power
depends: suspend/suspend_advanced
description:
 PURPOSE:
     Validate that the power LED operated the same after resuming from suspend
 STEPS:
     1. Power LED should be on while device is switched on
 VERIFICATION:
     Does the power LED remain on after resuming from suspend?

plugin: manual
name: suspend/led_after_suspend/battery-charging
depends: suspend/suspend_advanced
description:
 PURPOSE:
     Validate that the battery light shows charging status after resuming from suspend
 STEPS:
     1. Let system run on battery for a while
     2. Plug in AC plug
 VERIFICATION:
     Did the battery indicator LED still turn orange after resuming from suspend?

plugin: manual
name: suspend/led_after_suspend/battery-charged
depends: suspend/suspend_advanced
description:
 PURPOSE:
     Validate that the battery LED properly displays charged status after resuming from suspend
 STEPS:
     1. Let system run on battery for a short time
     2. Plug in AC
     3. Let system run on AC
 VERIFICATION:
     Does the orange battery LED still shut off when system is fully charged after resuming from suspend?

plugin: manual
name: suspend/led_after_suspend/battery-low
depends: suspend/suspend_advanced
description:
 PURPOSE:
     Validate that the battery LED indicated low power after resuming from suspend
 STEPS:
     1. Let system run on battery for several hours
     2. Monitor battery LED carefully
 VERIFICATION:
     Does the LED light orange when battery is low after resuming from suspend?

plugin: manual
name: suspend/led_after_suspend/hdd
depends: suspend/suspend_advanced
command: led_hdd_test
description:
 PURPOSE:
     Validate that the HDD LED still operates as expected after resuming from suspend
 STEPS:
     1. Select "Test" to write and read a temporary file for a few seconds
     2. HDD LED should blink when writing to/reading from HDD
 VERIFICATION:
     Did the HDD LED still blink with HDD activity after resuming from suspend?

plugin: manual
name: suspend/led_after_suspend/numeric-keypad
depends: suspend/suspend_advanced
command: keyboard_test
description:
 PURPOSE:
     Validate that the numeric keypad LED operates the same before and after resuming from suspend
 STEPS:
     1. Press "Block Num" key to toggle numeric keypad LED
     2. Click on the "Test" button to open a window to verify your typing
     3. Type using the numeric keypad both when the LED is on and off
 VERIFICATION:
     1. Numeric keypad LED status should toggle everytime the "Block Num" key is pressed
     2. Numbers should only be entered in the keyboard verification window when the LED is on

plugin: manual
name: suspend/led_after_suspend/caps-lock
depends: suspend/suspend_advanced
description:
 PURPOSE:
     Validate that the Caps Lock key operates the same before and after resuming from suspend
 STEPS:
     1. Press "Block Cap Keys" to activate/deactivate cap keys blocking
     2. Cap Keys LED should be switched on/off every time the key is pressed
 VERIFICATION:
     Did the Cap Keys LED light as expected after resuming from suspend?

plugin: manual
name: suspend/led_after_suspend/wlan
depends: suspend/suspend_advanced
description:
 PURPOSE:
     WLAN LED verification after resuming from suspend
 STEPS:
     1. Make sure WLAN connection is established
     2. WLAN LED should light
     3. Select Test to open Firefox
     4. WLAN LED should flash while downloading data
 VERIFICATION:
     Did the WLAN LED light and flash as expected after resuming from suspend?

plugin: manual
name: suspend/led_after_suspend/wlan-disabled
depends: suspend/suspend_advanced
description:
 PURPOSE:
     Validate that WLAN LED shuts off when disabled after resuming from suspend
 STEPS:
     1. Connect to AP
     2. Use Physical switch to disable WLAN
     3. Re-enable
     4. Use Network-Manager to disable WLAN
 VERIFICATION:
     Did the LED turn off then WLAN is disabled after resuming from suspend?

plugin: manual
name: suspend/led_after_suspend/bluetooth
depends: suspend/suspend_advanced
description:
 PURPOSE:
     Validate that the Bluetooth LED turns on and off when BT is enabled/disabled after resuming from suspend
 STEPS:
     1. Switch bluetooth off from a hardware switch (if present)
     2. Switch bluetooth back on
     3. Switch bluetooth off from the panel applet
     4. Switch bluetooth back on
 VERIFICATION:
     Did the bluetooth LED turn off and on twice after resuming from suspend?

plugin: manual
name: suspend/led_after_suspend/camera
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
name: suspend/led_after_suspend/touchpad
depends: suspend/suspend_advanced
description:
 PURPOSE:
     Touchpad LED verification after resuming from suspend
 STEPS:
     1. Click on the touchpad button or press key combination to enable/disable touchpad button
     2. Slide your finger on the touchpad
 VERIFICATION:
     1. Touchpad LED status should toggle everytime the button is clicked or the key combination is pressed
     2. When the LED is on, the mouse pointer should move on touchpad usage
     3. When the LED is off, the mouse pointer should not move on touchpad usage

plugin: manual
name: suspend/led_after_suspend/wireless
depends: suspend/suspend_advanced
description:
 PURPOSE:
     Validate Wireless (WLAN + Bluetooth) LED operated the same after resuming from suspend
 STEPS:
     1. Make sure WLAN connection is established and Bluetooth is enabled.
     2. WLAN/Bluetooth LED should light
     3. Switch WLAN and Bluetooth off from a hardware switch (if present)
     4. Switch them back on
     5. Switch WLAN and Bluetooth off from the panel applet
     6. Switch them back on
 VERIFICATION:
     Did the WLAN/Bluetooth LED light as expected after resuming from suspend?

plugin: manual
name: suspend/keys_after_suspend/brightness
depends: suspend/suspend_advanced
requires: dmi.product in ['Notebook','Laptop','Portable']
description:
 PURPOSE:
     This test will test the brightness key after resuming from suspend
 STEPS:
     1. Press the brightness buttons on the keyboard
 VERIFICATION:
     Did the brightness change following to your key presses after resuming from suspend?

plugin: manual
name: suspend/keys_after_suspend/volume
depends: suspend/suspend_advanced
requires:
 device.category == 'KEYBOARD'
user: root
command: key_test -s '0xe02e,0xe0ae:Volume Up' '0xe030,0xe0b0:Volume Down'
description:
 PURPOSE:
     This test will test the volume keys of your keyboard after resuming from suspend
 STEPS:
     1. Click test to open a window on which to test the volume keys.
     2. If all the keys work, the test will be marked as passed.
     3. If your computer has no volume keys, Skip this test.
 VERIFICATION:
     Did the volume change following to your key presses?

plugin: manual
name: suspend/keys_after_suspend/mute
depends: suspend/suspend_advanced
requires:
 device.category == 'KEYBOARD'
user: root
command: key_test -s '0xe020,0xe0a0:Mute'
description:
 PURPOSE:
     This test will test the mute key of your keyboard after resuming from suspend
 STEPS:
     1. Click test to open a window on which to test the mute key.
     2. If the key works, the test will pass and the window will close.
 VERIFICATION:
     Did the volume mute following your key presses?

plugin: manual
name: suspend/keys_after_suspend/sleep
depends: suspend/suspend_advanced
requires:
 device.category == 'KEYBOARD'
description:
 PURPOSE:
     This test will test the sleep key after resuming from suspend
 STEPS:
     1. Press the sleep key on the keyboard
     2. Wake your system up by pressing the power button
 VERIFICATION:
     Did the system go to sleep after pressing the sleep key after resuming from suspend?

plugin: manual
name: suspend/keys_after_suspend/battery-info
depends: suspend/suspend_advanced
requires: dmi.product in ['Notebook','Laptop','Portable']
user: root
command: key_test -s '0xe071,0xef1:Battery Info'
description:
 PURPOSE:
     This test will test the battery information key after resuming from suspend
 STEPS:
     If you do not have a Battery Button, skip this test
     1. Click Test to begin
     2. Press the Battery Info button (or combo like Fn+F3)
     3: Close the Power Statistics tool if it opens
 VERIFICATION:
     Did the Battery Info key work as expected after resuming from suspend?

plugin: manual
name: suspend/keys_after_suspend/wireless
depends: suspend/suspend_advanced
requires: dmi.product in ['Notebook','Laptop','Portable']
description:
 PURPOSE:
     This test will test the wireless key after resuming from suspend
 STEPS:
     1. Press the wireless key on the keyboard
     2. Press the same key again
 VERIFICATION:
     Did the wireless go off on the first press and on again on the second after resuming from suspend?

plugin: manual
name: suspend/keys_after_suspend/media-control
depends: suspend/suspend_advanced
requires:
 device.category == 'KEYBOARD'
user: root
command: key_test -s 0xe010,0xe090:Previous 0xe024,0xe0a4:Stop 0xe019,0xe099:Next 0xe022,0xe0a2:Play
description:
 PURPOSE:
     This test will test the media keys of your keyboard after resuming from suspend
 STEPS:
     1. Click test to open a window on which to test the media keys.
     2. If all the keys work, the test will be marked as passed.
     3. If your computer has no media keys, Skip this test.
 VERIFICATION:
     Do the keys work as expected after resuming from suspend?

plugin: manual
name: suspend/keys_after_suspend/super
depends: suspend/suspend_advanced
requires:
 device.category == 'KEYBOARD'
user: root
command: key_test -s '0xe05b,0xe0db:Left Super Key'
description:
 PURPOSE:
     This test will test the super key of your keyboard after resuming from suspend
 STEPS:
     1. Click test to open a window on which to test the super key.
     2. If the key works, the test will pass and the window will close.
 VERIFICATION:
     Does the super key work as expected after resuming from suspend?

plugin: manual
name: suspend/keys_after_suspend/video-out
depends: suspend/suspend_advanced
requires: dmi.product in ['Notebook','Laptop','Portable']
description:
 PURPOSE:
     Validate that the External Video hot key is working as expected after resuming from suspend
 STEPS:
     1. Plug in an external monitor
     2. Press the display hot key to change the monitors configuration
 VERIFICATION:
     Check that the video signal can be mirrored, extended, displayed on external or onboard only, after resuming from suspend.

plugin: manual
name: suspend/keys_after_suspend/touchpad
depends: suspend/suspend_advanced
requires: dmi.product in ['Notebook','Laptop','Portable']
description:
 PURPOSE:
     Verify touchpad hotkey toggles touchpad functionality on and off after resuming from suspend
 STEPS:
     1. Verify the touchpad is functional
     2. Tap the touchpad toggle hotkey
     3. Tap the touchpad toggle hotkey again
 VERIFICATION:
     Verify the touchpad has been disabled and re-enabled.
