<?xml version="1.0" encoding="UTF-8"?>
<robot generator="Rebot 7.3.2 (Python 3.12.12 on linux)" generated="2026-02-19T20:36:33.866581" rpa="false" schemaversion="5">
<suite id="s1" name="WPE image tests">
<suite id="s1-s1" name="Tests 005 Basics" source="/app/tests_results/20260219_201245_robot_/../../robot_framework/tests/tests_005_basics.robot">
<test id="s1-s1-t1" name="List buildinfo" line="10">
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:12:48.870096" level="INFO">${TEST_BOARD_IP} = 192.168.1.72</msg>
<var>${TEST_BOARD_IP}</var>
<arg>TEST_BOARD_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:12:48.869112" elapsed="0.001058"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:12:54.437152" level="INFO">${stdout} = ('-----------------------\nBuild Configuration:  |\n-----------------------\nDISTRO = poky-wayland\nDISTRO_VERSION = 1.0\nDATETIME = 20260219190738\nDISTRO_NAME = Poky Wayland\nIMAGE_BASENAME = core-i...</msg>
<var>${stdout}</var>
<arg>${TEST_BOARD_IP}</arg>
<arg>cat /etc/buildinfo</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:12:48.870576" elapsed="5.566769"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:12:54.439997" level="INFO">${formatted} = -----------------------
Build Configuration:  |
-----------------------
DISTRO = poky-wayland
DISTRO_VERSION = 1.0
DATETIME = 20260219190738
DISTRO_NAME = Poky Wayland
IMAGE_BASENAME = core-image-west...</msg>
<var>${formatted}</var>
<arg>"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:12:54.438331" elapsed="0.001812"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:12:54.441729" level="INFO">-----------------------
Build Configuration:  |
-----------------------
DISTRO = poky-wayland
DISTRO_VERSION = 1.0
DATETIME = 20260219190738
DISTRO_NAME = Poky Wayland
IMAGE_BASENAME = core-image-weston-wpe
MACHINE = wandboard-mesa
TUNE_PKGARCH = cortexa9t2hf-neon
MACHINE_FEATURES = usbgadget usbhost vfat alsa touchscreen screen bluetooth pci wifi touchscreen rtc qemu-usermode
DISTRO_FEATURES = acl alsa bluetooth debuginfod ext2 ipv4 ipv6 pcmcia usbgadget usbhost wifi xattr nfs zeroconf pci 3g nfc x11 vfat seccomp opengl  multiarch wayland vulkan pam usrmerge egl                            opengl                            pam                            polkit                            pulseaudio                            virtualization                            wayland                           systemd usrmerge gobject-introspection-data ldconfig
COMMON_FEATURES = 
IMAGE_FEATURES = debug-tweaks hwcodecs package-management splash ssh-server-openssh weston
TUNE_FEATURES = arm vfp cortexa9 neon thumb callconvention-hard
TARGET_FPU = hard
-----------------------
Layer Revisions:      |
-----------------------
meta-clang        = HEAD:731488911f55ebfe746068512b426351192f82f2
meta-freescale    = HEAD:62423c69631d7f7cffe2bd20997412d76caa94ef
meta-freescale-3rdparty = HEAD:70c83e96c7f75e73245cb77f1b0cada9ed4bbc6d
meta-freescale-distro = HEAD:b9d6a5d9931922558046d230c1f5f4ef6ee72345
meta-filesystems  = HEAD:15e18246dd0c0585cd1515a0be8ee5e2016d1329
meta-gnome        = HEAD:15e18246dd0c0585cd1515a0be8ee5e2016d1329
meta-multimedia   = HEAD:15e18246dd0c0585cd1515a0be8ee5e2016d1329
meta-networking   = HEAD:15e18246dd0c0585cd1515a0be8ee5e2016d1329
meta-oe           = HEAD:15e18246dd0c0585cd1515a0be8ee5e2016d1329
meta-perl         = HEAD:15e18246dd0c0585cd1515a0be8ee5e2016d1329
meta-python       = HEAD:15e18246dd0c0585cd1515a0be8ee5e2016d1329
meta-webserver    = HEAD:15e18246dd0c0585cd1515a0be8ee5e2016d1329
meta-virtualization = HEAD:af1db2042caf8021d767dce1b26c08b59b96f3d1
meta-webkit       = HEAD:e951b48c53e83a1bb0e63688aadd8bfbed6a1df3
..                = HEAD:8348a227448450846ffa4909e49ca9714b189bc9
meta              = HEAD:10fba0085de5645bb0366dd309182e0532aeea82
meta-poky         = HEAD:10fba0085de5645bb0366dd309182e0532aeea82</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:12:54.440927" elapsed="0.000940"/>
</kw>
<timeout value="1 minute"/>
<status status="PASS" start="2026-02-19T20:12:48.867242" elapsed="5.574932"/>
</test>
<test id="s1-s1-t2" name="List installed packages" line="16">
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:12:54.444522" level="INFO">${TEST_BOARD_IP} = 192.168.1.72</msg>
<var>${TEST_BOARD_IP}</var>
<arg>TEST_BOARD_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:12:54.444015" elapsed="0.000609"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:12:56.259820" level="INFO">${stdout} = ('base-files-3.0.14-r0.wandboard_mesa\nncurses-terminfo-base-6.4-r0.cortexa9t2hf_neon\nopenssl-3.2.4-r0.cortexa9t2hf_neon\nttf-dejavu-common-2.37-r0.noarch\nldconfig-2.39+git0+3463100f2d-r0.cortexa9t2...</msg>
<var>${stdout}</var>
<arg>${TEST_BOARD_IP}</arg>
<arg>rpm -qa</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:12:54.444986" elapsed="1.814955"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:12:56.262812" level="INFO">${formatted} = base-files-3.0.14-r0.wandboard_mesa
ncurses-terminfo-base-6.4-r0.cortexa9t2hf_neon
openssl-3.2.4-r0.cortexa9t2hf_neon
ttf-dejavu-common-2.37-r0.noarch
ldconfig-2.39+git0+3463100f2d-r0.cortexa9t2hf_neo...</msg>
<var>${formatted}</var>
<arg>"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:12:56.260476" elapsed="0.002428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:12:56.263956" level="INFO">base-files-3.0.14-r0.wandboard_mesa
ncurses-terminfo-base-6.4-r0.cortexa9t2hf_neon
openssl-3.2.4-r0.cortexa9t2hf_neon
ttf-dejavu-common-2.37-r0.noarch
ldconfig-2.39+git0+3463100f2d-r0.cortexa9t2hf_neon
update-alternatives-opkg-0.6.3-r0.cortexa9t2hf_neon
libc6-2.39+git0+3463100f2d-r0.cortexa9t2hf_neon
libtinfo5-6.4-r0.cortexa9t2hf_neon
bash-5.2.21-r0.cortexa9t2hf_neon
ncurses-terminfo-6.4-r0.cortexa9t2hf_neon
iptables-module-ip6t-ah-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ip6t-dnpt-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ip6t-dst-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ip6t-eui64-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ip6t-frag-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ip6t-hbh-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ip6t-hl-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ip6t-icmp6-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ip6t-ipv6header-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ip6t-mh-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ip6t-netmap-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ip6t-reject-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ip6t-rt-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ip6t-snpt-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ip6t-srh-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ipt-ah-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ipt-clusterip-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ipt-ecn-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ipt-icmp-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ipt-netmap-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ipt-realm-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ipt-reject-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ipt-ttl-1.8.10-r0.cortexa9t2hf_neon
iptables-module-ipt-ulog-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-addrtype-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-audit-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-bpf-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-cgroup-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-checksum-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-classify-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-cluster-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-comment-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-connbytes-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-connlimit-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-connmark-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-connsecmark-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-conntrack-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-cpu-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-dccp-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-devgroup-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-dscp-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-ecn-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-esp-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-hashlimit-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-helper-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-hmark-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-idletimer-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-ipcomp-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-iprange-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-ipvs-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-led-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-length-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-limit-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-log-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-mac-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-mark-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-multiport-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-ct-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-nat-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-nfacct-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-nflog-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-nfqueue-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-osf-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-owner-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-physdev-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-pkttype-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-policy-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-quota-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-rateest-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-recent-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-rpfilter-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-sctp-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-secmark-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-set-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-socket-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-statistic-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-string-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-synproxy-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-tcp-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-tcpmss-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-tcpoptstrip-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-tee-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-time-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-tos-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-tproxy-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-trace-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-u32-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-udp-1.8.10-r0.cortexa9t2hf_neon
iptables-module-xt-standard-1.8.10-r0.cortexa9t2hf_neon
iptables-modules-1.8.10-r0.cortexa9t2hf_neon
iptables-1.8.10-r0.cortexa9t2hf_neon
libz1-1.3.1-r0.cortexa9t2hf_neon
libgcc1-13.3.0-r0.cortexa9t2hf_neon
libstdc++6-13.3.0-r0.cortexa9t2hf_neon
libsmartcols1-2.39.3-r0.cortexa9t2hf_neon
libblkid1-2.39.3-r0.cortexa9t2hf_neon
libmount1-2.39.3-r0.cortexa9t2hf_neon
libuuid1-2.39.3-r0.cortexa9t2hf_neon
libdrm2-2.4.124-r0.cortexa9t2hf_neon
libexpat1-2.6.4-r0.cortexa9t2hf_neon
liborc-0.4-0-0.4.40-r0.cortexa9t2hf_neon
libpng16-16-1.6.42-r0.cortexa9t2hf_neon
base-passwd-3.6.3-r0.cortexa9t2hf_neon
libcrypt2-4.4.36-r0.cortexa9t2hf_neon
libjpeg62-3.0.1-r0.cortexa9t2hf_neon
libncursesw5-6.4-r0.cortexa9t2hf_neon
libxau6-1.0.11-r0.cortexa9t2hf_neon
libxdmcp6-1.1.4-r0.cortexa9t2hf_neon
libxcb1-1.16-r0.cortexa9t2hf_neon
libx11-6-1.8.9-r0.cortexa9t2hf_neon
libxext6-1.3.6-r0.cortexa9t2hf_neon
libfreetype6-2.13.2-r0.cortexa9t2hf_neon
libfontconfig1-2.15.0-r0.cortexa9t2hf_neon
libxml2-2.12.10-r0.cortexa9t2hf_neon
libbz2-1-1.0.8-r0.cortexa9t2hf_neon
libelf1-0.191-r0.cortexa9t2hf_neon
libcom-err2-1.47.0-r0.cortexa9t2hf_neon
liblzma5-5.4.7-r0.cortexa9t2hf_neon
libgpg-error-1.48-r0.cortexa9t2hf_neon
libzstd1-1.5.5-r0.cortexa9t2hf_neon
libext2fs2-1.47.0-r0.cortexa9t2hf_neon
libreadline8-8.2-r0.cortexa9t2hf_neon
libsqlite3-0-3.45.3-r0.cortexa9t2hf_neon
libdw1-0.191-r0.cortexa9t2hf_neon
libpython3.12-1.0-3.12.11-r0.cortexa9t2hf_neon
libavutil58-6.1.2-r0.cortexa9t2hf_neon
libe2p2-1.47.0-r0.cortexa9t2hf_neon
libnl-3-200-3.9.0-r0.cortexa9t2hf_neon
libpixman-1-0-0.42.2-r0.cortexa9t2hf_neon
libassuan0-2.5.6-r0.cortexa9t2hf_neon
libxrender1-0.9.11-r0.cortexa9t2hf_neon
libxcb-shm0-1.16-r0.cortexa9t2hf_neon
libxcb-xfixes0-1.16-r0.cortexa9t2hf_neon
libattr1-2.5.1-r0.cortexa9t2hf_neon
libacl1-2.3.2-r0.cortexa9t2hf_neon
libgmp10-6.3.0-r0.cortexa9t2hf_neon
libogg0-1.3.5-r0.cortexa9t2hf_neon
libtirpc3-1.3.4-r0.cortexa9t2hf_neon
libx11-xcb1-1.8.9-r0.cortexa9t2hf_neon
libnl-genl-3-200-3.9.0-r0.cortexa9t2hf_neon
libtiff6-4.6.0-r0.cortexa9t2hf_neon
fontconfig-utils-2.15.0-r0.cortexa9t2hf_neon
libxfixes3-6.0.1-r0.cortexa9t2hf_neon
libxcb-dri3-0-1.16-r0.cortexa9t2hf_neon
libxcb-present0-1.16-r0.cortexa9t2hf_neon
pam-plugin-deny-1.5.3-r0.cortexa9t2hf_neon
pam-plugin-permit-1.5.3-r0.cortexa9t2hf_neon
pam-plugin-unix-1.5.3-r0.cortexa9t2hf_neon
pam-plugin-warn-1.5.3-r0.cortexa9t2hf_neon
libpam-1.5.3-r0.cortexa9t2hf_neon
libpam-runtime-1.5.3-r0.cortexa9t2hf_neon
libcap-2.69-r0.cortexa9t2hf_neon
libudev1-v255.21-r0.cortexa9t2hf_neon
libsystemd0-v255.21-r0.cortexa9t2hf_neon
libgcrypt-1.10.3-r0.cortexa9t2hf_neon
perl-module-config-heavy-5.38.4-r0.cortexa9t2hf_neon
perl-5.38.4-r0.cortexa9t2hf_neon
libepoxy0-1.5.10-r0.cortexa9t2hf_neon_imx
libpopt0-1.19-r0.cortexa9t2hf_neon
rpm-4.19.1.1-r0.cortexa9t2hf_neon
rpm-sign-4.19.1.1-r0.cortexa9t2hf_neon
libproc2-0-4.0.4-r0.cortexa9t2hf_neon
pam-plugin-keyinit-1.5.3-r0.cortexa9t2hf_neon
pam-plugin-limits-1.5.3-r0.cortexa9t2hf_neon
pam-plugin-loginuid-1.5.3-r0.cortexa9t2hf_neon
shadow-base-4.14.2-r0.cortexa9t2hf_neon
lcms-2.16-r0.cortexa9t2hf_neon
libxi6-1.8.1-r0.cortexa9t2hf_neon
libxcb-randr0-1.16-r0.cortexa9t2hf_neon
libapr-1-0-1.7.5-r0.cortexa9t2hf_neon
libfdisk1-2.39.3-r0.cortexa9t2hf_neon
libffi8-3.4.6-r0.cortexa9t2hf_neon
wayland-1.22.0-r0.cortexa9t2hf_neon
libicudata74-74+2-r0.cortexa9t2hf_neon
libicuuc74-74+2-r0.cortexa9t2hf_neon
libmnl0-1.0.5-r0.cortexa9t2hf_neon
libseccomp-2.5.5-r0.cortexa9t2hf_neon
libxshmfence1-1.3.2-r0.cortexa9t2hf_neon
libicui18n74-74+2-r0.cortexa9t2hf_neon
libxtst6-1.2.4-r0.cortexa9t2hf_neon
libusb-1.0-0-1.0.27-r0.cortexa9t2hf_neon
iputils-ping-20240117-r0.cortexa9t2hf_neon
kbd-2.6.4-r0.cortexa9t2hf_neon
pam-plugin-env-1.5.3-r0.cortexa9t2hf_neon
sudo-lib-1.9.15p5-r0.cortexa9t2hf_neon
libxcursor1-1.2.2-r0.cortexa9t2hf_neon
libxdamage1-1.1.6-r0.cortexa9t2hf_neon
liberation-fonts-2.1.5-r0.noarch
libflac12-1.4.3-r0.cortexa9t2hf_neon
libtheora-1.1.1-r0.cortexa9t2hf_neon
libvorbis-1.3.7-r0.cortexa9t2hf_neon
libsndfile1-1.2.2-r0.cortexa9t2hf_neon
gpgme-1.23.2-r0.cortexa9t2hf_neon
gpgme-tool-1.23.2-r0.cortexa9t2hf_neon
e2fsprogs-e2fsck-1.47.0-r0.cortexa9t2hf_neon
libswresample4-6.1.2-r0.cortexa9t2hf_neon
libavcodec60-6.1.2-r0.cortexa9t2hf_neon
libavformat60-6.1.2-r0.cortexa9t2hf_neon
libxcb-render0-1.16-r0.cortexa9t2hf_neon
libcairo2-1.18.0-r0.cortexa9t2hf_neon_imx
libxcb-sync1-1.16-r0.cortexa9t2hf_neon
libgallium-25.0.2-r0.cortexa9t2hf_neon_imx
libgbm1-25.0.2-r0.cortexa9t2hf_neon_imx
libxcb-xkb1-1.16-r0.cortexa9t2hf_neon
libpanelw5-6.4-r0.cortexa9t2hf_neon
util-linux-sulogin-2.39.3-r0.cortexa9t2hf_neon
util-linux-fsck-2.39.3-r0.cortexa9t2hf_neon
util-linux-mount-2.39.3-r0.cortexa9t2hf_neon
util-linux-swapoff-2.39.3-r0.cortexa9t2hf_neon
util-linux-swapon-2.39.3-r0.cortexa9t2hf_neon
util-linux-umount-2.39.3-r0.cortexa9t2hf_neon
libunwind-1.6.2-r0.cortexa9t2hf_neon
brotli-1.1.0-r0.cortexa9t2hf_neon
libavahi-common3-0.8-r0.cortexa9t2hf_neon
libc6-thread-db-2.39+git0+3463100f2d-r0.cortexa9t2hf_neon
libevdev-1.13.1-r0.cortexa9t2hf_neon
libfribidi0-1.0.14-r0.cortexa9t2hf_neon
libnpth0-1.6-r0.cortexa9t2hf_neon
libpcre1-8.45-r0.cortexa9t2hf_neon
libpcre2-10.43-r0.cortexa9t2hf_neon
libglib-2.0-0-2.78.6-r0.cortexa9t2hf_neon
shared-mime-info-2.4-r0.cortexa9t2hf_neon
gstreamer1.0-1.24.12-r0.cortexa9t2hf_neon
libgstvideo-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libgsttag-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libgstaudio-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libgstpbutils-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libgstrtp-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libgstallocators-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libgstcodecparsers-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libgstriff-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libgstapp-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libgdk-pixbuf-2.0-0-2.42.12-r0.cortexa9t2hf_neon
libgstfft-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libharfbuzz0-8.3.0-r0.cortexa9t2hf_neon_imx
libgstcodecs-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libgstsdp-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libgstmpegts-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libgsturidownloader-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libgstadaptivedemux-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libgudev-1.0-0-238-r0.cortexa9t2hf_neon
libgstbasecamerabinsrc-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libgstisoff-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libcairo-gobject2-1.18.0-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-audiofx-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-app-1.24.12-r0.cortexa9t2hf_neon_imx
libgstmse-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-avi-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-isomp4-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-wavparse-1.24.12-r0.cortexa9t2hf_neon_imx
libgstwayland-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-playback-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-typefindfunctions-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-audioparsers-1.24.12-r0.cortexa9t2hf_neon_imx
libgstplay-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libgsttranscoder-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-audioconvert-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-audioresample-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-volume-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-interleave-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-videoconvertscale-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-deinterlace-1.24.12-r0.cortexa9t2hf_neon_imx
libgstanalytics-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-gio-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-autodetect-1.24.12-r0.cortexa9t2hf_neon_imx
libgstinsertbin-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libgstphotography-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libgstrtsp-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libsolv1-0.7.28-r0.cortexa9t2hf_neon
libtasn1-6-4.20.0-r0.cortexa9t2hf_neon
libunistring5-1.2-r0.cortexa9t2hf_neon
libidn2-0-2.3.7-r0.cortexa9t2hf_neon
libwebp-1.3.2-r0.cortexa9t2hf_neon
libwrap0-7.6-r0.cortexa9t2hf_neon
util-linux-agetty-2.39.3-r0.cortexa9t2hf_neon
util-linux-fcntl-lock-2.39.3-r0.cortexa9t2hf_neon
openssl-conf-3.2.4-r0.cortexa9t2hf_neon
openssl-ossl-module-legacy-3.2.4-r0.cortexa9t2hf_neon
libcrypto3-3.2.4-r0.cortexa9t2hf_neon
libssl3-3.2.4-r0.cortexa9t2hf_neon
libkmod2-31-r0.cortexa9t2hf_neon
libsystemd-shared-v255.21-r0.cortexa9t2hf_neon
kmod-31-r0.cortexa9t2hf_neon
openssh-keygen-9.6p1-r0.cortexa9t2hf_neon
linux-firmware-imx-sdma-license-20240909-r0.noarch
linux-firmware-broadcom-license-20240909-r0.noarch
alsa-states-0.2.0-r0.wandboard_mesa
linux-firmware-bcm4329-20240909-r0.noarch
bcm4329-nvram-config-1.0-r0.wandboard_mesa
linux-firmware-bcm4330-20240909-r0.noarch
bcm4330-nvram-config-1.0-r0.wandboard_mesa
linux-firmware-imx-sdma-imx6q-20240909-r0.noarch
linux-firmware-imx-sdma-imx7d-20240909-r0.noarch
systemd-extra-utils-v255.21-r0.cortexa9t2hf_neon
gstreamer1.0-plugins-bad-dtls-1.24.12-r0.cortexa9t2hf_neon_imx
openssl-bin-3.2.4-r0.cortexa9t2hf_neon
ca-certificates-20211016-r0.noarch
libcurl4-8.7.1-r0.cortexa9t2hf_neon
libdebuginfod1-0.191-r0.cortexa9t2hf_neon
gstreamer1.0-plugins-bad-curl-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-aes-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-hls-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-adaptivedemux2-1.24.12-r0.cortexa9t2hf_neon_imx
openssh-ssh-9.6p1-r0.cortexa9t2hf_neon
wpa-supplicant-passphrase-2.10-r0.cortexa9t2hf_neon
gstreamer1.0-plugins-bad-webp-1.24.12-r0.cortexa9t2hf_neon_imx
libsolvext1-0.7.28-r0.cortexa9t2hf_neon
gstreamer1.0-plugins-good-rtsp-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-camerabin-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-insertbin-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-apps-1.24.12-r0.cortexa9t2hf_neon_imx
libgstplayer-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-waylandsink-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-mse-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-cairo-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-dash-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-smoothstreaming-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-uvch264-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-v4l2codecs-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-video4linux2-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-dvb-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-mpegtsdemux-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-mpegtsmux-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-sdpelem-1.24.12-r0.cortexa9t2hf_neon_imx
libgstwebrtc-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libgstdxva-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libharfbuzz-icu0-8.3.0-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-audiovisualizers-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-spectrum-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-gdkpixbuf-1.24.12-r0.cortexa9t2hf_neon_imx
libgdk-pixbuf-2.0-loader-gif-2.42.12-r0.cortexa9t2hf_neon
gstreamer1.0-plugins-base-ogg-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-matroska-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-codectimestamper-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-jpegformat-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-videoparsersbad-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-unixfd-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-asfmux-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-rist-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-rtpmanagerbad-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-rtponvif-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-dtmf-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-rtp-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-rtpmanager-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-aiff-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-autoconvert-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-codecalpha-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-mpegpsdemux-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-transcode-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-uvcgadget-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-apps-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-encoding-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-apetag-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-flv-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-goom-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-goom2k1-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-id3demux-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-replaygain-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-accurip-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-adpcmdec-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-adpcmenc-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-audiobuffersplit-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-audiofxbad-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-audiomixmatrix-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-debugutilsbad-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-decklink-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-freeverb-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-inter-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-legacyrawparse-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-mxf-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-segmentclip-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-siren-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-speed-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-timecode-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-videoframe-audiolevel-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-adder-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-audiomixer-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-audiorate-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-audiotestsrc-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-dsd-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-rawparse-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-vorbis-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-alaw-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-auparse-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-cutter-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-equalizer-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-flac-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-level-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-mulaw-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-ossaudio-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-wavenc-1.24.12-r0.cortexa9t2hf_neon_imx
libgstbadaudio-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-id3tag-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-theora-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-icydemux-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-bayer-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-coloreffects-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-dvbsubenc-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-dvbsuboverlay-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-dvdspu-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-fbdevsink-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-fieldanalysis-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-frei0r-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-gaudieffects-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-geometrictransform-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-interlace-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-ivtc-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-pnm-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-rfbsrc-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-smooth-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-videofiltersbad-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-videosignal-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-vmnc-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-y4mdec-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-basedebug-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-compositor-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-overlaycomposition-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-pbtypes-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-videorate-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-videotestsrc-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-ximagesink-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-alpha-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-alphacolor-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-debug-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-effectv-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-jpeg-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-multifile-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-navigationtest-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-png-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-shapewipe-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-smpte-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-videobox-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-videocrop-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-videofilter-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-videomixer-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-ximagesrc-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-y4menc-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-audiolatency-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-bluez-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-bz2-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-faceoverlay-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-festival-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-gdp-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-ipcpipeline-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-ivfparse-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-jp2kdecimator-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-midi-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-mpegpsmux-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-netsim-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-pcapparse-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-proxy-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-removesilence-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-rtmp2-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-shm-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-sndfile-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-subenc-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-switchbin-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-subparse-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-tcp-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-flxdec-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-imagefreeze-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-monoscope-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-multipart-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-udp-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-xingmux-1.24.12-r0.cortexa9t2hf_neon_imx
libgstsctp-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
shared-mime-info-data-2.4-r0.cortexa9t2hf_neon
wpewebkit-web-inspector-plugin-2.50.1-r0.cortexa9t2hf_neon_imx
desktop-file-utils-0.27-r0.cortexa9t2hf_neon
libjson-glib-1.0-0-1.8.0-r0.cortexa9t2hf_neon
mc-4.8.31-r0.cortexa9t2hf_neon
grep-3.11-r0.cortexa9t2hf_neon
gnupg-gpg-2.4.5-r0.cortexa9t2hf_neon
libavahi-core7-0.8-r0.cortexa9t2hf_neon
woff2-1.0.2-r0.cortexa9t2hf_neon
util-linux-swaponoff-2.39.3-r0.cortexa9t2hf_neon
mesa-vulkan-drivers-25.0.2-r0.cortexa9t2hf_neon_imx
libvulkan1-1.3.275.0.imx-r0.cortexa9t2hf_neon
sudo-sudo-1.9.15p5-r0.cortexa9t2hf_neon
sudo-1.9.15p5-r0.cortexa9t2hf_neon
at-3.2.5-r0.cortexa9t2hf_neon
iputils-ping6-20240117-r0.cortexa9t2hf_neon
libmozjs-115-115.8.0-r0.cortexa9t2hf_neon
ethtool-6.7-r0.cortexa9t2hf_neon
iproute2-ip-6.7.0-r0.cortexa9t2hf_neon
iproute2-6.7.0-r0.cortexa9t2hf_neon
libpsl5-0.21.5-r0.cortexa9t2hf_neon
wayland-utils-1.2.0-r0.cortexa9t2hf_neon
util-linux-cfdisk-2.39.3-r0.cortexa9t2hf_neon
util-linux-fdisk-2.39.3-r0.cortexa9t2hf_neon
util-linux-sfdisk-2.39.3-r0.cortexa9t2hf_neon
openjpeg-2.5.3-r0.cortexa9t2hf_neon
procps-ps-4.0.4-r0.cortexa9t2hf_neon
procps-sysctl-4.0.4-r0.cortexa9t2hf_neon
procps-4.0.4-r0.cortexa9t2hf_neon
logrotate-3.21.0-r0.cortexa9t2hf_neon
psplash-0.1+git0+ecc1913756-r0.cortexa9t2hf_neon
psplash-default-0.1+git0+ecc1913756-r0.cortexa9t2hf_neon
seatd-0.8.0-r0.cortexa9t2hf_neon
libpci3-3.11.1-r0.cortexa9t2hf_neon
iputils-arping-20240117-r0.cortexa9t2hf_neon
iputils-clockdiff-20240117-r0.cortexa9t2hf_neon
libnss-myhostname2-v255.21-r0.cortexa9t2hf_neon
libnss-systemd2-v255.21-r0.cortexa9t2hf_neon
pam-plugin-access-1.5.3-r0.cortexa9t2hf_neon
pam-plugin-faildelay-1.5.3-r0.cortexa9t2hf_neon
pam-plugin-group-1.5.3-r0.cortexa9t2hf_neon
pam-plugin-mail-1.5.3-r0.cortexa9t2hf_neon
pam-plugin-motd-1.5.3-r0.cortexa9t2hf_neon
pam-plugin-namespace-1.5.3-r0.cortexa9t2hf_neon
pam-plugin-nologin-1.5.3-r0.cortexa9t2hf_neon
pam-plugin-rootok-1.5.3-r0.cortexa9t2hf_neon
pam-plugin-securetty-1.5.3-r0.cortexa9t2hf_neon
pam-plugin-shells-1.5.3-r0.cortexa9t2hf_neon
pam-plugin-umask-1.5.3-r0.cortexa9t2hf_neon
util-linux-chfn-2.39.3-r0.cortexa9t2hf_neon
util-linux-chsh-2.39.3-r0.cortexa9t2hf_neon
util-linux-runuser-2.39.3-r0.cortexa9t2hf_neon
util-linux-su-2.39.3-r0.cortexa9t2hf_neon
ttf-dejavu-sans-2.37-r0.noarch
ttf-dejavu-sans-mono-2.37-r0.noarch
ttf-dejavu-serif-2.37-r0.noarch
iw-6.7-r0.cortexa9t2hf_neon
nfs-utils-mount-2.6.4-r0.cortexa9t2hf_neon
libmpfr6-4.2.1-r0.cortexa9t2hf_neon
nettle-3.9.1-r0.cortexa9t2hf_neon
libgnutls30-3.8.4-r0.cortexa9t2hf_neon
glib-networking-2.78.1-r0.cortexa9t2hf_neon
libmicrohttpd12-1.0.1-r0.cortexa9t2hf_neon
acl-2.3.2-r0.cortexa9t2hf_neon
libarchive-3.7.9-r0.cortexa9t2hf_neon
tar-1.35-r0.cortexa9t2hf_neon
attr-2.5.1-r0.cortexa9t2hf_neon
patch-2.7.6-r0.cortexa9t2hf_neon
libxft2-2.3.8-r0.cortexa9t2hf_neon
pango-1.52.1-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-analyticsoverlay-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-closedcaption-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-ttmlsubs-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-pango-1.24.12-r0.cortexa9t2hf_neon_imx
librsvg-2-2-2.57.1-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-rsvg-1.24.12-r0.cortexa9t2hf_neon_imx
libxrandr2-1.5.4-r0.cortexa9t2hf_neon
pinentry-1.2.1-r0.cortexa9t2hf_neon
libnl-route-3-200-3.9.0-r0.cortexa9t2hf_neon
e2fsprogs-dumpe2fs-1.47.0-r0.cortexa9t2hf_neon
e2fsprogs-mke2fs-1.47.0-r0.cortexa9t2hf_neon
libswscale7-6.1.2-r0.cortexa9t2hf_neon
libavfilter9-6.1.2-r0.cortexa9t2hf_neon
elfutils-binutils-0.191-r0.cortexa9t2hf_neon
debugedit-5.0-r0.cortexa9t2hf_neon
libasm1-0.191-r0.cortexa9t2hf_neon
elfutils-0.191-r0.cortexa9t2hf_neon
bc-1.07.1-r0.cortexa9t2hf_neon
gawk-5.3.0-r0.cortexa9t2hf_neon
e2fsprogs-badblocks-1.47.0-r0.cortexa9t2hf_neon
libksba8-1.6.6-r0.cortexa9t2hf_neon
gnupg-2.4.5-r0.cortexa9t2hf_neon
libss2-1.47.0-r0.cortexa9t2hf_neon
e2fsprogs-1.47.0-r0.cortexa9t2hf_neon
bzip2-1.0.8-r0.cortexa9t2hf_neon
libxslt-1.1.43-r0.cortexa9t2hf_neon
libxv1-1.0.12-r0.cortexa9t2hf_neon
gstreamer1.0-plugins-base-xvimagesink-1.24.12-r0.cortexa9t2hf_neon_imx
libxxf86vm1-1.1.5-r0.cortexa9t2hf_neon
libxcomposite1-0.4.6-r0.cortexa9t2hf_neon
libxkbfile1-1.1.3-r0.cortexa9t2hf_neon
xkbcomp-1.4.7-r0.cortexa9t2hf_neon
libxcb-composite0-1.16-r0.cortexa9t2hf_neon
libxcb-glx0-1.16-r0.cortexa9t2hf_neon
libformw5-6.4-r0.cortexa9t2hf_neon
libmenuw5-6.4-r0.cortexa9t2hf_neon
util-linux-irqtop-2.39.3-r0.cortexa9t2hf_neon
libdrm-etnaviv1-2.4.124-r0.cortexa9t2hf_neon
util-linux-mkswap-2.39.3-r0.cortexa9t2hf_neon
util-linux-swaplabel-2.39.3-r0.cortexa9t2hf_neon
util-linux-uuidd-2.39.3-r0.cortexa9t2hf_neon
util-linux-uuidgen-2.39.3-r0.cortexa9t2hf_neon
util-linux-uuidparse-2.39.3-r0.cortexa9t2hf_neon
util-linux-eject-2.39.3-r0.cortexa9t2hf_neon
util-linux-findmnt-2.39.3-r0.cortexa9t2hf_neon
util-linux-fstrim-2.39.3-r0.cortexa9t2hf_neon
util-linux-lsblk-2.39.3-r0.cortexa9t2hf_neon
util-linux-lslocks-2.39.3-r0.cortexa9t2hf_neon
util-linux-lsns-2.39.3-r0.cortexa9t2hf_neon
util-linux-mountpoint-2.39.3-r0.cortexa9t2hf_neon
util-linux-blkdiscard-2.39.3-r0.cortexa9t2hf_neon
util-linux-blkid-2.39.3-r0.cortexa9t2hf_neon
util-linux-findfs-2.39.3-r0.cortexa9t2hf_neon
util-linux-partx-2.39.3-r0.cortexa9t2hf_neon
util-linux-wipefs-2.39.3-r0.cortexa9t2hf_neon
util-linux-column-2.39.3-r0.cortexa9t2hf_neon
util-linux-fincore-2.39.3-r0.cortexa9t2hf_neon
util-linux-losetup-2.39.3-r0.cortexa9t2hf_neon
util-linux-lscpu-2.39.3-r0.cortexa9t2hf_neon
util-linux-lsfd-2.39.3-r0.cortexa9t2hf_neon
util-linux-lsipc-2.39.3-r0.cortexa9t2hf_neon
util-linux-lsirq-2.39.3-r0.cortexa9t2hf_neon
util-linux-lslogins-2.39.3-r0.cortexa9t2hf_neon
util-linux-lsmem-2.39.3-r0.cortexa9t2hf_neon
util-linux-prlimit-2.39.3-r0.cortexa9t2hf_neon
util-linux-rfkill-2.39.3-r0.cortexa9t2hf_neon
util-linux-wdctl-2.39.3-r0.cortexa9t2hf_neon
util-linux-zramctl-2.39.3-r0.cortexa9t2hf_neon
highway-1.0.4-r0.cortexa9t2hf_neon
libjxl-0.8.1-r0.cortexa9t2hf_neon
libtag2-2.0.1-r0.cortexa9t2hf_neon
gstreamer1.0-plugins-good-taglib-1.24.12-r0.cortexa9t2hf_neon_imx
libbacktrace0-1.0+git0+9ae4f4ae44-r0.cortexa9t2hf_neon
cracklib-2.9.11-r0.cortexa9t2hf_neon
libfontenc1-1.1.7-r0.cortexa9t2hf_neon
libxfont2-2-2.0.6-r0.cortexa9t2hf_neon
util-linux-fsck.cramfs-2.39.3-r0.cortexa9t2hf_neon
util-linux-mkfs.cramfs-2.39.3-r0.cortexa9t2hf_neon
busybox-udhcpc-1.36.1-r0.cortexa9t2hf_neon
busybox-1.36.1-r0.cortexa9t2hf_neon
libglib-2.0-utils-2.78.6-r0.cortexa9t2hf_neon
mc-helpers-perl-4.8.31-r0.cortexa9t2hf_neon
slang-2.3.3-r0.cortexa9t2hf_neon
cpio-2.15-r0.cortexa9t2hf_neon
cpupower-6.12.20-r0.wandboard_mesa
dav1d-0.9.1-r0.cortexa9t2hf_neon
libavif15-0.11.1-r0.cortexa9t2hf_neon
diffutils-3.10-r0.cortexa9t2hf_neon
dosfstools-4.2-r0.cortexa9t2hf_neon
ed-1.20.2-r0.cortexa9t2hf_neon
findutils-4.9.0-r0.cortexa9t2hf_neon
fuser-23.6-r0.cortexa9t2hf_neon
gzip-1.13-r0.cortexa9t2hf_neon
kernel-image-zimage-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-image-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-dibx000-common-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-usbserial-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-st-sensors-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-st-accel-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-au8522-common-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-mwifiex-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-siox-core-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-wire-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-wlcore-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-usb-wwan-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-ath-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-ath10k-core-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-bnep-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-brcmutil-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-brcmfmac-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-cdc-acm-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-g-ether-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-g-serial-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-gadgetfs-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-imx-vdoa-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-msdos-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-qca-7k-common-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-snd-hwdep-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-snd-usbmidi-lib-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-st-sensors-i2c-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-st-sensors-spi-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tuner-types-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-v4l2-cci-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-v4l2-jpeg-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-coda-vpu-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-ov2680-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tuner-simple-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-st-accel-spi-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-st-accel-i2c-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-snd-usb-audio-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-qcaspi-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
packagegroup-base-vfat-1.0-r0.wandboard_mesa
packagegroup-base-usbgadget-1.0-r0.wandboard_mesa
kernel-module-brcmfmac-bca-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-brcmfmac-cyw-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-brcmfmac-wcc-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-ath10k-sdio-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-option-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-wl12xx-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-wl18xx-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-ds2482-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-w1-therm-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-gpio-siox-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-siox-bus-gpio-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-mwifiex-pcie-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-mwifiex-sdio-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-au8522-decoder-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-au8522-dig-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-ftdi-sio-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-dib3000mc-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-dib7000m-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-dib7000p-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-dib8000-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-dib9000-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-a8293-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-adv7180-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-af9013-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-af9033-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-ascot2e-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-atbm8830-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-bcm3510-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-binfmt-misc-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-cdc-eem-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-crc7-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-cx22700-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-cx22702-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-cx24110-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-cx24113-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-cx24116-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-cx24117-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-cx24120-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-cx24123-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-cxd2099-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-cxd2820r-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-cxd2841er-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-cxd2880-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-cxd2880-spi-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-da9063-wdt-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-dib0070-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-dib0090-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-dib3000mb-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-dmatest-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-drx39xyj-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-drxd-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-drxk-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-ds3000-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-dvb-pll-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-dw-hdmi-ahb-audio-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-e4000-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-ec100-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-ehset-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-evbug-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-fc0011-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-fc0012-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-fc0013-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-fc2580-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-g-audio-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-g-ffs-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-g-mass-storage-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-g-ncm-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-g-zero-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-gpio-beeper-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-helene-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-horus3a-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-i2c-algo-pca-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-i2c-algo-pcf-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-imx-sdma-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-irq-imx-mu-msi-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-isl6405-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-isl6421-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-isl6423-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-isofs-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-it913x-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-itd1000-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-ix2505v-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-l64781-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-lg2160-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-lgdt3305-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-lgdt3306a-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-lgdt330x-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-lgs8gl5-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-lgs8gxx-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-libcrc32c-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-lm75-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-lnbh25-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-lnbh29-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-lnbp21-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-lnbp22-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-lvds-codec-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-m88ds3103-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-m88rs2000-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-m88rs6000t-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-max2165-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-mb86a16-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-mb86a20s-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-mc44s803-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-mn88443x-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-mn88472-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-mn88473-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-msi001-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-mt2060-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-mt2063-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-mt20xx-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-mt2131-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-mt2266-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-mt312-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-mt352-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-mxl301rf-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-mxl5005s-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-mxl5007t-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-mxl5xx-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-mxl692-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-nls-iso8859-15-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-nxt200x-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-nxt6000-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-or51132-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-or51211-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-ov5640-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-ov5645-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-pegasus-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-psmouse-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-qm1d1b0004-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-qm1d1c0042-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-qt1010-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-r820t-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-rn5t618-power-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-rtl2830-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-rtl2832-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-rtl2832-sdr-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-rtl8150-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-s5h1409-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-s5h1411-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-s5h1420-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-s5h1432-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-s921-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-serport-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-si2157-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-si2165-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-si2168-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-si21xx-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-sp2-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-sp887x-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-stb0899-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-stb6000-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-stb6100-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-stv0288-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-stv0297-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-stv0299-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-stv0367-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-stv0900-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-stv090x-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-stv0910-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-stv6110-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-stv6110x-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-stv6111-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tc90522-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tda10021-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tda10023-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tda10048-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tda1004x-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tda10071-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tda10086-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tda18212-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tda18218-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tda18250-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tda18271-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tda18271c2dd-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tda665x-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tda8083-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tda8261-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tda826x-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tda827x-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tda8290-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tda9887-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tea5761-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tea5767-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-ts2020-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tua6100-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-tua9001-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-udf-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-usbtest-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-uvcvideo-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-ves1820-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-ves1x93-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-wlcore-sdio-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-xc2028-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-xc4000-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-xc5000-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-zd1301-demod-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-zl10036-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-zl10039-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-module-zl10353-6.12.20-fslc-fslc-g844aa3471b97-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kernel-modules-6.12.20+git0+844aa3471b-r0.wandboard_mesa
killall-23.6-r0.cortexa9t2hf_neon
less-643-r0.cortexa9t2hf_neon
libcap-ng-0.8.5-r0.cortexa9t2hf_neon
util-linux-setpriv-2.39.3-r0.cortexa9t2hf_neon
libdaemon0-0.14-r0.cortexa9t2hf_neon
libell0-0.64-r0.cortexa9t2hf_neon
libevent-2.1-7-2.1.12-r0.cortexa9t2hf_neon
libgdbm6-1.23-r0.cortexa9t2hf_neon
libaprutil-1-0-1.6.3-r0.cortexa9t2hf_neon
apache2-utils-2.4.65-r0.cortexa9t2hf_neon
apache2-2.4.65-r0.cortexa9t2hf_neon
libgomp1-13.3.0-r0.cortexa9t2hf_neon
libjson-c5-0.17-r0.cortexa9t2hf_neon
liblz1-1.14-r0.cortexa9t2hf_neon
file-5.45-r0.cortexa9t2hf_neon
libmd0-1.1.0-r0.cortexa9t2hf_neon
libbsd0-0.12.1-r0.cortexa9t2hf_neon
libmp3lame0-3.100-r0.cortexa9t2hf_neon
gstreamer1.0-plugins-good-lame-1.24.12-r0.cortexa9t2hf_neon_imx
libncurses5-6.4-r0.cortexa9t2hf_neon
libedit0-20230828+3.1-r1.cortexa9t2hf_neon
python3-compression-3.12.11-r0.cortexa9t2hf_neon
python3-core-3.12.11-r0.cortexa9t2hf_neon
python3-stringold-3.12.11-r0.cortexa9t2hf_neon
python3-datetime-3.12.11-r0.cortexa9t2hf_neon
python3-math-3.12.11-r0.cortexa9t2hf_neon
python3-crypt-3.12.11-r0.cortexa9t2hf_neon
python3-numbers-3.12.11-r0.cortexa9t2hf_neon
python3-pprint-3.12.11-r0.cortexa9t2hf_neon
python3-threading-3.12.11-r0.cortexa9t2hf_neon
python3-shell-3.12.11-r0.cortexa9t2hf_neon
python3-pickle-3.12.11-r0.cortexa9t2hf_neon
python3-json-3.12.11-r0.cortexa9t2hf_neon
python3-codecs-3.12.11-r0.cortexa9t2hf_neon
python3-difflib-3.12.11-r0.cortexa9t2hf_neon
python3-html-3.12.11-r0.cortexa9t2hf_neon
python3-mime-3.12.11-r0.cortexa9t2hf_neon
python3-email-3.12.11-r0.cortexa9t2hf_neon
python3-netclient-3.12.11-r0.cortexa9t2hf_neon
python3-io-3.12.11-r0.cortexa9t2hf_neon
python3-ctypes-3.12.11-r0.cortexa9t2hf_neon
python3-netserver-3.12.11-r0.cortexa9t2hf_neon
python3-logging-3.12.11-r0.cortexa9t2hf_neon
python3-pydoc-3.12.11-r0.cortexa9t2hf_neon
python3-six-1.16.0-r0.cortexa9t2hf_neon
python3-debugger-3.12.11-r0.cortexa9t2hf_neon
librepo0-1.17.0-r0.cortexa9t2hf_neon
python3-mmap-3.12.11-r0.cortexa9t2hf_neon
python3-pkgutil-3.12.11-r0.cortexa9t2hf_neon
python3-xml-3.12.11-r0.cortexa9t2hf_neon
python3-plistlib-3.12.11-r0.cortexa9t2hf_neon
python3-pkg-resources-69.1.1-r0.cortexa9t2hf_neon
python3-multiprocessing-3.12.11-r0.cortexa9t2hf_neon
python3-pyparsing-3.1.1-r0.cortexa9t2hf_neon
python3-cycler-0.12.1-r0.cortexa9t2hf_neon
python3-dateutil-2.9.0-r0.cortexa9t2hf_neon
python3-asyncio-3.12.11-r0.cortexa9t2hf_neon
python3-unittest-3.12.11-r0.cortexa9t2hf_neon
python3-doctest-3.12.11-r0.cortexa9t2hf_neon
python3-pytz-2024.1-r0.cortexa9t2hf_neon
python3-sqlite3-3.12.11-r0.cortexa9t2hf_neon
libcomps0-0.1.20-r0.cortexa9t2hf_neon
python3-audio-3.12.11-r0.cortexa9t2hf_neon
python3-misc-3.12.11-r0.cortexa9t2hf_neon
python3-numpy-1.26.4-r0.cortexa9t2hf_neon
python3-pillow-10.3.0-r0.cortexa9t2hf_neon
python3-compile-3.12.11-r0.cortexa9t2hf_neon
python3-setuptools-69.1.1-r0.cortexa9t2hf_neon
python3-kiwisolver-1.4.5-r0.cortexa9t2hf_neon
python3-curses-3.12.11-r0.cortexa9t2hf_neon
python3-fcntl-3.12.11-r0.cortexa9t2hf_neon
python3-profile-3.12.11-r0.cortexa9t2hf_neon
python3-packaging-23.2-r0.cortexa9t2hf_neon
python3-matplotlib-3.7.2-r0.cortexa9t2hf_neon
rpm-build-4.19.1.1-r0.cortexa9t2hf_neon
python3-rpm-4.19.1.1-r0.cortexa9t2hf_neon
libnghttp2-14-1.61.0-r0.cortexa9t2hf_neon
libsoup-3.4.4-r0.cortexa9t2hf_neon
gstreamer1.0-plugins-good-soup-1.24.12-r0.cortexa9t2hf_neon_imx
libsamplerate0-0.2.2-r0.cortexa9t2hf_neon
libsbc1-2.0-r0.cortexa9t2hf_neon
gstreamer1.0-plugins-bad-sbc-1.24.12-r0.cortexa9t2hf_neon_imx
libsdl2-2.0-0-2.30.1-r0.cortexa9t2hf_neon_imx
libspeex1-1.2.1-r0.cortexa9t2hf_neon
gstreamer1.0-plugins-good-speex-1.24.12-r0.cortexa9t2hf_neon_imx
libtraceevent1-1.7.3-r0.cortexa9t2hf_neon
libxcvt-0.1.2-r0.cortexa9t2hf_neon
libyaml-0-2-0.2.5-r0.cortexa9t2hf_neon
libmodulemd-2.15.0-r0.cortexa9t2hf_neon
libdnf2-0.73.2-r0.cortexa9t2hf_neon
mc-helpers-4.8.31-r0.cortexa9t2hf_neon
mtdev-1.1.6-r0.cortexa9t2hf_neon
libinput10-1.25.0-r0.cortexa9t2hf_neon
net-tools-mii-tool-2.10-r0.cortexa9t2hf_neon
net-tools-2.10-r0.cortexa9t2hf_neon
openssh-scp-9.6p1-r0.cortexa9t2hf_neon
pstree-23.6-r0.cortexa9t2hf_neon
psmisc-23.6-r0.cortexa9t2hf_neon
sed-4.9-r0.cortexa9t2hf_neon
sysklogd-2.5.2-r0.cortexa9t2hf_neon
time-1.9-r0.cortexa9t2hf_neon
update-rc.d-0.8+git0+b8f9501050-r0.noarch
util-linux-blockdev-2.39.3-r0.cortexa9t2hf_neon
util-linux-cal-2.39.3-r0.cortexa9t2hf_neon
util-linux-chrt-2.39.3-r0.cortexa9t2hf_neon
util-linux-dmesg-2.39.3-r0.cortexa9t2hf_neon
util-linux-fallocate-2.39.3-r0.cortexa9t2hf_neon
util-linux-flock-2.39.3-r0.cortexa9t2hf_neon
util-linux-fsfreeze-2.39.3-r0.cortexa9t2hf_neon
util-linux-getopt-2.39.3-r0.cortexa9t2hf_neon
util-linux-hexdump-2.39.3-r0.cortexa9t2hf_neon
util-linux-hwclock-2.39.3-r0.cortexa9t2hf_neon
util-linux-ionice-2.39.3-r0.cortexa9t2hf_neon
util-linux-ipcrm-2.39.3-r0.cortexa9t2hf_neon
util-linux-ipcs-2.39.3-r0.cortexa9t2hf_neon
util-linux-kill-2.39.3-r0.cortexa9t2hf_neon
util-linux-last-2.39.3-r0.cortexa9t2hf_neon
util-linux-logger-2.39.3-r0.cortexa9t2hf_neon
util-linux-mcookie-2.39.3-r0.cortexa9t2hf_neon
util-linux-mesg-2.39.3-r0.cortexa9t2hf_neon
util-linux-more-2.39.3-r0.cortexa9t2hf_neon
util-linux-nologin-2.39.3-r0.cortexa9t2hf_neon
util-linux-nsenter-2.39.3-r0.cortexa9t2hf_neon
util-linux-pivot-root-2.39.3-r0.cortexa9t2hf_neon
util-linux-readprofile-2.39.3-r0.cortexa9t2hf_neon
util-linux-renice-2.39.3-r0.cortexa9t2hf_neon
util-linux-rev-2.39.3-r0.cortexa9t2hf_neon
util-linux-rtcwake-2.39.3-r0.cortexa9t2hf_neon
util-linux-scriptreplay-2.39.3-r0.cortexa9t2hf_neon
util-linux-setsid-2.39.3-r0.cortexa9t2hf_neon
util-linux-switch-root-2.39.3-r0.cortexa9t2hf_neon
util-linux-taskset-2.39.3-r0.cortexa9t2hf_neon
util-linux-unshare-2.39.3-r0.cortexa9t2hf_neon
util-linux-utmpdump-2.39.3-r0.cortexa9t2hf_neon
util-linux-wall-2.39.3-r0.cortexa9t2hf_neon
volatile-binds-1.0-r0.noarch
ncurses-6.4-r0.cortexa9t2hf_neon
util-linux-setterm-2.39.3-r0.cortexa9t2hf_neon
util-linux-ul-2.39.3-r0.cortexa9t2hf_neon
coreutils-stdbuf-9.4-r0.cortexa9t2hf_neon
coreutils-9.4-r0.cortexa9t2hf_neon
iputils-tracepath-20240117-r0.cortexa9t2hf_neon
iputils-20240117-r0.cortexa9t2hf_neon
packagegroup-core-full-cmdline-extended-1.0-r0.noarch
m4-1.4.19-r0.cortexa9t2hf_neon
make-4.4.1-r0.cortexa9t2hf_neon
packagegroup-core-full-cmdline-dev-utils-1.0-r0.noarch
makedevs-1.0.1-r0.cortexa9t2hf_neon
ntp-tickadj-4.2.8p17-r0.cortexa9t2hf_neon
openssh-sftp-server-9.6p1-r0.cortexa9t2hf_neon
util-linux-addpart-2.39.3-r0.cortexa9t2hf_neon
util-linux-blkpr-2.39.3-r0.cortexa9t2hf_neon
util-linux-blkzone-2.39.3-r0.cortexa9t2hf_neon
util-linux-chcpu-2.39.3-r0.cortexa9t2hf_neon
util-linux-chmem-2.39.3-r0.cortexa9t2hf_neon
util-linux-choom-2.39.3-r0.cortexa9t2hf_neon
util-linux-col-2.39.3-r0.cortexa9t2hf_neon
util-linux-colcrt-2.39.3-r0.cortexa9t2hf_neon
util-linux-colrm-2.39.3-r0.cortexa9t2hf_neon
util-linux-ctrlaltdel-2.39.3-r0.cortexa9t2hf_neon
util-linux-delpart-2.39.3-r0.cortexa9t2hf_neon
util-linux-fadvise-2.39.3-r0.cortexa9t2hf_neon
util-linux-hardlink-2.39.3-r0.cortexa9t2hf_neon
util-linux-ipcmk-2.39.3-r0.cortexa9t2hf_neon
util-linux-isosize-2.39.3-r0.cortexa9t2hf_neon
util-linux-ldattach-2.39.3-r0.cortexa9t2hf_neon
util-linux-look-2.39.3-r0.cortexa9t2hf_neon
util-linux-mkfs-2.39.3-r0.cortexa9t2hf_neon
util-linux-namei-2.39.3-r0.cortexa9t2hf_neon
util-linux-pipesz-2.39.3-r0.cortexa9t2hf_neon
util-linux-rename-2.39.3-r0.cortexa9t2hf_neon
util-linux-resizepart-2.39.3-r0.cortexa9t2hf_neon
util-linux-script-2.39.3-r0.cortexa9t2hf_neon
util-linux-scriptlive-2.39.3-r0.cortexa9t2hf_neon
util-linux-setarch-2.39.3-r0.cortexa9t2hf_neon
util-linux-uclampset-2.39.3-r0.cortexa9t2hf_neon
util-linux-waitpid-2.39.3-r0.cortexa9t2hf_neon
util-linux-whereis-2.39.3-r0.cortexa9t2hf_neon
util-linux-write-2.39.3-r0.cortexa9t2hf_neon
util-linux-2.39.3-r0.cortexa9t2hf_neon
wpa-supplicant-cli-2.10-r0.cortexa9t2hf_neon
xkeyboard-config-2.41-r0.cortexa9t2hf_neon
wpa-supplicant-plugins-2.10-r0.cortexa9t2hf_neon
wireless-regdb-static-2024.10.07-r0.noarch
udev-rules-imx-1.0-r0.cortexa9t2hf_neon
u-boot-fslc-extlinux-2025.01+fslc+git0+aa4bc52d08-r0.wandboard_mesa
u-boot-fslc-env-2025.01+fslc+git0+aa4bc52d08-r0.wandboard_mesa
u-boot-fslc-2025.01+fslc+git0+aa4bc52d08-r0.wandboard_mesa
systemd-udev-rules-v255.21-r0.cortexa9t2hf_neon
systemd-serialgetty-1.0-r0.wandboard_mesa
systemd-conf-1.0-r0.wandboard_mesa
shadow-securetty-4.6-r0.wandboard_mesa
shadow-4.14.2-r0.cortexa9t2hf_neon
udev-v255.21-r0.cortexa9t2hf_neon
rpcbind-1.2.6-r0.cortexa9t2hf_neon
udev-hwdb-v255.21-r0.cortexa9t2hf_neon
usbutils-017-r0.cortexa9t2hf_neon
packagegroup-base-usbhost-1.0-r0.wandboard_mesa
nfs-utils-client-2.6.4-r0.cortexa9t2hf_neon
nfs-utils-2.6.4-r0.cortexa9t2hf_neon
packagegroup-base-nfs-1.0-r0.wandboard_mesa
cronie-1.7.2-r0.cortexa9t2hf_neon
packagegroup-core-full-cmdline-sys-services-1.0-r0.noarch
dbus-common-1.14.10-r0.cortexa9t2hf_neon
dbus-tools-1.14.10-r0.cortexa9t2hf_neon
libdbus-1-3-1.14.10-r0.cortexa9t2hf_neon
dbus-1-1.14.10-r0.cortexa9t2hf_neon
bluez5-5.72-r0.cortexa9t2hf_neon
at-spi2-core-2.50.1-r0.cortexa9t2hf_neon
avahi-daemon-0.8-r0.cortexa9t2hf_neon
libnss-mdns-0.15.1-r0.cortexa9t2hf_neon
libpulsecommon-17.0-r0.cortexa9t2hf_neon
libpulse0-17.0-r0.cortexa9t2hf_neon
wpa-supplicant-2.10-r0.cortexa9t2hf_neon
neard-0.19-r0.cortexa9t2hf_neon
packagegroup-base-nfc-1.0-r0.wandboard_mesa
packagegroup-base-wifi-1.0-r0.wandboard_mesa
gstreamer1.0-plugins-good-pulseaudio-1.24.12-r0.cortexa9t2hf_neon_imx
libpulse-simple0-17.0-r0.cortexa9t2hf_neon
mpg123-1.32.10-r0.cortexa9t2hf_neon
gstreamer1.0-plugins-good-mpg123-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-meta-1.24.12-r0.cortexa9t2hf_neon_imx
packagegroup-base-zeroconf-1.0-r0.wandboard_mesa
packagegroup-base-bluetooth-1.0-r0.wandboard_mesa
openssh-sshd-9.6p1-r0.cortexa9t2hf_neon
openssh-9.6p1-r0.cortexa9t2hf_neon
packagegroup-core-full-cmdline-multiuser-1.0-r0.noarch
polkit-124-r0.cortexa9t2hf_neon
pciutils-ids-3.11.1-r0.cortexa9t2hf_neon
pciutils-3.11.1-r0.cortexa9t2hf_neon
packagegroup-base-pci-1.0-r0.wandboard_mesa
packagegroup-base-ipv6-1.0-r0.wandboard_mesa
os-release-1.0-r0.noarch
netbase-6.4-r0.noarch
mobile-broadband-provider-info-20240407-r0.cortexa9t2hf_neon
ofono-2.4-r0.cortexa9t2hf_neon
packagegroup-base-3g-1.0-r0.wandboard_mesa
mesa-etnaviv-env-0.1-r0.wandboard_mesa
mesa-megadriver-25.0.2-r0.cortexa9t2hf_neon_imx
libegl-mesa-25.0.2-r0.cortexa9t2hf_neon_imx
libgstgl-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libgl-mesa-25.0.2-r0.cortexa9t2hf_neon_imx
xwayland-23.2.5-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-opengl-1.24.12-r0.cortexa9t2hf_neon_imx
libgstcuda-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
libgles3-mesa-25.0.2-r0.cortexa9t2hf_neon_imx
libgles2-mesa-25.0.2-r0.cortexa9t2hf_neon_imx
mc-shell-4.8.31-r0.cortexa9t2hf_neon
packagegroup-core-full-cmdline-utils-1.0-r0.noarch
libx11-locale-1.8.9-r0.cortexa9t2hf_neon
libxkbcommon0-1.6.0-r0.cortexa9t2hf_neon
libweston-13-0-13.0.1-r0.cortexa9t2hf_neon_imx
weston-13.0.1-r0.cortexa9t2hf_neon_imx
weston-init-1.0-r0.wandboard_mesa
libwpe-1.0-1-1.16.2-r0.cortexa9t2hf_neon_imx
libxkbcommon-x11-0-1.6.0-r0.cortexa9t2hf_neon
libgstvulkan-1.0-0-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-vulkan-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-meta-1.24.12-r0.cortexa9t2hf_neon_imx
libwpebackend-fdo-1.0-1-1.16.0-r0.cortexa9t2hf_neon
weston-examples-13.0.1-r0.cortexa9t2hf_neon_imx
libc6-dbg-2.39+git0+3463100f2d-r0.cortexa9t2hf_neon
kernel-devicetree-6.12.20+git0+844aa3471b-r0.wandboard_mesa
kbd-keymaps-pine-2.6.4-r0.cortexa9t2hf_neon
kbd-keymaps-2.6.4-r0.cortexa9t2hf_neon
kbd-consolefonts-2.6.4-r0.cortexa9t2hf_neon
systemd-vconsole-setup-v255.21-r0.cortexa9t2hf_neon
systemd-compat-units-1.0-r0.cortexa9t2hf_neon
systemd-v255.21-r0.cortexa9t2hf_neon
packagegroup-core-boot-1.0-r0.wandboard_mesa
packagegroup-distro-base-1.0-r0.wandboard_mesa
packagegroup-core-full-cmdline-initscripts-1.0-r0.noarch
hicolor-icon-theme-0.17-r0.noarch
glibc-gconv-2.39+git-r0.cortexa9t2hf_neon
glibc-gconv-iso8859-1-2.39+git-r0.cortexa9t2hf_neon
libgtk-3.0-3.24.41-r0.cortexa9t2hf_neon_imx
adwaita-icon-theme-symbolic-45.0-r0.noarch
libdazzle-3.44.0-r0.cortexa9t2hf_neon
firmware-imx-vpu-imx6q-8.26.1-r0.noarch
firmware-imx-vpu-imx6d-8.26.1-r0.noarch
firmware-imx-epdc-8.26.1-r0.noarch
packagegroup-machine-base-1.0-r0.wandboard_mesa
alsa-ucm-conf-1.2.11-r0.noarch
alsa-topology-conf-1.2.5.1-r0.noarch
alsa-conf-1.2.11-r0.cortexa9t2hf_neon
libasound2-1.2.11-r0.cortexa9t2hf_neon
alsa-utils-alsactl-1.2.11-r0.cortexa9t2hf_neon
alsa-state-0.2.0-r0.wandboard_mesa
alsa-utils-amixer-1.2.11-r0.cortexa9t2hf_neon
packagegroup-base-alsa-1.0-r0.wandboard_mesa
packagegroup-base-1.0-r0.wandboard_mesa
gstreamer1.0-plugins-base-alsa-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-meta-1.24.12-r0.cortexa9t2hf_neon_imx
wpewebkit-2.50.1-r0.cortexa9t2hf_neon_imx
libatopology2-1.2.11-r0.cortexa9t2hf_neon
alsa-utils-alsatplg-1.2.11-r0.cortexa9t2hf_neon
wpe-simple-launcher-git-r0.cortexa9t2hf_neon
packagegroup-base-extended-1.0-r0.wandboard_mesa
alsa-tools-1.2.11-r0.cortexa9t2hf_neon
alsa-utils-aconnect-1.2.11-r0.cortexa9t2hf_neon
alsa-utils-alsaloop-1.2.11-r0.cortexa9t2hf_neon
alsa-utils-alsamixer-1.2.11-r0.cortexa9t2hf_neon
alsa-utils-aplay-1.2.11-r0.cortexa9t2hf_neon
alsa-utils-midi-1.2.11-r0.cortexa9t2hf_neon
alsa-utils-speakertest-1.2.11-r0.cortexa9t2hf_neon
locale-base-en-us-2.39+git-r0.cortexa9t2hf_neon
locale-base-es-es-2.39+git-r0.cortexa9t2hf_neon
sysprof-3.44.0-r0.cortexa9t2hf_neon
packagegroup-core-full-cmdline-1.0-r0.noarch
systemd-analyze-v255.21-r0.cortexa9t2hf_neon
valgrind-3.22.0-r0.cortexa9t2hf_neon
packagegroup-core-weston-1.0-r0.noarch
mesa-demos-9.0.0-r0.cortexa9t2hf_neon_imx
weston-xwayland-13.0.1-r0.cortexa9t2hf_neon_imx
waylandeglinfo-git-r0.cortexa9t2hf_neon_imx
wpe-testbed-git-r0.cortexa9t2hf_neon_imx
packagegroup-core-ssh-openssh-1.0-r0.noarch
dhcpcd-10.0.6-r0.cortexa9t2hf_neon
ntp-4.2.8p17-r0.cortexa9t2hf_neon
dnf-4.19.0-r0.cortexa9t2hf_neon
perf-6.12.20-r0.wandboard_mesa
libsdl2-image-2.0-0-2.0.5-r0.cortexa9t2hf_neon
smem-1.5-r0.cortexa9t2hf_neon
python3-uinput-1.0.1-r0.cortexa9t2hf_neon
gdb-14.2-r0.cortexa9t2hf_neon
configure-scripts-0.1-r0.cortexa9t2hf_neon
vulkan-headers-1.3.275.0.imx-r0.cortexa9t2hf_neon
stress-ng-0.17.05-r0.cortexa9t2hf_neon
nano-7.2-r0.cortexa9t2hf_neon
apache2-scripts-2.4.65-r0.cortexa9t2hf_neon
cpupower-init-1.0-r0.cortexa9t2hf_neon
gstreamer1.0-libav-1.24.12-r0.cortexa9t2hf_neon
curl-8.7.1-r0.cortexa9t2hf_neon
git-2.44.3-r0.cortexa9t2hf_neon
gdbserver-14.2-r0.cortexa9t2hf_neon
glmark2-2023.01-r0.cortexa9t2hf_neon_imx
htop-3.3.0-r0.cortexa9t2hf_neon
e2fsprogs-resize2fs-1.47.0-r0.cortexa9t2hf_neon
e2fsprogs-tune2fs-1.47.0-r0.cortexa9t2hf_neon
parted-3.6-r0.cortexa9t2hf_neon
libglfw3-3.3.8+git0+7482de6071-r0.cortexa9t2hf_neon
libassimp5-5.0.1-r0.cortexa9t2hf_neon
bridge-utils-1.7.1-r0.cortexa9t2hf_neon
liblzo2-2-2.10-r0.cortexa9t2hf_neon
strace-6.7-r0.cortexa9t2hf_neon
openssh-sftp-9.6p1-r0.cortexa9t2hf_neon
pv-1.6.20-r0.cortexa9t2hf_neon
glm-0.9.9.8+0.9.9.9+git0+efec5db081-r0.cortexa9t2hf_neon
xz-locale-es-5.4.7-r0.cortexa9t2hf_neon
xkeyboard-config-locale-es-2.41-r0.cortexa9t2hf_neon
util-linux-locale-es-2.39.3-r0.cortexa9t2hf_neon
tar-locale-es-1.35-r0.cortexa9t2hf_neon
systemd-locale-es-v255.21-r0.cortexa9t2hf_neon
sysprof-locale-es-3.44.0-r0.cortexa9t2hf_neon
sudo-locale-es-1.9.15p5-r0.cortexa9t2hf_neon
shared-mime-info-locale-es-2.4-r0.cortexa9t2hf_neon
shadow-locale-es-4.14.2-r0.cortexa9t2hf_neon
sed-locale-es-4.9-r0.cortexa9t2hf_neon
pulseaudio-locale-es-17.0-r0.cortexa9t2hf_neon
psmisc-locale-es-23.6-r0.cortexa9t2hf_neon
procps-locale-es-4.0.4-r0.cortexa9t2hf_neon
parted-locale-es-3.6-r0.cortexa9t2hf_neon
nano-locale-es-7.2-r0.cortexa9t2hf_neon
mc-locale-es-4.8.31-r0.cortexa9t2hf_neon
make-locale-es-4.4.1-r0.cortexa9t2hf_neon
m4-locale-es-1.4.19-r0.cortexa9t2hf_neon
libsoup-3.0-locale-es-3.4.4-r0.cortexa9t2hf_neon
libpopt-locale-es-1.19-r0.cortexa9t2hf_neon
libpam-locale-es-1.5.3-r0.cortexa9t2hf_neon
libjson-glib-1.0-locale-es-1.8.0-r0.cortexa9t2hf_neon
libidn2-locale-es-2.3.7-r0.cortexa9t2hf_neon
libgpg-error-locale-es-1.48-r0.cortexa9t2hf_neon
libgnutls-locale-es-3.8.4-r0.cortexa9t2hf_neon
libglib-2.0-locale-es-2.78.6-r0.cortexa9t2hf_neon
libgdk-pixbuf-2.0-locale-es-2.42.12-r0.cortexa9t2hf_neon
libgdbm-locale-es-1.23-r0.cortexa9t2hf_neon
libdnf-locale-es-0.73.2-r0.cortexa9t2hf_neon
libdazzle-locale-es-3.44.0-r0.cortexa9t2hf_neon
kbd-locale-es-2.6.4-r0.cortexa9t2hf_neon
gtk+3-locale-es-3.24.41-r0.cortexa9t2hf_neon_imx
gtk+3-locale-en-3.24.41-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-good-locale-es-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-base-locale-es-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-plugins-bad-locale-es-1.24.12-r0.cortexa9t2hf_neon_imx
gstreamer1.0-locale-es-1.24.12-r0.cortexa9t2hf_neon
grep-locale-es-3.11-r0.cortexa9t2hf_neon
gnupg-locale-es-2.4.5-r0.cortexa9t2hf_neon
glibc-locale-es-2.39+git-r0.cortexa9t2hf_neon
glib-networking-locale-es-2.78.1-r0.cortexa9t2hf_neon
gawk-locale-es-5.3.0-r0.cortexa9t2hf_neon
findutils-locale-es-4.9.0-r0.cortexa9t2hf_neon
elfutils-locale-es-0.191-r0.cortexa9t2hf_neon
e2fsprogs-locale-es-1.47.0-r0.cortexa9t2hf_neon
dnf-locale-es-4.19.0-r0.cortexa9t2hf_neon
diffutils-locale-es-3.10-r0.cortexa9t2hf_neon
cracklib-locale-es-2.9.11-r0.cortexa9t2hf_neon
cpio-locale-es-2.15-r0.cortexa9t2hf_neon
coreutils-locale-es-9.4-r0.cortexa9t2hf_neon
bash-locale-es-5.2.21-r0.cortexa9t2hf_neon
avahi-locale-es-0.8-r0.cortexa9t2hf_neon
attr-locale-es-2.5.1-r0.cortexa9t2hf_neon
at-spi2-core-locale-es-2.50.1-r0.cortexa9t2hf_neon
acl-locale-es-2.3.2-r0.cortexa9t2hf_neon</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:12:56.263367" elapsed="0.002252"/>
</kw>
<timeout value="1 minute"/>
<status status="PASS" start="2026-02-19T20:12:54.443008" elapsed="1.822975"/>
</test>
<test id="s1-s1-t3" name="Check Kernel Configuration available in /proc/config.gz" line="22">
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:12:56.268431" level="INFO">${TEST_BOARD_IP} = 192.168.1.72</msg>
<var>${TEST_BOARD_IP}</var>
<arg>TEST_BOARD_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:12:56.267987" elapsed="0.000509"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:12:56.849270" level="INFO">${stdout} = ('# Linux/arm 6.12.20 Kernel Configuration', '')</msg>
<var>${stdout}</var>
<arg>${TEST_BOARD_IP}</arg>
<arg>zcat /proc/config.gz |grep "Kernel Configuration"</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:12:56.268896" elapsed="0.580536"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:12:56.851172" level="INFO">('# Linux/arm 6.12.20 Kernel Configuration', '')</msg>
<arg>${stdout}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:12:56.850301" elapsed="0.001145"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${stdout}[0]</arg>
<arg>Kernel Configuration</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-02-19T20:12:56.852167" elapsed="0.000979"/>
</kw>
<timeout value="1 minute"/>
<status status="PASS" start="2026-02-19T20:12:56.266903" elapsed="0.586906"/>
</test>
<test id="s1-s1-t4" name="Check L2 Cache is enabled" line="28">
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:12:56.855810" level="INFO">${TEST_BOARD_IP} = 192.168.1.72</msg>
<var>${TEST_BOARD_IP}</var>
<arg>TEST_BOARD_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:12:56.855259" elapsed="0.000627"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:12:57.448503" level="INFO">${stdout} = ('L2 cache enabled', '')</msg>
<var>${stdout}</var>
<arg>${TEST_BOARD_IP}</arg>
<arg>/root/scripts/check-l2-cache-is-enabled.sh</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:12:56.856235" elapsed="0.592484"/>
</kw>
<kw name="Should Be Equal As Strings" owner="BuiltIn">
<arg>${stdout}[0]</arg>
<arg>L2 cache enabled</arg>
<doc>Fails if objects are unequal after converting them to strings.</doc>
<status status="PASS" start="2026-02-19T20:12:57.449653" elapsed="0.001157"/>
</kw>
<timeout value="1 minute"/>
<status status="PASS" start="2026-02-19T20:12:56.854431" elapsed="0.597228"/>
</test>
<test id="s1-s1-t5" name="Check Kernel Configuration CONFIG_HID_MULTITOUCH Is Enabled" line="33">
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:12:57.454175" level="INFO">${TEST_BOARD_IP} = 192.168.1.72</msg>
<var>${TEST_BOARD_IP}</var>
<arg>TEST_BOARD_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:12:57.453674" elapsed="0.000578"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:12:58.076796" level="INFO">${stdout} = ('CONFIG_HID_MULTITOUCH=y', '')</msg>
<var>${stdout}</var>
<arg>${TEST_BOARD_IP}</arg>
<arg>zcat /proc/config.gz | grep "CONFIG_HID_MULTITOUCH"</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:12:57.454609" elapsed="0.622349"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:12:58.078620" level="INFO">('CONFIG_HID_MULTITOUCH=y', '')</msg>
<arg>${stdout}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:12:58.077794" elapsed="0.001102"/>
</kw>
<kw name="Should Not Contain" owner="BuiltIn">
<arg>${stdout}[0]</arg>
<arg>CONFIG_HID_MULTITOUCH is not set</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="PASS" start="2026-02-19T20:12:58.079674" elapsed="0.001162"/>
</kw>
<doc>Verify that the kernel configuration contains
CONFIG_HID_MULTITOUCH enabled. This ensures that
multitouch input support is available in the kernel.
The test fails if the configuration is missing or
explicitly disabled.</doc>
<timeout value="1 minute"/>
<status status="PASS" start="2026-02-19T20:12:57.452416" elapsed="0.629360"/>
</test>
<test id="s1-s1-t6" name="Check Weston Service" line="44">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Start And Status Weston Service">
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:12:58.085081" level="INFO">${TEST_BOARD_IP} = 192.168.1.72</msg>
<var>${TEST_BOARD_IP}</var>
<arg>TEST_BOARD_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:12:58.084719" elapsed="0.000415"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>${TEST_BOARD_IP}</arg>
<arg>systemctl start weston</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:12:58.085312" elapsed="0.550490"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:12:59.308033" level="INFO">${stdout} = ('● weston.service - Weston, a Wayland compositor, as a system service\n     Loaded: loaded (/usr/lib/systemd/system/weston.service; enabled; preset: enabled)\n     Active: active (running) since Thu ...</msg>
<var>${stdout}</var>
<arg>${TEST_BOARD_IP}</arg>
<arg>systemctl status weston</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:12:58.636356" elapsed="0.671854"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${stdout}[0]</arg>
<arg>Active: active (running)</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-02-19T20:12:59.308785" elapsed="0.001016"/>
</kw>
<status status="PASS" start="2026-02-19T20:12:58.084048" elapsed="1.226064"/>
</kw>
<arg>3x</arg>
<arg>1000ms</arg>
<arg>Start And Status Weston Service</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:12:58.083255" elapsed="1.227059"/>
</kw>
<timeout value="1 minute"/>
<status status="PASS" start="2026-02-19T20:12:58.082439" elapsed="1.228648"/>
</test>
<status status="PASS" start="2026-02-19T20:12:48.374142" elapsed="10.938957"/>
</suite>
<suite id="s1-s2" name="Tests 006 Stress Ng" source="/app/tests_results/20260219_201245_robot_/../../robot_framework/tests/tests_006_stress_ng.robot">
<kw name="Wait For Check Device Is IDLE" type="SETUP">
<kw name="Ssh Force Kill" owner="TestUtils">
<msg time="2026-02-19T20:13:00.553074" level="INFO">RUN: Killing all 'wpe-simple-launcher' related processes ...</msg>
<arg>%{TEST_BOARD_IP}</arg>
<arg>wpe-simple-launcher</arg>
<doc>Force kill all related process.</doc>
<status status="PASS" start="2026-02-19T20:12:59.730153" elapsed="0.823283"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Device Is IDLE" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:13:01.202982" level="INFO">${stdout} = ('USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND\nroot         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]\nroot         3  0.0  0.0      0     0 ?        ...</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>ps -auxfww</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:13:00.556386" elapsed="0.646807"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:13:01.206071" level="INFO">${formatted} = USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S   ...</msg>
<var>${formatted}</var>
<arg>r"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:13:01.203902" elapsed="0.002311"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:13:01.206729" level="INFO">USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [pool_workqueue_release]
root         4  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kvfree_rcu_reclaim]
root         5  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rcu_gp]
root         6  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sync_wq]
root         7  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-slub_flushwq]
root         8  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:0-device_link_wq]
root         9  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:0H-mmc_complete]
root        10  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:1-device_link_wq]
root        11  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:0-ipv6_addrconf]
root        12  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mm_percpu_wq]
root        13  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_tasks_trace_kthread]
root        14  0.2  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/0]
root        15  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_sched]
root        16  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_par_gp_kthread_worker/0]
root        17  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_gp_kthread_worker]
root        18  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/0]
root        19  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/0]
root        20  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/1]
root        21  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/1]
root        22  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/1]
root        23  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:0-events]
root        24  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:0H-events_highpri]
root        25  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/2]
root        26  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/2]
root        27  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/2]
root        28  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:0-events]
root        29  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:0H-kblockd]
root        30  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/3]
root        31  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/3]
root        32  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/3]
root        33  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:0-device_link_wq]
root        34  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:0H-events_highpri]
root        35  1.6  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:0-nfsiod]
root        36  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:0-rpciod]
root        37  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:0-rpciod]
root        38  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:0-rpciod]
root        39  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kdevtmpfs]
root        40  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-inet_frag_wq]
root        41  3.9  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u17:1-nfsiod]
root        42  2.6  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:2-nfsiod]
root        43  0.8  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:3-nfsiod]
root        44  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [oom_reaper]
root        45  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-writeback]
root        46  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kcompactd0]
root        47  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kblockd]
root        48  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:1-rcu_gp]
root        49  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:1-rpciod]
root        50  0.3  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:2-nfsiod]
root        51  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ata_sff]
root        52  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:1-events_power_efficient]
root        53  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:2-device_link_wq]
root        54  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:3-device_link_wq]
root        55  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:4-events]
root        56  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:5-events]
root        57  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [watchdogd]
root        58  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:6-rcu_gp]
root        59  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:7]
root        60  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:1H-kblockd]
root        61  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rpciod]
root        62  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-xprtiod]
root        63  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-cfg80211]
root        64  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kswapd0]
root        65  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:1-rpciod]
root        66  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-nfsiod]
root        67  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-120000.hdmi]
root        68  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:2-cgroup_destroy]
root        69  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:3-rcu_gp]
root        70  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cec-dw_hdmi]
root        71  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-dw-hdmi-cec]
root        72  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-130000.gpu]
root        73  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-134000.gpu]
root        74  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-2204000.gpu]
root        75  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:1-events]
root        76  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc0]
root        77  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:4-events]
root        78  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc1]
root        79  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc2]
root        80  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc3]
root        81  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [scsi_eh_0]
root        82  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-scsi_tmf_0]
root        83  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ci_otg]
root        84  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:1-nfsiod]
root        85  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:2-rpciod]
root        86  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:3-events_unbound]
root        87  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u21:0]
root        88  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u22:0]
root        89  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u23:0]
root        90  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u24:0]
root        91  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u25:0]
root        92  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        93  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/286-mmc0]
root        95  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        96  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/287-mmc1]
root        98  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:2-cgroup_destroy]
root        99  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root       100  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/288-mmc2]
root       101  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2101000.jr-engine]
root       102  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:2-rpciod]
root       104  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [hwrng]
root       105  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2102000.jr-engine]
root       106  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/105-2198000.mmc cd]
root       107  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/30-2190000.mmc cd]
root       108  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mmc_complete]
root       109  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:1H-mmc_complete]
root       110  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:2-device_link_wq]
root       111  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:3-device_link_wq]
root       112  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:4-rcu_gp]
root       113  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:5-events_power_efficient]
root       114  0.6  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:6-events_power_efficient]
root       115  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mld]
root       116  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ipv6_addrconf]
root       117  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:1-130000.gpu]
root       119  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/297-imx_thermal]
root       123  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:1H]
root       124  0.4  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:3-nfsiod]
root       125  2.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:4-nfsiod]
root       126  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:1H-events_highpri]
root       127  0.3  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:4-rpciod]
root       128  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:4-rpciod]
root       129  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:3-rpciod]
root       130  0.4  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:4-rpciod]
root       131  2.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:5-xprtiod]
root       132  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:5-nfsiod]
root       195  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:3-rcu_gp]
root       248  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/298-vdoa]
root       250  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/301-coda-jpeg]
root       251  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-coda]
root       263  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:4-events]
root       295  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:5-rpciod]
root       298  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:5-rpciod]
root       302  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:6-rpciod]
root       305  0.6  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:6-rpciod]
root       443  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:6-rpciod]
root         1 10.8  0.3  11124  7212 ?        Ss   20:12   0:05 /sbin/init
rpc        157  0.1  0.0   2824  1836 ?        Ss   20:12   0:00 /usr/sbin/rpcbind -w -f
root       159  2.5  0.2  33328  5764 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-journald
root       194  0.4  0.1   8328  3736 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-userdbd
root       196  0.1  0.2   8944  4380 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       197  0.1  0.1   8944  4100 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       198  0.1  0.2   8944  4340 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       204  2.4  0.2  20304  5440 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-udevd
systemd+   241  1.0  0.2   8648  4948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-resolved
systemd+   246  1.0  0.2  17744  4628 ?        Ssl  20:12   0:00 /usr/lib/systemd/systemd-timesyncd
root       315  0.0  0.0   1572  1172 ?        Ss   20:12   0:00 /usr/sbin/atd -f
avahi      316  0.3  0.1   4268  2272 ?        Ss   20:12   0:00 avahi-daemon: running [wandboard-mesa.local]
avahi      345  0.0  0.0   4092  1080 ?        S    20:12   0:00  \_ avahi-daemon: chroot helper
root       318  0.1  0.0   2080  1180 ?        Ss   20:12   0:00 /usr/sbin/crond -n
message+   319  2.8  0.1   4208  2628 ?        Ss   20:12   0:00 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
dhcpcd     320  0.2  0.1   4428  3552 ?        Ss   20:12   0:00 dhcpcd: [manager] [ip4] [ip6]
root       326  0.0  0.0   4660  1952 ?        S    20:12   0:00  \_ dhcpcd: [privileged proxy]
dhcpcd     387  0.0  0.0   4440  1440 ?        S    20:12   0:00  |   \_ dhcpcd: [BPF ARP] end0 192.168.1.72
dhcpcd     327  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [network proxy]
dhcpcd     328  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [control proxy]
root       323  1.0  0.1   6284  3268 ?        Ss   20:12   0:00 /usr/sbin/ofonod -n
root       324  0.7  0.0   1528  1076 ?        Ss   20:12   0:00 /usr/sbin/syslogd -F
root       325  2.1  0.2   8772  4812 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-logind
systemd+   346  0.9  0.2   9452  5948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-networkd
root       359  0.4  0.1   3704  2752 ?        Ss   20:12   0:00 /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     370  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     371  0.0  0.1   4276  2912 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     372  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     373  0.0  0.1   4468  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     374  0.0  0.1   4276  2832 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
root       364  0.9  0.2   8344  4208 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-hostnamed
ntp        365  0.1  0.2   7812  4796 ?        Ssl  20:12   0:00 /usr/sbin/ntpd -u ntp -p /run/ntpd.pid -g
root       368  0.0  0.0   1536  1024 tty1     Ss+  20:12   0:00 /sbin/agetty -o -p -- \u --noclear - linux
root       369  0.1  0.0   1564  1148 ttymxc0  Ss+  20:12   0:00 /sbin/agetty -8 -L ttymxc0 115200 linux
weston     375  7.6  1.7  96064 35560 tty7     Ssl+ 20:12   0:02 /usr/bin/weston --modules=systemd-notify.so
weston     426  0.0  0.1  10900  2256 tty7     S+   20:12   0:00  \_ (sd-pam)
weston     455  1.5  0.3  13092  7428 ?        Ss   20:12   0:00  \_ /usr/libexec/weston-keyboard
weston     456  3.3  0.7  21068 15532 ?        Ss   20:12   0:00  \_ /usr/libexec/weston-desktop-shell
polkitd    378  2.1  0.6 109048 14152 ?        Ssl  20:12   0:00 /usr/lib/polkit-1/polkitd --no-debug
weston     381  2.3  0.3  10028  6472 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd --user
weston     383  0.0  0.1  10944  2148 ?        S    20:12   0:00  \_ (sd-pam)
root       513  3.7  0.3  10024  6672 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd --user
root       515  0.0  0.1  10484  2248 ?        S    20:12   0:00  \_ (sd-pam)
root       650 23.5  0.2   6776  5668 ?        Ss   20:13   0:00 sshd: root@notty
root       654  150  0.1   4996  2900 ?        Rs   20:13   0:00  \_ ps -auxfww</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:13:01.206456" elapsed="0.000642"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:13:01.832983" level="INFO">${stdout} = ('1.25', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:13:01.207819" elapsed="0.625361"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:13:01.835374" level="INFO">${value} = 1.25</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:13:01.833887" elapsed="0.001645"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:13:01.835889" elapsed="0.000274"/>
</return>
<msg time="2026-02-19T20:13:01.836911" level="INFO">${cpu_load} = 1.25</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:13:01.207406" elapsed="0.629658"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:13:01.838353" level="INFO">CPU load: 1.25</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:13:01.837686" elapsed="0.000954"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<msg time="2026-02-19T20:13:01.840352" level="FAIL">'1.25 &lt; 1' should be true.</msg>
<arg>${cpu_load} &lt; ${CPU_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="FAIL" start="2026-02-19T20:13:01.839175" elapsed="0.001846">'1.25 &lt; 1' should be true.</status>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<status status="NOT RUN" start="2026-02-19T20:13:01.841910" elapsed="0.000182"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-02-19T20:13:01.842651" elapsed="0.000150"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${MEMORY_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:13:01.843270" elapsed="0.000135"/>
</kw>
<doc>Check if the Device is idle.</doc>
<status status="FAIL" start="2026-02-19T20:13:00.555500" elapsed="1.288445">'1.25 &lt; 1' should be true.</status>
</kw>
<kw name="Check Device Is IDLE" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:13:13.578598" level="INFO">${stdout} = ('USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND\nroot         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]\nroot         3  0.0  0.0      0     0 ?        ...</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>ps -auxfww</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:13:11.846214" elapsed="1.732596"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:13:13.581144" level="INFO">${formatted} = USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S   ...</msg>
<var>${formatted}</var>
<arg>r"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:13:13.579467" elapsed="0.001842"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:13:13.582662" level="INFO">USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [pool_workqueue_release]
root         4  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kvfree_rcu_reclaim]
root         5  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rcu_gp]
root         6  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sync_wq]
root         7  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-slub_flushwq]
root         8  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:0-device_link_wq]
root         9  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:0H-mmc_complete]
root        10  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:1-device_link_wq]
root        11  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:0-ipv6_addrconf]
root        12  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mm_percpu_wq]
root        13  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_tasks_trace_kthread]
root        14  0.1  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/0]
root        15  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_sched]
root        16  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_par_gp_kthread_worker/0]
root        17  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_gp_kthread_worker]
root        18  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/0]
root        19  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/0]
root        20  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/1]
root        21  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/1]
root        22  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/1]
root        23  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:0-events]
root        24  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:0H-events_highpri]
root        25  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/2]
root        26  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/2]
root        27  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/2]
root        28  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:0-cgroup_destroy]
root        29  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:0H-kblockd]
root        30  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/3]
root        31  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/3]
root        32  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/3]
root        33  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:0-device_link_wq]
root        34  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:0H-events_highpri]
root        35  1.3  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:0-nfsiod]
root        36  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:0-rpciod]
root        37  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:0-rpciod]
root        38  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:0-events_unbound]
root        39  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kdevtmpfs]
root        40  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-inet_frag_wq]
root        41  3.2  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u17:1-xprtiod]
root        42  2.1  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:2-nfsiod]
root        43  0.6  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:3-xprtiod]
root        44  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [oom_reaper]
root        45  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-writeback]
root        46  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kcompactd0]
root        47  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kblockd]
root        48  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:1-rcu_gp]
root        49  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:1-rpciod]
root        50  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:2-rpciod]
root        51  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ata_sff]
root        52  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:1-events_power_efficient]
root        53  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:2-device_link_wq]
root        54  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:3-device_link_wq]
root        55  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:4-mm_percpu_wq]
root        56  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:5-events]
root        57  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [watchdogd]
root        58  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:6-rcu_gp]
root        59  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:7]
root        60  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:1H-kblockd]
root        61  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rpciod]
root        62  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-xprtiod]
root        63  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-cfg80211]
root        64  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kswapd0]
root        65  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:1-events_unbound]
root        66  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-nfsiod]
root        67  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-120000.hdmi]
root        68  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:2-cgroup_destroy]
root        69  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:3-mm_percpu_wq]
root        70  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cec-dw_hdmi]
root        71  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-dw-hdmi-cec]
root        72  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-130000.gpu]
root        73  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-134000.gpu]
root        74  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-2204000.gpu]
root        75  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:1-events]
root        76  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc0]
root        77  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:4-events]
root        78  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc1]
root        79  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc2]
root        80  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc3]
root        81  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [scsi_eh_0]
root        82  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-scsi_tmf_0]
root        83  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ci_otg]
root        84  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:1-rpciod]
root        85  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:2-rpciod]
root        86  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:3-xprtiod]
root        87  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u21:0]
root        88  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u22:0]
root        89  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u23:0]
root        90  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u24:0]
root        91  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u25:0]
root        92  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        93  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/286-mmc0]
root        95  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        96  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/287-mmc1]
root        98  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:2-cgroup_destroy]
root        99  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root       100  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/288-mmc2]
root       101  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2101000.jr-engine]
root       102  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:2-nfsiod]
root       104  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [hwrng]
root       105  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2102000.jr-engine]
root       106  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/105-2198000.mmc cd]
root       107  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/30-2190000.mmc cd]
root       108  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mmc_complete]
root       109  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:1H-mmc_complete]
root       110  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:2-device_link_wq]
root       111  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:3-device_link_wq]
root       112  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:4-rcu_gp]
root       113  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:5-rcu_gp]
root       114  0.5  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:6-events_power_efficient]
root       115  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mld]
root       116  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ipv6_addrconf]
root       117  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:1-130000.gpu]
root       119  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/297-imx_thermal]
root       123  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:1H]
root       124  0.3  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:3-nfsiod]
root       125  1.5  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:4-nfsiod]
root       126  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:1H-events_highpri]
root       127  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:4-rpciod]
root       128  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:4-rpciod]
root       129  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:3-rpciod]
root       130  0.3  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:4-rpciod]
root       131  1.6  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:5-rpciod]
root       132  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:5-events_unbound]
root       195  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:3-rcu_gp]
root       248  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/298-vdoa]
root       250  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/301-coda-jpeg]
root       251  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-coda]
root       263  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:4-events]
root       295  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:5-rpciod]
root       298  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:5-events_unbound]
root       302  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:6-nfsiod]
root       305  0.5  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:6-rpciod]
root       443  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:6-rpciod]
root         1  9.1  0.3  11124  7212 ?        Ss   20:12   0:06 /sbin/init
rpc        157  0.0  0.0   2824  1836 ?        Ss   20:12   0:00 /usr/sbin/rpcbind -w -f
root       159  2.0  0.2  33328  5764 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-journald
root       194  0.3  0.1   8328  3736 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-userdbd
root       196  0.1  0.2   8944  4380 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       197  0.1  0.1   8944  4100 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       198  0.1  0.2   8944  4340 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       204  1.8  0.2  20304  5440 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-udevd
systemd+   241  0.7  0.2   8648  4948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-resolved
systemd+   246  0.8  0.2  17744  4628 ?        Ssl  20:12   0:00 /usr/lib/systemd/systemd-timesyncd
root       315  0.0  0.0   1572  1172 ?        Ss   20:12   0:00 /usr/sbin/atd -f
avahi      316  0.2  0.1   4268  2272 ?        Ss   20:12   0:00 avahi-daemon: running [wandboard-mesa.local]
avahi      345  0.0  0.0   4092  1080 ?        S    20:12   0:00  \_ avahi-daemon: chroot helper
root       318  0.0  0.0   2080  1180 ?        Ss   20:12   0:00 /usr/sbin/crond -n
message+   319  2.4  0.1   4208  2628 ?        Ss   20:12   0:01 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
dhcpcd     320  0.2  0.1   4428  3552 ?        Ss   20:12   0:00 dhcpcd: [manager] [ip4] [ip6]
root       326  0.0  0.0   4660  1952 ?        S    20:12   0:00  \_ dhcpcd: [privileged proxy]
dhcpcd     387  0.0  0.0   4440  1440 ?        S    20:12   0:00  |   \_ dhcpcd: [BPF ARP] end0 192.168.1.72
dhcpcd     327  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [network proxy]
dhcpcd     328  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [control proxy]
root       323  0.7  0.1   6284  3268 ?        Ss   20:12   0:00 /usr/sbin/ofonod -n
root       324  0.5  0.0   1528  1076 ?        Ss   20:12   0:00 /usr/sbin/syslogd -F
root       325  1.6  0.2   8772  4812 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-logind
systemd+   346  0.6  0.2   9452  5948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-networkd
root       359  0.3  0.1   3704  2752 ?        Ss   20:12   0:00 /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     370  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     371  0.0  0.1   4276  2912 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     372  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     373  0.0  0.1   4468  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     374  0.0  0.1   4276  2832 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
ntp        365  0.0  0.2   7812  4796 ?        Ssl  20:12   0:00 /usr/sbin/ntpd -u ntp -p /run/ntpd.pid -g
root       368  0.0  0.0   1536  1024 tty1     Ss+  20:12   0:00 /sbin/agetty -o -p -- \u --noclear - linux
root       369  0.1  0.0   1564  1148 ttymxc0  Ss+  20:12   0:00 /sbin/agetty -8 -L ttymxc0 115200 linux
weston     375  5.6  1.7  96064 35560 tty7     Ssl+ 20:12   0:02 /usr/bin/weston --modules=systemd-notify.so
weston     426  0.0  0.1  10900  2256 tty7     S+   20:12   0:00  \_ (sd-pam)
weston     455  0.9  0.3  13092  7428 ?        Ss   20:12   0:00  \_ /usr/libexec/weston-keyboard
weston     456  2.1  0.7  21068 15532 ?        Ss   20:12   0:00  \_ /usr/libexec/weston-desktop-shell
polkitd    378  1.6  0.6 109048 14152 ?        Ssl  20:12   0:00 /usr/lib/polkit-1/polkitd --no-debug
weston     381  1.6  0.3  10028  6472 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd --user
weston     383  0.0  0.1  10944  2148 ?        S    20:12   0:00  \_ (sd-pam)
root       706  8.7  0.2   6776  5624 ?        Ss   20:13   0:00 sshd: root@notty
root       722  150  0.1   4996  2792 ?        Rs   20:13   0:00  \_ ps -auxfww
root       715 61.1  0.3  10028  6620 ?        Ss   20:13   0:00 /usr/lib/systemd/systemd --user
root       717  0.0  0.0  10484  2052 ?        S    20:13   0:00  \_ (sd-pam)</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:13:13.582007" elapsed="0.001345"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:13:14.151986" level="INFO">${stdout} = ('1.14', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:13:13.584064" elapsed="0.568115"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:13:14.154285" level="INFO">${value} = 1.14</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:13:14.152855" elapsed="0.001590"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:13:14.154767" elapsed="0.000228"/>
</return>
<msg time="2026-02-19T20:13:14.155694" level="INFO">${cpu_load} = 1.14</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:13:13.583668" elapsed="0.572178"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:13:14.157082" level="INFO">CPU load: 1.14</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:13:14.156411" elapsed="0.000911"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<msg time="2026-02-19T20:13:14.158934" level="FAIL">'1.14 &lt; 1' should be true.</msg>
<arg>${cpu_load} &lt; ${CPU_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="FAIL" start="2026-02-19T20:13:14.157876" elapsed="0.001458">'1.14 &lt; 1' should be true.</status>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<status status="NOT RUN" start="2026-02-19T20:13:14.160242" elapsed="0.000176"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-02-19T20:13:14.160959" elapsed="0.000143"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${MEMORY_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:13:14.161629" elapsed="0.000142"/>
</kw>
<doc>Check if the Device is idle.</doc>
<status status="FAIL" start="2026-02-19T20:13:11.845211" elapsed="2.317016">'1.14 &lt; 1' should be true.</status>
</kw>
<kw name="Check Device Is IDLE" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:13:25.664387" level="INFO">${stdout} = ('USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND\nroot         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]\nroot         3  0.0  0.0      0     0 ?        ...</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>ps -auxfww</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:13:24.164358" elapsed="1.500289"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:13:25.667019" level="INFO">${formatted} = USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S   ...</msg>
<var>${formatted}</var>
<arg>r"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:13:25.665313" elapsed="0.001871"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:13:25.668366" level="INFO">USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [pool_workqueue_release]
root         4  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kvfree_rcu_reclaim]
root         5  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rcu_gp]
root         6  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sync_wq]
root         7  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-slub_flushwq]
root         8  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:0-device_link_wq]
root         9  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:0H-mmc_complete]
root        10  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:1-device_link_wq]
root        11  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:0-ipv6_addrconf]
root        12  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mm_percpu_wq]
root        13  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_tasks_trace_kthread]
root        14  0.1  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/0]
root        15  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_sched]
root        16  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_par_gp_kthread_worker/0]
root        17  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_gp_kthread_worker]
root        18  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/0]
root        19  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/0]
root        20  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/1]
root        21  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/1]
root        22  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/1]
root        23  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:0-cgroup_destroy]
root        24  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:0H-events_highpri]
root        25  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/2]
root        26  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/2]
root        27  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/2]
root        28  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:0-events_freezable_pwr_efficient]
root        29  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:0H-kblockd]
root        30  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/3]
root        31  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/3]
root        32  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/3]
root        33  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:0-device_link_wq]
root        34  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:0H-events_highpri]
root        35  1.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:0-nfsiod]
root        36  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:0-rpciod]
root        37  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:0-rpciod]
root        38  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:0-events_unbound]
root        39  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kdevtmpfs]
root        40  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-inet_frag_wq]
root        41  2.8  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u17:1-xprtiod]
root        42  1.8  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:2-nfsiod]
root        43  0.5  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:3-xprtiod]
root        44  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [oom_reaper]
root        45  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-writeback]
root        46  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kcompactd0]
root        47  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kblockd]
root        48  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:1-rcu_gp]
root        49  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:1-rpciod]
root        50  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:2-kvfree_rcu_reclaim]
root        51  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ata_sff]
root        52  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:1-events_power_efficient]
root        53  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:2-device_link_wq]
root        54  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:3-device_link_wq]
root        55  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:4-mm_percpu_wq]
root        56  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:5-events]
root        57  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [watchdogd]
root        58  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:6-rcu_gp]
root        59  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:7]
root        60  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:1H-kblockd]
root        61  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rpciod]
root        62  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-xprtiod]
root        63  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-cfg80211]
root        64  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kswapd0]
root        65  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:1-events_unbound]
root        66  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-nfsiod]
root        67  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-120000.hdmi]
root        68  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:2-cgroup_destroy]
root        69  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:3-mm_percpu_wq]
root        70  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cec-dw_hdmi]
root        71  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-dw-hdmi-cec]
root        72  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-130000.gpu]
root        73  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-134000.gpu]
root        74  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-2204000.gpu]
root        75  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:1-events]
root        76  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc0]
root        77  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:4-events]
root        78  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc1]
root        79  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc2]
root        80  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc3]
root        81  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [scsi_eh_0]
root        82  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-scsi_tmf_0]
root        83  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ci_otg]
root        84  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:1-rpciod]
root        85  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:2-rpciod]
root        86  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:3-kvfree_rcu_reclaim]
root        87  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u21:0]
root        88  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u22:0]
root        89  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u23:0]
root        90  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u24:0]
root        91  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u25:0]
root        92  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        93  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/286-mmc0]
root        95  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        96  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/287-mmc1]
root        98  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:2-mm_percpu_wq]
root        99  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root       100  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/288-mmc2]
root       101  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2101000.jr-engine]
root       102  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:2-nfsiod]
root       104  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [hwrng]
root       105  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2102000.jr-engine]
root       106  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/105-2198000.mmc cd]
root       107  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/30-2190000.mmc cd]
root       108  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mmc_complete]
root       109  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:1H-mmc_complete]
root       110  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:2-device_link_wq]
root       111  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:3-device_link_wq]
root       112  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:4-rcu_gp]
root       113  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:5-events]
root       114  0.4  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:6-rcu_gp]
root       115  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mld]
root       116  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ipv6_addrconf]
root       117  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:1-130000.gpu]
root       119  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/297-imx_thermal]
root       123  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:1H]
root       124  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:3-nfsiod]
root       125  1.3  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:4-nfsiod]
root       126  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:1H-events_highpri]
root       127  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:4-rpciod]
root       128  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:4-rpciod]
root       129  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:3-rpciod]
root       130  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:4-rpciod]
root       131  1.3  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:5-rpciod]
root       132  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:5-events_unbound]
root       195  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:3-rcu_gp]
root       248  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/298-vdoa]
root       250  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/301-coda-jpeg]
root       251  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-coda]
root       263  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:4-events]
root       295  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:5-rpciod]
root       298  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:5-kvfree_rcu_reclaim]
root       302  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:6-nfsiod]
root       305  0.3  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:6-rpciod]
root       443  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:6-rpciod]
root         1  8.0  0.3  11124  7212 ?        Ss   20:12   0:06 /sbin/init
rpc        157  0.0  0.0   2824  1836 ?        Ss   20:12   0:00 /usr/sbin/rpcbind -w -f
root       159  1.7  0.2  33328  5892 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-journald
root       194  0.2  0.1   8328  3736 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-userdbd
root       196  0.1  0.2   8944  4380 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       197  0.1  0.1   8944  4100 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       198  0.1  0.2   8944  4340 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       204  1.4  0.2  20304  5440 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-udevd
systemd+   241  0.6  0.2   8648  4948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-resolved
systemd+   246  0.6  0.2  17744  4628 ?        Ssl  20:12   0:00 /usr/lib/systemd/systemd-timesyncd
root       315  0.0  0.0   1572  1172 ?        Ss   20:12   0:00 /usr/sbin/atd -f
avahi      316  0.2  0.1   4268  2272 ?        Ss   20:12   0:00 avahi-daemon: running [wandboard-mesa.local]
avahi      345  0.0  0.0   4092  1080 ?        S    20:12   0:00  \_ avahi-daemon: chroot helper
root       318  0.0  0.0   2080  1180 ?        Ss   20:12   0:00 /usr/sbin/crond -n
message+   319  2.1  0.1   4208  2628 ?        Ss   20:12   0:01 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
dhcpcd     320  0.1  0.1   4428  3552 ?        Ss   20:12   0:00 dhcpcd: [manager] [ip4] [ip6]
root       326  0.0  0.0   4660  1952 ?        S    20:12   0:00  \_ dhcpcd: [privileged proxy]
dhcpcd     387  0.0  0.0   4440  1440 ?        S    20:12   0:00  |   \_ dhcpcd: [BPF ARP] end0 192.168.1.72
dhcpcd     327  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [network proxy]
dhcpcd     328  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [control proxy]
root       323  0.5  0.1   6284  3268 ?        Ss   20:12   0:00 /usr/sbin/ofonod -n
root       324  0.4  0.0   1528  1076 ?        Ss   20:12   0:00 /usr/sbin/syslogd -F
root       325  1.4  0.2   8772  4812 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-logind
systemd+   346  0.5  0.2   9452  5948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-networkd
root       359  0.2  0.1   3704  2752 ?        Ss   20:12   0:00 /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     370  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     371  0.0  0.1   4276  2912 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     372  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     373  0.0  0.1   4468  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     374  0.0  0.1   4276  2832 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
ntp        365  0.0  0.2   7812  4796 ?        Ssl  20:12   0:00 /usr/sbin/ntpd -u ntp -p /run/ntpd.pid -g
root       368  0.0  0.0   1536  1024 tty1     Ss+  20:12   0:00 /sbin/agetty -o -p -- \u --noclear - linux
root       369  0.0  0.0   1564  1148 ttymxc0  Ss+  20:12   0:00 /sbin/agetty -8 -L ttymxc0 115200 linux
weston     375  4.5  1.7  96064 35560 tty7     Ssl+ 20:12   0:02 /usr/bin/weston --modules=systemd-notify.so
weston     426  0.0  0.1  10900  2256 tty7     S+   20:12   0:00  \_ (sd-pam)
weston     455  0.7  0.3  13092  7428 ?        Ss   20:12   0:00  \_ /usr/libexec/weston-keyboard
weston     456  1.6  0.7  21068 15532 ?        Ss   20:12   0:00  \_ /usr/libexec/weston-desktop-shell
polkitd    378  1.3  0.6 109048 14152 ?        Ssl  20:12   0:00 /usr/lib/polkit-1/polkitd --no-debug
weston     381  1.3  0.3  10028  6472 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd --user
weston     383  0.0  0.1  10944  2148 ?        S    20:12   0:00  \_ (sd-pam)
root       771  8.6  0.2   6776  5464 ?        Ss   20:13   0:00 sshd: root@notty
root       787  175  0.1   4996  2868 ?        Rs   20:13   0:00  \_ ps -auxfww
root       780 67.7  0.3  10028  6684 ?        Ss   20:13   0:00 /usr/lib/systemd/systemd --user
root       782  0.0  0.1  10484  2192 ?        S    20:13   0:00  \_ (sd-pam)</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:13:25.667784" elapsed="0.001008"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:13:26.261761" level="INFO">${stdout} = ('0.96', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:13:25.669497" elapsed="0.592456"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:13:26.264039" level="INFO">${value} = 0.96</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:13:26.262629" elapsed="0.001564"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:13:26.264477" elapsed="0.000238"/>
</return>
<msg time="2026-02-19T20:13:26.265376" level="INFO">${cpu_load} = 0.96</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:13:25.669097" elapsed="0.596476"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:13:26.266601" level="INFO">CPU load: 0.96</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:13:26.266262" elapsed="0.000431"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${cpu_load} &lt; ${CPU_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:13:26.266898" elapsed="0.000358"/>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:13:26.918345" level="INFO">${stdout} = ('195', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>free -m | grep Mem | awk '{print $3}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:13:26.267949" elapsed="0.650588"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:13:26.920804" level="INFO">${value} = 195.0</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:13:26.919231" elapsed="0.001731"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:13:26.921247" elapsed="0.000205"/>
</return>
<msg time="2026-02-19T20:13:26.922117" level="INFO">${memory_used} = 195.0</msg>
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:13:26.267556" elapsed="0.654719"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:13:26.923513" level="INFO">Memory used: 195.0</msg>
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:13:26.922945" elapsed="0.000702"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${MEMORY_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:13:26.923854" elapsed="0.000374"/>
</kw>
<doc>Check if the Device is idle.</doc>
<status status="PASS" start="2026-02-19T20:13:24.163415" elapsed="2.760948"/>
</kw>
<arg>18x</arg>
<arg>10s</arg>
<arg>Check Device Is IDLE</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:13:00.554199" elapsed="26.370271"/>
</kw>
<status status="PASS" start="2026-02-19T20:12:59.728993" elapsed="27.195626"/>
</kw>
<test id="s1-s2-t1" name="CPU 1 Stress Test" line="14">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:13:38.533981" level="INFO">${stdout} = ('{"actual": 1558, "expected": 1500}', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>/root/scripts/stress-test.py --report --filter cpu_1_core</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:13:26.925915" elapsed="11.608257"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:13:38.536925" level="INFO">${data} = {'actual': 1558, 'expected': 1500}</msg>
<var>${data}</var>
<arg>json.loads('''${stdout}[0]''')</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:13:38.535143" elapsed="0.001946"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${data['actual']} &gt;= ${data['expected']}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:13:38.538092" elapsed="0.002543"/>
</kw>
<timeout value="1 minute"/>
<status status="PASS" start="2026-02-19T20:13:26.924805" elapsed="11.616160"/>
</test>
<test id="s1-s2-t2" name="CPU 4 Stress Test" line="19">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:13:49.839894" level="INFO">${stdout} = ('{"actual": 5895, "expected": 5800}', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>/root/scripts/stress-test.py --report --filter cpu_4_core</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:13:38.542786" elapsed="11.297300"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:13:49.842720" level="INFO">${data} = {'actual': 5895, 'expected': 5800}</msg>
<var>${data}</var>
<arg>json.loads('''${stdout}[0]''')</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:13:49.841045" elapsed="0.001835"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${data['actual']} &gt;= ${data['expected']}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:13:49.843778" elapsed="0.002763"/>
</kw>
<timeout value="1 minute"/>
<status status="PASS" start="2026-02-19T20:13:38.541723" elapsed="11.305161"/>
</test>
<test id="s1-s2-t3" name="Memory Stress Test" line="24">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:14:01.228157" level="INFO">${stdout} = ('{"actual": 4000, "expected": 4000}', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>/root/scripts/stress-test.py --report --filter memory</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:13:49.848508" elapsed="11.379841"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:14:01.231185" level="INFO">${data} = {'actual': 4000, 'expected': 4000}</msg>
<var>${data}</var>
<arg>json.loads('''${stdout}[0]''')</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:14:01.229386" elapsed="0.001862"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${data['actual']} &gt;= ${data['expected']}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:14:01.231685" elapsed="0.002136"/>
</kw>
<timeout value="1 minute"/>
<status status="PASS" start="2026-02-19T20:13:49.847614" elapsed="11.386530"/>
</test>
<test id="s1-s2-t4" name="2D Rendering Stress Test" line="29">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:14:08.219213" level="INFO">${stdout} = ('{"actual": 779, "expected": 450}', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>/root/scripts/stress-test.py --report --filter rendering</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:14:01.235780" elapsed="6.983627"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:14:08.222071" level="INFO">${data} = {'actual': 779, 'expected': 450}</msg>
<var>${data}</var>
<arg>json.loads('''${stdout}[0]''')</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:14:08.220440" elapsed="0.001793"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${data['actual']} &gt;= ${data['expected']}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:14:08.223325" elapsed="0.002778"/>
</kw>
<timeout value="1 minute"/>
<status status="PASS" start="2026-02-19T20:14:01.234822" elapsed="6.991655"/>
</test>
<status status="PASS" start="2026-02-19T20:12:59.314270" elapsed="68.912915"/>
</suite>
<suite id="s1-s3" name="Tests 007 Wpe Testbed" source="/app/tests_results/20260219_201245_robot_/../../robot_framework/tests/tests_007_wpe_testbed.robot">
<kw name="Wait For Check Device Is IDLE" type="SETUP">
<kw name="Ssh Force Kill" owner="TestUtils">
<msg time="2026-02-19T20:14:09.050953" level="INFO">RUN: Killing all 'wpe-simple-launcher' related processes ...</msg>
<arg>%{TEST_BOARD_IP}</arg>
<arg>wpe-simple-launcher</arg>
<doc>Force kill all related process.</doc>
<status status="PASS" start="2026-02-19T20:14:08.239253" elapsed="0.812038"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Device Is IDLE" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:14:09.726170" level="INFO">${stdout} = ('USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND\nroot         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]\nroot         3  0.0  0.0      0     0 ?        ...</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>ps -auxfww</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:14:09.054241" elapsed="0.672161"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:14:09.728787" level="INFO">${formatted} = USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S   ...</msg>
<var>${formatted}</var>
<arg>r"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:14:09.727179" elapsed="0.001769"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:14:09.730294" level="INFO">USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [pool_workqueue_release]
root         4  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kvfree_rcu_reclaim]
root         5  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rcu_gp]
root         6  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sync_wq]
root         7  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-slub_flushwq]
root         8  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:0-device_link_wq]
root         9  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:0H-mmc_complete]
root        10  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:1-device_link_wq]
root        11  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:0-ipv6_addrconf]
root        12  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mm_percpu_wq]
root        13  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_tasks_trace_kthread]
root        14  0.1  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/0]
root        15  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_sched]
root        16  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_par_gp_kthread_worker/0]
root        17  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_gp_kthread_worker]
root        18  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/0]
root        19  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/0]
root        20  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/1]
root        21  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/1]
root        22  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/1]
root        23  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:0-events]
root        24  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:0H-events_highpri]
root        25  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/2]
root        26  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/2]
root        27  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/2]
root        28  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:0-events]
root        29  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:0H-kblockd]
root        30  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/3]
root        31  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/3]
root        32  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/3]
root        33  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:0-device_link_wq]
root        34  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:0H-events_highpri]
root        35  0.7  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:0-nfsiod]
root        36  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:0-nfsiod]
root        37  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:0-rpciod]
root        38  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:0-rpciod]
root        39  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kdevtmpfs]
root        40  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-inet_frag_wq]
root        41  1.9  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u17:1-xprtiod]
root        42  1.4  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:2-xprtiod]
root        43  0.4  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:3-rpciod]
root        44  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [oom_reaper]
root        45  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-writeback]
root        46  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kcompactd0]
root        47  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kblockd]
root        48  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:1-rcu_gp]
root        49  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:1-rpciod]
root        50  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:2-rpciod]
root        51  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ata_sff]
root        52  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:1-events_power_efficient]
root        53  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:2-device_link_wq]
root        54  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:3-device_link_wq]
root        55  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:4-events]
root        56  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:5-events]
root        57  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [watchdogd]
root        58  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:6-rcu_gp]
root        59  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:7]
root        60  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:1H-kblockd]
root        61  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rpciod]
root        62  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-xprtiod]
root        63  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-cfg80211]
root        64  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kswapd0]
root        65  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:1-nfsiod]
root        66  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-nfsiod]
root        67  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-120000.hdmi]
root        68  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:2-cgroup_destroy]
root        69  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:3-events]
root        70  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cec-dw_hdmi]
root        71  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-dw-hdmi-cec]
root        72  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-130000.gpu]
root        73  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-134000.gpu]
root        74  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-2204000.gpu]
root        75  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:1-events]
root        76  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc0]
root        77  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:4-events]
root        78  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc1]
root        79  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc2]
root        80  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc3]
root        81  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [scsi_eh_0]
root        82  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-scsi_tmf_0]
root        83  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ci_otg]
root        84  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:1-rpciod]
root        85  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:2-xprtiod]
root        86  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:3-rpciod]
root        87  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u21:0]
root        88  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u22:0]
root        89  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u23:0]
root        90  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u24:0]
root        91  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u25:0]
root        92  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        93  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/286-mmc0]
root        95  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        96  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/287-mmc1]
root        98  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:2-mm_percpu_wq]
root        99  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root       100  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/288-mmc2]
root       101  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2101000.jr-engine]
root       102  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:2-rpciod]
root       104  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [hwrng]
root       105  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2102000.jr-engine]
root       106  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/105-2198000.mmc cd]
root       107  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/30-2190000.mmc cd]
root       108  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mmc_complete]
root       109  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:1H-mmc_complete]
root       110  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:2-device_link_wq]
root       111  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:3-device_link_wq]
root       112  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:4-rcu_gp]
root       113  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:5-mm_percpu_wq]
root       114  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:6-cgroup_destroy]
root       115  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mld]
root       116  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ipv6_addrconf]
root       117  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:1-130000.gpu]
root       119  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/297-imx_thermal]
root       123  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:1H]
root       124  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:3-nfsiod]
root       125  0.8  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:4-rpciod]
root       126  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:1H-events_highpri]
root       127  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:4-rpciod]
root       128  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:4-rpciod]
root       129  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:3-rpciod]
root       130  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:4-rpciod]
root       131  0.9  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:5-xprtiod]
root       132  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:5-rpciod]
root       195  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:3-rcu_gp]
root       248  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/298-vdoa]
root       250  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/301-coda-jpeg]
root       251  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-coda]
root       263  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:4-events]
root       295  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:5-rpciod]
root       298  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:5-rpciod]
root       302  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:6-events_unbound]
root       305  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:6-rpciod]
root       443  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:6-events_unbound]
root         1  5.4  0.3  11124  7212 ?        Ss   20:12   0:06 /sbin/init
rpc        157  0.0  0.0   2824  1836 ?        Ss   20:12   0:00 /usr/sbin/rpcbind -w -f
root       159  1.1  0.2  33328  6020 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-journald
root       194  0.1  0.1   8328  3736 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-userdbd
root       196  0.0  0.2   8944  4380 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       197  0.0  0.1   8944  4100 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       198  0.0  0.2   8944  4340 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       204  0.8  0.2  20304  5440 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-udevd
systemd+   241  0.3  0.2   8648  4948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-resolved
systemd+   246  0.3  0.2  17744  4628 ?        Ssl  20:12   0:00 /usr/lib/systemd/systemd-timesyncd
root       315  0.0  0.0   1572  1172 ?        Ss   20:12   0:00 /usr/sbin/atd -f
avahi      316  0.1  0.1   4268  2272 ?        Ss   20:12   0:00 avahi-daemon: running [wandboard-mesa.local]
avahi      345  0.0  0.0   4092  1080 ?        S    20:12   0:00  \_ avahi-daemon: chroot helper
root       318  0.0  0.0   2080  1180 ?        Ss   20:12   0:00 /usr/sbin/crond -n
message+   319  1.5  0.1   4208  2628 ?        Ss   20:12   0:01 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
dhcpcd     320  0.0  0.1   4428  3552 ?        Ss   20:12   0:00 dhcpcd: [manager] [ip4] [ip6]
root       326  0.0  0.0   4660  1952 ?        S    20:12   0:00  \_ dhcpcd: [privileged proxy]
dhcpcd     387  0.0  0.0   4440  1440 ?        S    20:12   0:00  |   \_ dhcpcd: [BPF ARP] end0 192.168.1.72
dhcpcd     327  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [network proxy]
dhcpcd     328  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [control proxy]
root       323  0.3  0.1   6284  3268 ?        Ss   20:12   0:00 /usr/sbin/ofonod -n
root       324  0.3  0.0   1528  1076 ?        Ss   20:12   0:00 /usr/sbin/syslogd -F
root       325  0.9  0.2   8772  4812 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-logind
systemd+   346  0.3  0.2   9452  5948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-networkd
root       359  0.1  0.1   3704  2752 ?        Ss   20:12   0:00 /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     370  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     371  0.0  0.1   4276  2912 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     372  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     373  0.0  0.1   4468  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     374  0.0  0.1   4276  2832 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
ntp        365  0.0  0.2   7812  4796 ?        Ssl  20:12   0:00 /usr/sbin/ntpd -u ntp -p /run/ntpd.pid -g
root       368  0.0  0.0   1536  1024 tty1     Ss+  20:12   0:00 /sbin/agetty -o -p -- \u --noclear - linux
root       369  0.0  0.0   1564  1148 ttymxc0  Ss+  20:12   0:00 /sbin/agetty -8 -L ttymxc0 115200 linux
weston     375  4.0  1.7  96064 35560 tty7     Ssl+ 20:12   0:04 /usr/bin/weston --modules=systemd-notify.so
weston     426  0.0  0.1  10900  2256 tty7     S+   20:12   0:00  \_ (sd-pam)
weston     455  0.3  0.3  13092  7428 ?        Ss   20:12   0:00  \_ /usr/libexec/weston-keyboard
weston     456  0.9  0.7  21068 15532 ?        Ss   20:12   0:00  \_ /usr/libexec/weston-desktop-shell
polkitd    378  0.8  0.6 109048 14152 ?        Ssl  20:12   0:00 /usr/lib/polkit-1/polkitd --no-debug
weston     381  0.7  0.3  10028  6472 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd --user
weston     383  0.0  0.1  10944  2148 ?        S    20:12   0:00  \_ (sd-pam)
root       780  1.4  0.3  10028  6684 ?        Ss   20:13   0:00 /usr/lib/systemd/systemd --user
root       782  0.0  0.1  10484  2192 ?        S    20:13   0:00  \_ (sd-pam)
root      1027 23.5  0.2   6776  5576 ?        Ss   20:14   0:00 sshd: root@notty
root      1032  175  0.1   4996  2804 ?        Rs   20:14   0:00  \_ ps -auxfww</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:14:09.729577" elapsed="0.001118"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:14:10.283172" level="INFO">${stdout} = ('1.73', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:14:09.731384" elapsed="0.551990"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:14:10.285759" level="INFO">${value} = 1.73</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:14:10.284166" elapsed="0.001777"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:14:10.286287" elapsed="0.000235"/>
</return>
<msg time="2026-02-19T20:14:10.287226" level="INFO">${cpu_load} = 1.73</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:14:09.730997" elapsed="0.556347"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:14:10.287840" level="INFO">CPU load: 1.73</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:14:10.287578" elapsed="0.000350"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<msg time="2026-02-19T20:14:10.288583" level="FAIL">'1.73 &lt; 1' should be true.</msg>
<arg>${cpu_load} &lt; ${CPU_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="FAIL" start="2026-02-19T20:14:10.288129" elapsed="0.000589">'1.73 &lt; 1' should be true.</status>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<status status="NOT RUN" start="2026-02-19T20:14:10.289029" elapsed="0.000066"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-02-19T20:14:10.289286" elapsed="0.000056"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${MEMORY_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:14:10.289518" elapsed="0.000065"/>
</kw>
<doc>Check if the Device is idle.</doc>
<status status="FAIL" start="2026-02-19T20:14:09.053394" elapsed="1.236367">'1.73 &lt; 1' should be true.</status>
</kw>
<kw name="Check Device Is IDLE" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:14:21.902695" level="INFO">${stdout} = ('USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND\nroot         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]\nroot         3  0.0  0.0      0     0 ?        ...</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>ps -auxfww</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:14:20.291818" elapsed="1.611183"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:14:21.904923" level="INFO">${formatted} = USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S   ...</msg>
<var>${formatted}</var>
<arg>r"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:14:21.903856" elapsed="0.001132"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:14:21.905444" level="INFO">USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [pool_workqueue_release]
root         4  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kvfree_rcu_reclaim]
root         5  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rcu_gp]
root         6  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sync_wq]
root         7  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-slub_flushwq]
root         8  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:0-device_link_wq]
root         9  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:0H-mmc_complete]
root        10  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:1-device_link_wq]
root        11  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:0-ipv6_addrconf]
root        12  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mm_percpu_wq]
root        13  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_tasks_trace_kthread]
root        14  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/0]
root        15  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_sched]
root        16  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_par_gp_kthread_worker/0]
root        17  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_gp_kthread_worker]
root        18  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/0]
root        19  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/0]
root        20  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/1]
root        21  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/1]
root        22  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/1]
root        23  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:0-events]
root        24  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:0H-events_highpri]
root        25  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/2]
root        26  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/2]
root        27  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/2]
root        28  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:0-cgroup_destroy]
root        29  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:0H-kblockd]
root        30  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/3]
root        31  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/3]
root        32  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/3]
root        33  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:0-device_link_wq]
root        34  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:0H-events_highpri]
root        35  0.6  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:0-nfsiod]
root        36  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:0-nfsiod]
root        37  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:0-rpciod]
root        38  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:0-rpciod]
root        39  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kdevtmpfs]
root        40  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-inet_frag_wq]
root        41  1.7  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u17:1-xprtiod]
root        42  1.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:2-xprtiod]
root        43  0.4  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:3-rpciod]
root        44  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [oom_reaper]
root        45  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-writeback]
root        46  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kcompactd0]
root        47  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kblockd]
root        48  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:1-rcu_gp]
root        49  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:1-rpciod]
root        50  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:2-rpciod]
root        51  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ata_sff]
root        52  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:1-events_power_efficient]
root        53  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:2-device_link_wq]
root        54  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:3-device_link_wq]
root        55  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:4-events]
root        56  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:5-events]
root        57  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [watchdogd]
root        58  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:6-rcu_gp]
root        59  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:7]
root        60  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:1H-kblockd]
root        61  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rpciod]
root        62  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-xprtiod]
root        63  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-cfg80211]
root        64  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kswapd0]
root        65  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:1-nfsiod]
root        66  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-nfsiod]
root        67  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-120000.hdmi]
root        68  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:2-cgroup_destroy]
root        69  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:3-events]
root        70  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cec-dw_hdmi]
root        71  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-dw-hdmi-cec]
root        72  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-130000.gpu]
root        73  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-134000.gpu]
root        74  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-2204000.gpu]
root        75  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:1-events]
root        76  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc0]
root        77  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:4-events]
root        78  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc1]
root        79  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc2]
root        80  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc3]
root        81  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [scsi_eh_0]
root        82  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-scsi_tmf_0]
root        83  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ci_otg]
root        84  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:1-rpciod]
root        85  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:2-events_unbound]
root        86  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:3-rpciod]
root        87  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u21:0]
root        88  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u22:0]
root        89  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u23:0]
root        90  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u24:0]
root        91  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u25:0]
root        92  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        93  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/286-mmc0]
root        95  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        96  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/287-mmc1]
root        98  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:2-events]
root        99  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root       100  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/288-mmc2]
root       101  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2101000.jr-engine]
root       102  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:2-rpciod]
root       104  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [hwrng]
root       105  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2102000.jr-engine]
root       106  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/105-2198000.mmc cd]
root       107  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/30-2190000.mmc cd]
root       108  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mmc_complete]
root       109  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:1H-mmc_complete]
root       110  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:2-device_link_wq]
root       111  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:3-device_link_wq]
root       112  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:4-rcu_gp]
root       113  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:5-cgroup_bpf_destroy]
root       114  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:6-events]
root       115  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mld]
root       116  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ipv6_addrconf]
root       117  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:1-130000.gpu]
root       119  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/297-imx_thermal]
root       123  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:1H]
root       124  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:3-nfsiod]
root       125  0.7  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:4-rpciod]
root       126  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:1H-events_highpri]
root       127  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:4-rpciod]
root       128  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:4-events_unbound]
root       129  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:3-rpciod]
root       130  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:4-rpciod]
root       131  0.8  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:5-xprtiod]
root       132  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:5-rpciod]
root       195  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:3-rcu_gp]
root       248  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/298-vdoa]
root       250  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/301-coda-jpeg]
root       251  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-coda]
root       263  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:4-events]
root       295  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:5-rpciod]
root       298  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:5-rpciod]
root       302  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:6-xprtiod]
root       305  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:6-rpciod]
root       443  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:6-events_unbound]
root         1  5.1  0.3  11124  7212 ?        Ss   20:12   0:06 /sbin/init
rpc        157  0.0  0.0   2824  1836 ?        Ss   20:12   0:00 /usr/sbin/rpcbind -w -f
root       159  1.0  0.2  33328  6020 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-journald
root       194  0.1  0.1   8328  3736 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-userdbd
root       196  0.0  0.2   8944  4380 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       197  0.0  0.1   8944  4100 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       198  0.0  0.2   8944  4340 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       204  0.7  0.2  20304  5440 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-udevd
systemd+   241  0.3  0.2   8648  4948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-resolved
systemd+   246  0.3  0.2  17744  4628 ?        Ssl  20:12   0:00 /usr/lib/systemd/systemd-timesyncd
root       315  0.0  0.0   1572  1172 ?        Ss   20:12   0:00 /usr/sbin/atd -f
avahi      316  0.1  0.1   4268  2272 ?        Ss   20:12   0:00 avahi-daemon: running [wandboard-mesa.local]
avahi      345  0.0  0.0   4092  1080 ?        S    20:12   0:00  \_ avahi-daemon: chroot helper
root       318  0.0  0.0   2080  1180 ?        Ss   20:12   0:00 /usr/sbin/crond -n
message+   319  1.5  0.1   4208  2628 ?        Ss   20:12   0:01 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
dhcpcd     320  0.0  0.1   4428  3552 ?        Ss   20:12   0:00 dhcpcd: [manager] [ip4] [ip6]
root       326  0.0  0.0   4660  1952 ?        S    20:12   0:00  \_ dhcpcd: [privileged proxy]
dhcpcd     387  0.0  0.0   4440  1440 ?        S    20:12   0:00  |   \_ dhcpcd: [BPF ARP] end0 192.168.1.72
dhcpcd     327  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [network proxy]
dhcpcd     328  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [control proxy]
root       323  0.2  0.1   6284  3268 ?        Ss   20:12   0:00 /usr/sbin/ofonod -n
root       324  0.2  0.0   1528  1076 ?        Ss   20:12   0:00 /usr/sbin/syslogd -F
root       325  0.9  0.2   8772  4812 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-logind
systemd+   346  0.2  0.2   9452  5948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-networkd
root       359  0.1  0.1   3704  2752 ?        Ss   20:12   0:00 /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     370  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     371  0.0  0.1   4276  2912 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     372  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     373  0.0  0.1   4468  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     374  0.0  0.1   4276  2832 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
ntp        365  0.0  0.2   7812  4796 ?        Ssl  20:12   0:00 /usr/sbin/ntpd -u ntp -p /run/ntpd.pid -g
root       368  0.0  0.0   1536  1024 tty1     Ss+  20:12   0:00 /sbin/agetty -o -p -- \u --noclear - linux
root       369  0.0  0.0   1564  1148 ttymxc0  Ss+  20:12   0:00 /sbin/agetty -8 -L ttymxc0 115200 linux
weston     375  3.6  1.7  96068 35560 tty7     Ssl+ 20:12   0:04 /usr/bin/weston --modules=systemd-notify.so
weston     426  0.0  0.1  10900  2256 tty7     S+   20:12   0:00  \_ (sd-pam)
weston     455  0.3  0.3  13092  7428 ?        Ss   20:12   0:00  \_ /usr/libexec/weston-keyboard
weston     456  0.8  0.7  21068 15532 ?        Ss   20:12   0:00  \_ /usr/libexec/weston-desktop-shell
polkitd    378  0.7  0.6 109048 14152 ?        Ssl  20:12   0:00 /usr/lib/polkit-1/polkitd --no-debug
weston     381  0.6  0.3  10028  6472 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd --user
weston     383  0.0  0.1  10944  2148 ?        S    20:12   0:00  \_ (sd-pam)
root      1081  7.4  0.2   6776  5468 ?        Ss   20:14   0:00 sshd: root@notty
root      1097  175  0.1   4996  2844 ?        Rs   20:14   0:00  \_ ps -auxfww
root      1090 67.0  0.3  10024  6612 ?        Ss   20:14   0:00 /usr/lib/systemd/systemd --user
root      1092  0.0  0.0  10484  1992 ?        S    20:14   0:00  \_ (sd-pam)</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:14:21.905210" elapsed="0.000660"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:14:22.502234" level="INFO">${stdout} = ('1.46', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:14:21.906580" elapsed="0.595850"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:14:22.504833" level="INFO">${value} = 1.46</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:14:22.503289" elapsed="0.001733"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:14:22.505360" elapsed="0.000280"/>
</return>
<msg time="2026-02-19T20:14:22.506384" level="INFO">${cpu_load} = 1.46</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:14:21.906174" elapsed="0.600424"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:14:22.508056" level="INFO">CPU load: 1.46</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:14:22.507261" elapsed="0.001069"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<msg time="2026-02-19T20:14:22.510213" level="FAIL">'1.46 &lt; 1' should be true.</msg>
<arg>${cpu_load} &lt; ${CPU_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="FAIL" start="2026-02-19T20:14:22.508976" elapsed="0.001703">'1.46 &lt; 1' should be true.</status>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<status status="NOT RUN" start="2026-02-19T20:14:22.511633" elapsed="0.000203"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-02-19T20:14:22.512396" elapsed="0.000201"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${MEMORY_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:14:22.513140" elapsed="0.000152"/>
</kw>
<doc>Check if the Device is idle.</doc>
<status status="FAIL" start="2026-02-19T20:14:20.290869" elapsed="2.222968">'1.46 &lt; 1' should be true.</status>
</kw>
<kw name="Check Device Is IDLE" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:14:34.159173" level="INFO">${stdout} = ('USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND\nroot         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]\nroot         3  0.0  0.0      0     0 ?        ...</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>ps -auxfww</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:14:32.516017" elapsed="1.643364"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:14:34.161759" level="INFO">${formatted} = USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S   ...</msg>
<var>${formatted}</var>
<arg>r"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:14:34.160070" elapsed="0.001893"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:14:34.163431" level="INFO">USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [pool_workqueue_release]
root         4  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kvfree_rcu_reclaim]
root         5  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rcu_gp]
root         6  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sync_wq]
root         7  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-slub_flushwq]
root         8  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:0-device_link_wq]
root         9  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:0H-mmc_complete]
root        10  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:1-device_link_wq]
root        11  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:0-ipv6_addrconf]
root        12  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mm_percpu_wq]
root        13  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_tasks_trace_kthread]
root        14  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/0]
root        15  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_sched]
root        16  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_par_gp_kthread_worker/0]
root        17  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_gp_kthread_worker]
root        18  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/0]
root        19  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/0]
root        20  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/1]
root        21  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/1]
root        22  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/1]
root        23  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:0-mm_percpu_wq]
root        24  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:0H-events_highpri]
root        25  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/2]
root        26  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/2]
root        27  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/2]
root        28  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:0-events]
root        29  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:0H-kblockd]
root        30  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/3]
root        31  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/3]
root        32  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/3]
root        33  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:0-device_link_wq]
root        34  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:0H-events_highpri]
root        35  0.6  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:0-nfsiod]
root        36  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:0-nfsiod]
root        37  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:0-rpciod]
root        38  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:0-rpciod]
root        39  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kdevtmpfs]
root        40  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-inet_frag_wq]
root        41  1.6  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u17:1-nfsiod]
root        42  1.1  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:2-xprtiod]
root        43  0.4  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:3-rpciod]
root        44  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [oom_reaper]
root        45  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-writeback]
root        46  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kcompactd0]
root        47  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kblockd]
root        48  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:1-rcu_gp]
root        49  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:1-rpciod]
root        50  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:2-rpciod]
root        51  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ata_sff]
root        52  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:1-events_power_efficient]
root        53  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:2-device_link_wq]
root        54  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:3-device_link_wq]
root        55  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:4-events_power_efficient]
root        56  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:5-events]
root        57  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [watchdogd]
root        58  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:6-rcu_gp]
root        59  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:7]
root        60  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:1H-kblockd]
root        61  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rpciod]
root        62  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-xprtiod]
root        63  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-cfg80211]
root        64  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kswapd0]
root        65  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:1-rpciod]
root        66  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-nfsiod]
root        67  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-120000.hdmi]
root        68  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:2-cgroup_destroy]
root        69  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:3-events]
root        70  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cec-dw_hdmi]
root        71  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-dw-hdmi-cec]
root        72  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-130000.gpu]
root        73  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-134000.gpu]
root        74  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-2204000.gpu]
root        75  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:1-events]
root        76  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc0]
root        77  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:4-events]
root        78  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc1]
root        79  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc2]
root        80  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc3]
root        81  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [scsi_eh_0]
root        82  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-scsi_tmf_0]
root        83  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ci_otg]
root        84  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:1-rpciod]
root        85  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:2-events_unbound]
root        86  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:3-rpciod]
root        87  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u21:0]
root        88  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u22:0]
root        89  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u23:0]
root        90  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u24:0]
root        91  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u25:0]
root        92  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        93  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/286-mmc0]
root        95  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        96  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/287-mmc1]
root        98  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:2-cgroup_destroy]
root        99  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root       100  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/288-mmc2]
root       101  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2101000.jr-engine]
root       102  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:2-rpciod]
root       104  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [hwrng]
root       105  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2102000.jr-engine]
root       106  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/105-2198000.mmc cd]
root       107  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/30-2190000.mmc cd]
root       108  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mmc_complete]
root       109  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:1H-mmc_complete]
root       110  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:2-device_link_wq]
root       111  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:3-device_link_wq]
root       112  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:4-rcu_gp]
root       113  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:5-pm]
root       114  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:6-events]
root       115  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mld]
root       116  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ipv6_addrconf]
root       117  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:1-130000.gpu]
root       119  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/297-imx_thermal]
root       123  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:1H]
root       124  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:3-nfsiod]
root       125  0.7  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:4-rpciod]
root       126  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:1H-events_highpri]
root       127  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:4-rpciod]
root       128  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:4-events_unbound]
root       129  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:3-rpciod]
root       130  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:4-rpciod]
root       131  0.7  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:5-xprtiod]
root       132  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:5-rpciod]
root       195  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:3-rcu_gp]
root       248  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/298-vdoa]
root       250  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/301-coda-jpeg]
root       251  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-coda]
root       263  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:4-events]
root       295  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:5-rpciod]
root       298  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:5-rpciod]
root       302  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:6-events_unbound]
root       305  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:6-rpciod]
root       443  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:6-kvfree_rcu_reclaim]
root         1  4.8  0.3  11124  7212 ?        Ss   20:12   0:07 /sbin/init
rpc        157  0.0  0.0   2824  1836 ?        Ss   20:12   0:00 /usr/sbin/rpcbind -w -f
root       159  1.0  0.2  33328  6020 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-journald
root       194  0.1  0.1   8328  3736 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-userdbd
root       196  0.0  0.2   8944  4380 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       197  0.0  0.1   8944  4100 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       198  0.0  0.2   8944  4340 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       204  0.6  0.2  20304  5440 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-udevd
systemd+   241  0.3  0.2   8648  4948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-resolved
systemd+   246  0.3  0.2  17744  4628 ?        Ssl  20:12   0:00 /usr/lib/systemd/systemd-timesyncd
root       315  0.0  0.0   1572  1172 ?        Ss   20:12   0:00 /usr/sbin/atd -f
avahi      316  0.1  0.1   4268  2272 ?        Ss   20:12   0:00 avahi-daemon: running [wandboard-mesa.local]
avahi      345  0.0  0.0   4092  1080 ?        S    20:12   0:00  \_ avahi-daemon: chroot helper
root       318  0.0  0.0   2080  1180 ?        Ss   20:12   0:00 /usr/sbin/crond -n
message+   319  1.5  0.1   4208  2628 ?        Ss   20:12   0:01 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
dhcpcd     320  0.0  0.1   4428  3552 ?        Ss   20:12   0:00 dhcpcd: [manager] [ip4] [ip6]
root       326  0.0  0.0   4660  1952 ?        S    20:12   0:00  \_ dhcpcd: [privileged proxy]
dhcpcd     387  0.0  0.0   4440  1440 ?        S    20:12   0:00  |   \_ dhcpcd: [BPF ARP] end0 192.168.1.72
dhcpcd     327  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [network proxy]
dhcpcd     328  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [control proxy]
root       323  0.2  0.1   6284  3268 ?        Ss   20:12   0:00 /usr/sbin/ofonod -n
root       324  0.2  0.0   1528  1076 ?        Ss   20:12   0:00 /usr/sbin/syslogd -F
root       325  0.8  0.2   8772  4812 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-logind
systemd+   346  0.2  0.2   9452  5948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-networkd
root       359  0.1  0.1   3704  2752 ?        Ss   20:12   0:00 /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     370  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     371  0.0  0.1   4276  2912 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     372  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     373  0.0  0.1   4468  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     374  0.0  0.1   4276  2832 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
ntp        365  0.0  0.2   7812  4796 ?        Ssl  20:12   0:00 /usr/sbin/ntpd -u ntp -p /run/ntpd.pid -g
root       368  0.0  0.0   1536  1024 tty1     Ss+  20:12   0:00 /sbin/agetty -o -p -- \u --noclear - linux
root       369  0.0  0.0   1564  1148 ttymxc0  Ss+  20:12   0:00 /sbin/agetty -8 -L ttymxc0 115200 linux
weston     375  3.3  1.7  96076 35560 tty7     Ssl+ 20:12   0:04 /usr/bin/weston --modules=systemd-notify.so
weston     426  0.0  0.1  10900  2256 tty7     S+   20:12   0:00  \_ (sd-pam)
weston     455  0.3  0.3  13092  7428 ?        Ss   20:12   0:00  \_ /usr/libexec/weston-keyboard
weston     456  0.7  0.7  21080 15532 ?        Ss   20:12   0:00  \_ /usr/libexec/weston-desktop-shell
polkitd    378  0.6  0.6 109048 14152 ?        Ssl  20:12   0:00 /usr/lib/polkit-1/polkitd --no-debug
weston     381  0.5  0.3  10028  6472 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd --user
weston     383  0.0  0.1  10944  2148 ?        S    20:12   0:00  \_ (sd-pam)
root      1146  9.1  0.2   6776  5564 ?        Ss   20:14   0:00 sshd: root@notty
root      1162  150  0.1   4996  2800 ?        Rs   20:14   0:00  \_ ps -auxfww
root      1155 63.0  0.3  10024  6568 ?        Ss   20:14   0:00 /usr/lib/systemd/systemd --user
root      1157  0.0  0.1  10484  2124 ?        S    20:14   0:00  \_ (sd-pam)</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:14:34.162712" elapsed="0.002009"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:14:34.782507" level="INFO">${stdout} = ('1.22', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:14:34.166793" elapsed="0.615936"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:14:34.784798" level="INFO">${value} = 1.22</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:14:34.783369" elapsed="0.001586"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:14:34.785239" elapsed="0.000206"/>
</return>
<msg time="2026-02-19T20:14:34.786108" level="INFO">${cpu_load} = 1.22</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:14:34.165642" elapsed="0.620617"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:14:34.787122" level="INFO">CPU load: 1.22</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:14:34.786870" elapsed="0.000343"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<msg time="2026-02-19T20:14:34.788203" level="FAIL">'1.22 &lt; 1' should be true.</msg>
<arg>${cpu_load} &lt; ${CPU_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="FAIL" start="2026-02-19T20:14:34.787415" elapsed="0.000926">'1.22 &lt; 1' should be true.</status>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<status status="NOT RUN" start="2026-02-19T20:14:34.788676" elapsed="0.000069"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-02-19T20:14:34.788937" elapsed="0.000055"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${MEMORY_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:14:34.789167" elapsed="0.000052"/>
</kw>
<doc>Check if the Device is idle.</doc>
<status status="FAIL" start="2026-02-19T20:14:32.515124" elapsed="2.274270">'1.22 &lt; 1' should be true.</status>
</kw>
<kw name="Check Device Is IDLE" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:14:46.436755" level="INFO">${stdout} = ('USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND\nroot         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]\nroot         3  0.0  0.0      0     0 ?        ...</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>ps -auxfww</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:14:44.791433" elapsed="1.645532"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:14:46.439464" level="INFO">${formatted} = USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S   ...</msg>
<var>${formatted}</var>
<arg>r"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:14:46.437656" elapsed="0.002022"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:14:46.440883" level="INFO">USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [pool_workqueue_release]
root         4  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kvfree_rcu_reclaim]
root         5  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rcu_gp]
root         6  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sync_wq]
root         7  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-slub_flushwq]
root         8  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:0-device_link_wq]
root         9  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:0H-mmc_complete]
root        10  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:1-device_link_wq]
root        11  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:0-ipv6_addrconf]
root        12  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mm_percpu_wq]
root        13  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_tasks_trace_kthread]
root        14  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/0]
root        15  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_sched]
root        16  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_par_gp_kthread_worker/0]
root        17  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_gp_kthread_worker]
root        18  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/0]
root        19  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/0]
root        20  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/1]
root        21  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/1]
root        22  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/1]
root        23  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:0-events]
root        24  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:0H-events_highpri]
root        25  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/2]
root        26  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/2]
root        27  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/2]
root        28  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:0-events]
root        29  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:0H-kblockd]
root        30  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/3]
root        31  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/3]
root        32  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/3]
root        33  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:0-device_link_wq]
root        34  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:0H-events_highpri]
root        35  0.5  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:0-nfsiod]
root        36  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:0-nfsiod]
root        37  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:0-rpciod]
root        38  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:0-rpciod]
root        39  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kdevtmpfs]
root        40  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-inet_frag_wq]
root        41  1.4  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u17:1-nfsiod]
root        42  1.1  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:2-xprtiod]
root        43  0.3  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:3-rpciod]
root        44  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [oom_reaper]
root        45  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-writeback]
root        46  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kcompactd0]
root        47  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kblockd]
root        48  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:1-rcu_gp]
root        49  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:1-rpciod]
root        50  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:2-rpciod]
root        51  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ata_sff]
root        52  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:1-events]
root        53  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:2-device_link_wq]
root        54  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:3-device_link_wq]
root        55  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:4-events]
root        56  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:5-events]
root        57  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [watchdogd]
root        58  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:6-rcu_gp]
root        59  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:7]
root        60  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:1H-kblockd]
root        61  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rpciod]
root        62  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-xprtiod]
root        63  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-cfg80211]
root        64  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kswapd0]
root        65  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:1-rpciod]
root        66  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-nfsiod]
root        67  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-120000.hdmi]
root        68  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:2-cgroup_destroy]
root        69  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:3-events]
root        70  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cec-dw_hdmi]
root        71  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-dw-hdmi-cec]
root        72  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-130000.gpu]
root        73  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-134000.gpu]
root        74  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-2204000.gpu]
root        75  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:1-events]
root        76  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc0]
root        77  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:4-events]
root        78  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc1]
root        79  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc2]
root        80  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc3]
root        81  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [scsi_eh_0]
root        82  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-scsi_tmf_0]
root        83  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ci_otg]
root        84  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:1-rpciod]
root        85  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:2-events_unbound]
root        86  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:3-rpciod]
root        87  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u21:0]
root        88  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u22:0]
root        89  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u23:0]
root        90  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u24:0]
root        91  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u25:0]
root        92  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        93  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/286-mmc0]
root        95  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        96  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/287-mmc1]
root        98  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:2-events]
root        99  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root       100  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/288-mmc2]
root       101  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2101000.jr-engine]
root       102  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:2-rpciod]
root       104  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [hwrng]
root       105  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2102000.jr-engine]
root       106  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/105-2198000.mmc cd]
root       107  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/30-2190000.mmc cd]
root       108  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mmc_complete]
root       109  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:1H-mmc_complete]
root       110  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:2-device_link_wq]
root       111  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:3-device_link_wq]
root       112  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:4-rcu_gp]
root       113  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:5-rcu_gp]
root       114  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:6-pm]
root       115  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mld]
root       116  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ipv6_addrconf]
root       117  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:1-130000.gpu]
root       119  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/297-imx_thermal]
root       123  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:1H]
root       124  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:3-nfsiod]
root       125  0.6  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:4-rpciod]
root       126  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:1H-events_highpri]
root       127  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:4-rpciod]
root       128  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:4-events_unbound]
root       129  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:3-rpciod]
root       130  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:4-rpciod]
root       131  0.7  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:5-xprtiod]
root       132  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:5-rpciod]
root       195  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:3-rcu_gp]
root       248  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/298-vdoa]
root       250  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/301-coda-jpeg]
root       251  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-coda]
root       263  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:4-events]
root       295  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:5-rpciod]
root       298  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:5-rpciod]
root       302  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:6-events_unbound]
root       305  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:6-rpciod]
root       443  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:6-kvfree_rcu_reclaim]
root         1  4.6  0.3  11124  7212 ?        Ss   20:12   0:07 /sbin/init
rpc        157  0.0  0.0   2824  1836 ?        Ss   20:12   0:00 /usr/sbin/rpcbind -w -f
root       159  0.9  0.3  33328  6276 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-journald
root       194  0.1  0.1   8328  3736 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-userdbd
root       196  0.0  0.2   8944  4380 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       197  0.0  0.1   8944  4100 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       198  0.0  0.2   8944  4340 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       204  0.6  0.2  20304  5440 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-udevd
systemd+   241  0.3  0.2   8648  4948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-resolved
systemd+   246  0.2  0.2  17744  4628 ?        Ssl  20:12   0:00 /usr/lib/systemd/systemd-timesyncd
root       315  0.0  0.0   1572  1172 ?        Ss   20:12   0:00 /usr/sbin/atd -f
avahi      316  0.1  0.1   4268  2272 ?        Ss   20:12   0:00 avahi-daemon: running [wandboard-mesa.local]
avahi      345  0.0  0.0   4092  1080 ?        S    20:12   0:00  \_ avahi-daemon: chroot helper
root       318  0.0  0.0   2080  1180 ?        Ss   20:12   0:00 /usr/sbin/crond -n
message+   319  1.5  0.1   4208  2628 ?        Ss   20:12   0:02 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
dhcpcd     320  0.0  0.1   4428  3552 ?        Ss   20:12   0:00 dhcpcd: [manager] [ip4] [ip6]
root       326  0.0  0.0   4660  1952 ?        S    20:12   0:00  \_ dhcpcd: [privileged proxy]
dhcpcd     387  0.0  0.0   4440  1440 ?        S    20:12   0:00  |   \_ dhcpcd: [BPF ARP] end0 192.168.1.72
dhcpcd     327  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [network proxy]
dhcpcd     328  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [control proxy]
root       323  0.2  0.1   6284  3268 ?        Ss   20:12   0:00 /usr/sbin/ofonod -n
root       324  0.2  0.0   1528  1076 ?        Ss   20:12   0:00 /usr/sbin/syslogd -F
root       325  0.8  0.2   8772  4812 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-logind
systemd+   346  0.2  0.2   9452  5948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-networkd
root       359  0.1  0.1   3704  2752 ?        Ss   20:12   0:00 /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     370  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     371  0.0  0.1   4276  2912 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     372  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     373  0.0  0.1   4468  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     374  0.0  0.1   4276  2832 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
ntp        365  0.0  0.2   7812  4796 ?        Ssl  20:12   0:00 /usr/sbin/ntpd -u ntp -p /run/ntpd.pid -g
root       368  0.0  0.0   1536  1024 tty1     Ss+  20:12   0:00 /sbin/agetty -o -p -- \u --noclear - linux
root       369  0.0  0.0   1564  1148 ttymxc0  Ss+  20:12   0:00 /sbin/agetty -8 -L ttymxc0 115200 linux
weston     375  3.1  1.7  96076 35560 tty7     Ssl+ 20:12   0:04 /usr/bin/weston --modules=systemd-notify.so
weston     426  0.0  0.1  10900  2256 tty7     S+   20:12   0:00  \_ (sd-pam)
weston     455  0.2  0.3  13092  7428 ?        Ss   20:12   0:00  \_ /usr/libexec/weston-keyboard
weston     456  0.7  0.7  21080 15532 ?        Ss   20:12   0:00  \_ /usr/libexec/weston-desktop-shell
polkitd    378  0.6  0.6 109048 14152 ?        Ssl  20:12   0:00 /usr/lib/polkit-1/polkitd --no-debug
weston     381  0.5  0.3  10028  6472 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd --user
weston     383  0.0  0.1  10944  2148 ?        S    20:12   0:00  \_ (sd-pam)
root      1193  7.9  0.2   6776  5596 ?        Ss   20:14   0:00 sshd: root@notty
root      1227  150  0.1   4996  2916 ?        Rs   20:14   0:00  \_ ps -auxfww
root      1202 62.1  0.3  10024  6492 ?        Ss   20:14   0:00 /usr/lib/systemd/systemd --user
root      1219  0.0  0.1  10484  2064 ?        S    20:14   0:00  \_ (sd-pam)</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:14:46.440241" elapsed="0.001185"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:14:47.010756" level="INFO">${stdout} = ('1.03', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:14:46.442136" elapsed="0.568819"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:14:47.013083" level="INFO">${value} = 1.03</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:14:47.011640" elapsed="0.001603"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:14:47.013525" elapsed="0.000241"/>
</return>
<msg time="2026-02-19T20:14:47.014407" level="INFO">${cpu_load} = 1.03</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:14:46.441739" elapsed="0.572847"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:14:47.015647" level="INFO">CPU load: 1.03</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:14:47.015155" elapsed="0.000596"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<msg time="2026-02-19T20:14:47.016377" level="FAIL">'1.03 &lt; 1' should be true.</msg>
<arg>${cpu_load} &lt; ${CPU_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="FAIL" start="2026-02-19T20:14:47.015966" elapsed="0.000541">'1.03 &lt; 1' should be true.</status>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<status status="NOT RUN" start="2026-02-19T20:14:47.016838" elapsed="0.000067"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-02-19T20:14:47.017097" elapsed="0.000402"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${MEMORY_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:14:47.017718" elapsed="0.000057"/>
</kw>
<doc>Check if the Device is idle.</doc>
<status status="FAIL" start="2026-02-19T20:14:44.790453" elapsed="2.227501">'1.03 &lt; 1' should be true.</status>
</kw>
<kw name="Check Device Is IDLE" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:14:58.627092" level="INFO">${stdout} = ('USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND\nroot         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]\nroot         3  0.0  0.0      0     0 ?        ...</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>ps -auxfww</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:14:57.020097" elapsed="1.607242"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:14:58.630098" level="INFO">${formatted} = USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S   ...</msg>
<var>${formatted}</var>
<arg>r"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:14:58.628044" elapsed="0.002248"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:14:58.631792" level="INFO">USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [pool_workqueue_release]
root         4  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kvfree_rcu_reclaim]
root         5  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rcu_gp]
root         6  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sync_wq]
root         7  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-slub_flushwq]
root         8  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:0-device_link_wq]
root         9  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:0H-mmc_complete]
root        10  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:1-device_link_wq]
root        11  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:0-ipv6_addrconf]
root        12  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mm_percpu_wq]
root        13  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_tasks_trace_kthread]
root        14  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/0]
root        15  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_sched]
root        16  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_par_gp_kthread_worker/0]
root        17  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_gp_kthread_worker]
root        18  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/0]
root        19  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/0]
root        20  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/1]
root        21  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/1]
root        22  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/1]
root        23  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:0-events]
root        24  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:0H-events_highpri]
root        25  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/2]
root        26  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/2]
root        27  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/2]
root        28  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:0-cgroup_destroy]
root        29  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:0H-kblockd]
root        30  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/3]
root        31  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/3]
root        32  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/3]
root        33  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:0-device_link_wq]
root        34  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:0H-events_highpri]
root        35  0.5  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:0-nfsiod]
root        36  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:0-nfsiod]
root        37  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:0-rpciod]
root        38  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:0-kvfree_rcu_reclaim]
root        39  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kdevtmpfs]
root        40  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-inet_frag_wq]
root        41  1.3  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u17:1-nfsiod]
root        42  1.0  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:2-xprtiod]
root        43  0.3  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:3-rpciod]
root        44  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [oom_reaper]
root        45  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-writeback]
root        46  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kcompactd0]
root        47  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kblockd]
root        48  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:1-rcu_gp]
root        49  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:1-events_unbound]
root        50  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:2-rpciod]
root        51  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ata_sff]
root        52  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:1-events]
root        53  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:2-device_link_wq]
root        54  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:3-device_link_wq]
root        55  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:4-events]
root        56  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:5-events]
root        57  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [watchdogd]
root        58  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:6-rcu_gp]
root        59  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:7]
root        60  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:1H-kblockd]
root        61  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rpciod]
root        62  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-xprtiod]
root        63  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-cfg80211]
root        64  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kswapd0]
root        65  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:1-kvfree_rcu_reclaim]
root        66  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-nfsiod]
root        67  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-120000.hdmi]
root        68  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:2-cgroup_destroy]
root        69  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:3-mm_percpu_wq]
root        70  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cec-dw_hdmi]
root        71  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-dw-hdmi-cec]
root        72  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-130000.gpu]
root        73  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-134000.gpu]
root        74  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-2204000.gpu]
root        75  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:1-events]
root        76  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc0]
root        77  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:4-events]
root        78  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc1]
root        79  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc2]
root        80  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc3]
root        81  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [scsi_eh_0]
root        82  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-scsi_tmf_0]
root        83  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ci_otg]
root        84  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:1-rpciod]
root        85  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:2-flush-0:16]
root        86  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:3-rpciod]
root        87  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u21:0]
root        88  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u22:0]
root        89  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u23:0]
root        90  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u24:0]
root        91  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u25:0]
root        92  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        93  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/286-mmc0]
root        95  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        96  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/287-mmc1]
root        98  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:2-events]
root        99  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root       100  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/288-mmc2]
root       101  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2101000.jr-engine]
root       102  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:2-rpciod]
root       104  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [hwrng]
root       105  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2102000.jr-engine]
root       106  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/105-2198000.mmc cd]
root       107  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/30-2190000.mmc cd]
root       108  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mmc_complete]
root       109  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:1H-mmc_complete]
root       110  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:2-device_link_wq]
root       111  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:3-device_link_wq]
root       112  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:4-rcu_gp]
root       113  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:5-rcu_gp]
root       114  0.2  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:6-events]
root       115  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mld]
root       116  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ipv6_addrconf]
root       117  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:1-130000.gpu]
root       119  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/297-imx_thermal]
root       123  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:1H]
root       124  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:3-nfsiod]
root       125  0.6  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:4-rpciod]
root       126  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:1H-events_highpri]
root       127  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:4-rpciod]
root       128  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:4-events_unbound]
root       129  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:3-rpciod]
root       130  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:4-rpciod]
root       131  0.6  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:5-xprtiod]
root       132  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:5-rpciod]
root       195  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:3-rcu_gp]
root       248  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/298-vdoa]
root       250  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/301-coda-jpeg]
root       251  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-coda]
root       263  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:4-events]
root       295  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:5-rpciod]
root       298  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:5-rpciod]
root       302  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:6-kvfree_rcu_reclaim]
root       305  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:6-rpciod]
root       443  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:6-kvfree_rcu_reclaim]
root         1  4.4  0.3  11124  7340 ?        Ss   20:12   0:07 /sbin/init
rpc        157  0.0  0.0   2824  1836 ?        Ss   20:12   0:00 /usr/sbin/rpcbind -w -f
root       159  0.9  0.3  33328  6276 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-journald
root       194  0.1  0.1   8328  3736 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-userdbd
root       196  0.0  0.2   8944  4380 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       197  0.0  0.1   8944  4100 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       198  0.0  0.2   8944  4340 ?        S    20:12   0:00  \_ systemd-userwork: waiting...
root       204  0.5  0.2  20304  5440 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-udevd
systemd+   241  0.2  0.2   8648  4948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-resolved
systemd+   246  0.2  0.2  17744  4628 ?        Ssl  20:12   0:00 /usr/lib/systemd/systemd-timesyncd
root       315  0.0  0.0   1572  1172 ?        Ss   20:12   0:00 /usr/sbin/atd -f
avahi      316  0.1  0.1   4268  2272 ?        Ss   20:12   0:00 avahi-daemon: running [wandboard-mesa.local]
avahi      345  0.0  0.0   4092  1080 ?        S    20:12   0:00  \_ avahi-daemon: chroot helper
root       318  0.0  0.0   2080  1180 ?        Ss   20:12   0:00 /usr/sbin/crond -n
message+   319  1.4  0.1   4208  2628 ?        Ss   20:12   0:02 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
dhcpcd     320  0.0  0.1   4428  3552 ?        Ss   20:12   0:00 dhcpcd: [manager] [ip4] [ip6]
root       326  0.0  0.0   4660  1952 ?        S    20:12   0:00  \_ dhcpcd: [privileged proxy]
dhcpcd     387  0.0  0.0   4440  1440 ?        S    20:12   0:00  |   \_ dhcpcd: [BPF ARP] end0 192.168.1.72
dhcpcd     327  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [network proxy]
dhcpcd     328  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [control proxy]
root       323  0.2  0.1   6284  3268 ?        Ss   20:12   0:00 /usr/sbin/ofonod -n
root       324  0.2  0.0   1528  1076 ?        Ss   20:12   0:00 /usr/sbin/syslogd -F
root       325  0.8  0.2   8772  4812 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-logind
systemd+   346  0.2  0.2   9452  5948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-networkd
root       359  0.1  0.1   3704  2752 ?        Ss   20:12   0:00 /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     370  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     371  0.0  0.1   4276  2912 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     372  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     373  0.0  0.1   4468  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     374  0.0  0.1   4276  2832 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
ntp        365  0.0  0.2   7812  4796 ?        Ssl  20:12   0:00 /usr/sbin/ntpd -u ntp -p /run/ntpd.pid -g
root       368  0.0  0.0   1536  1024 tty1     Ss+  20:12   0:00 /sbin/agetty -o -p -- \u --noclear - linux
root       369  0.0  0.0   1564  1148 ttymxc0  Ss+  20:12   0:00 /sbin/agetty -8 -L ttymxc0 115200 linux
weston     375  2.9  1.7  96076 35560 tty7     Ssl+ 20:12   0:04 /usr/bin/weston --modules=systemd-notify.so
weston     426  0.0  0.1  10900  2256 tty7     S+   20:12   0:00  \_ (sd-pam)
weston     455  0.2  0.3  13092  7428 ?        Ss   20:12   0:00  \_ /usr/libexec/weston-keyboard
weston     456  0.6  0.7  21080 15532 ?        Ss   20:12   0:00  \_ /usr/libexec/weston-desktop-shell
polkitd    378  0.6  0.6 109048 14152 ?        Ssl  20:12   0:00 /usr/lib/polkit-1/polkitd --no-debug
weston     381  0.5  0.3  10028  6472 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd --user
weston     383  0.0  0.1  10944  2148 ?        S    20:12   0:00  \_ (sd-pam)
root      1276  8.7  0.2   6776  5632 ?        Ss   20:14   0:00 sshd: root@notty
root      1292  150  0.1   4996  2920 ?        Rs   20:14   0:00  \_ ps -auxfww
root      1285 64.2  0.3  10024  6556 ?        Ss   20:14   0:00 /usr/lib/systemd/systemd --user
root      1287  0.0  0.1  10484  2068 ?        S    20:14   0:00  \_ (sd-pam)</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:14:58.630999" elapsed="0.002028"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:14:59.221359" level="INFO">${stdout} = ('0.88', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:14:58.635104" elapsed="0.586526"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:14:59.224044" level="INFO">${value} = 0.88</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:14:59.222372" elapsed="0.001857"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:14:59.224601" elapsed="0.000248"/>
</return>
<msg time="2026-02-19T20:14:59.225611" level="INFO">${cpu_load} = 0.88</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:14:58.633943" elapsed="0.591842"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:14:59.226705" level="INFO">CPU load: 0.88</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:14:59.226429" elapsed="0.000368"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${cpu_load} &lt; ${CPU_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:14:59.226998" elapsed="0.000355"/>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:14:59.851823" level="INFO">${stdout} = ('195', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>free -m | grep Mem | awk '{print $3}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:14:59.228038" elapsed="0.623976"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:14:59.854417" level="INFO">${value} = 195.0</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:14:59.852741" elapsed="0.001903"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:14:59.854990" elapsed="0.000231"/>
</return>
<msg time="2026-02-19T20:14:59.855979" level="INFO">${memory_used} = 195.0</msg>
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:14:59.227662" elapsed="0.628479"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:14:59.857029" level="INFO">Memory used: 195.0</msg>
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:14:59.856770" elapsed="0.000350"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${MEMORY_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:14:59.857343" elapsed="0.000511"/>
</kw>
<doc>Check if the Device is idle.</doc>
<status status="PASS" start="2026-02-19T20:14:57.019042" elapsed="2.838947"/>
</kw>
<arg>18x</arg>
<arg>10s</arg>
<arg>Check Device Is IDLE</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:14:09.052013" elapsed="50.806093"/>
</kw>
<status status="PASS" start="2026-02-19T20:14:08.238912" elapsed="51.619314"/>
</kw>
<test id="s1-s3-t1" name="WPE Testbed Unbounded" line="14">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:15:18.014124" level="INFO">${stdout} = ('{"actual": 130.044, "expected": 74.0}', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>/root/scripts/wpe-testbed.py --report --filter unbounded</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:14:59.859211" elapsed="18.155103"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:15:18.017032" level="INFO">${data} = {'actual': 130.044, 'expected': 74.0}</msg>
<var>${data}</var>
<arg>json.loads('''${stdout}[0]''')</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:15:18.015231" elapsed="0.001989"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${data['actual']} &gt;= ${data['expected']}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:15:18.018160" elapsed="0.002642"/>
</kw>
<timeout value="2 minutes"/>
<status status="PASS" start="2026-02-19T20:14:59.858433" elapsed="18.162670"/>
</test>
<test id="s1-s3-t2" name="WPE Testbed Unbounded And No Animate" line="19">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:15:32.452361" level="INFO">${stdout} = ('{"actual": 165.254, "expected": 85.0}', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>/root/scripts/wpe-testbed.py --report --filter unbounded_and_no_animate</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:15:18.022524" elapsed="14.430059"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:15:32.455349" level="INFO">${data} = {'actual': 165.254, 'expected': 85.0}</msg>
<var>${data}</var>
<arg>json.loads('''${stdout}[0]''')</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:15:32.453619" elapsed="0.001920"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${data['actual']} &gt;= ${data['expected']}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:15:32.456455" elapsed="0.002517"/>
</kw>
<timeout value="2 minutes"/>
<status status="PASS" start="2026-02-19T20:15:18.021733" elapsed="14.437539"/>
</test>
<status status="PASS" start="2026-02-19T20:14:08.228540" elapsed="84.231502"/>
</suite>
<suite id="s1-s4" name="Tests 008 Remote Inspector" source="/app/tests_results/20260219_201245_robot_/../../robot_framework/tests/tests_008_remote_inspector.robot">
<kw name="Configure Mockup Pages" owner="keywords_common" type="SETUP">
<variable name="${HOME_PAGE}">
<msg time="2026-02-19T20:15:32.472098" level="INFO">${HOME_PAGE} = http://192.168.1.246:8008/robot_framework/html/home-page.html</msg>
<var>http://%{TEST_WEBSERVER_IP}:%{TEST_WEBSERVER_PORT}/robot_framework/html/home-page.html</var>
<status status="PASS" start="2026-02-19T20:15:32.471849" elapsed="0.000314"/>
</variable>
<variable name="${SEARCH_PAGE}">
<msg time="2026-02-19T20:15:32.472495" level="INFO">${SEARCH_PAGE} = http://192.168.1.246:8008/robot_framework/html/search-page.html</msg>
<var>http://%{TEST_WEBSERVER_IP}:%{TEST_WEBSERVER_PORT}/robot_framework/html/search-page.html</var>
<status status="PASS" start="2026-02-19T20:15:32.472295" elapsed="0.000272"/>
</variable>
<kw name="Configure Weston Service Debug Mode" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>sed -i 's|ExecStart=/usr/bin/weston --modules=systemd-notify.so|ExecStart=/usr/bin/weston --continue-without-input --modules=systemd-notify.so --debug|' /lib/systemd/system/weston.service</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:15:32.473139" elapsed="0.630118"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>sed -i 's|ExecStart=/usr/bin/weston --continue-without-input --modules=systemd-notify.so|ExecStart=/usr/bin/weston --continue-without-input --modules=systemd-notify.so --debug|' /lib/systemd/system/weston.service</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:15:33.103979" elapsed="0.722481"/>
</kw>
<doc>Enables debug mode for Weston service on the test board.</doc>
<status status="PASS" start="2026-02-19T20:15:32.472846" elapsed="1.354115"/>
</kw>
<kw name="Configure Demo Application URLs" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>sed -i 's|https://www.wpewebkit.org|${home_page}|g' /usr/bin/demo-wpe-website</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:15:33.829590" elapsed="0.592781"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>sed -i 's|https://duckduckgo.com/|${search_page}|g' /usr/bin/demo-wpe-duckduckgo</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:15:34.423083" elapsed="0.580403"/>
</kw>
<arg>${HOME_PAGE}</arg>
<arg>${SEARCH_PAGE}</arg>
<doc>Updates demo application URLs to point to mockup pages.</doc>
<status status="PASS" start="2026-02-19T20:15:33.828069" elapsed="1.175946"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>systemctl daemon-reload &amp;&amp; systemctl restart weston</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:15:35.004727" elapsed="3.604618"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:15:38.614591" elapsed="2.321144"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:15:40.939488" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png home-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:15:40.936525" elapsed="0.946080"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:15:41.884476" level="INFO" html="true">&lt;img src="home-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:15:41.883404" elapsed="0.001405"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:15:38.612982" elapsed="3.272250"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:15:42.813349" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/c44714ba-0dcf-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/c44714ba-0dcf-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:15:42.813365" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/c44bc550-0dcf-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/c44bc550-0dcf-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:15:42.813371" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/c44eb3be-0dcf-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/c44eb3be-0dcf-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.99987382135544056183</msg>
<msg time="2026-02-19T20:15:42.813687" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:15:41.885951" elapsed="0.930465">The compared images are different.</status>
</kw>
<arg>${HOME_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:15:38.611508" elapsed="4.205273">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:15:43.820188" elapsed="1.898879"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:15:45.722048" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png home-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:15:45.719705" elapsed="0.705451"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:15:46.427001" level="INFO" html="true">&lt;img src="home-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:15:46.425917" elapsed="0.001363"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:15:43.819220" elapsed="2.608470"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:15:46.902182" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/c6b6ebf8-0dcf-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/c6b6ebf8-0dcf-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:15:46.902199" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/c6bba17a-0dcf-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/c6bba17a-0dcf-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:15:46.902203" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/c6be9556-0dcf-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/c6be9556-0dcf-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.97841891661744906372</msg>
<msg time="2026-02-19T20:15:46.902486" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:15:46.428283" elapsed="0.475716">The compared images are different.</status>
</kw>
<arg>${HOME_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:15:43.817913" elapsed="3.086330">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:15:47.907698" elapsed="1.730056"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:15:49.641224" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png home-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:15:49.638651" elapsed="0.747596"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:15:50.388215" level="INFO" html="true">&lt;img src="home-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:15:50.387140" elapsed="0.001389"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:15:47.906679" elapsed="2.482321"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:15:50.816276" level="INFO">Images/Document comparison passed.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="PASS" start="2026-02-19T20:15:50.389731" elapsed="0.426842"/>
</kw>
<arg>${HOME_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="PASS" start="2026-02-19T20:15:47.905278" elapsed="2.911646"/>
</kw>
<arg>20x</arg>
<arg>1000ms</arg>
<arg>Remote Weston Check Screenshot</arg>
<arg>${HOME_SCREEN_IMAGE}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:15:38.610157" elapsed="12.207020"/>
</kw>
<doc>Configures mockup pages on the test board by modifying Weston service
and demo application URLs to point to the test webserver.</doc>
<status status="PASS" start="2026-02-19T20:15:32.471600" elapsed="18.345863"/>
</kw>
<test id="s1-s4-t1" name="Validate Remote Inspector Functionality" line="21">
<kw name="Setup Validate Remote Inspector Functionality" type="SETUP">
<kw name="Kill Demo">
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:15:50.821294" level="INFO">${TEST_BOARD_IP} = 192.168.1.72</msg>
<var>${TEST_BOARD_IP}</var>
<arg>TEST_BOARD_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:15:50.820909" elapsed="0.000446"/>
</kw>
<kw name="Ssh Command In Background" owner="TestUtils">
<arg>${TEST_BOARD_IP}</arg>
<arg>/usr/bin/kill-demo</arg>
<doc>Run SSH command in the background without closing the SSH
connection.</doc>
<status status="PASS" start="2026-02-19T20:15:50.821578" elapsed="0.015225"/>
</kw>
<status status="PASS" start="2026-02-19T20:15:50.820511" elapsed="0.017409"/>
</kw>
<kw name="Launch Demo WPE Website With HTTP Remote Inspector Enabled">
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:15:50.842002" level="INFO">${TEST_BOARD_IP} = 192.168.1.72</msg>
<var>${TEST_BOARD_IP}</var>
<arg>TEST_BOARD_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:15:50.840842" elapsed="0.001242"/>
</kw>
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:15:50.842750" level="INFO">${TEST_WEBKIT_INSPECTOR_HTTP_SERVER_PORT} = 22322</msg>
<var>${TEST_WEBKIT_INSPECTOR_HTTP_SERVER_PORT}</var>
<arg>TEST_WEBKIT_INSPECTOR_HTTP_SERVER_PORT</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:15:50.842333" elapsed="0.000477"/>
</kw>
<kw name="Ssh Command In Background" owner="TestUtils">
<arg>${TEST_BOARD_IP}</arg>
<arg>export WEBKIT_INSPECTOR_HTTP_SERVER=0.0.0.0:${TEST_WEBKIT_INSPECTOR_HTTP_SERVER_PORT} &amp;&amp; /usr/bin/demo-wpe-website</arg>
<doc>Run SSH command in the background without closing the SSH
connection.</doc>
<status status="PASS" start="2026-02-19T20:15:50.843031" elapsed="0.006064"/>
</kw>
<status status="PASS" start="2026-02-19T20:15:50.839263" elapsed="0.010977"/>
</kw>
<kw name="Connect To Remote Inspector">
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:15:50.854047" level="INFO">${TEST_BOARD_IP} = 192.168.1.72</msg>
<var>${TEST_BOARD_IP}</var>
<arg>TEST_BOARD_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:15:50.853223" elapsed="0.000898"/>
</kw>
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:15:50.854778" level="INFO">${TEST_WEBKIT_INSPECTOR_HTTP_SERVER_PORT} = 22322</msg>
<var>${TEST_WEBKIT_INSPECTOR_HTTP_SERVER_PORT}</var>
<arg>TEST_WEBKIT_INSPECTOR_HTTP_SERVER_PORT</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:15:50.854354" elapsed="0.000486"/>
</kw>
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:15:50.855414" level="INFO">${TEST_WPEWEBKIT_VERSION} = 2_50</msg>
<var>${TEST_WPEWEBKIT_VERSION}</var>
<arg>TEST_WPEWEBKIT_VERSION</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:15:50.855056" elapsed="0.000417"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-02-19T20:15:50.856300" level="INFO">${REMOTE_INSPECTOR_URL} = http://192.168.1.72:22322</msg>
<var>${REMOTE_INSPECTOR_URL}</var>
<arg>http://${TEST_BOARD_IP}:${TEST_WEBKIT_INSPECTOR_HTTP_SERVER_PORT}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-02-19T20:15:50.855754" elapsed="0.000604"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:15:50.857103" level="INFO">Connecting to remote inspector at http://192.168.1.72:22322</msg>
<arg>Connecting to remote inspector at ${REMOTE_INSPECTOR_URL}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:15:50.856665" elapsed="0.000557"/>
</kw>
<kw name="Create ChromiumOptions">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:15:50.859349" level="INFO">${options} = &lt;selenium.webdriver.chrome.options.Options object at 0x72977c26a150&gt;</msg>
<var>${options}</var>
<arg>sys.modules['selenium.webdriver'].ChromeOptions()</arg>
<arg>sys, selenium.webdriver</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:15:50.858368" elapsed="0.001057"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Call Method" owner="BuiltIn">
<arg>${options}</arg>
<arg>add_argument</arg>
<arg>${param}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-02-19T20:15:50.860949" elapsed="0.000445"/>
</kw>
<var name="${param}">--headless</var>
<status status="PASS" start="2026-02-19T20:15:50.860636" elapsed="0.000865"/>
</iter>
<iter>
<kw name="Call Method" owner="BuiltIn">
<arg>${options}</arg>
<arg>add_argument</arg>
<arg>${param}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-02-19T20:15:50.861975" elapsed="0.000430"/>
</kw>
<var name="${param}">--user-data-dir=/tmp/user-data</var>
<status status="PASS" start="2026-02-19T20:15:50.861789" elapsed="0.000720"/>
</iter>
<iter>
<kw name="Call Method" owner="BuiltIn">
<arg>${options}</arg>
<arg>add_argument</arg>
<arg>${param}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-02-19T20:15:50.862893" elapsed="0.000392"/>
</kw>
<var name="${param}">--no-sandbox</var>
<status status="PASS" start="2026-02-19T20:15:50.862719" elapsed="0.000666"/>
</iter>
<var>${param}</var>
<value>@{params}</value>
<status status="PASS" start="2026-02-19T20:15:50.859722" elapsed="0.004112"/>
</for>
<return>
<value>${options}</value>
<status status="PASS" start="2026-02-19T20:15:50.864016" elapsed="0.000233"/>
</return>
<msg time="2026-02-19T20:15:50.864536" level="INFO">${chromium_options} = &lt;selenium.webdriver.chrome.options.Options object at 0x72977c26a150&gt;</msg>
<var>${chromium_options}</var>
<arg>--headless</arg>
<arg>--user-data-dir=/tmp/user-data</arg>
<arg>--no-sandbox</arg>
<status status="PASS" start="2026-02-19T20:15:50.857794" elapsed="0.006825"/>
</kw>
<kw name="Create Webdriver" owner="SeleniumLibrary">
<msg time="2026-02-19T20:15:50.865633" level="INFO">Creating an instance of the Chrome WebDriver.</msg>
<arg>Chrome</arg>
<arg>options=${chromium_options}</arg>
<doc>Creates an instance of Selenium WebDriver.</doc>
<status status="PASS" start="2026-02-19T20:15:50.864963" elapsed="2.335277"/>
</kw>
<kw name="Go To" owner="SeleniumLibrary">
<msg time="2026-02-19T20:15:53.201637" level="INFO">Opening url 'http://192.168.1.72:22322'</msg>
<arg>url=${REMOTE_INSPECTOR_URL}</arg>
<doc>Navigates the current browser window to the provided ``url``.</doc>
<status status="PASS" start="2026-02-19T20:15:53.200826" elapsed="0.465668"/>
</kw>
<kw name="Maximize Browser Window" owner="SeleniumLibrary">
<doc>Maximizes current browser window.</doc>
<status status="PASS" start="2026-02-19T20:15:53.666986" elapsed="0.031151"/>
</kw>
<kw name="Wait Until Page Contains" owner="SeleniumLibrary">
<msg time="2026-02-19T20:16:08.824375" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-1.png"&gt;&lt;img src="selenium-screenshot-1.png" width="800px"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:16:08.824738" level="FAIL">Text 'Home Page' did not appear in 15 seconds.</msg>
<arg>Home Page</arg>
<arg>timeout=15s</arg>
<doc>Waits until ``text`` appears on the current page.</doc>
<status status="FAIL" start="2026-02-19T20:15:53.698626" elapsed="15.132676">Text 'Home Page' did not appear in 15 seconds.</status>
</kw>
<kw name="Wait Until Element Is Visible" owner="SeleniumLibrary">
<arg>xpath=//*[@id="targetlist"]/table/tbody/tr/td[1]/div[1]</arg>
<arg>timeout=5s</arg>
<doc>Waits until the element ``locator`` is visible.</doc>
<status status="NOT RUN" start="2026-02-19T20:16:08.831681" elapsed="0.000078"/>
</kw>
<kw name="Go To" owner="SeleniumLibrary">
<arg>http://${TEST_BOARD_IP}:${TEST_WEBKIT_INSPECTOR_HTTP_SERVER_PORT}/Main.html?ws=${TEST_BOARD_IP}:${TEST_WEBKIT_INSPECTOR_HTTP_SERVER_PORT}/socket/1/1/WebPage</arg>
<doc>Navigates the current browser window to the provided ``url``.</doc>
<status status="NOT RUN" start="2026-02-19T20:16:08.831967" elapsed="0.000065"/>
</kw>
<kw name="Wait Until Element Is Visible" owner="SeleniumLibrary">
<arg>xpath=//*[@id="main"]</arg>
<arg>timeout=5s</arg>
<doc>Waits until the element ``locator`` is visible.</doc>
<status status="NOT RUN" start="2026-02-19T20:16:08.832222" elapsed="0.000053"/>
</kw>
<doc>Opens a browser and navigates to the remote inspector URL.</doc>
<status status="FAIL" start="2026-02-19T20:15:50.851682" elapsed="17.980850">Text 'Home Page' did not appear in 15 seconds.</status>
</kw>
<status status="FAIL" start="2026-02-19T20:15:50.820068" elapsed="18.012670">Text 'Home Page' did not appear in 15 seconds.</status>
</kw>
<kw name="Teardown Validate Remote Inspector Functionality" type="TEARDOWN">
<kw name="Close Browser" owner="SeleniumLibrary">
<doc>Closes the current browser.</doc>
<status status="PASS" start="2026-02-19T20:16:08.834595" elapsed="0.156700"/>
</kw>
<kw name="Kill Demo">
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:16:08.992444" level="INFO">${TEST_BOARD_IP} = 192.168.1.72</msg>
<var>${TEST_BOARD_IP}</var>
<arg>TEST_BOARD_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:16:08.992157" elapsed="0.000350"/>
</kw>
<kw name="Ssh Command In Background" owner="TestUtils">
<arg>${TEST_BOARD_IP}</arg>
<arg>/usr/bin/kill-demo</arg>
<doc>Run SSH command in the background without closing the SSH
connection.</doc>
<status status="PASS" start="2026-02-19T20:16:08.992741" elapsed="0.005727"/>
</kw>
<status status="PASS" start="2026-02-19T20:16:08.991647" elapsed="0.007997"/>
</kw>
<status status="PASS" start="2026-02-19T20:16:08.834103" elapsed="0.165834"/>
</kw>
<doc>Connects to a running WebKit remote inspector and validates its basic UI functions.</doc>
<tag>test:retry(0)</tag>
<timeout value="2 minutes"/>
<status status="FAIL" start="2026-02-19T20:15:50.817900" elapsed="18.182829">Setup failed:
Text 'Home Page' did not appear in 15 seconds.</status>
</test>
<status status="FAIL" start="2026-02-19T20:15:32.461240" elapsed="36.542051"/>
</suite>
<suite id="s1-s5" name="Tests 010 Input Events" source="/app/tests_results/20260219_201245_robot_/../../robot_framework/tests/tests_010_input_events.robot">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn" type="SETUP">
<kw name="Webdriver Remote Start Maximized" owner="keywords_common">
<variable name="${PAGE}">
<msg time="2026-02-19T20:16:09.035509" level="INFO">${PAGE} = http://192.168.1.246:8008/robot_framework/html/home-page.html</msg>
<var>http://%{TEST_WEBSERVER_IP}:%{TEST_WEBSERVER_PORT}/robot_framework/html/home-page.html</var>
<status status="PASS" start="2026-02-19T20:16:09.035137" elapsed="0.000457"/>
</variable>
<kw name="Webdriver Remote Start" owner="keywords_common">
<kw name="Ssh Webdriver Remote Stop" owner="TestUtils">
<msg time="2026-02-19T20:16:10.027112" level="INFO">RUN: Killing all 'WPEWebDriver' related processes ...</msg>
<arg>%{TEST_BOARD_IP}</arg>
<status status="PASS" start="2026-02-19T20:16:09.036403" elapsed="0.991122"/>
</kw>
<kw name="Ssh Force Kill" owner="TestUtils">
<msg time="2026-02-19T20:16:10.944043" level="INFO">RUN: Killing all 'wpe-simple-launcher' related processes ...</msg>
<arg>%{TEST_BOARD_IP}</arg>
<arg>wpe-simple-launcher</arg>
<doc>Force kill all related process.</doc>
<status status="PASS" start="2026-02-19T20:16:10.028413" elapsed="0.915955"/>
</kw>
<kw name="Ssh Webdriver Remote Start" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>%{TEST_BOARD_WEBDRIVER_PORT}</arg>
<status status="PASS" start="2026-02-19T20:16:10.945090" elapsed="0.007838"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-02-19T20:16:15.956474" level="INFO">Slept 5 seconds.</msg>
<arg>5</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-02-19T20:16:10.954637" elapsed="5.002429"/>
</kw>
<kw name="Create WPEWebKitOptions" owner="keywords_common">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:16:15.962882" level="INFO">${wpe_options} = &lt;selenium.webdriver.wpewebkit.options.Options object at 0x72977c2a4380&gt;</msg>
<var>${wpe_options}</var>
<arg>sys.modules['selenium.webdriver'].WPEWebKitOptions()</arg>
<arg>sys, selenium.webdriver</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:16:15.961851" elapsed="0.001100"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-02-19T20:16:15.963803" level="INFO">${wpe_options.binary_location} = /usr/bin/wpe-exported-wayland</msg>
<var>${wpe_options.binary_location}</var>
<arg>${binary_path}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-02-19T20:16:15.963252" elapsed="0.000621"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Call Method" owner="BuiltIn">
<arg>${wpe_options}</arg>
<arg>add_argument</arg>
<arg>${param}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-02-19T20:16:15.964968" elapsed="0.000455"/>
</kw>
<var name="${param}">--automation</var>
<status status="PASS" start="2026-02-19T20:16:15.964663" elapsed="0.000871"/>
</iter>
<iter>
<kw name="Call Method" owner="BuiltIn">
<arg>${wpe_options}</arg>
<arg>add_argument</arg>
<arg>${param}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-02-19T20:16:15.965938" elapsed="0.000888"/>
</kw>
<var name="${param}">--maximized</var>
<status status="PASS" start="2026-02-19T20:16:15.965749" elapsed="0.001182"/>
</iter>
<var>${param}</var>
<value>@{other_params}</value>
<status status="PASS" start="2026-02-19T20:16:15.964133" elapsed="0.002902"/>
</for>
<kw name="Call Method" owner="BuiltIn">
<arg>${wpe_options}</arg>
<arg>set_capability</arg>
<arg>browserName</arg>
<arg>${binary_name}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-02-19T20:16:15.967276" elapsed="0.000421"/>
</kw>
<return>
<value>${wpe_options}</value>
<status status="PASS" start="2026-02-19T20:16:15.967875" elapsed="0.000224"/>
</return>
<msg time="2026-02-19T20:16:15.968418" level="INFO">${wpe_options} = &lt;selenium.webdriver.wpewebkit.options.Options object at 0x72977c2a4380&gt;</msg>
<var>${wpe_options}</var>
<arg>wpe-simple-launcher</arg>
<arg>/usr/bin/wpe-exported-wayland</arg>
<arg>--automation</arg>
<arg>@{other_params}</arg>
<doc>Creates and configures WPEWebKit options for WebDriver session.</doc>
<status status="PASS" start="2026-02-19T20:16:15.959810" elapsed="0.008671"/>
</kw>
<kw name="Create Webdriver" owner="SeleniumLibrary">
<msg time="2026-02-19T20:16:15.969619" level="INFO">Creating an instance of the Remote WebDriver.</msg>
<arg>Remote</arg>
<arg>command_executor=%{TEST_BOARD_IP}:%{TEST_BOARD_WEBDRIVER_PORT}</arg>
<arg>options=${wpe_options}</arg>
<doc>Creates an instance of Selenium WebDriver.</doc>
<status status="PASS" start="2026-02-19T20:16:15.968830" elapsed="0.999597"/>
</kw>
<arg>--maximized</arg>
<doc>Starts WebDriver session on remote test board with WPE launcher.</doc>
<timeout value="2 minutes"/>
<status status="PASS" start="2026-02-19T20:16:09.035932" elapsed="7.933056"/>
</kw>
<kw name="Go To" owner="SeleniumLibrary">
<msg time="2026-02-19T20:16:16.970476" level="INFO">Opening url 'http://192.168.1.246:8008/robot_framework/html/home-page.html'</msg>
<arg>${PAGE}</arg>
<doc>Navigates the current browser window to the provided ``url``.</doc>
<status status="PASS" start="2026-02-19T20:16:16.969870" elapsed="0.838586"/>
</kw>
<kw name="Wait Until Page Contains" owner="SeleniumLibrary">
<arg>Home Page</arg>
<arg>timeout=10s</arg>
<doc>Waits until ``text`` appears on the current page.</doc>
<status status="PASS" start="2026-02-19T20:16:17.809310" elapsed="0.527013"/>
</kw>
<kw name="Execute Javascript" owner="SeleniumLibrary">
<msg time="2026-02-19T20:16:18.339601" level="INFO">Executing JavaScript:
return window.innerWidth;
Without any arguments.</msg>
<msg time="2026-02-19T20:16:18.352253" level="INFO">${inner_width} = 1920</msg>
<var>${inner_width}</var>
<arg>return window.innerWidth;</arg>
<doc>Executes the given JavaScript code with possible arguments.</doc>
<status status="PASS" start="2026-02-19T20:16:18.337165" elapsed="0.015185"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${inner_width} == 1920</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:16:18.352868" elapsed="0.000877"/>
</kw>
<kw name="Execute Javascript" owner="SeleniumLibrary">
<msg time="2026-02-19T20:16:18.355193" level="INFO">Executing JavaScript:
return window.innerHeight;
Without any arguments.</msg>
<msg time="2026-02-19T20:16:18.380404" level="INFO">${inner_height} = 1048</msg>
<var>${inner_height}</var>
<arg>return window.innerHeight;</arg>
<doc>Executes the given JavaScript code with possible arguments.</doc>
<status status="PASS" start="2026-02-19T20:16:18.354108" elapsed="0.026493"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${inner_height} == 1048</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:16:18.381223" elapsed="0.001407"/>
</kw>
<doc>Starts WebDriver in maximized mode and verifies window dimensions.</doc>
<timeout value="2 minutes"/>
<status status="PASS" start="2026-02-19T20:16:09.034638" elapsed="9.348426"/>
</kw>
<arg>20x</arg>
<arg>1000ms</arg>
<arg>Webdriver Remote Start Maximized</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:16:09.033753" elapsed="9.349831"/>
</kw>
<test id="s1-s5-t1" name="Test Check Browser Imprecise Touch Event Using Uinput" line="17">
<kw name="Check Browser Imprecise Touch Event Using Uinput" owner="keywords_touch_events">
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:16:18.391521" level="INFO">${TEST_BOARD_IP} = 192.168.1.72</msg>
<var>${TEST_BOARD_IP}</var>
<arg>TEST_BOARD_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:16:18.390224" elapsed="0.001682"/>
</kw>
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:16:18.393768" level="INFO">${TEST_WEBSERVER_IP} = 192.168.1.246</msg>
<var>${TEST_WEBSERVER_IP}</var>
<arg>TEST_WEBSERVER_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:16:18.392658" elapsed="0.001289"/>
</kw>
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:16:18.395731" level="INFO">${TEST_WEBSERVER_PORT} = 8008</msg>
<var>${TEST_WEBSERVER_PORT}</var>
<arg>TEST_WEBSERVER_PORT</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:16:18.394629" elapsed="0.001277"/>
</kw>
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:16:18.397651" level="INFO">${TEST_WPEWEBKIT_VERSION} = 2_50</msg>
<var>${TEST_WPEWEBKIT_VERSION}</var>
<arg>TEST_WPEWEBKIT_VERSION</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:16:18.396528" elapsed="0.001297"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-02-19T20:16:18.399806" level="INFO">${PAGE} = http://192.168.1.246:8008/robot_framework/html/test_button_click.html</msg>
<var>${PAGE}</var>
<arg>http://${TEST_WEBSERVER_IP}:${TEST_WEBSERVER_PORT}/robot_framework/html/test_button_click.html</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-02-19T20:16:18.398449" elapsed="0.001528"/>
</kw>
<kw name="Go To" owner="SeleniumLibrary">
<msg time="2026-02-19T20:16:18.401516" level="INFO">Opening url 'http://192.168.1.246:8008/robot_framework/html/test_button_click.html'</msg>
<arg>${PAGE}</arg>
<doc>Navigates the current browser window to the provided ``url``.</doc>
<status status="PASS" start="2026-02-19T20:16:18.400646" elapsed="0.107869"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:16:19.843973" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-2.png"&gt;&lt;img src="selenium-screenshot-2.png" width="800px"&gt;&lt;/a&gt;</msg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:16:18.509536" elapsed="1.334942"/>
</kw>
<kw name="Go To" owner="SeleniumLibrary">
<msg time="2026-02-19T20:16:19.846217" level="INFO">Opening url 'http://192.168.1.246:8008/robot_framework/html/test_button_click.html'</msg>
<arg>${PAGE}</arg>
<doc>Navigates the current browser window to the provided ``url``.</doc>
<status status="PASS" start="2026-02-19T20:16:19.845246" elapsed="0.361808"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>${TEST_BOARD_IP}</arg>
<arg>/root/scripts/emit-button-touch-event.py 75 75</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:16:20.207890" elapsed="4.443246"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Window Result Value" owner="keywords_touch_events">
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:16:25.831774" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-3.png"&gt;&lt;img src="selenium-screenshot-3.png" width="800px"&gt;&lt;/a&gt;</msg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:16:24.655205" elapsed="1.177086"/>
</kw>
<kw name="Execute Javascript" owner="SeleniumLibrary">
<msg time="2026-02-19T20:16:25.835133" level="INFO">Executing JavaScript:
return window.result;
Without any arguments.</msg>
<msg time="2026-02-19T20:16:25.850907" level="INFO">${result} = green</msg>
<var>${result}</var>
<arg>return window.result;</arg>
<doc>Executes the given JavaScript code with possible arguments.</doc>
<status status="PASS" start="2026-02-19T20:16:25.833093" elapsed="0.017940"/>
</kw>
<kw name="Should Be Equal As Strings" owner="BuiltIn">
<arg>${result}</arg>
<arg>${expectation}</arg>
<doc>Fails if objects are unequal after converting them to strings.</doc>
<status status="PASS" start="2026-02-19T20:16:25.851633" elapsed="0.001056"/>
</kw>
<arg>green</arg>
<status status="PASS" start="2026-02-19T20:16:24.653716" elapsed="1.199284"/>
</kw>
<arg>10x</arg>
<arg>1000ms</arg>
<arg>Check Window Result Value</arg>
<arg>green</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:16:24.652126" elapsed="1.201097"/>
</kw>
<kw name="Go To" owner="SeleniumLibrary">
<msg time="2026-02-19T20:16:25.854288" level="INFO">Opening url 'http://192.168.1.246:8008/robot_framework/html/test_button_click.html'</msg>
<arg>${PAGE}</arg>
<doc>Navigates the current browser window to the provided ``url``.</doc>
<status status="PASS" start="2026-02-19T20:16:25.853679" elapsed="0.089080"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>${TEST_BOARD_IP}</arg>
<arg>/root/scripts/emit-button-touch-event.py 200 200 20 0</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:16:25.943416" elapsed="4.275455"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Window Result Value" owner="keywords_touch_events">
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:16:31.453786" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-4.png"&gt;&lt;img src="selenium-screenshot-4.png" width="800px"&gt;&lt;/a&gt;</msg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:16:30.222483" elapsed="1.231756"/>
</kw>
<kw name="Execute Javascript" owner="SeleniumLibrary">
<msg time="2026-02-19T20:16:31.456655" level="INFO">Executing JavaScript:
return window.result;
Without any arguments.</msg>
<msg time="2026-02-19T20:16:31.470128" level="INFO">${result} = white</msg>
<var>${result}</var>
<arg>return window.result;</arg>
<doc>Executes the given JavaScript code with possible arguments.</doc>
<status status="PASS" start="2026-02-19T20:16:31.455017" elapsed="0.015257"/>
</kw>
<kw name="Should Be Equal As Strings" owner="BuiltIn">
<arg>${result}</arg>
<arg>${expectation}</arg>
<doc>Fails if objects are unequal after converting them to strings.</doc>
<status status="PASS" start="2026-02-19T20:16:31.471057" elapsed="0.001407"/>
</kw>
<arg>white</arg>
<status status="PASS" start="2026-02-19T20:16:30.221075" elapsed="1.251870"/>
</kw>
<arg>10x</arg>
<arg>1000ms</arg>
<arg>Check Window Result Value</arg>
<arg>white</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:16:30.219755" elapsed="1.253546"/>
</kw>
<kw name="Go To" owner="SeleniumLibrary">
<msg time="2026-02-19T20:16:31.474955" level="INFO">Opening url 'http://192.168.1.246:8008/robot_framework/html/test_button_click.html'</msg>
<arg>${PAGE}</arg>
<doc>Navigates the current browser window to the provided ``url``.</doc>
<status status="PASS" start="2026-02-19T20:16:31.474057" elapsed="0.081948"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>${TEST_BOARD_IP}</arg>
<arg>/root/scripts/emit-button-touch-event.py 200 200 0 20</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:16:31.556778" elapsed="4.217062"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Window Result Value" owner="keywords_touch_events">
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:16:36.941820" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-5.png"&gt;&lt;img src="selenium-screenshot-5.png" width="800px"&gt;&lt;/a&gt;</msg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:16:35.776843" elapsed="1.165417"/>
</kw>
<kw name="Execute Javascript" owner="SeleniumLibrary">
<msg time="2026-02-19T20:16:36.944848" level="INFO">Executing JavaScript:
return window.result;
Without any arguments.</msg>
<msg time="2026-02-19T20:16:36.958235" level="INFO">${result} = white</msg>
<var>${result}</var>
<arg>return window.result;</arg>
<doc>Executes the given JavaScript code with possible arguments.</doc>
<status status="PASS" start="2026-02-19T20:16:36.942958" elapsed="0.015373"/>
</kw>
<kw name="Should Be Equal As Strings" owner="BuiltIn">
<arg>${result}</arg>
<arg>${expectation}</arg>
<doc>Fails if objects are unequal after converting them to strings.</doc>
<status status="PASS" start="2026-02-19T20:16:36.958715" elapsed="0.000698"/>
</kw>
<arg>white</arg>
<status status="PASS" start="2026-02-19T20:16:35.776039" elapsed="1.183612"/>
</kw>
<arg>10x</arg>
<arg>1000ms</arg>
<arg>Check Window Result Value</arg>
<arg>white</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:16:35.774839" elapsed="1.184985"/>
</kw>
<status status="PASS" start="2026-02-19T20:16:18.388717" elapsed="18.571300"/>
</kw>
<timeout value="1 minute"/>
<status status="PASS" start="2026-02-19T20:16:18.384514" elapsed="18.576236"/>
</test>
<test id="s1-s5-t2" name="Test Check Browser Touch Scroll Using Uinput" line="20">
<kw name="Check Browser Touch Scroll Using Uinput" owner="keywords_touch_events">
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:18:08.749794" level="INFO">${TEST_MACHINE} = wandboard-mesa</msg>
<var>${TEST_MACHINE}</var>
<arg>TEST_MACHINE</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:18:08.748967" elapsed="0.000955"/>
</kw>
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:18:08.751795" level="INFO">${TEST_BOARD_IP} = 192.168.1.72</msg>
<var>${TEST_BOARD_IP}</var>
<arg>TEST_BOARD_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:18:08.750364" elapsed="0.001559"/>
</kw>
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:18:08.753233" level="INFO">${TEST_WEBSERVER_IP} = 192.168.1.246</msg>
<var>${TEST_WEBSERVER_IP}</var>
<arg>TEST_WEBSERVER_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:18:08.752463" elapsed="0.000888"/>
</kw>
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:18:08.754502" level="INFO">${TEST_WEBSERVER_PORT} = 8008</msg>
<var>${TEST_WEBSERVER_PORT}</var>
<arg>TEST_WEBSERVER_PORT</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:18:08.753807" elapsed="0.000841"/>
</kw>
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:18:08.755782" level="INFO">${TEST_WPEWEBKIT_VERSION} = 2_50</msg>
<var>${TEST_WPEWEBKIT_VERSION}</var>
<arg>TEST_WPEWEBKIT_VERSION</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:18:08.755066" elapsed="0.000830"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-02-19T20:18:08.757248" level="INFO">${PAGE} = http://192.168.1.246:8008/robot_framework/html/vertical_scroll.html</msg>
<var>${PAGE}</var>
<arg>http://${TEST_WEBSERVER_IP}:${TEST_WEBSERVER_PORT}/robot_framework/html/vertical_scroll.html</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-02-19T20:18:08.756321" elapsed="0.001044"/>
</kw>
<kw name="Get Machine Expectation" owner="TestUtils">
<msg time="2026-02-19T20:18:08.759633" level="INFO">${SCROLL_POSITION} = 300</msg>
<var>${SCROLL_POSITION}</var>
<arg>id=scroll-position</arg>
<arg>machine=${TEST_MACHINE}</arg>
<arg>wpeversion=${TEST_WPEWEBKIT_VERSION}</arg>
<arg>type=number</arg>
<status status="PASS" start="2026-02-19T20:18:08.757814" elapsed="0.001951"/>
</kw>
<kw name="Get Machine Expectation" owner="TestUtils">
<msg time="2026-02-19T20:18:08.761919" level="INFO">${SCROLL_MAX_POSITION} = 10000</msg>
<var>${SCROLL_MAX_POSITION}</var>
<arg>id=scroll-max-position</arg>
<arg>machine=${TEST_MACHINE}</arg>
<arg>wpeversion=${TEST_WPEWEBKIT_VERSION}</arg>
<arg>type=number</arg>
<status status="PASS" start="2026-02-19T20:18:08.760215" elapsed="0.001832"/>
</kw>
<kw name="Get Machine Expectation" owner="TestUtils">
<msg time="2026-02-19T20:18:08.763523" level="INFO">${SCROLL_THRESHOLD} = 15</msg>
<var>${SCROLL_THRESHOLD}</var>
<arg>id=scroll-threshold</arg>
<arg>machine=${TEST_MACHINE}</arg>
<arg>wpeversion=${TEST_WPEWEBKIT_VERSION}</arg>
<arg>type=number</arg>
<status status="PASS" start="2026-02-19T20:18:08.762520" elapsed="0.001105"/>
</kw>
<kw name="Get Machine Expectation" owner="TestUtils">
<msg time="2026-02-19T20:18:08.765076" level="INFO">${SWIPE_POSITION} = 1047</msg>
<var>${SWIPE_POSITION}</var>
<arg>id=swipe-position</arg>
<arg>machine=${TEST_MACHINE}</arg>
<arg>wpeversion=${TEST_WPEWEBKIT_VERSION}</arg>
<arg>type=number</arg>
<status status="PASS" start="2026-02-19T20:18:08.763928" elapsed="0.001235"/>
</kw>
<kw name="Get Machine Expectation" owner="TestUtils">
<msg time="2026-02-19T20:18:08.766668" level="INFO">${SWIPE_THRESHOLD} = 8</msg>
<var>${SWIPE_THRESHOLD}</var>
<arg>id=swipe-threshold</arg>
<arg>machine=${TEST_MACHINE}</arg>
<arg>wpeversion=${TEST_WPEWEBKIT_VERSION}</arg>
<arg>type=number</arg>
<status status="PASS" start="2026-02-19T20:18:08.765470" elapsed="0.001286"/>
</kw>
<kw name="Go To" owner="SeleniumLibrary">
<msg time="2026-02-19T20:18:08.767477" level="INFO">Opening url 'http://192.168.1.246:8008/robot_framework/html/vertical_scroll.html'</msg>
<arg>${PAGE}</arg>
<doc>Navigates the current browser window to the provided ``url``.</doc>
<status status="PASS" start="2026-02-19T20:18:08.767065" elapsed="0.088936"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:18:10.059073" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-24.png"&gt;&lt;img src="selenium-screenshot-24.png" width="800px"&gt;&lt;/a&gt;</msg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:18:08.856699" elapsed="1.202818"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-02-19T20:18:10.061386" level="INFO">${scroll_lower_position} = 300 - 15</msg>
<var>${scroll_lower_position}</var>
<arg>${SCROLL_POSITION} - ${SCROLL_THRESHOLD}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-02-19T20:18:10.060164" elapsed="0.001377"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>${TEST_BOARD_IP}</arg>
<arg>/root/scripts/touch-one-finger-gesture.py --duration 5 --steps 40 --delay-on-touch-up 0 100 500 100 200</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:18:10.062108" elapsed="9.256808"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Window PageYOffset Value" owner="keywords_touch_events">
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:18:20.453492" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-25.png"&gt;&lt;img src="selenium-screenshot-25.png" width="800px"&gt;&lt;/a&gt;</msg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:18:19.322419" elapsed="1.131612"/>
</kw>
<kw name="Execute Javascript" owner="SeleniumLibrary">
<msg time="2026-02-19T20:18:20.456591" level="INFO">Executing JavaScript:
return window.pageYOffset;
Without any arguments.</msg>
<msg time="2026-02-19T20:18:20.472579" level="INFO">${scroll_position} = 300</msg>
<var>${scroll_position}</var>
<arg>return window.pageYOffset;</arg>
<doc>Executes the given JavaScript code with possible arguments.</doc>
<status status="PASS" start="2026-02-19T20:18:20.454878" elapsed="0.017890"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${scroll_position} &gt;= ${expectation_equal_or_bigger_than}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:18:20.473441" elapsed="0.001540"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${scroll_position} &lt;= ${expectation_equal_or_less_than}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:18:20.475583" elapsed="0.001411"/>
</kw>
<arg>${scroll_lower_position}</arg>
<arg>${SCROLL_MAX_POSITION}</arg>
<status status="PASS" start="2026-02-19T20:18:19.320867" elapsed="1.156494"/>
</kw>
<arg>5x</arg>
<arg>3000ms</arg>
<arg>Check Window PageYOffset Value</arg>
<arg>${scroll_lower_position}</arg>
<arg>${SCROLL_MAX_POSITION}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:18:19.319702" elapsed="1.157984"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>${TEST_BOARD_IP}</arg>
<arg>/root/scripts/touch-one-finger-gesture.py --duration 5 --steps 40 --delay-on-touch-up 0 100 200 100 500</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:18:20.478228" elapsed="9.330684"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Window PageYOffset Value" owner="keywords_touch_events">
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:18:30.938318" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-26.png"&gt;&lt;img src="selenium-screenshot-26.png" width="800px"&gt;&lt;/a&gt;</msg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:18:29.812720" elapsed="1.126067"/>
</kw>
<kw name="Execute Javascript" owner="SeleniumLibrary">
<msg time="2026-02-19T20:18:30.941123" level="INFO">Executing JavaScript:
return window.pageYOffset;
Without any arguments.</msg>
<msg time="2026-02-19T20:18:30.949532" level="INFO">${scroll_position} = 0</msg>
<var>${scroll_position}</var>
<arg>return window.pageYOffset;</arg>
<doc>Executes the given JavaScript code with possible arguments.</doc>
<status status="PASS" start="2026-02-19T20:18:30.939431" elapsed="0.010217"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${scroll_position} &gt;= ${expectation_equal_or_bigger_than}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:18:30.950018" elapsed="0.000890"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${scroll_position} &lt;= ${expectation_equal_or_less_than}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:18:30.951250" elapsed="0.000826"/>
</kw>
<arg>0</arg>
<arg>${SCROLL_THRESHOLD}</arg>
<status status="PASS" start="2026-02-19T20:18:29.811034" elapsed="1.141255"/>
</kw>
<arg>5x</arg>
<arg>3000ms</arg>
<arg>Check Window PageYOffset Value</arg>
<arg>0</arg>
<arg>${SCROLL_THRESHOLD}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:18:29.809708" elapsed="1.142760"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:18:32.075720" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-27.png"&gt;&lt;img src="selenium-screenshot-27.png" width="800px"&gt;&lt;/a&gt;</msg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:18:30.952835" elapsed="1.123349"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>${TEST_BOARD_IP}</arg>
<arg>/root/scripts/touch-one-finger-gesture.py --duration 0.1 --steps 40 --delay-on-touch-up 0 100 500 100 200</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:18:32.076821" elapsed="4.498078"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-02-19T20:18:36.577034" level="INFO">${swipe_upper_position} = 1047 - 8</msg>
<var>${swipe_upper_position}</var>
<arg>${SWIPE_POSITION} - ${SWIPE_THRESHOLD}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-02-19T20:18:36.575724" elapsed="0.001472"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Window PageYOffset Value" owner="keywords_touch_events">
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:18:37.768980" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-28.png"&gt;&lt;img src="selenium-screenshot-28.png" width="800px"&gt;&lt;/a&gt;</msg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:18:36.579842" elapsed="1.189694"/>
</kw>
<kw name="Execute Javascript" owner="SeleniumLibrary">
<msg time="2026-02-19T20:18:37.772220" level="INFO">Executing JavaScript:
return window.pageYOffset;
Without any arguments.</msg>
<msg time="2026-02-19T20:18:37.786567" level="INFO">${scroll_position} = 935</msg>
<var>${scroll_position}</var>
<arg>return window.pageYOffset;</arg>
<doc>Executes the given JavaScript code with possible arguments.</doc>
<status status="PASS" start="2026-02-19T20:18:37.770209" elapsed="0.016461"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<msg time="2026-02-19T20:18:37.788023" level="FAIL">'935 &gt;= 1047 - 8' should be true.</msg>
<arg>${scroll_position} &gt;= ${expectation_equal_or_bigger_than}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="FAIL" start="2026-02-19T20:18:37.787056" elapsed="0.001169">'935 &gt;= 1047 - 8' should be true.</status>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${scroll_position} &lt;= ${expectation_equal_or_less_than}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:18:37.788724" elapsed="0.000119"/>
</kw>
<arg>${swipe_upper_position}</arg>
<arg>${SCROLL_MAX_POSITION}</arg>
<status status="FAIL" start="2026-02-19T20:18:36.579107" elapsed="1.210103">'935 &gt;= 1047 - 8' should be true.</status>
</kw>
<kw name="Check Window PageYOffset Value" owner="keywords_touch_events">
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:18:41.929091" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-29.png"&gt;&lt;img src="selenium-screenshot-29.png" width="800px"&gt;&lt;/a&gt;</msg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:18:40.791987" elapsed="1.137617"/>
</kw>
<kw name="Execute Javascript" owner="SeleniumLibrary">
<msg time="2026-02-19T20:18:41.932163" level="INFO">Executing JavaScript:
return window.pageYOffset;
Without any arguments.</msg>
<msg time="2026-02-19T20:18:41.943488" level="INFO">${scroll_position} = 935</msg>
<var>${scroll_position}</var>
<arg>return window.pageYOffset;</arg>
<doc>Executes the given JavaScript code with possible arguments.</doc>
<status status="PASS" start="2026-02-19T20:18:41.930348" elapsed="0.013365"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<msg time="2026-02-19T20:18:41.946246" level="FAIL">'935 &gt;= 1047 - 8' should be true.</msg>
<arg>${scroll_position} &gt;= ${expectation_equal_or_bigger_than}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="FAIL" start="2026-02-19T20:18:41.944425" elapsed="0.002191">'935 &gt;= 1047 - 8' should be true.</status>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${scroll_position} &lt;= ${expectation_equal_or_less_than}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:18:41.947385" elapsed="0.000159"/>
</kw>
<arg>${swipe_upper_position}</arg>
<arg>${SCROLL_MAX_POSITION}</arg>
<status status="FAIL" start="2026-02-19T20:18:40.790316" elapsed="1.157721">'935 &gt;= 1047 - 8' should be true.</status>
</kw>
<kw name="Check Window PageYOffset Value" owner="keywords_touch_events">
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:18:46.079173" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-30.png"&gt;&lt;img src="selenium-screenshot-30.png" width="800px"&gt;&lt;/a&gt;</msg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:18:44.951071" elapsed="1.128568"/>
</kw>
<kw name="Execute Javascript" owner="SeleniumLibrary">
<msg time="2026-02-19T20:18:46.081980" level="INFO">Executing JavaScript:
return window.pageYOffset;
Without any arguments.</msg>
<msg time="2026-02-19T20:18:46.089248" level="INFO">${scroll_position} = 935</msg>
<var>${scroll_position}</var>
<arg>return window.pageYOffset;</arg>
<doc>Executes the given JavaScript code with possible arguments.</doc>
<status status="PASS" start="2026-02-19T20:18:46.080274" elapsed="0.009066"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<msg time="2026-02-19T20:18:46.090672" level="FAIL">'935 &gt;= 1047 - 8' should be true.</msg>
<arg>${scroll_position} &gt;= ${expectation_equal_or_bigger_than}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="FAIL" start="2026-02-19T20:18:46.089719" elapsed="0.001155">'935 &gt;= 1047 - 8' should be true.</status>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${scroll_position} &lt;= ${expectation_equal_or_less_than}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:18:46.091224" elapsed="0.000087"/>
</kw>
<arg>${swipe_upper_position}</arg>
<arg>${SCROLL_MAX_POSITION}</arg>
<status status="FAIL" start="2026-02-19T20:18:44.949239" elapsed="1.142357">'935 &gt;= 1047 - 8' should be true.</status>
</kw>
<kw name="Check Window PageYOffset Value" owner="keywords_touch_events">
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:18:50.236984" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-31.png"&gt;&lt;img src="selenium-screenshot-31.png" width="800px"&gt;&lt;/a&gt;</msg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:18:49.094353" elapsed="1.143096"/>
</kw>
<kw name="Execute Javascript" owner="SeleniumLibrary">
<msg time="2026-02-19T20:18:50.240667" level="INFO">Executing JavaScript:
return window.pageYOffset;
Without any arguments.</msg>
<msg time="2026-02-19T20:18:50.248441" level="INFO">${scroll_position} = 935</msg>
<var>${scroll_position}</var>
<arg>return window.pageYOffset;</arg>
<doc>Executes the given JavaScript code with possible arguments.</doc>
<status status="PASS" start="2026-02-19T20:18:50.238222" elapsed="0.010360"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<msg time="2026-02-19T20:18:50.249983" level="FAIL">'935 &gt;= 1047 - 8' should be true.</msg>
<arg>${scroll_position} &gt;= ${expectation_equal_or_bigger_than}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="FAIL" start="2026-02-19T20:18:50.248979" elapsed="0.001207">'935 &gt;= 1047 - 8' should be true.</status>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${scroll_position} &lt;= ${expectation_equal_or_less_than}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:18:50.250539" elapsed="0.000113"/>
</kw>
<arg>${swipe_upper_position}</arg>
<arg>${SCROLL_MAX_POSITION}</arg>
<status status="FAIL" start="2026-02-19T20:18:49.092627" elapsed="1.158293">'935 &gt;= 1047 - 8' should be true.</status>
</kw>
<kw name="Check Window PageYOffset Value" owner="keywords_touch_events">
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:18:54.375525" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-32.png"&gt;&lt;img src="selenium-screenshot-32.png" width="800px"&gt;&lt;/a&gt;</msg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:18:53.253940" elapsed="1.122072"/>
</kw>
<kw name="Execute Javascript" owner="SeleniumLibrary">
<msg time="2026-02-19T20:18:54.378000" level="INFO">Executing JavaScript:
return window.pageYOffset;
Without any arguments.</msg>
<msg time="2026-02-19T20:18:54.385160" level="INFO">${scroll_position} = 935</msg>
<var>${scroll_position}</var>
<arg>return window.pageYOffset;</arg>
<doc>Executes the given JavaScript code with possible arguments.</doc>
<status status="PASS" start="2026-02-19T20:18:54.376742" elapsed="0.008493"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<msg time="2026-02-19T20:18:54.386302" level="FAIL">'935 &gt;= 1047 - 8' should be true.</msg>
<arg>${scroll_position} &gt;= ${expectation_equal_or_bigger_than}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="FAIL" start="2026-02-19T20:18:54.385529" elapsed="0.000952">'935 &gt;= 1047 - 8' should be true.</status>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${scroll_position} &lt;= ${expectation_equal_or_less_than}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:18:54.386792" elapsed="0.000071"/>
</kw>
<arg>${swipe_upper_position}</arg>
<arg>${SCROLL_MAX_POSITION}</arg>
<status status="FAIL" start="2026-02-19T20:18:53.251985" elapsed="1.135098">'935 &gt;= 1047 - 8' should be true.</status>
</kw>
<msg time="2026-02-19T20:18:54.387303" level="FAIL">Keyword 'Check Window PageYOffset Value' failed after retrying 5 times. The last error was: '935 &gt;= 1047 - 8' should be true.</msg>
<arg>5x</arg>
<arg>3000ms</arg>
<arg>Check Window PageYOffset Value</arg>
<arg>${swipe_upper_position}</arg>
<arg>${SCROLL_MAX_POSITION}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="FAIL" start="2026-02-19T20:18:36.577854" elapsed="17.809656">Keyword 'Check Window PageYOffset Value' failed after retrying 5 times. The last error was: '935 &gt;= 1047 - 8' should be true.</status>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>${TEST_BOARD_IP}</arg>
<arg>/root/scripts/touch-one-finger-gesture.py --duration 0.1 --steps 40 --delay-on-touch-up 0 100 200 100 500</arg>
<doc>Run SSH command.</doc>
<status status="NOT RUN" start="2026-02-19T20:18:54.387822" elapsed="0.000069"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<arg>5x</arg>
<arg>3000ms</arg>
<arg>Check Window PageYOffset Value</arg>
<arg>0</arg>
<arg>${SWIPE_THRESHOLD}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="NOT RUN" start="2026-02-19T20:18:54.388162" elapsed="0.000068"/>
</kw>
<status status="FAIL" start="2026-02-19T20:18:08.747546" elapsed="45.640908">Keyword 'Check Window PageYOffset Value' failed after retrying 5 times. The last error was: '935 &gt;= 1047 - 8' should be true.</status>
</kw>
<timeout value="1 minute"/>
<status status="FAIL" start="2026-02-19T20:18:08.740830" elapsed="45.648201">Keyword 'Check Window PageYOffset Value' failed after retrying 5 times. The last error was: '935 &gt;= 1047 - 8' should be true.
[RETRY] FAIL on 2. retry.</status>
</test>
<test id="s1-s5-t3" name="Test Check Browser Touch Gestures Using Uinput" line="23">
<kw name="Check Browser Touch Gestures Using Uinput" owner="keywords_touch_events">
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:18:54.394977" level="INFO">${TEST_MACHINE} = wandboard-mesa</msg>
<var>${TEST_MACHINE}</var>
<arg>TEST_MACHINE</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:18:54.394189" elapsed="0.000886"/>
</kw>
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:18:54.395945" level="INFO">${TEST_BOARD_IP} = 192.168.1.72</msg>
<var>${TEST_BOARD_IP}</var>
<arg>TEST_BOARD_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:18:54.395540" elapsed="0.000466"/>
</kw>
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:18:54.396590" level="INFO">${TEST_WEBSERVER_IP} = 192.168.1.246</msg>
<var>${TEST_WEBSERVER_IP}</var>
<arg>TEST_WEBSERVER_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:18:54.396220" elapsed="0.000428"/>
</kw>
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:18:54.397210" level="INFO">${TEST_WEBSERVER_PORT} = 8008</msg>
<var>${TEST_WEBSERVER_PORT}</var>
<arg>TEST_WEBSERVER_PORT</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:18:54.396863" elapsed="0.000403"/>
</kw>
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:18:54.397869" level="INFO">${TEST_WPEWEBKIT_VERSION} = 2_50</msg>
<var>${TEST_WPEWEBKIT_VERSION}</var>
<arg>TEST_WPEWEBKIT_VERSION</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:18:54.397478" elapsed="0.000448"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-02-19T20:18:54.398604" level="INFO">${PAGE} = http://192.168.1.246:8008/robot_framework/html/rbyers/paint.html</msg>
<var>${PAGE}</var>
<arg>http://${TEST_WEBSERVER_IP}:${TEST_WEBSERVER_PORT}/robot_framework/html/rbyers/paint.html</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-02-19T20:18:54.398138" elapsed="0.000524"/>
</kw>
<kw name="Go To" owner="SeleniumLibrary">
<msg time="2026-02-19T20:18:54.399166" level="INFO">Opening url 'http://192.168.1.246:8008/robot_framework/html/rbyers/paint.html'</msg>
<arg>${PAGE}</arg>
<doc>Navigates the current browser window to the provided ``url``.</doc>
<status status="PASS" start="2026-02-19T20:18:54.398874" elapsed="0.925294"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>${TEST_BOARD_IP}</arg>
<arg>/root/scripts/touch-two-fingers-gesture.py --duration 2 --steps 40 900 200 900 500 900 800 900 500</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:18:55.324817" elapsed="6.333227"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:19:03.000807" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="pinch-gesture.png"&gt;&lt;img src="pinch-gesture.png" width="800px"&gt;&lt;/a&gt;</msg>
<arg>${PINCH_GESTURE_IMAGE}</arg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:19:01.658821" elapsed="1.342514"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:19:03.429595" level="INFO">Images/Document comparison passed.</msg>
<arg>${BASELINE_IMAGES_PATH}/${TEST_WPEWEBKIT_VERSION}/${PINCH_GESTURE_IMAGE}</arg>
<arg>${PINCH_GESTURE_IMAGE}</arg>
<arg>threshold=0.005</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="PASS" start="2026-02-19T20:19:03.002983" elapsed="0.426899"/>
</kw>
<arg>10x</arg>
<arg>1000ms</arg>
<arg>Compare Images</arg>
<arg>${BASELINE_IMAGES_PATH}/${TEST_WPEWEBKIT_VERSION}/${PINCH_GESTURE_IMAGE}</arg>
<arg>${PINCH_GESTURE_IMAGE}</arg>
<arg>threshold=0.005</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:19:03.002138" elapsed="0.428049"/>
</kw>
<kw name="Go To" owner="SeleniumLibrary">
<msg time="2026-02-19T20:19:03.431396" level="INFO">Opening url 'http://192.168.1.246:8008/robot_framework/html/rbyers/paint.html'</msg>
<arg>${PAGE}</arg>
<doc>Navigates the current browser window to the provided ``url``.</doc>
<status status="PASS" start="2026-02-19T20:19:03.430741" elapsed="0.186842"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>${TEST_BOARD_IP}</arg>
<arg>/root/scripts/touch-two-fingers-gesture.py --duration 2 --steps 40 900 500 900 200 900 500 900 800</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:19:03.618208" elapsed="6.404152"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:19:11.367224" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="zoom-gesture.png"&gt;&lt;img src="zoom-gesture.png" width="800px"&gt;&lt;/a&gt;</msg>
<arg>${ZOOM_GESTURE_IMAGE}</arg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:19:10.023129" elapsed="1.344567"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:19:11.761343" level="INFO">Images/Document comparison passed.</msg>
<arg>${BASELINE_IMAGES_PATH}/${TEST_WPEWEBKIT_VERSION}/${ZOOM_GESTURE_IMAGE}</arg>
<arg>${ZOOM_GESTURE_IMAGE}</arg>
<arg>threshold=0.005</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="PASS" start="2026-02-19T20:19:11.369670" elapsed="0.391959"/>
</kw>
<arg>10x</arg>
<arg>1000ms</arg>
<arg>Compare Images</arg>
<arg>${BASELINE_IMAGES_PATH}/${TEST_WPEWEBKIT_VERSION}/${ZOOM_GESTURE_IMAGE}</arg>
<arg>${ZOOM_GESTURE_IMAGE}</arg>
<arg>threshold=0.005</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:19:11.368475" elapsed="0.393464"/>
</kw>
<status status="PASS" start="2026-02-19T20:18:54.393077" elapsed="17.369189"/>
</kw>
<timeout value="1 minute"/>
<status status="PASS" start="2026-02-19T20:18:54.390377" elapsed="17.372474"/>
</test>
<kw name="Webdriver Remote Stop" owner="keywords_common" type="TEARDOWN">
<kw name="Close All Browsers" owner="SeleniumLibrary">
<doc>Closes all open browsers and resets the browser cache.</doc>
<status status="PASS" start="2026-02-19T20:19:11.765161" elapsed="0.050922"/>
</kw>
<kw name="Ssh Webdriver Remote Stop" owner="TestUtils">
<msg time="2026-02-19T20:19:12.652470" level="INFO">RUN: Killing all 'WPEWebDriver' related processes ...</msg>
<arg>%{TEST_BOARD_IP}</arg>
<status status="PASS" start="2026-02-19T20:19:11.816856" elapsed="0.836034"/>
</kw>
<kw name="Ssh Force Kill" owner="TestUtils">
<msg time="2026-02-19T20:19:13.394388" level="INFO">RUN: Killing all 'wpe-simple-launcher' related processes ...</msg>
<arg>%{TEST_BOARD_IP}</arg>
<arg>wpe-simple-launcher</arg>
<doc>Force kill all related process.</doc>
<status status="PASS" start="2026-02-19T20:19:12.653612" elapsed="0.741191"/>
</kw>
<doc>Stops WebDriver session and cleans up browser processes.</doc>
<timeout value="2 minutes"/>
<status status="PASS" start="2026-02-19T20:19:11.764341" elapsed="1.630874"/>
</kw>
<status status="FAIL" start="2026-02-19T20:16:09.005140" elapsed="184.390311"/>
</suite>
<suite id="s1-s6" name="Tests 011 Navigation Bar" source="/app/tests_results/20260219_201245_robot_/../../robot_framework/tests/tests_011_navigation_bar.robot">
<kw name="Configure Mockup Pages" owner="keywords_common" type="SETUP">
<variable name="${HOME_PAGE}">
<msg time="2026-02-19T20:19:13.415132" level="INFO">${HOME_PAGE} = http://192.168.1.246:8008/robot_framework/html/home-page.html</msg>
<var>http://%{TEST_WEBSERVER_IP}:%{TEST_WEBSERVER_PORT}/robot_framework/html/home-page.html</var>
<status status="PASS" start="2026-02-19T20:19:13.414774" elapsed="0.000457"/>
</variable>
<variable name="${SEARCH_PAGE}">
<msg time="2026-02-19T20:19:13.415680" level="INFO">${SEARCH_PAGE} = http://192.168.1.246:8008/robot_framework/html/search-page.html</msg>
<var>http://%{TEST_WEBSERVER_IP}:%{TEST_WEBSERVER_PORT}/robot_framework/html/search-page.html</var>
<status status="PASS" start="2026-02-19T20:19:13.415425" elapsed="0.000377"/>
</variable>
<kw name="Configure Weston Service Debug Mode" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>sed -i 's|ExecStart=/usr/bin/weston --modules=systemd-notify.so|ExecStart=/usr/bin/weston --continue-without-input --modules=systemd-notify.so --debug|' /lib/systemd/system/weston.service</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:19:13.416418" elapsed="0.559035"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>sed -i 's|ExecStart=/usr/bin/weston --continue-without-input --modules=systemd-notify.so|ExecStart=/usr/bin/weston --continue-without-input --modules=systemd-notify.so --debug|' /lib/systemd/system/weston.service</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:19:13.976218" elapsed="0.728634"/>
</kw>
<doc>Enables debug mode for Weston service on the test board.</doc>
<status status="PASS" start="2026-02-19T20:19:13.416111" elapsed="1.289192"/>
</kw>
<kw name="Configure Demo Application URLs" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>sed -i 's|https://www.wpewebkit.org|${home_page}|g' /usr/bin/demo-wpe-website</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:19:14.707364" elapsed="0.615483"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>sed -i 's|https://duckduckgo.com/|${search_page}|g' /usr/bin/demo-wpe-duckduckgo</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:19:15.323641" elapsed="0.589844"/>
</kw>
<arg>${HOME_PAGE}</arg>
<arg>${SEARCH_PAGE}</arg>
<doc>Updates demo application URLs to point to mockup pages.</doc>
<status status="PASS" start="2026-02-19T20:19:14.706100" elapsed="1.208065"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>systemctl daemon-reload &amp;&amp; systemctl restart weston</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:19:15.914905" elapsed="3.589085"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:19:19.508740" elapsed="2.277778"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:19:21.790364" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png home-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:19:21.787305" elapsed="0.856721"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:19:22.645743" level="INFO" html="true">&lt;img src="home-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:19:22.644790" elapsed="0.001224"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:19:19.507597" elapsed="3.138784"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:19:23.118462" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/4796fe7a-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/4796fe7a-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:19:23.118478" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/479baaa6-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/479baaa6-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:19:23.118483" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/479e9644-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/479e9644-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.99987382135544056183</msg>
<msg time="2026-02-19T20:19:23.118790" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:19:22.647015" elapsed="0.473368">The compared images are different.</status>
</kw>
<arg>${HOME_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:19:19.506147" elapsed="3.614494">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:19:24.127026" elapsed="1.728232"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:19:25.858478" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png home-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:19:25.856163" elapsed="0.779067"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:19:26.637081" level="INFO" html="true">&lt;img src="home-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:19:26.636007" elapsed="0.001394"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:19:24.126608" elapsed="2.511567"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:19:27.055258" level="INFO">Images/Document comparison passed.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="PASS" start="2026-02-19T20:19:26.638818" elapsed="0.416713"/>
</kw>
<arg>${HOME_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="PASS" start="2026-02-19T20:19:24.121638" elapsed="2.934268"/>
</kw>
<arg>20x</arg>
<arg>1000ms</arg>
<arg>Remote Weston Check Screenshot</arg>
<arg>${HOME_SCREEN_IMAGE}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:19:19.504883" elapsed="7.551279"/>
</kw>
<doc>Configures mockup pages on the test board by modifying Weston service
and demo application URLs to point to the test webserver.</doc>
<status status="PASS" start="2026-02-19T20:19:13.414499" elapsed="13.641942"/>
</kw>
<test id="s1-s6-t1" name="Test Check Navigation Bar" line="9">
<kw name="Terminate Browser" owner="keywords_touch_navigation">
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:19:27.059216" level="INFO">${TEST_BOARD_IP} = 192.168.1.72</msg>
<var>${TEST_BOARD_IP}</var>
<arg>TEST_BOARD_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:19:27.058824" elapsed="0.000453"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>${TEST_BOARD_IP}</arg>
<arg>/root/scripts/touch-one-finger-gesture.py --duration 1 --steps 1 --delay-on-touch-up 0 595 15 595 15</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:19:27.059485" elapsed="5.289128"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:19:32.353078" elapsed="1.861458"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:19:34.217864" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png init-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:19:34.215326" elapsed="0.764942"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:19:34.982420" level="INFO" html="true">&lt;img src="init-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:19:34.981088" elapsed="0.001793"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:19:32.351932" elapsed="2.631414"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:19:35.401924" level="INFO">Images/Document comparison passed.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="PASS" start="2026-02-19T20:19:34.984071" elapsed="0.418123"/>
</kw>
<arg>${INIT_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="PASS" start="2026-02-19T20:19:32.350483" elapsed="3.052053"/>
</kw>
<arg>20x</arg>
<arg>1000ms</arg>
<arg>Remote Weston Check Screenshot</arg>
<arg>${INIT_SCREEN_IMAGE}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:19:32.349354" elapsed="3.053450"/>
</kw>
<status status="PASS" start="2026-02-19T20:19:27.058301" elapsed="8.344788"/>
</kw>
<kw name="Open Home" owner="keywords_touch_navigation">
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:19:35.405041" level="INFO">${TEST_BOARD_IP} = 192.168.1.72</msg>
<var>${TEST_BOARD_IP}</var>
<arg>TEST_BOARD_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:19:35.404636" elapsed="0.000466"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>${TEST_BOARD_IP}</arg>
<arg>/root/scripts/touch-one-finger-gesture.py --duration 1 --steps 1 --delay-on-touch-up 0 215 15 215 15</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:19:35.405309" elapsed="5.088431"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:19:40.498395" elapsed="2.014339"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:19:42.516164" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png home-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:19:42.513587" elapsed="0.883035"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:19:43.398456" level="INFO" html="true">&lt;img src="home-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:19:43.397298" elapsed="0.001566"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:19:40.497193" elapsed="2.902040"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:19:43.891908" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/53f8b924-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/53f8b924-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:19:43.891924" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/53fd5c68-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/53fd5c68-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:19:43.891928" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/54004d42-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/54004d42-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.11402143123990315932</msg>
<msg time="2026-02-19T20:19:43.892211" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:19:43.399840" elapsed="0.493865">The compared images are different.</status>
</kw>
<arg>${HOME_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:19:40.495752" elapsed="3.398199">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:19:44.897691" elapsed="1.679999"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:19:46.580899" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png home-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:19:46.578377" elapsed="0.747307"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:19:47.327827" level="INFO" html="true">&lt;img src="home-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:19:47.326445" elapsed="0.001737"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:19:44.896445" elapsed="2.432145"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:19:47.755095" level="INFO">Images/Document comparison passed.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="PASS" start="2026-02-19T20:19:47.329229" elapsed="0.426137"/>
</kw>
<arg>${HOME_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="PASS" start="2026-02-19T20:19:44.894940" elapsed="2.860792"/>
</kw>
<arg>20x</arg>
<arg>1000ms</arg>
<arg>Remote Weston Check Screenshot</arg>
<arg>${HOME_SCREEN_IMAGE}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:19:40.494538" elapsed="7.261447"/>
</kw>
<status status="PASS" start="2026-02-19T20:19:35.403806" elapsed="12.352466"/>
</kw>
<kw name="Toggle Fullscreen" owner="keywords_touch_navigation">
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:19:47.758876" level="INFO">${TEST_BOARD_IP} = 192.168.1.72</msg>
<var>${TEST_BOARD_IP}</var>
<arg>TEST_BOARD_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:19:47.758097" elapsed="0.000848"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>${TEST_BOARD_IP}</arg>
<arg>/root/scripts/keyboard-input-special-keys.py f11</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:19:47.759182" elapsed="4.499929"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:19:52.262756" elapsed="1.703698"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:19:53.970204" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png full-home-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:19:53.967312" elapsed="0.698319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:19:54.667609" level="INFO" html="true">&lt;img src="full-home-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:19:54.666392" elapsed="0.001554"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:19:52.262223" elapsed="2.406092"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:19:55.069534" level="INFO">Images/Document comparison passed.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="PASS" start="2026-02-19T20:19:54.668972" elapsed="0.400849"/>
</kw>
<arg>${FULL_HOME_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="PASS" start="2026-02-19T20:19:52.261061" elapsed="2.809102"/>
</kw>
<arg>20x</arg>
<arg>1000ms</arg>
<arg>Remote Weston Check Screenshot</arg>
<arg>${FULL_HOME_SCREEN_IMAGE}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:19:52.259911" elapsed="2.810506"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>${TEST_BOARD_IP}</arg>
<arg>/root/scripts/keyboard-input-special-keys.py f11</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:19:55.070930" elapsed="4.477845"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:19:59.552667" elapsed="1.718049"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:20:01.274242" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png home-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:20:01.271418" elapsed="0.733529"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:20:02.007100" level="INFO" html="true">&lt;img src="home-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:20:02.005777" elapsed="0.001697"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:19:59.552207" elapsed="2.455736"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:20:02.422665" level="INFO">Images/Document comparison passed.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="PASS" start="2026-02-19T20:20:02.008654" elapsed="0.414274"/>
</kw>
<arg>${HOME_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="PASS" start="2026-02-19T20:19:59.550809" elapsed="2.872454"/>
</kw>
<arg>20x</arg>
<arg>1000ms</arg>
<arg>Remote Weston Check Screenshot</arg>
<arg>${HOME_SCREEN_IMAGE}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:19:59.549512" elapsed="2.874003"/>
</kw>
<status status="PASS" start="2026-02-19T20:19:47.757023" elapsed="14.666797"/>
</kw>
<kw name="Click On Search Link In Home" owner="keywords_touch_navigation">
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:20:02.425756" level="INFO">${TEST_BOARD_IP} = 192.168.1.72</msg>
<var>${TEST_BOARD_IP}</var>
<arg>TEST_BOARD_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:20:02.425348" elapsed="0.000470"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>${TEST_BOARD_IP}</arg>
<arg>/root/scripts/touch-one-finger-gesture.py --duration 0.2 --steps 2 --delay-on-touch-up 0 90 160 90 160</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:20:02.426102" elapsed="4.394704"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:20:06.825340" elapsed="1.741622"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:20:08.570534" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png search-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:20:08.567757" elapsed="0.740272"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:20:09.309826" level="INFO" html="true">&lt;img src="search-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:20:09.308714" elapsed="0.001460"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:20:06.824224" elapsed="2.486360"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:20:09.729788" level="INFO">Images/Document comparison passed.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="PASS" start="2026-02-19T20:20:09.311182" elapsed="0.418890"/>
</kw>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="PASS" start="2026-02-19T20:20:06.822789" elapsed="2.907629"/>
</kw>
<arg>20x</arg>
<arg>1000ms</arg>
<arg>Remote Weston Check Screenshot</arg>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:20:06.821544" elapsed="2.909150"/>
</kw>
<status status="PASS" start="2026-02-19T20:20:02.424508" elapsed="7.306477"/>
</kw>
<kw name="Navigation Back" owner="keywords_touch_navigation">
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:20:09.732803" level="INFO">${TEST_BOARD_IP} = 192.168.1.72</msg>
<var>${TEST_BOARD_IP}</var>
<arg>TEST_BOARD_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:20:09.732381" elapsed="0.000481"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>${TEST_BOARD_IP}</arg>
<arg>/root/scripts/touch-one-finger-gesture.py --duration 1 --steps 1 --delay-on-touch-up 0 345 15 345 15</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:20:09.733069" elapsed="5.175056"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:20:14.912540" elapsed="1.780002"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:20:16.696293" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png home-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:20:16.693408" elapsed="0.753613"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:20:17.448884" level="INFO" html="true">&lt;img src="home-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:20:17.447754" elapsed="0.001450"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:20:14.911427" elapsed="2.538192"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:20:17.927439" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/68422c26-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/68422c26-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:20:17.927454" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/6846dd3e-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/6846dd3e-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:20:17.927459" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/6849bfa4-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/6849bfa4-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.00954278930468743791</msg>
<msg time="2026-02-19T20:20:17.927760" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:20:17.450204" elapsed="0.479051">The compared images are different.</status>
</kw>
<arg>${HOME_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:20:14.910035" elapsed="3.019473">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:20:18.933621" elapsed="1.724540"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:20:20.661469" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png home-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:20:20.658900" elapsed="0.745515"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:20:21.406515" level="INFO" html="true">&lt;img src="home-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:20:21.405188" elapsed="0.001761"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:20:18.932139" elapsed="2.475498"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:20:21.835069" level="INFO">Images/Document comparison passed.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="PASS" start="2026-02-19T20:20:21.408225" elapsed="0.427129"/>
</kw>
<arg>${HOME_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="PASS" start="2026-02-19T20:20:18.930421" elapsed="2.905288"/>
</kw>
<arg>20x</arg>
<arg>1000ms</arg>
<arg>Remote Weston Check Screenshot</arg>
<arg>${HOME_SCREEN_IMAGE}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:20:14.908893" elapsed="6.927072"/>
</kw>
<status status="PASS" start="2026-02-19T20:20:09.731675" elapsed="12.104583"/>
</kw>
<kw name="Navigation Forward" owner="keywords_touch_navigation">
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:20:21.838204" level="INFO">${TEST_BOARD_IP} = 192.168.1.72</msg>
<var>${TEST_BOARD_IP}</var>
<arg>TEST_BOARD_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:20:21.837803" elapsed="0.000462"/>
</kw>
<kw name="Ssh Command" owner="TestUtils">
<arg>${TEST_BOARD_IP}</arg>
<arg>/root/scripts/touch-one-finger-gesture.py --duration 1 --steps 1 --delay-on-touch-up 0 400 15 400 15</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:20:21.838490" elapsed="5.224302"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:20:27.067953" elapsed="1.706535"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:20:28.778152" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png search-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:20:28.775315" elapsed="0.769156"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:20:29.546704" level="INFO" html="true">&lt;img src="search-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:20:29.545351" elapsed="0.001743"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:20:27.066878" elapsed="2.480632"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:20:30.026403" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/6f7834cc-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/6f7834cc-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:20:30.026419" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/6f7cff84-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/6f7cff84-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:20:30.026423" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/6f7fecda-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/6f7fecda-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.01016176054891948510</msg>
<msg time="2026-02-19T20:20:30.026718" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:20:29.548271" elapsed="0.480333">The compared images are different.</status>
</kw>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:20:27.065050" elapsed="2.963799">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:20:31.032453" elapsed="1.722565"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:20:32.758226" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png search-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:20:32.755734" elapsed="0.778611"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:20:33.536518" level="INFO" html="true">&lt;img src="search-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:20:33.535173" elapsed="0.001770"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:20:31.031278" elapsed="2.506086"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:20:34.025461" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/71da1c30-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/71da1c30-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:20:34.025476" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/71df1cb2-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/71df1cb2-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:20:34.025481" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/71e21c50-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/71e21c50-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.01016274306069475664</msg>
<msg time="2026-02-19T20:20:34.025784" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:20:33.538132" elapsed="0.489118">The compared images are different.</status>
</kw>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:20:31.029786" elapsed="2.997781">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:20:35.031490" elapsed="1.670586"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:20:36.705576" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png search-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:20:36.702846" elapsed="0.781009"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:20:37.485679" level="INFO" html="true">&lt;img src="search-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:20:37.484520" elapsed="0.001477"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:20:35.030294" elapsed="2.456063"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:20:37.964670" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/74337292-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/74337292-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:20:37.964685" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/74382b3e-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/74382b3e-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:20:37.964690" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/743b2c3a-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/743b2c3a-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.01017374624603550881</msg>
<msg time="2026-02-19T20:20:37.964974" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:20:37.486967" elapsed="0.479499">The compared images are different.</status>
</kw>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:20:35.028508" elapsed="2.938220">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:20:38.970455" elapsed="1.667176"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:20:40.640956" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png search-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:20:40.638322" elapsed="0.767872"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:20:41.408006" level="INFO" html="true">&lt;img src="search-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:20:41.406889" elapsed="0.001442"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:20:38.969205" elapsed="2.439521"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:20:41.882524" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/768955c0-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/768955c0-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:20:41.882540" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/768e188a-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/768e188a-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:20:41.882565" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/769103c4-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/769103c4-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.01015678493632299340</msg>
<msg time="2026-02-19T20:20:41.882854" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:20:41.409293" elapsed="0.475029">The compared images are different.</status>
</kw>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:20:38.967720" elapsed="2.916856">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:20:42.888128" elapsed="1.748001"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:20:44.639597" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png search-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:20:44.636854" elapsed="0.759094"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:20:45.397849" level="INFO" html="true">&lt;img src="search-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:20:45.396701" elapsed="0.001653"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:20:42.886961" elapsed="2.511824"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:20:45.888744" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/78ec81c0-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/78ec81c0-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:20:45.888759" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/78f14fca-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/78f14fca-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:20:45.888764" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/78f44ac2-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/78f44ac2-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.01015654696530843282</msg>
<msg time="2026-02-19T20:20:45.889047" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:20:45.399364" elapsed="0.491172">The compared images are different.</status>
</kw>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:20:42.885442" elapsed="3.005349">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:20:46.895185" elapsed="1.693605"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:20:48.592177" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png search-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:20:48.589488" elapsed="0.767128"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:20:49.358683" level="INFO" html="true">&lt;img src="search-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:20:49.357356" elapsed="0.001710"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:20:46.893819" elapsed="2.465665"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:20:49.849291" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/7b48a7dc-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/7b48a7dc-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:20:49.849307" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/7b4da4da-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/7b4da4da-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:20:49.849312" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/7b50a28e-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/7b50a28e-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.01016130345239640853</msg>
<msg time="2026-02-19T20:20:49.849607" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:20:49.360228" elapsed="0.490972">The compared images are different.</status>
</kw>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:20:46.891954" elapsed="2.959487">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:20:50.859235" elapsed="1.722300"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:20:52.585269" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png search-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:20:52.582398" elapsed="0.731559"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:20:53.315795" level="INFO" html="true">&lt;img src="search-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:20:53.314653" elapsed="0.001466"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:20:50.858758" elapsed="2.457776"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:20:53.800078" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/7da37b9c-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/7da37b9c-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:20:53.800094" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/7da87a66-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/7da87a66-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:20:53.800099" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/7dab7644-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/7dab7644-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.01017283712309902111</msg>
<msg time="2026-02-19T20:20:53.800380" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:20:53.317147" elapsed="0.484729">The compared images are different.</status>
</kw>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:20:50.852514" elapsed="2.949665">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:20:54.806314" elapsed="1.689216"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:20:56.502417" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png search-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:20:56.496254" elapsed="0.767682"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:20:57.266247" level="INFO" html="true">&lt;img src="search-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:20:57.264852" elapsed="0.001804"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:20:54.804920" elapsed="2.462113"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:20:57.738244" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/7ffc6c14-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/7ffc6c14-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:20:57.738260" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/80016598-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/80016598-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:20:57.738264" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/8004631a-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/8004631a-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.01018326905835065244</msg>
<msg time="2026-02-19T20:20:57.738546" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:20:57.267646" elapsed="0.472388">The compared images are different.</status>
</kw>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:20:54.803160" elapsed="2.937115">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:20:58.744444" elapsed="1.675800"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:21:00.424139" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png search-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:21:00.420982" elapsed="0.782804"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:21:01.205813" level="INFO" html="true">&lt;img src="search-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:21:01.204455" elapsed="0.001735"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:20:58.743202" elapsed="2.463444"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:21:01.678236" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/8255e418-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/8255e418-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:01.678251" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/825aa2aa-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/825aa2aa-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:01.678256" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/825d910e-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/825d910e-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.01016635482213479325</msg>
<msg time="2026-02-19T20:21:01.678539" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:21:01.207304" elapsed="0.472719">The compared images are different.</status>
</kw>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:20:58.741378" elapsed="2.938891">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:21:02.684387" elapsed="1.682418"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:21:04.370655" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png search-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:21:04.367637" elapsed="0.792636"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:21:05.162427" level="INFO" html="true">&lt;img src="search-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:21:05.161095" elapsed="0.001952"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:21:02.683004" elapsed="2.480481"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:21:05.634046" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/84b186d6-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/84b186d6-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:05.634062" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/84b645b8-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/84b645b8-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:05.634067" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/84b930fc-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/84b930fc-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.01015799638900172219</msg>
<msg time="2026-02-19T20:21:05.634347" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:21:05.164208" elapsed="0.471622">The compared images are different.</status>
</kw>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:21:02.681236" elapsed="2.954869">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:21:06.640421" elapsed="1.725945"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:21:08.370124" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png search-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:21:08.367211" elapsed="0.747488"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:21:09.116521" level="INFO" html="true">&lt;img src="search-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:21:09.115400" elapsed="0.001509"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:21:06.638953" elapsed="2.478332"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:21:09.585942" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/870c729c-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/870c729c-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:09.585957" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/87112e22-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/87112e22-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:09.585962" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/87143072-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/87143072-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.01016294227652003723</msg>
<msg time="2026-02-19T20:21:09.586245" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:21:09.117904" elapsed="0.469881">The compared images are different.</status>
</kw>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:21:06.637184" elapsed="2.950845">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:21:10.591777" elapsed="1.704246"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:21:12.299755" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png search-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:21:12.296761" elapsed="0.710360"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:21:13.009254" level="INFO" html="true">&lt;img src="search-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:21:13.007941" elapsed="0.001756"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:21:10.590537" elapsed="2.419594"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:21:13.497090" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/89614e00-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/89614e00-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:13.497105" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/89660954-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/89660954-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:13.497110" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/8968fe7a-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/8968fe7a-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.01016210953137686168</msg>
<msg time="2026-02-19T20:21:13.497392" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:21:13.010814" elapsed="0.488129">The compared images are different.</status>
</kw>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:21:10.589039" elapsed="2.910147">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:21:14.503344" elapsed="1.693832"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:21:16.201027" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png search-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:21:16.198025" elapsed="0.768156"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:21:16.968350" level="INFO" html="true">&lt;img src="search-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:21:16.966982" elapsed="0.001813"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:21:14.501959" elapsed="2.467278"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:21:17.460937" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/8bbe1e9e-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/8bbe1e9e-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:17.460953" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/8bc2e5e6-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/8bc2e5e6-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:17.460958" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/8bc5d5da-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/8bc5d5da-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.01017251235112004437</msg>
<msg time="2026-02-19T20:21:17.461238" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:21:16.969950" elapsed="0.492783">The compared images are different.</status>
</kw>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:21:14.500301" elapsed="2.962676">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:21:18.472689" elapsed="1.713716"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:21:20.190138" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png search-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:21:20.187231" elapsed="0.758602"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:21:20.948076" level="INFO" html="true">&lt;img src="search-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:21:20.946672" elapsed="0.001779"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:21:18.465831" elapsed="2.483100"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:21:21.441705" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/8e1d8422-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/8e1d8422-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:21.441721" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/8e224c5a-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/8e224c5a-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:21.441726" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/8e253c4e-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/8e253c4e-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.01015563667528640579</msg>
<msg time="2026-02-19T20:21:21.442011" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:21:20.949648" elapsed="0.493870">The compared images are different.</status>
</kw>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:21:18.464071" elapsed="2.979736">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:21:22.448112" elapsed="1.689968"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:21:24.141724" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png search-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:21:24.138924" elapsed="0.737272"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:21:24.878537" level="INFO" html="true">&lt;img src="search-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:21:24.877021" elapsed="0.001955"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:21:22.446718" elapsed="2.432629"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:21:25.363813" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/9073f738-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/9073f738-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:25.363829" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/9078b43a-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/9078b43a-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:25.363834" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/907bb432-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/907bb432-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.01016118325752179974</msg>
<msg time="2026-02-19T20:21:25.364501" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:21:24.879982" elapsed="0.486014">The compared images are different.</status>
</kw>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:21:22.444919" elapsed="2.921316">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:21:26.370219" elapsed="1.672302"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:21:28.046320" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png search-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:21:28.043388" elapsed="0.745533"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:21:28.790951" level="INFO" html="true">&lt;img src="search-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:21:28.789686" elapsed="0.001639"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:21:26.368963" elapsed="2.422824"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:21:29.281566" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/92c9cc60-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/92c9cc60-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:29.281583" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/92ce9146-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/92ce9146-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:29.281597" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/92d17f6e-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/92d17f6e-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.01027958678578433371</msg>
<msg time="2026-02-19T20:21:29.281895" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:21:28.792476" elapsed="0.490922">The compared images are different.</status>
</kw>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:21:26.367219" elapsed="2.916437">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:21:30.287836" elapsed="1.642595"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:21:31.933812" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png search-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:21:31.931198" elapsed="0.771345"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:21:32.704482" level="INFO" html="true">&lt;img src="search-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:21:32.703262" elapsed="0.001650"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:21:30.286410" elapsed="2.418930"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:21:33.195169" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/951eea90-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/951eea90-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:33.195185" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/9523b6f6-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/9523b6f6-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:33.195190" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/9526a532-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/9526a532-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.01016063078849360757</msg>
<msg time="2026-02-19T20:21:33.195528" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:21:32.705953" elapsed="0.491100">The compared images are different.</status>
</kw>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:21:30.284546" elapsed="2.912748">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:21:34.201658" elapsed="1.738659"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:21:35.943796" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png search-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:21:35.941073" elapsed="0.744005"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:21:36.686029" level="INFO" html="true">&lt;img src="search-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:21:36.685575" elapsed="0.000578"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:21:34.200168" elapsed="2.486131"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:21:37.154709" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/977b1426-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/977b1426-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:37.154726" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/977fd22c-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/977fd22c-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:37.154730" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/9782d5f8-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/9782d5f8-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.01027139679846955644</msg>
<msg time="2026-02-19T20:21:37.155014" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:21:36.686520" elapsed="0.470083">The compared images are different.</status>
</kw>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:21:34.198478" elapsed="2.958369">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:21:38.161372" elapsed="1.695224"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:21:39.859953" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png search-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:21:39.857303" elapsed="0.705601"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:21:40.565033" level="INFO" html="true">&lt;img src="search-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:21:40.563725" elapsed="0.001683"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:21:38.159956" elapsed="2.405916"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:21:41.050765" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/99cd9050-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/99cd9050-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:41.050781" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/99d2519e-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/99d2519e-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:41.050785" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/99d55d3a-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/99d55d3a-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.01016768906546061668</msg>
<msg time="2026-02-19T20:21:41.051070" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:21:40.566539" elapsed="0.486052">The compared images are different.</status>
</kw>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:21:38.157898" elapsed="2.894938">The compared images are different.</status>
</kw>
<kw name="Remote Weston Check Screenshot" owner="keywords_common">
<kw name="Remote Weston Capture Screenshot" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>rm -rf wayland-screenshot-*.png &amp;&amp; export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 &amp;&amp; weston-screenshooter</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:21:42.057020" elapsed="1.746237"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-02-19T20:21:43.806643" level="INFO">Running command 'scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@192.168.1.72:~/wayland-screenshot-*.png search-screen.png 2&gt;&amp;1'.</msg>
<arg>scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@%{TEST_BOARD_IP}:~/wayland-screenshot-*.png ${capture_name}</arg>
<doc>Runs the given command in the system and returns the output.</doc>
<status status="PASS" start="2026-02-19T20:21:43.804023" elapsed="0.778978"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:21:44.585161" level="INFO" html="true">&lt;img src="search-screen.png" width="50%" /&gt;</msg>
<arg>&lt;img src="${capture_name}" width="50%" /&gt;</arg>
<arg>html</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:21:44.583918" elapsed="0.001580"/>
</kw>
<arg>${image}</arg>
<doc>Captures a screenshot from Weston compositor and saves it locally.</doc>
<status status="PASS" start="2026-02-19T20:21:42.055707" elapsed="2.530187"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:21:45.057841" level="INFO" html="true">_combined:&lt;br&gt;&lt;a href="screenshots/9c3111b4-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" target="_blank"&gt;&lt;img src="screenshots/9c3111b4-0dd0-11f1-b650-b8aeedeb68d3_combined.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:45.057857" level="INFO" html="true">_combined_with_diff:&lt;br&gt;&lt;a href="screenshots/9c35cfc4-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/9c35cfc4-0dd0-11f1-b650-b8aeedeb68d3_combined_with_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:21:45.057861" level="INFO" html="true">_absolute_diff:&lt;br&gt;&lt;a href="screenshots/9c38bcfc-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" target="_blank"&gt;&lt;img src="screenshots/9c38bcfc-0dd0-11f1-b650-b8aeedeb68d3_absolute_diff.jpg" style="width:50%; height: auto;"&gt;&lt;/a&gt;
Visual differences detected. SSIM score: 0.01014537156583028565</msg>
<msg time="2026-02-19T20:21:45.058501" level="FAIL">The compared images are different.</msg>
<arg>${BASELINE_IMAGES_PATH}/%{TEST_WPEWEBKIT_VERSION}/${image}</arg>
<arg>${image}</arg>
<arg>threshold=0.0050</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="FAIL" start="2026-02-19T20:21:44.586473" elapsed="0.473528">The compared images are different.</status>
</kw>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Captures and compares screenshot against baseline image.</doc>
<status status="FAIL" start="2026-02-19T20:21:42.053918" elapsed="3.006331">The compared images are different.</status>
</kw>
<msg time="2026-02-19T20:21:45.060429" level="FAIL">Keyword 'Remote Weston Check Screenshot' failed after retrying 20 times. The last error was: The compared images are different.</msg>
<arg>20x</arg>
<arg>1000ms</arg>
<arg>Remote Weston Check Screenshot</arg>
<arg>${SEARCH_SCREEN_IMAGE}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="FAIL" start="2026-02-19T20:20:27.063722" elapsed="77.996906">Keyword 'Remote Weston Check Screenshot' failed after retrying 20 times. The last error was: The compared images are different.</status>
</kw>
<status status="FAIL" start="2026-02-19T20:20:21.836960" elapsed="83.223888">Keyword 'Remote Weston Check Screenshot' failed after retrying 20 times. The last error was: The compared images are different.</status>
</kw>
<kw name="Browser Reload" owner="keywords_touch_navigation">
<status status="NOT RUN" start="2026-02-19T20:21:45.061305" elapsed="0.000076"/>
</kw>
<kw name="Navigation Back" owner="keywords_touch_navigation">
<status status="NOT RUN" start="2026-02-19T20:21:45.061736" elapsed="0.000069"/>
</kw>
<kw name="Open Search" owner="keywords_touch_navigation">
<status status="NOT RUN" start="2026-02-19T20:21:45.062127" elapsed="0.000064"/>
</kw>
<kw name="Terminate Browser" owner="keywords_touch_navigation">
<status status="NOT RUN" start="2026-02-19T20:21:45.062732" elapsed="0.000127"/>
</kw>
<kw name="Toggle Gallium HUD" owner="keywords_touch_navigation">
<status status="NOT RUN" start="2026-02-19T20:21:45.063380" elapsed="0.000096"/>
</kw>
<tag>test:retry(0)</tag>
<timeout value="3 minutes"/>
<status status="FAIL" start="2026-02-19T20:19:27.056989" elapsed="138.006993">Keyword 'Remote Weston Check Screenshot' failed after retrying 20 times. The last error was: The compared images are different.</status>
</test>
<status status="FAIL" start="2026-02-19T20:19:13.398969" elapsed="151.666089"/>
</suite>
<suite id="s1-s7" name="Tests 013 Glyphs" source="/app/tests_results/20260219_201245_robot_/../../robot_framework/tests/tests_013_glyphs.robot">
<kw name="Webdriver Remote Start" owner="keywords_common" type="SETUP">
<kw name="Ssh Webdriver Remote Stop" owner="TestUtils">
<msg time="2026-02-19T20:21:45.832522" level="INFO">RUN: Killing all 'WPEWebDriver' related processes ...</msg>
<arg>%{TEST_BOARD_IP}</arg>
<status status="PASS" start="2026-02-19T20:21:45.077632" elapsed="0.755280"/>
</kw>
<kw name="Ssh Force Kill" owner="TestUtils">
<msg time="2026-02-19T20:21:46.591905" level="INFO">RUN: Killing all 'wpe-simple-launcher' related processes ...</msg>
<arg>%{TEST_BOARD_IP}</arg>
<arg>wpe-simple-launcher</arg>
<doc>Force kill all related process.</doc>
<status status="PASS" start="2026-02-19T20:21:45.833502" elapsed="0.758727"/>
</kw>
<kw name="Ssh Webdriver Remote Start" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>%{TEST_BOARD_WEBDRIVER_PORT}</arg>
<status status="PASS" start="2026-02-19T20:21:46.593024" elapsed="0.011461"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-02-19T20:21:51.608013" level="INFO">Slept 5 seconds.</msg>
<arg>5</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-02-19T20:21:46.606199" elapsed="5.002319"/>
</kw>
<kw name="Create WPEWebKitOptions" owner="keywords_common">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:21:51.614379" level="INFO">${wpe_options} = &lt;selenium.webdriver.wpewebkit.options.Options object at 0x72977b163f80&gt;</msg>
<var>${wpe_options}</var>
<arg>sys.modules['selenium.webdriver'].WPEWebKitOptions()</arg>
<arg>sys, selenium.webdriver</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:21:51.613362" elapsed="0.001086"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-02-19T20:21:51.615323" level="INFO">${wpe_options.binary_location} = /usr/bin/wpe-exported-wayland</msg>
<var>${wpe_options.binary_location}</var>
<arg>${binary_path}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-02-19T20:21:51.614762" elapsed="0.000624"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Call Method" owner="BuiltIn">
<arg>${wpe_options}</arg>
<arg>add_argument</arg>
<arg>${param}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-02-19T20:21:51.616476" elapsed="0.000437"/>
</kw>
<var name="${param}">--automation</var>
<status status="PASS" start="2026-02-19T20:21:51.616169" elapsed="0.000846"/>
</iter>
<var>${param}</var>
<value>@{other_params}</value>
<status status="PASS" start="2026-02-19T20:21:51.615646" elapsed="0.001475"/>
</for>
<kw name="Call Method" owner="BuiltIn">
<arg>${wpe_options}</arg>
<arg>set_capability</arg>
<arg>browserName</arg>
<arg>${binary_name}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-02-19T20:21:51.617346" elapsed="0.000444"/>
</kw>
<return>
<value>${wpe_options}</value>
<status status="PASS" start="2026-02-19T20:21:51.617952" elapsed="0.000251"/>
</return>
<msg time="2026-02-19T20:21:51.618510" level="INFO">${wpe_options} = &lt;selenium.webdriver.wpewebkit.options.Options object at 0x72977b163f80&gt;</msg>
<var>${wpe_options}</var>
<arg>wpe-simple-launcher</arg>
<arg>/usr/bin/wpe-exported-wayland</arg>
<arg>--automation</arg>
<arg>@{other_params}</arg>
<doc>Creates and configures WPEWebKit options for WebDriver session.</doc>
<status status="PASS" start="2026-02-19T20:21:51.611218" elapsed="0.007363"/>
</kw>
<kw name="Create Webdriver" owner="SeleniumLibrary">
<msg time="2026-02-19T20:21:51.619683" level="INFO">Creating an instance of the Remote WebDriver.</msg>
<arg>Remote</arg>
<arg>command_executor=%{TEST_BOARD_IP}:%{TEST_BOARD_WEBDRIVER_PORT}</arg>
<arg>options=${wpe_options}</arg>
<doc>Creates an instance of Selenium WebDriver.</doc>
<status status="PASS" start="2026-02-19T20:21:51.618919" elapsed="0.958474"/>
</kw>
<doc>Starts WebDriver session on remote test board with WPE launcher.</doc>
<timeout value="2 minutes"/>
<status status="PASS" start="2026-02-19T20:21:45.076910" elapsed="7.501788"/>
</kw>
<test id="s1-s7-t1" name="Verify no changes in the glyphs" line="18">
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:21:52.581774" level="INFO">${TEST_WEBSERVER_IP} = 192.168.1.246</msg>
<var>${TEST_WEBSERVER_IP}</var>
<arg>TEST_WEBSERVER_IP</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:21:52.581282" elapsed="0.000555"/>
</kw>
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:21:52.582680" level="INFO">${TEST_WEBSERVER_PORT} = 8008</msg>
<var>${TEST_WEBSERVER_PORT}</var>
<arg>TEST_WEBSERVER_PORT</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:21:52.582291" elapsed="0.000448"/>
</kw>
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-02-19T20:21:52.583486" level="INFO">${TEST_WPEWEBKIT_VERSION} = 2_50</msg>
<var>${TEST_WPEWEBKIT_VERSION}</var>
<arg>TEST_WPEWEBKIT_VERSION</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-02-19T20:21:52.583114" elapsed="0.000494"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-02-19T20:21:52.584723" level="INFO">${PAGE} = http://192.168.1.246:8008/robot_framework/html/glyphs.html</msg>
<var>${PAGE}</var>
<arg>http://${TEST_WEBSERVER_IP}:${TEST_WEBSERVER_PORT}/robot_framework/html/glyphs.html</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-02-19T20:21:52.583999" elapsed="0.000818"/>
</kw>
<kw name="Go To" owner="SeleniumLibrary">
<msg time="2026-02-19T20:21:52.585656" level="INFO">Opening url 'http://192.168.1.246:8008/robot_framework/html/glyphs.html'</msg>
<arg>${PAGE}</arg>
<doc>Navigates the current browser window to the provided ``url``.</doc>
<status status="PASS" start="2026-02-19T20:21:52.585285" elapsed="1.014095"/>
</kw>
<kw name="Wait Until Page Contains" owner="SeleniumLibrary">
<arg>Ready</arg>
<arg>timeout=10s</arg>
<doc>Waits until ``text`` appears on the current page.</doc>
<status status="PASS" start="2026-02-19T20:21:53.600585" elapsed="0.144541"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:21:54.454214" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="glyphs.png"&gt;&lt;img src="glyphs.png" width="800px"&gt;&lt;/a&gt;</msg>
<arg>${GLYPHS_PAGE_IMAGE}</arg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:21:53.746385" elapsed="0.708025"/>
</kw>
<kw name="Compare Images" owner="DocTest.VisualTest">
<msg time="2026-02-19T20:21:54.784818" level="INFO">Images/Document comparison passed.</msg>
<arg>${BASELINE_IMAGES_PATH}/${TEST_WPEWEBKIT_VERSION}/${GLYPHS_PAGE_IMAGE}</arg>
<arg>${GLYPHS_PAGE_IMAGE}</arg>
<arg>threshold=0.001</arg>
<doc>Compares the documents/images ``reference_image`` and ``test_image``.</doc>
<status status="PASS" start="2026-02-19T20:21:54.454859" elapsed="0.330236"/>
</kw>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:21:52.579829" elapsed="2.205959"/>
</test>
<kw name="Webdriver Remote Stop" owner="keywords_common" type="TEARDOWN">
<kw name="Close All Browsers" owner="SeleniumLibrary">
<doc>Closes all open browsers and resets the browser cache.</doc>
<status status="PASS" start="2026-02-19T20:21:54.788507" elapsed="0.066623"/>
</kw>
<kw name="Ssh Webdriver Remote Stop" owner="TestUtils">
<msg time="2026-02-19T20:21:55.668765" level="INFO">RUN: Killing all 'WPEWebDriver' related processes ...</msg>
<arg>%{TEST_BOARD_IP}</arg>
<status status="PASS" start="2026-02-19T20:21:54.855782" elapsed="0.813391"/>
</kw>
<kw name="Ssh Force Kill" owner="TestUtils">
<msg time="2026-02-19T20:21:56.462412" level="INFO">RUN: Killing all 'wpe-simple-launcher' related processes ...</msg>
<arg>%{TEST_BOARD_IP}</arg>
<arg>wpe-simple-launcher</arg>
<doc>Force kill all related process.</doc>
<status status="PASS" start="2026-02-19T20:21:55.669792" elapsed="0.792978"/>
</kw>
<doc>Stops WebDriver session and cleans up browser processes.</doc>
<timeout value="2 minutes"/>
<status status="PASS" start="2026-02-19T20:21:54.787685" elapsed="1.675490"/>
</kw>
<status status="PASS" start="2026-02-19T20:21:45.066595" elapsed="11.396891"/>
</suite>
<suite id="s1-s8" name="Tests 015 Video" source="/app/tests_results/20260219_201245_robot_/../../robot_framework/tests/tests_015_video.robot">
<kw name="Wait For Webdriver Remote Start Maximized" type="SETUP">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Device Is IDLE" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:21:57.249010" level="INFO">${stdout} = ('USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND\nroot         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]\nroot         3  0.0  0.0      0     0 ?        ...</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>ps -auxfww</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:21:56.551970" elapsed="0.697162"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:21:57.250419" level="INFO">${formatted} = USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S   ...</msg>
<var>${formatted}</var>
<arg>r"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:21:57.249430" elapsed="0.001058"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:21:57.251005" level="INFO">USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [pool_workqueue_release]
root         4  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kvfree_rcu_reclaim]
root         5  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rcu_gp]
root         6  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sync_wq]
root         7  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-slub_flushwq]
root         9  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:0H-mmc_complete]
root        11  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:0-ipv6_addrconf]
root        12  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mm_percpu_wq]
root        13  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_tasks_trace_kthread]
root        14  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/0]
root        15  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_sched]
root        16  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_par_gp_kthread_worker/0]
root        17  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_gp_kthread_worker]
root        18  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/0]
root        19  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/0]
root        20  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/1]
root        21  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/1]
root        22  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/1]
root        23  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:0-events]
root        24  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:0H-events_highpri]
root        25  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/2]
root        26  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/2]
root        27  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/2]
root        28  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:0-cgroup_destroy]
root        29  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:0H-kblockd]
root        30  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/3]
root        31  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/3]
root        32  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/3]
root        34  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:0H-events_highpri]
root        35  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:0-nfsiod]
root        36  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:0-events_unbound]
root        37  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:0-rpciod]
root        39  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kdevtmpfs]
root        40  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-inet_frag_wq]
root        41  0.5  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:1-nfsiod]
root        42  0.5  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:2-rpciod]
root        43  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:3-xprtiod]
root        44  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [oom_reaper]
root        45  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-writeback]
root        46  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kcompactd0]
root        47  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kblockd]
root        49  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:1-flush-0:16]
root        50  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:2-rpciod]
root        51  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ata_sff]
root        52  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:1-cgroup_destroy]
root        55  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:4-events]
root        57  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [watchdogd]
root        60  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:1H-kblockd]
root        61  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rpciod]
root        62  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-xprtiod]
root        63  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-cfg80211]
root        64  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kswapd0]
root        65  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:1-events_unbound]
root        66  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-nfsiod]
root        67  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-120000.hdmi]
root        69  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:3-cgroup_destroy]
root        70  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cec-dw_hdmi]
root        71  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-dw-hdmi-cec]
root        72  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-130000.gpu]
root        73  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-134000.gpu]
root        74  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-2204000.gpu]
root        76  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc0]
root        78  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc1]
root        79  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc2]
root        80  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc3]
root        81  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [scsi_eh_0]
root        82  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-scsi_tmf_0]
root        83  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ci_otg]
root        84  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:1-rpciod]
root        85  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:2-events_unbound]
root        87  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u21:0]
root        88  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u22:0]
root        89  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u23:0]
root        90  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u24:0]
root        91  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u25:0]
root        92  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        93  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/286-mmc0]
root        95  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        96  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/287-mmc1]
root        98  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:2-cgroup_destroy]
root        99  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root       100  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/288-mmc2]
root       101  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2101000.jr-engine]
root       102  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:2-rpciod]
root       104  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [hwrng]
root       105  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2102000.jr-engine]
root       106  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/105-2198000.mmc cd]
root       107  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/30-2190000.mmc cd]
root       108  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mmc_complete]
root       109  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:1H-mmc_complete]
root       113  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:5-pm]
root       114  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:6-events]
root       115  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mld]
root       116  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ipv6_addrconf]
root       117  0.3  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u16:1-130000.gpu]
root       119  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/297-imx_thermal]
root       123  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:1H]
root       124  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:3-rpciod]
root       125  0.3  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u17:4-rpciod]
root       126  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:1H-events_highpri]
root       127  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:4-rpciod]
root       128  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:4-rpciod]
root       129  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:3-nfsiod]
root       131  0.5  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:5-nfsiod]
root       132  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:5-rpciod]
root       248  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/298-vdoa]
root       250  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/301-coda-jpeg]
root       251  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-coda]
root       295  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:5-nfsiod]
root       298  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:5-rpciod]
root       302  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:6-xprtiod]
root       305  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:6-nfsiod]
root       443  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:6-rpciod]
root      2202  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/u19:7-rpciod]
root      2292  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/2:1-events]
root      2342  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/3:0-events_power_efficient]
root      2373  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/1:1-cgroup_destroy]
root      2460  0.0  0.0      0     0 ?        I    20:18   0:00  \_ [kworker/0:0-rcu_gp]
root      3647  0.0  0.0      0     0 ?        I    20:21   0:00  \_ [kworker/u18:3]
root         1  2.9  0.3  11272  7468 ?        Ss   20:12   0:17 /sbin/init
rpc        157  0.0  0.0   2824  1836 ?        Ss   20:12   0:00 /usr/sbin/rpcbind -w -f
root       159  0.6  0.3  33328  7940 ?        Ss   20:12   0:03 /usr/lib/systemd/systemd-journald
root       194  0.0  0.1   8328  3736 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-userdbd
root      2226  0.0  0.2   8816  4268 ?        S    20:17   0:00  \_ systemd-userwork: waiting...
root      2227  0.0  0.2   8816  4496 ?        S    20:17   0:00  \_ systemd-userwork: waiting...
root      2299  0.0  0.2   8816  4336 ?        S    20:17   0:00  \_ systemd-userwork: waiting...
root       204  0.2  0.2  20304  5440 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-udevd
systemd+   241  0.1  0.2   8648  4948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-resolved
systemd+   246  0.0  0.2  17744  4628 ?        Ssl  20:12   0:00 /usr/lib/systemd/systemd-timesyncd
root       315  0.0  0.0   1572  1172 ?        Ss   20:12   0:00 /usr/sbin/atd -f
avahi      316  0.0  0.1   4268  2272 ?        Ss   20:12   0:00 avahi-daemon: running [wandboard-mesa.local]
avahi      345  0.0  0.0   4092  1080 ?        S    20:12   0:00  \_ avahi-daemon: chroot helper
root       318  0.0  0.0   2080  1180 ?        Ss   20:12   0:00 /usr/sbin/crond -n
message+   319  1.4  0.1   4208  2628 ?        Ss   20:12   0:07 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
dhcpcd     320  0.0  0.1   4428  3552 ?        Ss   20:12   0:00 dhcpcd: [manager] [ip4] [ip6]
root       326  0.0  0.0   4660  1952 ?        S    20:12   0:00  \_ dhcpcd: [privileged proxy]
dhcpcd     387  0.0  0.0   4440  1440 ?        S    20:12   0:00  |   \_ dhcpcd: [BPF ARP] end0 192.168.1.72
dhcpcd     327  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [network proxy]
dhcpcd     328  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [control proxy]
root       323  0.0  0.1   6284  3268 ?        Ss   20:12   0:00 /usr/sbin/ofonod -n
root       324  0.2  0.0   1528  1076 ?        Ss   20:12   0:01 /usr/sbin/syslogd -F
root       325  0.6  0.2   8772  4812 ?        Ss   20:12   0:03 /usr/lib/systemd/systemd-logind
systemd+   346  0.1  0.2   9452  5948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-networkd
root       359  0.0  0.1   3704  2752 ?        Ss   20:12   0:00 /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     370  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     371  0.0  0.1   4276  2912 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     372  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     373  0.0  0.1   4468  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     374  0.0  0.1   4276  2832 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
ntp        365  0.0  0.2   7812  4796 ?        Ssl  20:12   0:00 /usr/sbin/ntpd -u ntp -p /run/ntpd.pid -g
root       368  0.0  0.0   1536  1024 tty1     Ss+  20:12   0:00 /sbin/agetty -o -p -- \u --noclear - linux
root       369  0.0  0.0   1564  1148 ttymxc0  Ss+  20:12   0:00 /sbin/agetty -8 -L ttymxc0 115200 linux
polkitd    378  0.3  0.6 109048 14152 ?        Ssl  20:12   0:02 /usr/lib/polkit-1/polkitd --no-debug
weston     381  0.1  0.3  10028  6600 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd --user
weston     383  0.0  0.1  10944  2148 ?        S    20:12   0:00  \_ (sd-pam)
weston    1586  0.0  0.1   3912  2472 ?        Ss   20:15   0:00  \_ /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
weston    1589  0.0  0.1  43120  4004 ?        Ssl  20:15   0:00  \_ /usr/libexec/at-spi-bus-launcher
weston    1594  0.0  0.1   3912  2592 ?        S    20:15   0:00  |   \_ /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 10 --address=unix:path=/run/user/1000/at-spi/bus
weston    1635  0.0  0.2  35636  4440 ?        Sl   20:15   0:00  \_ /usr/libexec/at-spi2-registryd --use-gnome-session
root      1285  0.1  0.3  10024  6556 ?        Ss   20:14   0:00 /usr/lib/systemd/systemd --user
root      1287  0.0  0.1  10484  2068 ?        S    20:14   0:00  \_ (sd-pam)
weston    2792  8.8  1.6  92612 33288 tty7     Ssl+ 20:19   0:13 /usr/bin/weston --continue-without-input --modules=systemd-notify.so --debug --debug --debug
weston    2794  0.0  0.1  10900  2200 tty7     S+   20:19   0:00  \_ (sd-pam)
weston    2818  0.1  0.3  13088  7548 ?        Ss   20:19   0:00  \_ /usr/libexec/weston-keyboard
weston    2819  0.6  0.7  21008 15368 ?        Ss   20:19   0:01  \_ /usr/libexec/weston-desktop-shell
root      4033 20.0  0.2   6776  5564 ?        Ss   20:21   0:00 sshd: root@notty
root      4055  175  0.1   4996  2800 ?        Rs   20:21   0:00  \_ ps -auxfww</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:21:57.250759" elapsed="0.000655"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:21:57.851496" level="INFO">${stdout} = ('1.40', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:21:57.252133" elapsed="0.599638"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:21:57.854111" level="INFO">${value} = 1.4</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:21:57.852525" elapsed="0.001771"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:21:57.854684" elapsed="0.000258"/>
</return>
<msg time="2026-02-19T20:21:57.855768" level="INFO">${cpu_load} = 1.4</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:21:57.251744" elapsed="0.604137"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:21:57.856361" level="INFO">CPU load: 1.4</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:21:57.856106" elapsed="0.000347"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<msg time="2026-02-19T20:21:57.857113" level="FAIL">'1.4 &lt; 1' should be true.</msg>
<arg>${cpu_load} &lt; ${CPU_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="FAIL" start="2026-02-19T20:21:57.856679" elapsed="0.000587">'1.4 &lt; 1' should be true.</status>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<status status="NOT RUN" start="2026-02-19T20:21:57.857600" elapsed="0.000068"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-02-19T20:21:57.857860" elapsed="0.000055"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${MEMORY_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:21:57.858094" elapsed="0.000051"/>
</kw>
<doc>Check if the Device is idle.</doc>
<status status="FAIL" start="2026-02-19T20:21:56.551673" elapsed="1.306672">'1.4 &lt; 1' should be true.</status>
</kw>
<kw name="Check Device Is IDLE" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:22:09.473269" level="INFO">${stdout} = ('USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND\nroot         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]\nroot         3  0.0  0.0      0     0 ?        ...</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>ps -auxfww</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:22:07.860408" elapsed="1.613192"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:22:09.476188" level="INFO">${formatted} = USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S   ...</msg>
<var>${formatted}</var>
<arg>r"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:22:09.474310" elapsed="0.002078"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:22:09.477805" level="INFO">USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [pool_workqueue_release]
root         4  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kvfree_rcu_reclaim]
root         5  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rcu_gp]
root         6  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sync_wq]
root         7  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-slub_flushwq]
root         9  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:0H-mmc_complete]
root        11  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:0-ipv6_addrconf]
root        12  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mm_percpu_wq]
root        13  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_tasks_trace_kthread]
root        14  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/0]
root        15  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_sched]
root        16  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_par_gp_kthread_worker/0]
root        17  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_gp_kthread_worker]
root        18  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/0]
root        19  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/0]
root        20  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/1]
root        21  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/1]
root        22  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/1]
root        23  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:0-events]
root        24  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:0H-events_highpri]
root        25  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/2]
root        26  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/2]
root        27  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/2]
root        28  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:0-events]
root        29  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:0H-kblockd]
root        30  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/3]
root        31  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/3]
root        32  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/3]
root        34  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:0H-events_highpri]
root        35  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:0-nfsiod]
root        36  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:0-events_unbound]
root        37  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:0-rpciod]
root        39  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kdevtmpfs]
root        40  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-inet_frag_wq]
root        41  0.5  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:1-nfsiod]
root        42  0.5  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:2-rpciod]
root        43  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:3-xprtiod]
root        44  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [oom_reaper]
root        45  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-writeback]
root        46  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kcompactd0]
root        47  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kblockd]
root        49  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:1-events_unbound]
root        50  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:2-rpciod]
root        51  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ata_sff]
root        52  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:1-mm_percpu_wq]
root        55  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:4-events]
root        57  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [watchdogd]
root        60  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:1H-kblockd]
root        61  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rpciod]
root        62  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-xprtiod]
root        63  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-cfg80211]
root        64  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kswapd0]
root        65  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:1-events_unbound]
root        66  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-nfsiod]
root        67  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-120000.hdmi]
root        69  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:3-cgroup_destroy]
root        70  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cec-dw_hdmi]
root        71  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-dw-hdmi-cec]
root        72  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-130000.gpu]
root        73  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-134000.gpu]
root        74  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-2204000.gpu]
root        76  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc0]
root        78  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc1]
root        79  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc2]
root        80  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc3]
root        81  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [scsi_eh_0]
root        82  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-scsi_tmf_0]
root        83  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ci_otg]
root        84  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:1-rpciod]
root        85  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:2-events_unbound]
root        87  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u21:0]
root        88  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u22:0]
root        89  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u23:0]
root        90  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u24:0]
root        91  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u25:0]
root        92  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        93  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/286-mmc0]
root        95  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        96  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/287-mmc1]
root        98  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:2-cgroup_destroy]
root        99  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root       100  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/288-mmc2]
root       101  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2101000.jr-engine]
root       102  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:2-rpciod]
root       104  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [hwrng]
root       105  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2102000.jr-engine]
root       106  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/105-2198000.mmc cd]
root       107  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/30-2190000.mmc cd]
root       108  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mmc_complete]
root       109  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:1H-mmc_complete]
root       113  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:5-cgroup_destroy]
root       114  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:6-events]
root       115  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mld]
root       116  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ipv6_addrconf]
root       117  0.3  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u16:1-130000.gpu]
root       119  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/297-imx_thermal]
root       123  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:1H]
root       124  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:3-rpciod]
root       125  0.3  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u17:4-rpciod]
root       126  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:1H-events_highpri]
root       127  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:4-rpciod]
root       128  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:4-rpciod]
root       129  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:3-nfsiod]
root       131  0.5  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:5-kvfree_rcu_reclaim]
root       132  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:5-rpciod]
root       248  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/298-vdoa]
root       250  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/301-coda-jpeg]
root       251  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-coda]
root       295  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:5-nfsiod]
root       298  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:5-rpciod]
root       302  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:6-xprtiod]
root       305  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:6-nfsiod]
root       443  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:6-rpciod]
root      2202  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/u19:7-kvfree_rcu_reclaim]
root      2292  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/2:1-events]
root      2342  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/3:0-events]
root      2373  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/1:1-events]
root      2460  0.0  0.0      0     0 ?        I    20:18   0:00  \_ [kworker/0:0-events]
root      3647  0.0  0.0      0     0 ?        I    20:21   0:00  \_ [kworker/u18:3]
root         1  2.9  0.3  11272  7468 ?        Ss   20:12   0:17 /sbin/init
rpc        157  0.0  0.0   2824  1836 ?        Ss   20:12   0:00 /usr/sbin/rpcbind -w -f
root       159  0.6  0.3  33328  7940 ?        Ss   20:12   0:03 /usr/lib/systemd/systemd-journald
root       194  0.0  0.1   8328  3736 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-userdbd
root      2226  0.0  0.2   8816  4268 ?        S    20:17   0:00  \_ systemd-userwork: waiting...
root      2227  0.0  0.2   8816  4496 ?        S    20:17   0:00  \_ systemd-userwork: waiting...
root      2299  0.0  0.2   8816  4336 ?        S    20:17   0:00  \_ systemd-userwork: waiting...
root       204  0.2  0.2  20304  5440 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-udevd
systemd+   241  0.1  0.2   8648  4948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-resolved
systemd+   246  0.0  0.2  17744  4628 ?        Ssl  20:12   0:00 /usr/lib/systemd/systemd-timesyncd
root       315  0.0  0.0   1572  1172 ?        Ss   20:12   0:00 /usr/sbin/atd -f
avahi      316  0.0  0.1   4268  2272 ?        Ss   20:12   0:00 avahi-daemon: running [wandboard-mesa.local]
avahi      345  0.0  0.0   4092  1080 ?        S    20:12   0:00  \_ avahi-daemon: chroot helper
root       318  0.0  0.0   2080  1180 ?        Ss   20:12   0:00 /usr/sbin/crond -n
message+   319  1.3  0.1   4208  2628 ?        Ss   20:12   0:08 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
dhcpcd     320  0.0  0.1   4428  3552 ?        Ss   20:12   0:00 dhcpcd: [manager] [ip4] [ip6]
root       326  0.0  0.0   4660  1952 ?        S    20:12   0:00  \_ dhcpcd: [privileged proxy]
dhcpcd     387  0.0  0.0   4440  1440 ?        S    20:12   0:00  |   \_ dhcpcd: [BPF ARP] end0 192.168.1.72
dhcpcd     327  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [network proxy]
dhcpcd     328  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [control proxy]
root       323  0.0  0.1   6284  3268 ?        Ss   20:12   0:00 /usr/sbin/ofonod -n
root       324  0.2  0.0   1528  1076 ?        Ss   20:12   0:01 /usr/sbin/syslogd -F
root       325  0.6  0.2   8772  4812 ?        Ss   20:12   0:04 /usr/lib/systemd/systemd-logind
systemd+   346  0.1  0.2   9452  5948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-networkd
root       359  0.0  0.1   3704  2752 ?        Ss   20:12   0:00 /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     370  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     371  0.0  0.1   4276  2912 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     372  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     373  0.0  0.1   4468  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     374  0.0  0.1   4276  2832 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
ntp        365  0.0  0.2   7812  4796 ?        Ssl  20:12   0:00 /usr/sbin/ntpd -u ntp -p /run/ntpd.pid -g
root       368  0.0  0.0   1536  1024 tty1     Ss+  20:12   0:00 /sbin/agetty -o -p -- \u --noclear - linux
root       369  0.0  0.0   1564  1148 ttymxc0  Ss+  20:12   0:00 /sbin/agetty -8 -L ttymxc0 115200 linux
polkitd    378  0.3  0.6 109048 14152 ?        Ssl  20:12   0:02 /usr/lib/polkit-1/polkitd --no-debug
weston     381  0.1  0.3  10028  6600 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd --user
weston     383  0.0  0.1  10944  2148 ?        S    20:12   0:00  \_ (sd-pam)
weston    1586  0.0  0.1   3912  2472 ?        Ss   20:15   0:00  \_ /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
weston    1589  0.0  0.1  43120  4004 ?        Ssl  20:15   0:00  \_ /usr/libexec/at-spi-bus-launcher
weston    1594  0.0  0.1   3912  2592 ?        S    20:15   0:00  |   \_ /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 10 --address=unix:path=/run/user/1000/at-spi/bus
weston    1635  0.0  0.2  35636  4440 ?        Sl   20:15   0:00  \_ /usr/libexec/at-spi2-registryd --use-gnome-session
weston    2792  8.2  1.6  93636 33288 tty7     Ssl+ 20:19   0:14 /usr/bin/weston --continue-without-input --modules=systemd-notify.so --debug --debug --debug
weston    2794  0.0  0.1  10900  2200 tty7     S+   20:19   0:00  \_ (sd-pam)
weston    2818  0.1  0.3  13088  7548 ?        Ss   20:19   0:00  \_ /usr/libexec/weston-keyboard
weston    2819  0.6  0.7  21008 15368 ?        Ss   20:19   0:01  \_ /usr/libexec/weston-desktop-shell
root      4086  8.7  0.2   6776  5476 ?        Ss   20:22   0:00 sshd: root@notty
root      4102  150  0.1   4996  2848 ?        Rs   20:22   0:00  \_ ps -auxfww
root      4095 68.0  0.3  10024  6732 ?        Ss   20:22   0:00 /usr/lib/systemd/systemd --user
root      4097  0.0  0.1  10484  2064 ?        S    20:22   0:00  \_ (sd-pam)</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:22:09.477096" elapsed="0.001304"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:22:10.091106" level="INFO">${stdout} = ('1.25', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:22:09.479114" elapsed="0.612187"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:22:10.093595" level="INFO">${value} = 1.25</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:22:10.092112" elapsed="0.001651"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:22:10.094066" elapsed="0.000204"/>
</return>
<msg time="2026-02-19T20:22:10.095071" level="INFO">${cpu_load} = 1.25</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:22:09.478722" elapsed="0.616505"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:22:10.096534" level="INFO">CPU load: 1.25</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:22:10.095883" elapsed="0.000930"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<msg time="2026-02-19T20:22:10.098483" level="FAIL">'1.25 &lt; 1' should be true.</msg>
<arg>${cpu_load} &lt; ${CPU_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="FAIL" start="2026-02-19T20:22:10.097342" elapsed="0.001523">'1.25 &lt; 1' should be true.</status>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<status status="NOT RUN" start="2026-02-19T20:22:10.099691" elapsed="0.000177"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-02-19T20:22:10.100432" elapsed="0.000206"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${MEMORY_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:22:10.101188" elapsed="0.000135"/>
</kw>
<doc>Check if the Device is idle.</doc>
<status status="FAIL" start="2026-02-19T20:22:07.859487" elapsed="2.242322">'1.25 &lt; 1' should be true.</status>
</kw>
<kw name="Check Device Is IDLE" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:22:21.709669" level="INFO">${stdout} = ('USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND\nroot         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]\nroot         3  0.0  0.0      0     0 ?        ...</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>ps -auxfww</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:22:20.103958" elapsed="1.605954"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:22:21.712258" level="INFO">${formatted} = USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S   ...</msg>
<var>${formatted}</var>
<arg>r"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:22:21.710681" elapsed="0.001743"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:22:21.713514" level="INFO">USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [pool_workqueue_release]
root         4  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kvfree_rcu_reclaim]
root         5  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rcu_gp]
root         6  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sync_wq]
root         7  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-slub_flushwq]
root         9  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:0H-mmc_complete]
root        11  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:0-ipv6_addrconf]
root        12  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mm_percpu_wq]
root        13  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_tasks_trace_kthread]
root        14  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/0]
root        15  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_sched]
root        16  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_par_gp_kthread_worker/0]
root        17  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_gp_kthread_worker]
root        18  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/0]
root        19  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/0]
root        20  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/1]
root        21  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/1]
root        22  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/1]
root        23  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:0-events]
root        24  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:0H-events_highpri]
root        25  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/2]
root        26  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/2]
root        27  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/2]
root        28  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:0-cgroup_destroy]
root        29  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:0H-kblockd]
root        30  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/3]
root        31  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/3]
root        32  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/3]
root        34  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:0H-events_highpri]
root        35  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:0-nfsiod]
root        36  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:0-kvfree_rcu_reclaim]
root        39  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kdevtmpfs]
root        40  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-inet_frag_wq]
root        41  0.5  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:1-nfsiod]
root        42  0.5  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:2-rpciod]
root        43  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:3-xprtiod]
root        44  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [oom_reaper]
root        45  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-writeback]
root        46  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kcompactd0]
root        47  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kblockd]
root        49  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:1-events_unbound]
root        50  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:2-rpciod]
root        51  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ata_sff]
root        52  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:1-events]
root        55  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:4-events]
root        57  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [watchdogd]
root        60  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:1H-kblockd]
root        61  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rpciod]
root        62  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-xprtiod]
root        63  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-cfg80211]
root        64  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kswapd0]
root        65  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:1-events_unbound]
root        66  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-nfsiod]
root        67  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-120000.hdmi]
root        69  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:3-cgroup_destroy]
root        70  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cec-dw_hdmi]
root        71  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-dw-hdmi-cec]
root        72  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-130000.gpu]
root        73  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-134000.gpu]
root        74  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-2204000.gpu]
root        76  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc0]
root        78  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc1]
root        79  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc2]
root        80  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc3]
root        81  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [scsi_eh_0]
root        82  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-scsi_tmf_0]
root        83  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ci_otg]
root        84  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:1-rpciod]
root        85  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:2-events_unbound]
root        87  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u21:0]
root        88  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u22:0]
root        89  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u23:0]
root        90  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u24:0]
root        91  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u25:0]
root        92  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        93  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/286-mmc0]
root        95  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        96  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/287-mmc1]
root        98  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:2-cgroup_destroy]
root        99  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root       100  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/288-mmc2]
root       101  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2101000.jr-engine]
root       102  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:2-rpciod]
root       104  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [hwrng]
root       105  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2102000.jr-engine]
root       106  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/105-2198000.mmc cd]
root       107  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/30-2190000.mmc cd]
root       108  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mmc_complete]
root       109  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:1H-mmc_complete]
root       113  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:5-rcu_gp]
root       114  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:6-events]
root       115  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mld]
root       116  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ipv6_addrconf]
root       117  0.3  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u16:1-130000.gpu]
root       119  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/297-imx_thermal]
root       123  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:1H]
root       125  0.3  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u17:4-rpciod]
root       126  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:1H-events_highpri]
root       127  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:4-rpciod]
root       128  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:4-rpciod]
root       129  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:3-nfsiod]
root       131  0.5  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:5-kvfree_rcu_reclaim]
root       132  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:5-rpciod]
root       248  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/298-vdoa]
root       250  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/301-coda-jpeg]
root       251  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-coda]
root       295  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:5-nfsiod]
root       302  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:6-events_unbound]
root       305  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:6-nfsiod]
root       443  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:6-rpciod]
root      2202  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/u19:7-events_unbound]
root      2292  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/2:1-events]
root      2342  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/3:0-cgroup_destroy]
root      2373  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/1:1-events]
root      2460  0.0  0.0      0     0 ?        I    20:18   0:00  \_ [kworker/0:0-events]
root      3647  0.0  0.0      0     0 ?        I    20:21   0:00  \_ [kworker/u18:3]
root         1  2.8  0.3  11272  7468 ?        Ss   20:12   0:17 /sbin/init
rpc        157  0.0  0.0   2824  1836 ?        Ss   20:12   0:00 /usr/sbin/rpcbind -w -f
root       159  0.6  0.3  33328  7940 ?        Ss   20:12   0:03 /usr/lib/systemd/systemd-journald
root       194  0.0  0.1   8328  3736 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-userdbd
root      4158  1.7  0.1   8616  3396 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root      4164  2.4  0.1   8616  3648 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root      4170  0.0  0.1   8616  3708 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root       204  0.2  0.2  20304  5440 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-udevd
systemd+   241  0.1  0.2   8648  4948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-resolved
systemd+   246  0.0  0.2  17744  4628 ?        Ssl  20:12   0:00 /usr/lib/systemd/systemd-timesyncd
root       315  0.0  0.0   1572  1172 ?        Ss   20:12   0:00 /usr/sbin/atd -f
avahi      316  0.0  0.1   4268  2272 ?        Ss   20:12   0:00 avahi-daemon: running [wandboard-mesa.local]
avahi      345  0.0  0.0   4092  1080 ?        S    20:12   0:00  \_ avahi-daemon: chroot helper
root       318  0.0  0.0   2080  1180 ?        Ss   20:12   0:00 /usr/sbin/crond -n
message+   319  1.3  0.1   4208  2628 ?        Ss   20:12   0:08 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
dhcpcd     320  0.0  0.1   4428  3552 ?        Ss   20:12   0:00 dhcpcd: [manager] [ip4] [ip6]
root       326  0.0  0.0   4660  1952 ?        S    20:12   0:00  \_ dhcpcd: [privileged proxy]
dhcpcd     387  0.0  0.0   4440  1440 ?        S    20:12   0:00  |   \_ dhcpcd: [BPF ARP] end0 192.168.1.72
dhcpcd     327  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [network proxy]
dhcpcd     328  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [control proxy]
root       323  0.0  0.1   6284  3268 ?        Ss   20:12   0:00 /usr/sbin/ofonod -n
root       324  0.2  0.0   1528  1076 ?        Ss   20:12   0:01 /usr/sbin/syslogd -F
root       325  0.6  0.2   8772  4812 ?        Ss   20:12   0:04 /usr/lib/systemd/systemd-logind
systemd+   346  0.1  0.2   9452  5948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-networkd
root       359  0.0  0.1   3704  2752 ?        Ss   20:12   0:00 /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     370  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     371  0.0  0.1   4276  2912 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     372  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     373  0.0  0.1   4468  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     374  0.0  0.1   4276  2832 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
ntp        365  0.0  0.2   7812  4796 ?        Ssl  20:12   0:00 /usr/sbin/ntpd -u ntp -p /run/ntpd.pid -g
root       368  0.0  0.0   1536  1024 tty1     Ss+  20:12   0:00 /sbin/agetty -o -p -- \u --noclear - linux
root       369  0.0  0.0   1564  1148 ttymxc0  Ss+  20:12   0:00 /sbin/agetty -8 -L ttymxc0 115200 linux
polkitd    378  0.3  0.6 109048 14152 ?        Ssl  20:12   0:02 /usr/lib/polkit-1/polkitd --no-debug
weston     381  0.1  0.3  10028  6600 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd --user
weston     383  0.0  0.1  10944  2148 ?        S    20:12   0:00  \_ (sd-pam)
weston    1586  0.0  0.1   3912  2472 ?        Ss   20:15   0:00  \_ /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
weston    1589  0.0  0.1  43120  4004 ?        Ssl  20:15   0:00  \_ /usr/libexec/at-spi-bus-launcher
weston    1594  0.0  0.1   3912  2592 ?        S    20:15   0:00  |   \_ /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 10 --address=unix:path=/run/user/1000/at-spi/bus
weston    1635  0.0  0.2  35636  4440 ?        Sl   20:15   0:00  \_ /usr/libexec/at-spi2-registryd --use-gnome-session
weston    2792  7.7  1.6  93636 33288 tty7     Ssl+ 20:19   0:14 /usr/bin/weston --continue-without-input --modules=systemd-notify.so --debug --debug --debug
weston    2794  0.0  0.1  10900  2200 tty7     S+   20:19   0:00  \_ (sd-pam)
weston    2818  0.1  0.3  13088  7548 ?        Ss   20:19   0:00  \_ /usr/libexec/weston-keyboard
weston    2819  0.5  0.7  21008 15368 ?        Ss   20:19   0:01  \_ /usr/libexec/weston-desktop-shell
root      4151  8.2  0.2   6776  5384 ?        Ss   20:22   0:00 sshd: root@notty
root      4169  233  0.1   4996  2880 ?        Rs   20:22   0:00  \_ ps -auxfww
root      4161 68.8  0.3  10024  6672 ?        Ss   20:22   0:00 /usr/lib/systemd/systemd --user
root      4163  0.0  0.1  10484  2096 ?        S    20:22   0:00  \_ (sd-pam)</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:22:21.713055" elapsed="0.000898"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:22:22.362504" level="INFO">${stdout} = ('1.22', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:22:21.714666" elapsed="0.648139"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:22:22.365294" level="INFO">${value} = 1.22</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:22:22.363609" elapsed="0.001873"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:22:22.365817" elapsed="0.000206"/>
</return>
<msg time="2026-02-19T20:22:22.366805" level="INFO">${cpu_load} = 1.22</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:22:21.714262" elapsed="0.652719"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:22:22.369187" level="INFO">CPU load: 1.22</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:22:22.368257" elapsed="0.001225"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<msg time="2026-02-19T20:22:22.371401" level="FAIL">'1.22 &lt; 1' should be true.</msg>
<arg>${cpu_load} &lt; ${CPU_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="FAIL" start="2026-02-19T20:22:22.370144" elapsed="0.001682">'1.22 &lt; 1' should be true.</status>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<status status="NOT RUN" start="2026-02-19T20:22:22.372696" elapsed="0.000202"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-02-19T20:22:22.373478" elapsed="0.000188"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${MEMORY_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:22:22.374198" elapsed="0.000155"/>
</kw>
<doc>Check if the Device is idle.</doc>
<status status="FAIL" start="2026-02-19T20:22:20.103051" elapsed="2.271851">'1.22 &lt; 1' should be true.</status>
</kw>
<kw name="Check Device Is IDLE" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:22:34.057625" level="INFO">${stdout} = ('USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND\nroot         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]\nroot         3  0.0  0.0      0     0 ?        ...</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>ps -auxfww</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:22:32.377142" elapsed="1.680687"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:22:34.060179" level="INFO">${formatted} = USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S   ...</msg>
<var>${formatted}</var>
<arg>r"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:22:34.058486" elapsed="0.001888"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:22:34.061733" level="INFO">USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [pool_workqueue_release]
root         4  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kvfree_rcu_reclaim]
root         5  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rcu_gp]
root         6  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sync_wq]
root         7  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-slub_flushwq]
root         9  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:0H-mmc_complete]
root        11  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:0-ipv6_addrconf]
root        12  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mm_percpu_wq]
root        13  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_tasks_trace_kthread]
root        14  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/0]
root        15  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_sched]
root        16  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_par_gp_kthread_worker/0]
root        17  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_gp_kthread_worker]
root        18  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/0]
root        19  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/0]
root        20  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/1]
root        21  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/1]
root        22  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/1]
root        23  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:0-events]
root        24  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:0H-events_highpri]
root        25  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/2]
root        26  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/2]
root        27  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/2]
root        28  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:0-events]
root        29  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:0H-kblockd]
root        30  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/3]
root        31  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/3]
root        32  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/3]
root        34  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:0H-events_highpri]
root        35  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:0-nfsiod]
root        36  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:0-events_unbound]
root        39  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kdevtmpfs]
root        40  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-inet_frag_wq]
root        41  0.5  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:1-nfsiod]
root        42  0.5  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:2-rpciod]
root        43  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:3-xprtiod]
root        44  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [oom_reaper]
root        45  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-writeback]
root        46  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kcompactd0]
root        47  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kblockd]
root        49  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:1-events_unbound]
root        50  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:2-rpciod]
root        51  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ata_sff]
root        52  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:1-events]
root        55  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:4-events]
root        57  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [watchdogd]
root        60  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:1H-kblockd]
root        61  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rpciod]
root        62  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-xprtiod]
root        63  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-cfg80211]
root        64  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kswapd0]
root        65  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:1-events_unbound]
root        66  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-nfsiod]
root        67  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-120000.hdmi]
root        69  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:3-cgroup_destroy]
root        70  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cec-dw_hdmi]
root        71  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-dw-hdmi-cec]
root        72  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-130000.gpu]
root        73  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-134000.gpu]
root        74  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-2204000.gpu]
root        76  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc0]
root        78  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc1]
root        79  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc2]
root        80  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc3]
root        81  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [scsi_eh_0]
root        82  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-scsi_tmf_0]
root        83  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ci_otg]
root        84  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:1-rpciod]
root        85  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:2-kvfree_rcu_reclaim]
root        87  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u21:0]
root        88  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u22:0]
root        89  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u23:0]
root        90  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u24:0]
root        91  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u25:0]
root        92  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        93  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/286-mmc0]
root        95  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        96  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/287-mmc1]
root        98  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:2-cgroup_destroy]
root        99  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root       100  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/288-mmc2]
root       101  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2101000.jr-engine]
root       102  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:2-rpciod]
root       104  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [hwrng]
root       105  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2102000.jr-engine]
root       106  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/105-2198000.mmc cd]
root       107  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/30-2190000.mmc cd]
root       108  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mmc_complete]
root       109  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:1H-mmc_complete]
root       113  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:5-events_power_efficient]
root       114  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:6-events]
root       115  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mld]
root       116  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ipv6_addrconf]
root       117  0.3  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u16:1-130000.gpu]
root       119  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/297-imx_thermal]
root       123  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:1H]
root       125  0.3  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u17:4-rpciod]
root       126  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:1H-events_highpri]
root       127  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:4-rpciod]
root       128  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:4-rpciod]
root       129  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:3-nfsiod]
root       131  0.5  0.0      0     0 ?        D    20:12   0:03  \_ [kworker/u17:5+events_unbound]
root       132  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:5-rpciod]
root       248  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/298-vdoa]
root       250  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/301-coda-jpeg]
root       251  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-coda]
root       295  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:5-nfsiod]
root       302  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:6-events_unbound]
root       305  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:6-nfsiod]
root       443  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:6-rpciod]
root      2202  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/u19:7-xprtiod]
root      2292  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/2:1-events]
root      2342  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/3:0-cgroup_destroy]
root      2373  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/1:1-cgroup_destroy]
root      2460  0.0  0.0      0     0 ?        I    20:18   0:00  \_ [kworker/0:0-events]
root      3647  0.0  0.0      0     0 ?        I    20:21   0:00  \_ [kworker/u18:3]
root         1  2.8  0.3  11272  7468 ?        Ss   20:12   0:18 /sbin/init
rpc        157  0.0  0.0   2824  1836 ?        Ss   20:12   0:00 /usr/sbin/rpcbind -w -f
root       159  0.6  0.3  33328  8068 ?        Ss   20:12   0:03 /usr/lib/systemd/systemd-journald
root       194  0.0  0.1   8328  3736 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-userdbd
root      4158  0.1  0.2   8816  4128 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root      4164  0.1  0.2   8816  4392 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root      4170  0.1  0.2   8816  4432 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root       204  0.2  0.2  20304  5440 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-udevd
systemd+   241  0.1  0.2   8648  4948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-resolved
systemd+   246  0.0  0.2  17744  4628 ?        Ssl  20:12   0:00 /usr/lib/systemd/systemd-timesyncd
root       315  0.0  0.0   1572  1172 ?        Ss   20:12   0:00 /usr/sbin/atd -f
avahi      316  0.0  0.1   4268  2272 ?        Ss   20:12   0:00 avahi-daemon: running [wandboard-mesa.local]
avahi      345  0.0  0.0   4092  1080 ?        S    20:12   0:00  \_ avahi-daemon: chroot helper
root       318  0.0  0.0   2080  1180 ?        Ss   20:12   0:00 /usr/sbin/crond -n
message+   319  1.3  0.1   4208  2628 ?        Ss   20:12   0:08 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
dhcpcd     320  0.0  0.1   4428  3552 ?        Ss   20:12   0:00 dhcpcd: [manager] [ip4] [ip6]
root       326  0.0  0.1   4660  2080 ?        S    20:12   0:00  \_ dhcpcd: [privileged proxy]
dhcpcd     387  0.0  0.0   4440  1440 ?        S    20:12   0:00  |   \_ dhcpcd: [BPF ARP] end0 192.168.1.72
dhcpcd     327  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [network proxy]
dhcpcd     328  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [control proxy]
root       323  0.0  0.1   6284  3268 ?        Ss   20:12   0:00 /usr/sbin/ofonod -n
root       324  0.2  0.0   1528  1076 ?        Ss   20:12   0:01 /usr/sbin/syslogd -F
root       325  0.6  0.2   8772  4812 ?        Ss   20:12   0:04 /usr/lib/systemd/systemd-logind
systemd+   346  0.1  0.2   9452  5948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-networkd
root       359  0.0  0.1   3704  2752 ?        Ss   20:12   0:00 /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     370  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     371  0.0  0.1   4276  2912 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     372  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     373  0.0  0.1   4468  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     374  0.0  0.1   4276  2832 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
ntp        365  0.0  0.2   7812  4796 ?        Ssl  20:12   0:00 /usr/sbin/ntpd -u ntp -p /run/ntpd.pid -g
root       368  0.0  0.0   1536  1024 tty1     Ss+  20:12   0:00 /sbin/agetty -o -p -- \u --noclear - linux
root       369  0.0  0.0   1564  1148 ttymxc0  Ss+  20:12   0:00 /sbin/agetty -8 -L ttymxc0 115200 linux
polkitd    378  0.3  0.6 109048 14152 ?        Ssl  20:12   0:02 /usr/lib/polkit-1/polkitd --no-debug
weston     381  0.1  0.3  10028  6600 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd --user
weston     383  0.0  0.1  10944  2148 ?        S    20:12   0:00  \_ (sd-pam)
weston    1586  0.0  0.1   3912  2472 ?        Ss   20:15   0:00  \_ /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
weston    1589  0.0  0.1  43120  4004 ?        Ssl  20:15   0:00  \_ /usr/libexec/at-spi-bus-launcher
weston    1594  0.0  0.1   3912  2592 ?        S    20:15   0:00  |   \_ /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 10 --address=unix:path=/run/user/1000/at-spi/bus
weston    1635  0.0  0.2  35636  4440 ?        Sl   20:15   0:00  \_ /usr/libexec/at-spi2-registryd --use-gnome-session
weston    2792  7.2  1.6  93636 33288 tty7     Ssl+ 20:19   0:14 /usr/bin/weston --continue-without-input --modules=systemd-notify.so --debug --debug --debug
weston    2794  0.0  0.1  10900  2200 tty7     S+   20:19   0:00  \_ (sd-pam)
weston    2818  0.1  0.3  13088  7548 ?        Ss   20:19   0:00  \_ /usr/libexec/weston-keyboard
weston    2819  0.5  0.7  21008 15368 ?        Ss   20:19   0:01  \_ /usr/libexec/weston-desktop-shell
root      4240  8.9  0.2   6776  5576 ?        Ss   20:22   0:00 sshd: root@notty
root      4274  150  0.1   4996  2792 ?        Rs   20:22   0:00  \_ ps -auxfww
root      4264 64.6  0.3  10028  6684 ?        Ss   20:22   0:00 /usr/lib/systemd/systemd --user
root      4269  0.0  0.1  10484  2192 ?        S    20:22   0:00  \_ (sd-pam)</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:22:34.061087" elapsed="0.001048"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:22:34.660062" level="INFO">${stdout} = ('1.03', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:22:34.062841" elapsed="0.597375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:22:34.661902" level="INFO">${value} = 1.03</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:22:34.660773" elapsed="0.001253"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:22:34.662251" elapsed="0.000161"/>
</return>
<msg time="2026-02-19T20:22:34.662944" level="INFO">${cpu_load} = 1.03</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:22:34.062439" elapsed="0.600624"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:22:34.664255" level="INFO">CPU load: 1.03</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:22:34.663502" elapsed="0.001024"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<msg time="2026-02-19T20:22:34.665290" level="FAIL">'1.03 &lt; 1' should be true.</msg>
<arg>${cpu_load} &lt; ${CPU_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="FAIL" start="2026-02-19T20:22:34.664887" elapsed="0.000534">'1.03 &lt; 1' should be true.</status>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<status status="NOT RUN" start="2026-02-19T20:22:34.665746" elapsed="0.000069"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-02-19T20:22:34.666009" elapsed="0.000055"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${MEMORY_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:22:34.666244" elapsed="0.000052"/>
</kw>
<doc>Check if the Device is idle.</doc>
<status status="FAIL" start="2026-02-19T20:22:32.376157" elapsed="2.290313">'1.03 &lt; 1' should be true.</status>
</kw>
<kw name="Check Device Is IDLE" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:22:46.335797" level="INFO">${stdout} = ('USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND\nroot         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]\nroot         3  0.0  0.0      0     0 ?        ...</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>ps -auxfww</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:22:44.668443" elapsed="1.667582"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:22:46.338115" level="INFO">${formatted} = USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S   ...</msg>
<var>${formatted}</var>
<arg>r"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:22:46.336745" elapsed="0.001435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:22:46.338669" level="INFO">USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [pool_workqueue_release]
root         4  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kvfree_rcu_reclaim]
root         5  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rcu_gp]
root         6  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sync_wq]
root         7  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-slub_flushwq]
root         9  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:0H-mmc_complete]
root        11  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:0-ipv6_addrconf]
root        12  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mm_percpu_wq]
root        13  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_tasks_trace_kthread]
root        14  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/0]
root        15  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_sched]
root        16  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_par_gp_kthread_worker/0]
root        17  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_gp_kthread_worker]
root        18  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/0]
root        19  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/0]
root        20  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/1]
root        21  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/1]
root        22  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/1]
root        23  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:0-events]
root        24  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:0H-events_highpri]
root        25  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/2]
root        26  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/2]
root        27  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/2]
root        28  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:0-rcu_gp]
root        29  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:0H-kblockd]
root        30  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/3]
root        31  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/3]
root        32  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/3]
root        34  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:0H-events_highpri]
root        35  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:0-nfsiod]
root        36  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:0-events_unbound]
root        39  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kdevtmpfs]
root        40  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-inet_frag_wq]
root        41  0.5  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:1-nfsiod]
root        42  0.5  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:2-rpciod]
root        43  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:3-xprtiod]
root        44  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [oom_reaper]
root        45  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-writeback]
root        46  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kcompactd0]
root        47  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kblockd]
root        49  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:1-xprtiod]
root        50  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:2-rpciod]
root        51  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ata_sff]
root        52  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:1-events]
root        57  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [watchdogd]
root        60  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:1H-kblockd]
root        61  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rpciod]
root        62  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-xprtiod]
root        63  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-cfg80211]
root        64  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kswapd0]
root        65  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:1-events_unbound]
root        66  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-nfsiod]
root        67  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-120000.hdmi]
root        70  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cec-dw_hdmi]
root        71  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-dw-hdmi-cec]
root        72  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-130000.gpu]
root        73  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-134000.gpu]
root        74  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-2204000.gpu]
root        76  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc0]
root        78  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc1]
root        79  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc2]
root        80  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc3]
root        81  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [scsi_eh_0]
root        82  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-scsi_tmf_0]
root        83  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ci_otg]
root        84  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:1-rpciod]
root        85  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:2-events_unbound]
root        87  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u21:0]
root        88  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u22:0]
root        89  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u23:0]
root        90  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u24:0]
root        91  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u25:0]
root        92  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        93  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/286-mmc0]
root        95  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        96  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/287-mmc1]
root        98  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:2-cgroup_destroy]
root        99  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root       100  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/288-mmc2]
root       101  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2101000.jr-engine]
root       102  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:2-rpciod]
root       104  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [hwrng]
root       105  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2102000.jr-engine]
root       106  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/105-2198000.mmc cd]
root       107  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/30-2190000.mmc cd]
root       108  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mmc_complete]
root       109  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:1H-mmc_complete]
root       113  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:5-events_power_efficient]
root       114  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:6-events]
root       115  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mld]
root       116  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ipv6_addrconf]
root       117  0.3  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u16:1-130000.gpu]
root       119  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/297-imx_thermal]
root       123  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:1H]
root       125  0.3  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u17:4-rpciod]
root       126  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:1H-events_highpri]
root       127  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:4-rpciod]
root       128  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:4-rpciod]
root       129  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:3-nfsiod]
root       131  0.5  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:5-xprtiod]
root       132  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:5-rpciod]
root       248  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/298-vdoa]
root       250  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/301-coda-jpeg]
root       251  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-coda]
root       295  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:5-nfsiod]
root       302  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:6-events_unbound]
root       305  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u17:6-nfsiod]
root       443  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:6-rpciod]
root      2202  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/u19:7-kvfree_rcu_reclaim]
root      2292  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/2:1-cgroup_destroy]
root      2342  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/3:0-events]
root      2373  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/1:1-cgroup_destroy]
root      2460  0.0  0.0      0     0 ?        I    20:18   0:00  \_ [kworker/0:0-pm]
root      3647  0.0  0.0      0     0 ?        I    20:21   0:00  \_ [kworker/u18:3]
root      4310  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/2:2-events]
root         1  2.8  0.3  11272  7468 ?        Ss   20:12   0:18 /sbin/init
rpc        157  0.0  0.0   2824  1836 ?        Ss   20:12   0:00 /usr/sbin/rpcbind -w -f
root       159  0.6  0.3  33328  8068 ?        Ss   20:12   0:03 /usr/lib/systemd/systemd-journald
root       194  0.0  0.1   8328  3736 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-userdbd
root      4158  0.1  0.2   8816  4128 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root      4164  0.1  0.2   8816  4392 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root      4170  0.1  0.2   8816  4432 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root       204  0.2  0.2  20304  5440 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-udevd
systemd+   241  0.1  0.2   8648  4948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-resolved
systemd+   246  0.0  0.2  17744  4628 ?        Ssl  20:12   0:00 /usr/lib/systemd/systemd-timesyncd
root       315  0.0  0.0   1572  1172 ?        Ss   20:12   0:00 /usr/sbin/atd -f
avahi      316  0.0  0.1   4268  2272 ?        Ss   20:12   0:00 avahi-daemon: running [wandboard-mesa.local]
avahi      345  0.0  0.0   4092  1080 ?        S    20:12   0:00  \_ avahi-daemon: chroot helper
root       318  0.0  0.0   2080  1180 ?        Ss   20:12   0:00 /usr/sbin/crond -n
message+   319  1.3  0.1   4208  2628 ?        Ss   20:12   0:08 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
dhcpcd     320  0.0  0.1   4428  3552 ?        Ss   20:12   0:00 dhcpcd: [manager] [ip4] [ip6]
root       326  0.0  0.1   4660  2080 ?        S    20:12   0:00  \_ dhcpcd: [privileged proxy]
dhcpcd     387  0.0  0.0   4440  1440 ?        S    20:12   0:00  |   \_ dhcpcd: [BPF ARP] end0 192.168.1.72
dhcpcd     327  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [network proxy]
dhcpcd     328  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [control proxy]
root       323  0.0  0.1   6284  3268 ?        Ss   20:12   0:00 /usr/sbin/ofonod -n
root       324  0.2  0.0   1528  1076 ?        Ss   20:12   0:01 /usr/sbin/syslogd -F
root       325  0.6  0.2   8772  4812 ?        Ss   20:12   0:04 /usr/lib/systemd/systemd-logind
systemd+   346  0.1  0.2   9452  5948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-networkd
root       359  0.0  0.1   3704  2752 ?        Ss   20:12   0:00 /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     370  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     371  0.0  0.1   4276  2912 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     372  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     373  0.0  0.1   4468  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     374  0.0  0.1   4276  2832 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
ntp        365  0.0  0.2   7812  4796 ?        Ssl  20:12   0:00 /usr/sbin/ntpd -u ntp -p /run/ntpd.pid -g
root       368  0.0  0.0   1536  1024 tty1     Ss+  20:12   0:00 /sbin/agetty -o -p -- \u --noclear - linux
root       369  0.0  0.0   1564  1148 ttymxc0  Ss+  20:12   0:00 /sbin/agetty -8 -L ttymxc0 115200 linux
polkitd    378  0.3  0.6 109048 14152 ?        Ssl  20:12   0:02 /usr/lib/polkit-1/polkitd --no-debug
weston     381  0.1  0.3  10028  6600 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd --user
weston     383  0.0  0.1  10944  2148 ?        S    20:12   0:00  \_ (sd-pam)
weston    1586  0.0  0.1   3912  2472 ?        Ss   20:15   0:00  \_ /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
weston    1589  0.0  0.1  43120  4004 ?        Ssl  20:15   0:00  \_ /usr/libexec/at-spi-bus-launcher
weston    1594  0.0  0.1   3912  2592 ?        S    20:15   0:00  |   \_ /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 10 --address=unix:path=/run/user/1000/at-spi/bus
weston    1635  0.0  0.2  35636  4440 ?        Sl   20:15   0:00  \_ /usr/libexec/at-spi2-registryd --use-gnome-session
weston    2792  6.8  1.6  93636 33288 tty7     Ssl+ 20:19   0:14 /usr/bin/weston --continue-without-input --modules=systemd-notify.so --debug --debug --debug
weston    2794  0.0  0.1  10900  2200 tty7     S+   20:19   0:00  \_ (sd-pam)
weston    2818  0.1  0.3  13088  7548 ?        Ss   20:19   0:00  \_ /usr/libexec/weston-keyboard
weston    2819  0.5  0.7  21008 15368 ?        Ss   20:19   0:01  \_ /usr/libexec/weston-desktop-shell
root      4305  9.2  0.2   6776  5536 ?        Ss   20:22   0:00 sshd: root@notty
root      4340  200  0.1   4996  2788 ?        Rs   20:22   0:00  \_ ps -auxfww
root      4315 66.3  0.3  10028  6684 ?        Ss   20:22   0:00 /usr/lib/systemd/systemd --user
root      4317  0.0  0.1  10484  2064 ?        S    20:22   0:00  \_ (sd-pam)</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:22:46.338407" elapsed="0.000664"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:22:46.879995" level="INFO">${stdout} = ('0.87', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:22:46.339781" elapsed="0.540408"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:22:46.882369" level="INFO">${value} = 0.87</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:22:46.880872" elapsed="0.001711"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:22:46.882918" elapsed="0.000227"/>
</return>
<msg time="2026-02-19T20:22:46.883813" level="INFO">${cpu_load} = 0.87</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:22:46.339371" elapsed="0.544615"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:22:46.885384" level="INFO">CPU load: 0.87</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:22:46.884674" elapsed="0.000976"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${cpu_load} &lt; ${CPU_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:22:46.886180" elapsed="0.000943"/>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:22:47.519945" level="INFO">${stdout} = ('188', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>free -m | grep Mem | awk '{print $3}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:22:46.888873" elapsed="0.631268"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:22:47.522466" level="INFO">${value} = 188.0</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:22:47.520943" elapsed="0.001751"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:22:47.523046" elapsed="0.000209"/>
</return>
<msg time="2026-02-19T20:22:47.523954" level="INFO">${memory_used} = 188.0</msg>
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:22:46.887890" elapsed="0.636215"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:22:47.525147" level="INFO">Memory used: 188.0</msg>
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:22:47.524721" elapsed="0.000520"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${MEMORY_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:22:47.525449" elapsed="0.000381"/>
</kw>
<doc>Check if the Device is idle.</doc>
<status status="PASS" start="2026-02-19T20:22:44.667442" elapsed="2.858525"/>
</kw>
<arg>18x</arg>
<arg>10s</arg>
<arg>Check Device Is IDLE</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:21:56.551118" elapsed="50.974995"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Webdriver Remote Start Maximized" owner="keywords_common">
<variable name="${PAGE}">
<msg time="2026-02-19T20:22:47.527375" level="INFO">${PAGE} = http://192.168.1.246:8008/robot_framework/html/home-page.html</msg>
<var>http://%{TEST_WEBSERVER_IP}:%{TEST_WEBSERVER_PORT}/robot_framework/html/home-page.html</var>
<status status="PASS" start="2026-02-19T20:22:47.527140" elapsed="0.000298"/>
</variable>
<kw name="Webdriver Remote Start" owner="keywords_common">
<kw name="Ssh Webdriver Remote Stop" owner="TestUtils">
<msg time="2026-02-19T20:22:48.302960" level="INFO">RUN: Killing all 'WPEWebDriver' related processes ...</msg>
<arg>%{TEST_BOARD_IP}</arg>
<status status="PASS" start="2026-02-19T20:22:47.528160" elapsed="0.775129"/>
</kw>
<kw name="Ssh Force Kill" owner="TestUtils">
<msg time="2026-02-19T20:22:49.050867" level="INFO">RUN: Killing all 'wpe-simple-launcher' related processes ...</msg>
<arg>%{TEST_BOARD_IP}</arg>
<arg>wpe-simple-launcher</arg>
<doc>Force kill all related process.</doc>
<status status="PASS" start="2026-02-19T20:22:48.303933" elapsed="0.747262"/>
</kw>
<kw name="Ssh Webdriver Remote Start" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>%{TEST_BOARD_WEBDRIVER_PORT}</arg>
<status status="PASS" start="2026-02-19T20:22:49.052023" elapsed="0.008211"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-02-19T20:22:54.063850" level="INFO">Slept 5 seconds.</msg>
<arg>5</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-02-19T20:22:49.062012" elapsed="5.002413"/>
</kw>
<kw name="Create WPEWebKitOptions" owner="keywords_common">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:22:54.070521" level="INFO">${wpe_options} = &lt;selenium.webdriver.wpewebkit.options.Options object at 0x72978e7e1610&gt;</msg>
<var>${wpe_options}</var>
<arg>sys.modules['selenium.webdriver'].WPEWebKitOptions()</arg>
<arg>sys, selenium.webdriver</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:22:54.069486" elapsed="0.001116"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-02-19T20:22:54.071460" level="INFO">${wpe_options.binary_location} = /usr/bin/wpe-exported-wayland</msg>
<var>${wpe_options.binary_location}</var>
<arg>${binary_path}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-02-19T20:22:54.070934" elapsed="0.000587"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Call Method" owner="BuiltIn">
<arg>${wpe_options}</arg>
<arg>add_argument</arg>
<arg>${param}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-02-19T20:22:54.072544" elapsed="0.000538"/>
</kw>
<var name="${param}">--automation</var>
<status status="PASS" start="2026-02-19T20:22:54.072264" elapsed="0.000923"/>
</iter>
<iter>
<kw name="Call Method" owner="BuiltIn">
<arg>${wpe_options}</arg>
<arg>add_argument</arg>
<arg>${param}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-02-19T20:22:54.073596" elapsed="0.000434"/>
</kw>
<var name="${param}">--maximized</var>
<status status="PASS" start="2026-02-19T20:22:54.073398" elapsed="0.000734"/>
</iter>
<var>${param}</var>
<value>@{other_params}</value>
<status status="PASS" start="2026-02-19T20:22:54.071780" elapsed="0.002443"/>
</for>
<kw name="Call Method" owner="BuiltIn">
<arg>${wpe_options}</arg>
<arg>set_capability</arg>
<arg>browserName</arg>
<arg>${binary_name}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-02-19T20:22:54.074453" elapsed="0.000415"/>
</kw>
<return>
<value>${wpe_options}</value>
<status status="PASS" start="2026-02-19T20:22:54.075019" elapsed="0.000221"/>
</return>
<msg time="2026-02-19T20:22:54.075562" level="INFO">${wpe_options} = &lt;selenium.webdriver.wpewebkit.options.Options object at 0x72978e7e1610&gt;</msg>
<var>${wpe_options}</var>
<arg>wpe-simple-launcher</arg>
<arg>/usr/bin/wpe-exported-wayland</arg>
<arg>--automation</arg>
<arg>@{other_params}</arg>
<doc>Creates and configures WPEWebKit options for WebDriver session.</doc>
<status status="PASS" start="2026-02-19T20:22:54.066951" elapsed="0.008681"/>
</kw>
<kw name="Create Webdriver" owner="SeleniumLibrary">
<msg time="2026-02-19T20:22:54.077167" level="INFO">Creating an instance of the Remote WebDriver.</msg>
<arg>Remote</arg>
<arg>command_executor=%{TEST_BOARD_IP}:%{TEST_BOARD_WEBDRIVER_PORT}</arg>
<arg>options=${wpe_options}</arg>
<doc>Creates an instance of Selenium WebDriver.</doc>
<status status="PASS" start="2026-02-19T20:22:54.076360" elapsed="1.009134"/>
</kw>
<arg>--maximized</arg>
<doc>Starts WebDriver session on remote test board with WPE launcher.</doc>
<timeout value="2 minutes"/>
<status status="PASS" start="2026-02-19T20:22:47.527741" elapsed="7.558269"/>
</kw>
<kw name="Go To" owner="SeleniumLibrary">
<msg time="2026-02-19T20:22:55.087517" level="INFO">Opening url 'http://192.168.1.246:8008/robot_framework/html/home-page.html'</msg>
<arg>${PAGE}</arg>
<doc>Navigates the current browser window to the provided ``url``.</doc>
<status status="PASS" start="2026-02-19T20:22:55.086990" elapsed="0.839835"/>
</kw>
<kw name="Wait Until Page Contains" owner="SeleniumLibrary">
<arg>Home Page</arg>
<arg>timeout=10s</arg>
<doc>Waits until ``text`` appears on the current page.</doc>
<status status="PASS" start="2026-02-19T20:22:55.927671" elapsed="0.207536"/>
</kw>
<kw name="Execute Javascript" owner="SeleniumLibrary">
<msg time="2026-02-19T20:22:56.138855" level="INFO">Executing JavaScript:
return window.innerWidth;
Without any arguments.</msg>
<msg time="2026-02-19T20:22:56.155413" level="INFO">${inner_width} = 1920</msg>
<var>${inner_width}</var>
<arg>return window.innerWidth;</arg>
<doc>Executes the given JavaScript code with possible arguments.</doc>
<status status="PASS" start="2026-02-19T20:22:56.136047" elapsed="0.019561"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${inner_width} == 1920</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:22:56.156271" elapsed="0.001553"/>
</kw>
<kw name="Execute Javascript" owner="SeleniumLibrary">
<msg time="2026-02-19T20:22:56.162534" level="INFO">Executing JavaScript:
return window.innerHeight;
Without any arguments.</msg>
<msg time="2026-02-19T20:22:56.179743" level="INFO">${inner_height} = 1048</msg>
<var>${inner_height}</var>
<arg>return window.innerHeight;</arg>
<doc>Executes the given JavaScript code with possible arguments.</doc>
<status status="PASS" start="2026-02-19T20:22:56.158464" elapsed="0.021448"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${inner_height} == 1048</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:22:56.180528" elapsed="0.001405"/>
</kw>
<doc>Starts WebDriver in maximized mode and verifies window dimensions.</doc>
<timeout value="2 minutes"/>
<status status="PASS" start="2026-02-19T20:22:47.526806" elapsed="8.655558"/>
</kw>
<arg>20x</arg>
<arg>1000ms</arg>
<arg>Webdriver Remote Start Maximized</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:22:47.526337" elapsed="8.656634"/>
</kw>
<status status="PASS" start="2026-02-19T20:21:56.550562" elapsed="59.632899"/>
</kw>
<test id="s1-s8-t1" name="Verify Full HD 30 FPS" line="12">
<variable name="${PAGE}">
<msg time="2026-02-19T20:23:51.951914" level="INFO">${PAGE} = http://192.168.1.246:8008/robot_framework/html/video_fps.html</msg>
<var>http://%{TEST_WEBSERVER_IP}:%{TEST_WEBSERVER_PORT}/robot_framework/html/video_fps.html</var>
<status status="PASS" start="2026-02-19T20:23:51.951543" elapsed="0.000473"/>
</variable>
<kw name="Go To" owner="SeleniumLibrary">
<msg time="2026-02-19T20:23:51.953036" level="INFO">Opening url 'http://192.168.1.246:8008/robot_framework/html/video_fps.html'</msg>
<arg>${PAGE}</arg>
<doc>Navigates the current browser window to the provided ``url``.</doc>
<status status="PASS" start="2026-02-19T20:23:51.952535" elapsed="2.429308"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-02-19T20:24:14.384366" level="INFO">Slept 20 seconds.</msg>
<arg>20 seconds</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-02-19T20:23:54.383035" elapsed="20.001845"/>
</kw>
<kw name="Get Machine Expectation" owner="TestUtils">
<msg time="2026-02-19T20:24:14.388596" level="INFO">${VIDEO_30_FPS_THRESHOLD_FPS} = 28</msg>
<var>${VIDEO_30_FPS_THRESHOLD_FPS}</var>
<arg>id=video-30-fps-threshold-fps</arg>
<arg>machine=%{TEST_MACHINE}</arg>
<arg>wpeversion=%{TEST_WPEWEBKIT_VERSION}</arg>
<status status="PASS" start="2026-02-19T20:24:14.385829" elapsed="0.002938"/>
</kw>
<kw name="Get Machine Expectation" owner="TestUtils">
<msg time="2026-02-19T20:24:14.390783" level="INFO">${VIDEO_30_FPS_THRESHOLD_CPU_LOAD} = 3</msg>
<var>${VIDEO_30_FPS_THRESHOLD_CPU_LOAD}</var>
<arg>id=video-30-fps-threshold-cpu-load</arg>
<arg>machine=%{TEST_MACHINE}</arg>
<arg>wpeversion=%{TEST_WPEWEBKIT_VERSION}</arg>
<status status="PASS" start="2026-02-19T20:24:14.389641" elapsed="0.001207"/>
</kw>
<kw name="Get Machine Expectation" owner="TestUtils">
<msg time="2026-02-19T20:24:14.392070" level="INFO">${VIDEO_30_FPS_THRESHOLD_MEMORY_USED} = 850</msg>
<var>${VIDEO_30_FPS_THRESHOLD_MEMORY_USED}</var>
<arg>id=video-30-fps-threshold-memory-used</arg>
<arg>machine=%{TEST_MACHINE}</arg>
<arg>wpeversion=%{TEST_WPEWEBKIT_VERSION}</arg>
<status status="PASS" start="2026-02-19T20:24:14.391162" elapsed="0.000972"/>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:24:14.939892" level="INFO">${stdout} = ('379', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>free -m | grep Mem | awk '{print $3}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:24:14.393123" elapsed="0.546970"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:24:14.942306" level="INFO">${value} = 379.0</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:24:14.940829" elapsed="0.001636"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:24:14.942794" elapsed="0.000209"/>
</return>
<msg time="2026-02-19T20:24:14.943731" level="INFO">${memory_used} = 379.0</msg>
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:24:14.392620" elapsed="0.551265"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:24:14.945698" level="INFO">Memory used: 379.0</msg>
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:24:14.944796" elapsed="0.001222"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:24:15.532818" level="INFO">${stdout} = ('1.24', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:24:14.948496" elapsed="0.584514"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:24:15.535128" level="INFO">${value} = 1.24</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:24:15.533681" elapsed="0.001604"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:24:15.535659" elapsed="0.000218"/>
</return>
<msg time="2026-02-19T20:24:15.536538" level="INFO">${cpu_load} = 1.24</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:24:14.947190" elapsed="0.589525"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:24:15.537817" level="INFO">CPU load: 1.24</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:24:15.537418" elapsed="0.000521"/>
</kw>
<kw name="Get FPS Value">
<kw name="Get Text" owner="SeleniumLibrary">
<msg time="2026-02-19T20:24:15.586083" level="INFO">${fps_text} = FPS: 0</msg>
<var>${fps_text}</var>
<arg>id=fps</arg>
<doc>Returns the text value of the element identified by ``locator``.</doc>
<status status="PASS" start="2026-02-19T20:24:15.538830" elapsed="0.047448"/>
</kw>
<kw name="Convert To Number" owner="BuiltIn">
<msg time="2026-02-19T20:24:15.589643" level="INFO">${fps} = 0.0</msg>
<var>${fps}</var>
<arg>${fps_text.split(":")[1].strip()}</arg>
<doc>Converts the given item to a floating point number.</doc>
<status status="PASS" start="2026-02-19T20:24:15.586936" elapsed="0.002875"/>
</kw>
<return>
<value>${fps}</value>
<status status="PASS" start="2026-02-19T20:24:15.590110" elapsed="0.000206"/>
</return>
<msg time="2026-02-19T20:24:15.591257" level="INFO">${fps} = 0.0</msg>
<var>${fps}</var>
<status status="PASS" start="2026-02-19T20:24:15.538352" elapsed="0.053055"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:24:15.593279" level="INFO">FPS value: 0.0</msg>
<arg>FPS value: ${fps}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:24:15.592347" elapsed="0.001279"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:24:16.776515" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-35.png"&gt;&lt;img src="selenium-screenshot-35.png" width="800px"&gt;&lt;/a&gt;</msg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:24:15.594678" elapsed="1.182559"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<msg time="2026-02-19T20:24:16.780187" level="FAIL">'0.0 &gt; 28' should be true.</msg>
<arg>${fps} &gt; ${VIDEO_30_FPS_THRESHOLD_FPS}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="FAIL" start="2026-02-19T20:24:16.778454" elapsed="0.001877">'0.0 &gt; 28' should be true.</status>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${cpu_load} &lt; ${VIDEO_30_FPS_THRESHOLD_CPU_LOAD}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:24:16.780699" elapsed="0.000066"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${VIDEO_30_FPS_THRESHOLD_MEMORY_USED}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:24:16.781050" elapsed="0.000061"/>
</kw>
<timeout value="5 minutes"/>
<status status="FAIL" start="2026-02-19T20:23:51.948692" elapsed="24.832774">'0.0 &gt; 28' should be true.
[RETRY] FAIL on 2. retry.</status>
</test>
<kw name="Webdriver Remote Stop" owner="keywords_common" type="TEARDOWN">
<kw name="Close All Browsers" owner="SeleniumLibrary">
<doc>Closes all open browsers and resets the browser cache.</doc>
<status status="PASS" start="2026-02-19T20:24:16.783484" elapsed="0.052610"/>
</kw>
<kw name="Ssh Webdriver Remote Stop" owner="TestUtils">
<msg time="2026-02-19T20:24:17.687787" level="INFO">RUN: Killing all 'WPEWebDriver' related processes ...</msg>
<arg>%{TEST_BOARD_IP}</arg>
<status status="PASS" start="2026-02-19T20:24:16.836755" elapsed="0.851392"/>
</kw>
<kw name="Ssh Force Kill" owner="TestUtils">
<msg time="2026-02-19T20:24:18.541282" level="INFO">RUN: Killing all 'wpe-simple-launcher' related processes ...</msg>
<arg>%{TEST_BOARD_IP}</arg>
<arg>wpe-simple-launcher</arg>
<doc>Force kill all related process.</doc>
<status status="PASS" start="2026-02-19T20:24:17.688809" elapsed="0.852869"/>
</kw>
<doc>Stops WebDriver session and cleans up browser processes.</doc>
<timeout value="2 minutes"/>
<status status="PASS" start="2026-02-19T20:24:16.782861" elapsed="1.759270"/>
</kw>
<status status="FAIL" start="2026-02-19T20:21:56.466821" elapsed="142.075641"/>
</suite>
<suite id="s1-s9" name="Tests 017 Canvas" source="/app/tests_results/20260219_201245_robot_/../../robot_framework/tests/tests_017_canvas.robot">
<kw name="Wait For Webdriver Remote Start Maximized" type="SETUP">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Device Is IDLE" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:24:19.214257" level="INFO">${stdout} = ('USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND\nroot         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]\nroot         3  0.0  0.0      0     0 ?        ...</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>ps -auxfww</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:24:18.560992" elapsed="0.653515"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:24:19.216971" level="INFO">${formatted} = USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S   ...</msg>
<var>${formatted}</var>
<arg>r"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:24:19.215293" elapsed="0.001873"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:24:19.218284" level="INFO">USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [pool_workqueue_release]
root         4  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kvfree_rcu_reclaim]
root         5  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rcu_gp]
root         6  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sync_wq]
root         7  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-slub_flushwq]
root         9  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:0H-mmc_complete]
root        11  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:0-ipv6_addrconf]
root        12  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mm_percpu_wq]
root        13  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_tasks_trace_kthread]
root        14  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/0]
root        15  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_sched]
root        16  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_par_gp_kthread_worker/0]
root        17  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_gp_kthread_worker]
root        18  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/0]
root        19  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/0]
root        20  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/1]
root        21  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/1]
root        22  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/1]
root        23  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:0-events]
root        24  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:0H-events_highpri]
root        25  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/2]
root        26  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/2]
root        27  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/2]
root        28  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:0-rcu_gp]
root        29  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:0H-kblockd]
root        30  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/3]
root        31  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/3]
root        32  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/3]
root        34  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:0H-events_highpri]
root        35  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:0-xprtiod]
root        36  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:0-kvfree_rcu_reclaim]
root        39  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kdevtmpfs]
root        40  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-inet_frag_wq]
root        41  0.5  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:1-rpciod]
root        43  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:3-nfsiod]
root        44  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [oom_reaper]
root        45  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-writeback]
root        46  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kcompactd0]
root        47  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kblockd]
root        49  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:1-rpciod]
root        50  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:2-rpciod]
root        51  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ata_sff]
root        52  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:1-events]
root        57  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [watchdogd]
root        60  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:1H-kblockd]
root        61  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rpciod]
root        62  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-xprtiod]
root        63  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-cfg80211]
root        64  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kswapd0]
root        65  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:1-rpciod]
root        66  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-nfsiod]
root        67  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-120000.hdmi]
root        70  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cec-dw_hdmi]
root        71  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-dw-hdmi-cec]
root        72  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-130000.gpu]
root        73  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-134000.gpu]
root        74  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-2204000.gpu]
root        76  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc0]
root        78  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc1]
root        79  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc2]
root        80  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc3]
root        81  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [scsi_eh_0]
root        82  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-scsi_tmf_0]
root        83  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ci_otg]
root        84  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:1-rpciod]
root        85  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:2-rpciod]
root        87  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u21:0]
root        88  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u22:0]
root        89  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u23:0]
root        90  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u24:0]
root        91  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u25:0]
root        92  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        93  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/286-mmc0]
root        95  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        96  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/287-mmc1]
root        99  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root       100  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/288-mmc2]
root       101  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2101000.jr-engine]
root       102  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:2-rpciod]
root       104  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [hwrng]
root       105  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2102000.jr-engine]
root       106  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/105-2198000.mmc cd]
root       107  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/30-2190000.mmc cd]
root       108  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mmc_complete]
root       109  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:1H-mmc_complete]
root       113  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:5-events]
root       115  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mld]
root       116  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ipv6_addrconf]
root       117  0.2  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u16:1-130000.gpu]
root       119  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/297-imx_thermal]
root       123  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:1H]
root       125  0.4  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:4-nfsiod]
root       126  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:1H-events_highpri]
root       127  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:4-rpciod]
root       128  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:4-rpciod]
root       129  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:3-rpciod]
root       131  0.5  0.0      0     0 ?        I    20:12   0:04  \_ [kworker/u17:5-rpciod]
root       132  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:5-rpciod]
root       248  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/298-vdoa]
root       250  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/301-coda-jpeg]
root       251  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-coda]
root       295  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:5-rpciod]
root       302  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:6-nfsiod]
root       305  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:6-kvfree_rcu_reclaim]
root       443  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:6-rpciod]
root      2202  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/u19:7-rpciod]
root      2292  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/2:1-events_power_efficient]
root      2342  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/3:0-events]
root      2373  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/1:1-mm_percpu_wq]
root      2460  0.0  0.0      0     0 ?        I    20:18   0:00  \_ [kworker/0:0-events_power_efficient]
root      3647  0.0  0.0      0     0 ?        I    20:21   0:00  \_ [kworker/u18:3-events_unbound]
root      4310  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/2:2-events]
root      4490  0.1  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:0-events_unbound]
root      4492  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u20:0-rpciod]
root      4493  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:3-rpciod]
root      4494  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:5-nfsiod]
root      4595  0.0  0.0      0     0 ?        I    20:23   0:00  \_ [kworker/0:1-cgroup_destroy]
root      4607  0.0  0.0      0     0 ?        I    20:23   0:00  \_ [kworker/3:2-cgroup_destroy]
root         1  2.6  0.3  11272  7468 ?        Ss   20:12   0:19 /sbin/init
rpc        157  0.0  0.0   2824  1836 ?        Ss   20:12   0:00 /usr/sbin/rpcbind -w -f
root       159  0.5  0.3  33328  7848 ?        Ss   20:12   0:04 /usr/lib/systemd/systemd-journald
root       194  0.0  0.1   8328  3736 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-userdbd
root      4158  0.0  0.2   8816  4128 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root      4164  0.0  0.2   8816  4392 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root      4170  0.0  0.2   8816  4432 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root       204  0.2  0.2  20304  5440 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-udevd
systemd+   241  0.1  0.2   8648  4948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-resolved
systemd+   246  0.0  0.2  17744  4628 ?        Ssl  20:12   0:00 /usr/lib/systemd/systemd-timesyncd
root       315  0.0  0.0   1572  1172 ?        Ss   20:12   0:00 /usr/sbin/atd -f
avahi      316  0.0  0.1   4268  2272 ?        Ss   20:12   0:00 avahi-daemon: running [wandboard-mesa.local]
avahi      345  0.0  0.0   4092  1080 ?        S    20:12   0:00  \_ avahi-daemon: chroot helper
root       318  0.0  0.0   2080  1180 ?        Ss   20:12   0:00 /usr/sbin/crond -n
message+   319  1.3  0.1   4208  2628 ?        Ss   20:12   0:09 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
dhcpcd     320  0.0  0.1   4428  3552 ?        Ss   20:12   0:00 dhcpcd: [manager] [ip4] [ip6]
root       326  0.0  0.1   4660  2080 ?        S    20:12   0:00  \_ dhcpcd: [privileged proxy]
dhcpcd     387  0.0  0.0   4440  1440 ?        S    20:12   0:00  |   \_ dhcpcd: [BPF ARP] end0 192.168.1.72
dhcpcd     327  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [network proxy]
dhcpcd     328  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [control proxy]
root       323  0.0  0.1   6284  3268 ?        Ss   20:12   0:00 /usr/sbin/ofonod -n
root       324  0.1  0.0   1528  1076 ?        Ss   20:12   0:01 /usr/sbin/syslogd -F
root       325  0.6  0.2   8772  4812 ?        Ss   20:12   0:04 /usr/lib/systemd/systemd-logind
systemd+   346  0.0  0.2   9452  5948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-networkd
root       359  0.0  0.1   3704  2752 ?        Ss   20:12   0:00 /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     370  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     371  0.0  0.1   4276  2912 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     372  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     373  0.0  0.1   4468  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     374  0.0  0.1   4276  2832 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
ntp        365  0.0  0.2   7812  4796 ?        Ssl  20:12   0:00 /usr/sbin/ntpd -u ntp -p /run/ntpd.pid -g
root       368  0.0  0.0   1536  1024 tty1     Ss+  20:12   0:00 /sbin/agetty -o -p -- \u --noclear - linux
root       369  0.0  0.0   1564  1148 ttymxc0  Ss+  20:12   0:00 /sbin/agetty -8 -L ttymxc0 115200 linux
polkitd    378  0.3  0.6 109048 14152 ?        Ssl  20:12   0:02 /usr/lib/polkit-1/polkitd --no-debug
weston     381  0.1  0.3  10028  6600 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd --user
weston     383  0.0  0.1  10944  2148 ?        S    20:12   0:00  \_ (sd-pam)
weston    1586  0.0  0.1   3912  2472 ?        Ss   20:15   0:00  \_ /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
weston    1589  0.0  0.1  43120  4004 ?        Ssl  20:15   0:00  \_ /usr/libexec/at-spi-bus-launcher
weston    1594  0.0  0.1   3912  2592 ?        S    20:15   0:00  |   \_ /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 10 --address=unix:path=/run/user/1000/at-spi/bus
weston    1635  0.0  0.2  35636  4440 ?        Sl   20:15   0:00  \_ /usr/libexec/at-spi2-registryd --use-gnome-session
weston    2792  5.2  1.6  92616 33288 tty7     Ssl+ 20:19   0:15 /usr/bin/weston --continue-without-input --modules=systemd-notify.so --debug --debug --debug
weston    2794  0.0  0.1  10900  2200 tty7     S+   20:19   0:00  \_ (sd-pam)
weston    2818  0.0  0.3  13088  7548 ?        Ss   20:19   0:00  \_ /usr/libexec/weston-keyboard
weston    2819  0.4  0.7  21008 15368 ?        Ss   20:19   0:01  \_ /usr/libexec/weston-desktop-shell
root      4315  0.6  0.3  10028  6684 ?        Ss   20:22   0:00 /usr/lib/systemd/systemd --user
root      4317  0.0  0.1  10484  2064 ?        S    20:22   0:00  \_ (sd-pam)
root      4851 23.5  0.2   6776  5476 ?        Ss   20:24   0:00 sshd: root@notty
root      4856  175  0.1   4996  2924 ?        Rs   20:24   0:00  \_ ps -auxfww</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:24:19.217902" elapsed="0.000798"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:24:19.823889" level="INFO">${stdout} = ('1.22', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:24:19.219396" elapsed="0.604687"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:24:19.826176" level="INFO">${value} = 1.22</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:24:19.824772" elapsed="0.001564"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:24:19.826667" elapsed="0.000215"/>
</return>
<msg time="2026-02-19T20:24:19.827519" level="INFO">${cpu_load} = 1.22</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:24:19.219008" elapsed="0.608686"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:24:19.828432" level="INFO">CPU load: 1.22</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:24:19.828176" elapsed="0.000349"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<msg time="2026-02-19T20:24:19.829147" level="FAIL">'1.22 &lt; 1' should be true.</msg>
<arg>${cpu_load} &lt; ${CPU_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="FAIL" start="2026-02-19T20:24:19.828743" elapsed="0.000544">'1.22 &lt; 1' should be true.</status>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<status status="NOT RUN" start="2026-02-19T20:24:19.829610" elapsed="0.000068"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-02-19T20:24:19.829871" elapsed="0.000053"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${MEMORY_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:24:19.830103" elapsed="0.000052"/>
</kw>
<doc>Check if the Device is idle.</doc>
<status status="FAIL" start="2026-02-19T20:24:18.560674" elapsed="1.269684">'1.22 &lt; 1' should be true.</status>
</kw>
<kw name="Check Device Is IDLE" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:24:31.437427" level="INFO">${stdout} = ('USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND\nroot         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]\nroot         3  0.0  0.0      0     0 ?        ...</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>ps -auxfww</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:24:29.832341" elapsed="1.605339"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:24:31.439652" level="INFO">${formatted} = USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S   ...</msg>
<var>${formatted}</var>
<arg>r"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:24:31.438341" elapsed="0.001377"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:24:31.440187" level="INFO">USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [pool_workqueue_release]
root         4  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kvfree_rcu_reclaim]
root         5  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rcu_gp]
root         6  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sync_wq]
root         7  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-slub_flushwq]
root         9  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:0H-mmc_complete]
root        11  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:0-ipv6_addrconf]
root        12  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mm_percpu_wq]
root        13  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_tasks_trace_kthread]
root        14  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/0]
root        15  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_sched]
root        16  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_par_gp_kthread_worker/0]
root        17  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_gp_kthread_worker]
root        18  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/0]
root        19  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/0]
root        20  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/1]
root        21  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/1]
root        22  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/1]
root        23  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:0-pm]
root        24  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:0H-events_highpri]
root        25  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/2]
root        26  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/2]
root        27  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/2]
root        28  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:0-rcu_gp]
root        29  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:0H-kblockd]
root        30  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/3]
root        31  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/3]
root        32  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/3]
root        34  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:0H-events_highpri]
root        35  0.2  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u17:0-xprtiod]
root        36  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:0-events_unbound]
root        39  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kdevtmpfs]
root        40  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-inet_frag_wq]
root        41  0.5  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:1-rpciod]
root        43  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:3-nfsiod]
root        44  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [oom_reaper]
root        45  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-writeback]
root        46  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kcompactd0]
root        47  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kblockd]
root        49  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:1-events_unbound]
root        50  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:2-rpciod]
root        51  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ata_sff]
root        52  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:1-events]
root        57  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [watchdogd]
root        60  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:1H-kblockd]
root        61  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rpciod]
root        62  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-xprtiod]
root        63  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-cfg80211]
root        64  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kswapd0]
root        65  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:1-rpciod]
root        66  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-nfsiod]
root        67  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-120000.hdmi]
root        70  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cec-dw_hdmi]
root        71  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-dw-hdmi-cec]
root        72  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-130000.gpu]
root        73  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-134000.gpu]
root        74  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-2204000.gpu]
root        76  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc0]
root        78  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc1]
root        79  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc2]
root        80  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc3]
root        81  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [scsi_eh_0]
root        82  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-scsi_tmf_0]
root        83  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ci_otg]
root        84  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:1-rpciod]
root        85  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:2-rpciod]
root        87  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u21:0]
root        88  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u22:0]
root        89  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u23:0]
root        90  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u24:0]
root        91  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u25:0]
root        92  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        93  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/286-mmc0]
root        95  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        96  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/287-mmc1]
root        99  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root       100  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/288-mmc2]
root       101  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2101000.jr-engine]
root       102  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:2-rpciod]
root       104  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [hwrng]
root       105  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2102000.jr-engine]
root       106  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/105-2198000.mmc cd]
root       107  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/30-2190000.mmc cd]
root       108  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mmc_complete]
root       109  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:1H-mmc_complete]
root       113  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:5-events]
root       115  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mld]
root       116  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ipv6_addrconf]
root       117  0.2  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u16:1-130000.gpu]
root       119  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/297-imx_thermal]
root       123  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:1H]
root       125  0.4  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:4-nfsiod]
root       126  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:1H-events_highpri]
root       127  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:4-rpciod]
root       128  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:4-rpciod]
root       129  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:3-rpciod]
root       131  0.5  0.0      0     0 ?        I    20:12   0:04  \_ [kworker/u17:5-rpciod]
root       132  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:5-rpciod]
root       248  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/298-vdoa]
root       250  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/301-coda-jpeg]
root       251  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-coda]
root       295  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:5-rpciod]
root       302  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:6-events_unbound]
root       305  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:6-kvfree_rcu_reclaim]
root       443  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:6-rpciod]
root      2202  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/u19:7-rpciod]
root      2292  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/2:1-cgroup_destroy]
root      2342  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/3:0-events]
root      2373  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/1:1-mm_percpu_wq]
root      2460  0.0  0.0      0     0 ?        I    20:18   0:00  \_ [kworker/0:0-cgroup_destroy]
root      3647  0.0  0.0      0     0 ?        I    20:21   0:00  \_ [kworker/u18:3-events_unbound]
root      4310  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/2:2-events]
root      4490  0.1  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:0-events_unbound]
root      4492  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u20:0-kvfree_rcu_reclaim]
root      4493  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:3-rpciod]
root      4494  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:5-nfsiod]
root      4595  0.0  0.0      0     0 ?        I    20:23   0:00  \_ [kworker/0:1-rcu_gp]
root      4607  0.0  0.0      0     0 ?        I    20:23   0:00  \_ [kworker/3:2-events]
root         1  2.5  0.3  11272  7468 ?        Ss   20:12   0:19 /sbin/init
rpc        157  0.0  0.0   2824  1836 ?        Ss   20:12   0:00 /usr/sbin/rpcbind -w -f
root       159  0.5  0.3  33328  7976 ?        Ss   20:12   0:04 /usr/lib/systemd/systemd-journald
root       194  0.0  0.1   8328  3736 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-userdbd
root      4158  0.0  0.2   8816  4128 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root      4164  0.0  0.2   8816  4392 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root      4170  0.0  0.2   8816  4432 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root       204  0.1  0.2  20304  5440 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-udevd
systemd+   241  0.1  0.2   8648  4948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-resolved
systemd+   246  0.0  0.2  17744  4628 ?        Ssl  20:12   0:00 /usr/lib/systemd/systemd-timesyncd
root       315  0.0  0.0   1572  1172 ?        Ss   20:12   0:00 /usr/sbin/atd -f
avahi      316  0.0  0.1   4268  2272 ?        Ss   20:12   0:00 avahi-daemon: running [wandboard-mesa.local]
avahi      345  0.0  0.0   4092  1080 ?        S    20:12   0:00  \_ avahi-daemon: chroot helper
root       318  0.0  0.0   2080  1180 ?        Ss   20:12   0:00 /usr/sbin/crond -n
message+   319  1.3  0.1   4208  2628 ?        Ss   20:12   0:09 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
dhcpcd     320  0.0  0.1   4428  3552 ?        Ss   20:12   0:00 dhcpcd: [manager] [ip4] [ip6]
root       326  0.0  0.1   4660  2080 ?        S    20:12   0:00  \_ dhcpcd: [privileged proxy]
dhcpcd     387  0.0  0.0   4440  1440 ?        S    20:12   0:00  |   \_ dhcpcd: [BPF ARP] end0 192.168.1.72
dhcpcd     327  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [network proxy]
dhcpcd     328  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [control proxy]
root       323  0.0  0.1   6284  3268 ?        Ss   20:12   0:00 /usr/sbin/ofonod -n
root       324  0.1  0.0   1528  1076 ?        Ss   20:12   0:01 /usr/sbin/syslogd -F
root       325  0.6  0.2   8772  4812 ?        Ss   20:12   0:04 /usr/lib/systemd/systemd-logind
systemd+   346  0.0  0.2   9452  5948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-networkd
root       359  0.0  0.1   3704  2752 ?        Ss   20:12   0:00 /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     370  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     371  0.0  0.1   4276  2912 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     372  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     373  0.0  0.1   4468  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     374  0.0  0.1   4276  2832 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
ntp        365  0.0  0.2   7812  4796 ?        Ssl  20:12   0:00 /usr/sbin/ntpd -u ntp -p /run/ntpd.pid -g
root       368  0.0  0.0   1536  1024 tty1     Ss+  20:12   0:00 /sbin/agetty -o -p -- \u --noclear - linux
root       369  0.0  0.0   1564  1148 ttymxc0  Ss+  20:12   0:00 /sbin/agetty -8 -L ttymxc0 115200 linux
polkitd    378  0.3  0.6 109048 14152 ?        Ssl  20:12   0:02 /usr/lib/polkit-1/polkitd --no-debug
weston     381  0.1  0.3  10028  6600 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd --user
weston     383  0.0  0.1  10944  2148 ?        S    20:12   0:00  \_ (sd-pam)
weston    1586  0.0  0.1   3912  2472 ?        Ss   20:15   0:00  \_ /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
weston    1589  0.0  0.1  43120  4004 ?        Ssl  20:15   0:00  \_ /usr/libexec/at-spi-bus-launcher
weston    1594  0.0  0.1   3912  2592 ?        S    20:15   0:00  |   \_ /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 10 --address=unix:path=/run/user/1000/at-spi/bus
weston    1635  0.0  0.2  35636  4440 ?        Sl   20:15   0:00  \_ /usr/libexec/at-spi2-registryd --use-gnome-session
weston    2792  5.0  1.6  93636 33288 tty7     Ssl+ 20:19   0:15 /usr/bin/weston --continue-without-input --modules=systemd-notify.so --debug --debug --debug
weston    2794  0.0  0.1  10900  2200 tty7     S+   20:19   0:00  \_ (sd-pam)
weston    2818  0.0  0.3  13088  7548 ?        Ss   20:19   0:00  \_ /usr/libexec/weston-keyboard
weston    2819  0.4  0.7  21008 15368 ?        Ss   20:19   0:01  \_ /usr/libexec/weston-desktop-shell
root      4905  8.1  0.2   6776  5568 ?        Ss   20:24   0:00 sshd: root@notty
root      4921  150  0.1   4996  2872 ?        Rs   20:24   0:00  \_ ps -auxfww
root      4914 64.2  0.3  10028  6624 ?        Ss   20:24   0:00 /usr/lib/systemd/systemd --user
root      4916  0.0  0.1  10484  2124 ?        S    20:24   0:00  \_ (sd-pam)</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:24:31.439945" elapsed="0.000665"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:24:32.022887" level="INFO">${stdout} = ('1.03', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:24:31.441304" elapsed="0.581776"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:24:32.025190" level="INFO">${value} = 1.03</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:24:32.023774" elapsed="0.001624"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:24:32.025715" elapsed="0.000203"/>
</return>
<msg time="2026-02-19T20:24:32.026591" level="INFO">${cpu_load} = 1.03</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:24:31.440912" elapsed="0.585850"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:24:32.027632" level="INFO">CPU load: 1.03</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:24:32.027321" elapsed="0.000404"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<msg time="2026-02-19T20:24:32.028352" level="FAIL">'1.03 &lt; 1' should be true.</msg>
<arg>${cpu_load} &lt; ${CPU_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="FAIL" start="2026-02-19T20:24:32.027931" elapsed="0.000552">'1.03 &lt; 1' should be true.</status>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<status status="NOT RUN" start="2026-02-19T20:24:32.028848" elapsed="0.000068"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-02-19T20:24:32.029115" elapsed="0.000057"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${MEMORY_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:24:32.029358" elapsed="0.000054"/>
</kw>
<doc>Check if the Device is idle.</doc>
<status status="FAIL" start="2026-02-19T20:24:29.831430" elapsed="2.198174">'1.03 &lt; 1' should be true.</status>
</kw>
<kw name="Check Device Is IDLE" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:24:43.694849" level="INFO">${stdout} = ('USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND\nroot         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]\nroot         3  0.0  0.0      0     0 ?        ...</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>ps -auxfww</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:24:42.031534" elapsed="1.663524"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:24:43.697876" level="INFO">${formatted} = USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S   ...</msg>
<var>${formatted}</var>
<arg>r"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:24:43.695793" elapsed="0.002260"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:24:43.699299" level="INFO">USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [pool_workqueue_release]
root         4  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kvfree_rcu_reclaim]
root         5  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rcu_gp]
root         6  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sync_wq]
root         7  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-slub_flushwq]
root         9  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:0H-mmc_complete]
root        11  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:0-ipv6_addrconf]
root        12  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mm_percpu_wq]
root        13  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_tasks_trace_kthread]
root        14  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/0]
root        15  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_sched]
root        16  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_par_gp_kthread_worker/0]
root        17  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_gp_kthread_worker]
root        18  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/0]
root        19  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/0]
root        20  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/1]
root        21  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/1]
root        22  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/1]
root        23  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:0-events]
root        24  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:0H-events_highpri]
root        25  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/2]
root        26  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/2]
root        27  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/2]
root        28  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:0-rcu_gp]
root        29  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:0H-kblockd]
root        30  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/3]
root        31  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/3]
root        32  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/3]
root        34  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:0H-events_highpri]
root        35  0.2  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u17:0-xprtiod]
root        36  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:0-events_unbound]
root        39  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kdevtmpfs]
root        40  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-inet_frag_wq]
root        41  0.4  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:1-rpciod]
root        43  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:3-nfsiod]
root        44  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [oom_reaper]
root        45  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-writeback]
root        46  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kcompactd0]
root        47  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kblockd]
root        49  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:1-events_unbound]
root        50  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:2-rpciod]
root        51  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ata_sff]
root        52  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:1-events]
root        57  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [watchdogd]
root        60  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:1H-kblockd]
root        61  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rpciod]
root        62  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-xprtiod]
root        63  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-cfg80211]
root        64  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kswapd0]
root        65  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:1-rpciod]
root        66  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-nfsiod]
root        67  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-120000.hdmi]
root        70  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cec-dw_hdmi]
root        71  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-dw-hdmi-cec]
root        72  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-130000.gpu]
root        73  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-134000.gpu]
root        74  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-2204000.gpu]
root        76  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc0]
root        78  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc1]
root        79  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc2]
root        80  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc3]
root        81  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [scsi_eh_0]
root        82  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-scsi_tmf_0]
root        83  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ci_otg]
root        84  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:1-rpciod]
root        85  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:2-rpciod]
root        87  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u21:0]
root        88  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u22:0]
root        89  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u23:0]
root        90  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u24:0]
root        91  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u25:0]
root        92  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        93  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/286-mmc0]
root        95  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        96  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/287-mmc1]
root        99  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root       100  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/288-mmc2]
root       101  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2101000.jr-engine]
root       102  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:2-rpciod]
root       104  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [hwrng]
root       105  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2102000.jr-engine]
root       106  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/105-2198000.mmc cd]
root       107  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/30-2190000.mmc cd]
root       108  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mmc_complete]
root       109  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:1H-mmc_complete]
root       113  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:5-events]
root       115  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mld]
root       116  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ipv6_addrconf]
root       117  0.2  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u16:1-130000.gpu]
root       119  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/297-imx_thermal]
root       123  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:1H]
root       125  0.4  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:4-nfsiod]
root       126  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:1H-events_highpri]
root       127  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:4-rpciod]
root       128  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:4-rpciod]
root       129  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:3-rpciod]
root       131  0.5  0.0      0     0 ?        I    20:12   0:04  \_ [kworker/u17:5-rpciod]
root       132  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:5-rpciod]
root       248  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/298-vdoa]
root       250  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/301-coda-jpeg]
root       251  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-coda]
root       295  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:5-rpciod]
root       302  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:6-events_unbound]
root       305  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:6-kvfree_rcu_reclaim]
root       443  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:6-rpciod]
root      2202  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/u19:7-rpciod]
root      2292  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/2:1-events]
root      2342  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/3:0-events]
root      2373  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/1:1-mm_percpu_wq]
root      2460  0.0  0.0      0     0 ?        I    20:18   0:00  \_ [kworker/0:0-events]
root      3647  0.0  0.0      0     0 ?        I    20:21   0:00  \_ [kworker/u18:3-events_unbound]
root      4310  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/2:2-events]
root      4490  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:0-events_unbound]
root      4492  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u20:0-events_unbound]
root      4493  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:3-rpciod]
root      4494  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:5-nfsiod]
root      4595  0.0  0.0      0     0 ?        I    20:23   0:00  \_ [kworker/0:1-events]
root      4607  0.0  0.0      0     0 ?        I    20:23   0:00  \_ [kworker/3:2-mm_percpu_wq]
root         1  2.5  0.3  11272  7468 ?        Ss   20:12   0:19 /sbin/init
rpc        157  0.0  0.0   2824  1836 ?        Ss   20:12   0:00 /usr/sbin/rpcbind -w -f
root       159  0.5  0.3  33328  7976 ?        Ss   20:12   0:04 /usr/lib/systemd/systemd-journald
root       194  0.0  0.1   8328  3736 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-userdbd
root      4158  0.0  0.2   8816  4128 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root      4164  0.0  0.2   8816  4392 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root      4170  0.0  0.2   8816  4432 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root       204  0.1  0.2  20304  5440 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-udevd
systemd+   241  0.1  0.2   8648  4948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-resolved
systemd+   246  0.0  0.2  17744  4628 ?        Ssl  20:12   0:00 /usr/lib/systemd/systemd-timesyncd
root       315  0.0  0.0   1572  1172 ?        Ss   20:12   0:00 /usr/sbin/atd -f
avahi      316  0.0  0.1   4268  2272 ?        Ss   20:12   0:00 avahi-daemon: running [wandboard-mesa.local]
avahi      345  0.0  0.0   4092  1080 ?        S    20:12   0:00  \_ avahi-daemon: chroot helper
root       318  0.0  0.0   2080  1180 ?        Ss   20:12   0:00 /usr/sbin/crond -n
message+   319  1.3  0.1   4208  2628 ?        Ss   20:12   0:09 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
dhcpcd     320  0.0  0.1   4428  3552 ?        Ss   20:12   0:00 dhcpcd: [manager] [ip4] [ip6]
root       326  0.0  0.1   4660  2080 ?        S    20:12   0:00  \_ dhcpcd: [privileged proxy]
dhcpcd     387  0.0  0.0   4440  1440 ?        S    20:12   0:00  |   \_ dhcpcd: [BPF ARP] end0 192.168.1.72
dhcpcd     327  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [network proxy]
dhcpcd     328  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [control proxy]
root       323  0.0  0.1   6284  3268 ?        Ss   20:12   0:00 /usr/sbin/ofonod -n
root       324  0.1  0.0   1528  1076 ?        Ss   20:12   0:01 /usr/sbin/syslogd -F
root       325  0.6  0.2   8772  4812 ?        Ss   20:12   0:04 /usr/lib/systemd/systemd-logind
systemd+   346  0.0  0.2   9452  5948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-networkd
root       359  0.0  0.1   3704  2752 ?        Ss   20:12   0:00 /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     370  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     371  0.0  0.1   4276  2912 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     372  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     373  0.0  0.1   4468  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     374  0.0  0.1   4276  2832 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
ntp        365  0.0  0.2   7812  4796 ?        Ssl  20:12   0:00 /usr/sbin/ntpd -u ntp -p /run/ntpd.pid -g
root       368  0.0  0.0   1536  1024 tty1     Ss+  20:12   0:00 /sbin/agetty -o -p -- \u --noclear - linux
root       369  0.0  0.0   1564  1148 ttymxc0  Ss+  20:12   0:00 /sbin/agetty -8 -L ttymxc0 115200 linux
polkitd    378  0.3  0.6 109048 14152 ?        Ssl  20:12   0:02 /usr/lib/polkit-1/polkitd --no-debug
weston     381  0.1  0.3  10028  6600 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd --user
weston     383  0.0  0.1  10944  2148 ?        S    20:12   0:00  \_ (sd-pam)
weston    1586  0.0  0.1   3912  2472 ?        Ss   20:15   0:00  \_ /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
weston    1589  0.0  0.1  43120  4004 ?        Ssl  20:15   0:00  \_ /usr/libexec/at-spi-bus-launcher
weston    1594  0.0  0.1   3912  2592 ?        S    20:15   0:00  |   \_ /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 10 --address=unix:path=/run/user/1000/at-spi/bus
weston    1635  0.0  0.2  35636  4440 ?        Sl   20:15   0:00  \_ /usr/libexec/at-spi2-registryd --use-gnome-session
weston    2792  4.8  1.6  93636 33288 tty7     Ssl+ 20:19   0:15 /usr/bin/weston --continue-without-input --modules=systemd-notify.so --debug --debug --debug
weston    2794  0.0  0.1  10900  2200 tty7     S+   20:19   0:00  \_ (sd-pam)
weston    2818  0.0  0.3  13088  7548 ?        Ss   20:19   0:00  \_ /usr/libexec/weston-keyboard
weston    2819  0.3  0.7  21008 15368 ?        Ss   20:19   0:01  \_ /usr/libexec/weston-desktop-shell
root      4970  8.3  0.2   6776  5524 ?        Ss   20:24   0:00 sshd: root@notty
root      4986  150  0.1   4996  2892 ?        Rs   20:24   0:00  \_ ps -auxfww
root      4979 62.1  0.3  10028  6648 ?        Ss   20:24   0:00 /usr/lib/systemd/systemd --user
root      4981  0.0  0.1  10484  2116 ?        S    20:24   0:00  \_ (sd-pam)</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:24:43.698673" elapsed="0.001322"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:24:44.242138" level="INFO">${stdout} = ('0.96', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:24:43.700716" elapsed="0.541619"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:24:44.244490" level="INFO">${value} = 0.96</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:24:44.243047" elapsed="0.001646"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:24:44.244827" elapsed="0.000085"/>
</return>
<msg time="2026-02-19T20:24:44.245173" level="INFO">${cpu_load} = 0.96</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:24:43.700308" elapsed="0.544925"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:24:44.245729" level="INFO">CPU load: 0.96</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:24:44.245458" elapsed="0.000363"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${cpu_load} &lt; ${CPU_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:24:44.246030" elapsed="0.000364"/>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:24:44.850629" level="INFO">${stdout} = ('191', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>free -m | grep Mem | awk '{print $3}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:24:44.247472" elapsed="0.603357"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:24:44.852998" level="INFO">${value} = 191.0</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:24:44.851495" elapsed="0.001661"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:24:44.853446" elapsed="0.000227"/>
</return>
<msg time="2026-02-19T20:24:44.854316" level="INFO">${memory_used} = 191.0</msg>
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:24:44.246726" elapsed="0.607734"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:24:44.855708" level="INFO">Memory used: 191.0</msg>
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:24:44.855046" elapsed="0.000755"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${MEMORY_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:24:44.856008" elapsed="0.000370"/>
</kw>
<doc>Check if the Device is idle.</doc>
<status status="PASS" start="2026-02-19T20:24:42.030656" elapsed="2.825861"/>
</kw>
<arg>18x</arg>
<arg>10s</arg>
<arg>Check Device Is IDLE</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:24:18.559979" elapsed="26.296661"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Webdriver Remote Start Maximized" owner="keywords_common">
<variable name="${PAGE}">
<msg time="2026-02-19T20:24:44.857911" level="INFO">${PAGE} = http://192.168.1.246:8008/robot_framework/html/home-page.html</msg>
<var>http://%{TEST_WEBSERVER_IP}:%{TEST_WEBSERVER_PORT}/robot_framework/html/home-page.html</var>
<status status="PASS" start="2026-02-19T20:24:44.857693" elapsed="0.000280"/>
</variable>
<kw name="Webdriver Remote Start" owner="keywords_common">
<kw name="Ssh Webdriver Remote Stop" owner="TestUtils">
<msg time="2026-02-19T20:24:45.695247" level="INFO">RUN: Killing all 'WPEWebDriver' related processes ...</msg>
<arg>%{TEST_BOARD_IP}</arg>
<status status="PASS" start="2026-02-19T20:24:44.858696" elapsed="0.836959"/>
</kw>
<kw name="Ssh Force Kill" owner="TestUtils">
<msg time="2026-02-19T20:24:46.429084" level="INFO">RUN: Killing all 'wpe-simple-launcher' related processes ...</msg>
<arg>%{TEST_BOARD_IP}</arg>
<arg>wpe-simple-launcher</arg>
<doc>Force kill all related process.</doc>
<status status="PASS" start="2026-02-19T20:24:45.696299" elapsed="0.733114"/>
</kw>
<kw name="Ssh Webdriver Remote Start" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>%{TEST_BOARD_WEBDRIVER_PORT}</arg>
<status status="PASS" start="2026-02-19T20:24:46.430077" elapsed="0.007661"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-02-19T20:24:51.441429" level="INFO">Slept 5 seconds.</msg>
<arg>5</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-02-19T20:24:46.439529" elapsed="5.002440"/>
</kw>
<kw name="Create WPEWebKitOptions" owner="keywords_common">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:24:51.447637" level="INFO">${wpe_options} = &lt;selenium.webdriver.wpewebkit.options.Options object at 0x72977b146750&gt;</msg>
<var>${wpe_options}</var>
<arg>sys.modules['selenium.webdriver'].WPEWebKitOptions()</arg>
<arg>sys, selenium.webdriver</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:24:51.446499" elapsed="0.001208"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-02-19T20:24:51.448563" level="INFO">${wpe_options.binary_location} = /usr/bin/wpe-exported-wayland</msg>
<var>${wpe_options.binary_location}</var>
<arg>${binary_path}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-02-19T20:24:51.448020" elapsed="0.000606"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Call Method" owner="BuiltIn">
<arg>${wpe_options}</arg>
<arg>add_argument</arg>
<arg>${param}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-02-19T20:24:51.449754" elapsed="0.000486"/>
</kw>
<var name="${param}">--automation</var>
<status status="PASS" start="2026-02-19T20:24:51.449411" elapsed="0.000934"/>
</iter>
<iter>
<kw name="Call Method" owner="BuiltIn">
<arg>${wpe_options}</arg>
<arg>add_argument</arg>
<arg>${param}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-02-19T20:24:51.450739" elapsed="0.000433"/>
</kw>
<var name="${param}">--maximized</var>
<status status="PASS" start="2026-02-19T20:24:51.450559" elapsed="0.000715"/>
</iter>
<var>${param}</var>
<value>@{other_params}</value>
<status status="PASS" start="2026-02-19T20:24:51.448882" elapsed="0.002485"/>
</for>
<kw name="Call Method" owner="BuiltIn">
<arg>${wpe_options}</arg>
<arg>set_capability</arg>
<arg>browserName</arg>
<arg>${binary_name}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-02-19T20:24:51.451601" elapsed="0.000437"/>
</kw>
<return>
<value>${wpe_options}</value>
<status status="PASS" start="2026-02-19T20:24:51.452189" elapsed="0.000223"/>
</return>
<msg time="2026-02-19T20:24:51.452728" level="INFO">${wpe_options} = &lt;selenium.webdriver.wpewebkit.options.Options object at 0x72977b146750&gt;</msg>
<var>${wpe_options}</var>
<arg>wpe-simple-launcher</arg>
<arg>/usr/bin/wpe-exported-wayland</arg>
<arg>--automation</arg>
<arg>@{other_params}</arg>
<doc>Creates and configures WPEWebKit options for WebDriver session.</doc>
<status status="PASS" start="2026-02-19T20:24:51.444451" elapsed="0.008347"/>
</kw>
<kw name="Create Webdriver" owner="SeleniumLibrary">
<msg time="2026-02-19T20:24:51.454362" level="INFO">Creating an instance of the Remote WebDriver.</msg>
<arg>Remote</arg>
<arg>command_executor=%{TEST_BOARD_IP}:%{TEST_BOARD_WEBDRIVER_PORT}</arg>
<arg>options=${wpe_options}</arg>
<doc>Creates an instance of Selenium WebDriver.</doc>
<status status="PASS" start="2026-02-19T20:24:51.453590" elapsed="0.959533"/>
</kw>
<arg>--maximized</arg>
<doc>Starts WebDriver session on remote test board with WPE launcher.</doc>
<timeout value="2 minutes"/>
<status status="PASS" start="2026-02-19T20:24:44.858274" elapsed="7.555381"/>
</kw>
<kw name="Go To" owner="SeleniumLibrary">
<msg time="2026-02-19T20:24:52.415430" level="INFO">Opening url 'http://192.168.1.246:8008/robot_framework/html/home-page.html'</msg>
<arg>${PAGE}</arg>
<doc>Navigates the current browser window to the provided ``url``.</doc>
<status status="PASS" start="2026-02-19T20:24:52.414387" elapsed="0.886412"/>
</kw>
<kw name="Wait Until Page Contains" owner="SeleniumLibrary">
<arg>Home Page</arg>
<arg>timeout=10s</arg>
<doc>Waits until ``text`` appears on the current page.</doc>
<status status="PASS" start="2026-02-19T20:24:53.301645" elapsed="0.064115"/>
</kw>
<kw name="Execute Javascript" owner="SeleniumLibrary">
<msg time="2026-02-19T20:24:53.369084" level="INFO">Executing JavaScript:
return window.innerWidth;
Without any arguments.</msg>
<msg time="2026-02-19T20:24:53.380586" level="INFO">${inner_width} = 1920</msg>
<var>${inner_width}</var>
<arg>return window.innerWidth;</arg>
<doc>Executes the given JavaScript code with possible arguments.</doc>
<status status="PASS" start="2026-02-19T20:24:53.366544" elapsed="0.014210"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${inner_width} == 1920</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:24:53.381403" elapsed="0.001504"/>
</kw>
<kw name="Execute Javascript" owner="SeleniumLibrary">
<msg time="2026-02-19T20:24:53.385244" level="INFO">Executing JavaScript:
return window.innerHeight;
Without any arguments.</msg>
<msg time="2026-02-19T20:24:53.400287" level="INFO">${inner_height} = 1048</msg>
<var>${inner_height}</var>
<arg>return window.innerHeight;</arg>
<doc>Executes the given JavaScript code with possible arguments.</doc>
<status status="PASS" start="2026-02-19T20:24:53.383527" elapsed="0.016925"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${inner_height} == 1048</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:24:53.401085" elapsed="0.001409"/>
</kw>
<doc>Starts WebDriver in maximized mode and verifies window dimensions.</doc>
<timeout value="2 minutes"/>
<status status="PASS" start="2026-02-19T20:24:44.857345" elapsed="8.545690"/>
</kw>
<arg>20x</arg>
<arg>1000ms</arg>
<arg>Webdriver Remote Start Maximized</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:24:44.856861" elapsed="8.546665"/>
</kw>
<status status="PASS" start="2026-02-19T20:24:18.559491" elapsed="34.844500"/>
</kw>
<test id="s1-s9-t1" name="Verify Canvas Animation 60 FPS" line="14">
<variable name="${PAGE}">
<msg time="2026-02-19T20:25:18.936433" level="INFO">${PAGE} = http://192.168.1.246:8008/robot_framework/html/canvas_fps.html</msg>
<var>http://%{TEST_WEBSERVER_IP}:%{TEST_WEBSERVER_PORT}/robot_framework/html/canvas_fps.html</var>
<status status="PASS" start="2026-02-19T20:25:18.936075" elapsed="0.000462"/>
</variable>
<kw name="Go To" owner="SeleniumLibrary">
<msg time="2026-02-19T20:25:18.937532" level="INFO">Opening url 'http://192.168.1.246:8008/robot_framework/html/canvas_fps.html'</msg>
<arg>${PAGE}</arg>
<doc>Navigates the current browser window to the provided ``url``.</doc>
<status status="PASS" start="2026-02-19T20:25:18.937022" elapsed="0.079301"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-02-19T20:25:41.018361" level="INFO">Slept 22 seconds.</msg>
<arg>22 seconds</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-02-19T20:25:19.017183" elapsed="22.001657"/>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:25:41.729508" level="INFO">${stdout} = ('303', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>free -m | grep Mem | awk '{print $3}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:25:41.021403" elapsed="0.708347"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:25:41.732189" level="INFO">${value} = 303.0</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:25:41.730650" elapsed="0.001702"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:25:41.732688" elapsed="0.000218"/>
</return>
<msg time="2026-02-19T20:25:41.733238" level="INFO">${memory_used} = 303.0</msg>
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:25:41.019984" elapsed="0.713311"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:25:41.734482" level="INFO">Memory used: 303.0</msg>
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:25:41.733679" elapsed="0.000950"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:25:42.481990" level="INFO">${stdout} = ('1.43', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:25:41.735527" elapsed="0.746670"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:25:42.484385" level="INFO">${value} = 1.43</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:25:42.482913" elapsed="0.001633"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:25:42.484885" elapsed="0.000212"/>
</return>
<msg time="2026-02-19T20:25:42.485821" level="INFO">${cpu_load} = 1.43</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:25:41.735021" elapsed="0.750948"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:25:42.487301" level="INFO">CPU load: 1.43</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:25:42.486845" elapsed="0.000579"/>
</kw>
<kw name="Get FPS Value">
<kw name="Get Text" owner="SeleniumLibrary">
<msg time="2026-02-19T20:25:42.566103" level="INFO">${fps_text} = FPS: 59.99</msg>
<var>${fps_text}</var>
<arg>id=fps</arg>
<doc>Returns the text value of the element identified by ``locator``.</doc>
<status status="PASS" start="2026-02-19T20:25:42.488302" elapsed="0.077987"/>
</kw>
<kw name="Convert To Number" owner="BuiltIn">
<msg time="2026-02-19T20:25:42.569647" level="INFO">${fps} = 59.99</msg>
<var>${fps}</var>
<arg>${fps_text.split(":")[1].strip()}</arg>
<doc>Converts the given item to a floating point number.</doc>
<status status="PASS" start="2026-02-19T20:25:42.567001" elapsed="0.002813"/>
</kw>
<return>
<value>${fps}</value>
<status status="PASS" start="2026-02-19T20:25:42.570117" elapsed="0.000203"/>
</return>
<msg time="2026-02-19T20:25:42.570995" level="INFO">${fps} = 59.99</msg>
<var>${fps}</var>
<doc>Returns the current FPS value from the page.</doc>
<status status="PASS" start="2026-02-19T20:25:42.487849" elapsed="0.083295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:25:42.573001" level="INFO">FPS value: 59.99</msg>
<arg>FPS value: ${fps}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:25:42.572100" elapsed="0.001205"/>
</kw>
<kw name="Get Average Value">
<kw name="Get Text" owner="SeleniumLibrary">
<msg time="2026-02-19T20:25:42.612395" level="INFO">${average_text} = Average: 16.67</msg>
<var>${average_text}</var>
<arg>id=average</arg>
<doc>Returns the text value of the element identified by ``locator``.</doc>
<status status="PASS" start="2026-02-19T20:25:42.576317" elapsed="0.036318"/>
</kw>
<kw name="Convert To Number" owner="BuiltIn">
<msg time="2026-02-19T20:25:42.615926" level="INFO">${average} = 16.67</msg>
<var>${average}</var>
<arg>${average_text.split(":")[1].strip()}</arg>
<doc>Converts the given item to a floating point number.</doc>
<status status="PASS" start="2026-02-19T20:25:42.613297" elapsed="0.002795"/>
</kw>
<return>
<value>${average}</value>
<status status="PASS" start="2026-02-19T20:25:42.616399" elapsed="0.000246"/>
</return>
<msg time="2026-02-19T20:25:42.617381" level="INFO">${average} = 16.67</msg>
<var>${average}</var>
<doc>Returns the average FPS value from the page.</doc>
<status status="PASS" start="2026-02-19T20:25:42.574698" elapsed="0.042895"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:25:42.619384" level="INFO">Average value: 16.67</msg>
<arg>Average value: ${average}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:25:42.618478" elapsed="0.001244"/>
</kw>
<kw name="Get Std Deviation Value">
<kw name="Get Text" owner="SeleniumLibrary">
<msg time="2026-02-19T20:25:42.661347" level="INFO">${std_deviation_text} = Std. deviation: 0.56</msg>
<var>${std_deviation_text}</var>
<arg>id=std-deviation</arg>
<doc>Returns the text value of the element identified by ``locator``.</doc>
<status status="PASS" start="2026-02-19T20:25:42.621827" elapsed="0.039773"/>
</kw>
<kw name="Convert To Number" owner="BuiltIn">
<msg time="2026-02-19T20:25:42.665423" level="INFO">${std_deviation} = 0.56</msg>
<var>${std_deviation}</var>
<arg>${std_deviation_text.split(":")[1].strip()}</arg>
<doc>Converts the given item to a floating point number.</doc>
<status status="PASS" start="2026-02-19T20:25:42.662340" elapsed="0.003331"/>
</kw>
<return>
<value>${std_deviation}</value>
<status status="PASS" start="2026-02-19T20:25:42.666027" elapsed="0.000240"/>
</return>
<msg time="2026-02-19T20:25:42.667062" level="INFO">${std_deviation} = 0.56</msg>
<var>${std_deviation}</var>
<doc>Returns the standard deviation of FPS from the page.</doc>
<status status="PASS" start="2026-02-19T20:25:42.620678" elapsed="0.046555"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:25:42.669347" level="INFO">Std Deviation: 0.56</msg>
<arg>Std Deviation: ${std_deviation}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:25:42.668229" elapsed="0.001519"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:25:44.136237" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-37.png"&gt;&lt;img src="selenium-screenshot-37.png" width="800px"&gt;&lt;/a&gt;</msg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:25:42.670852" elapsed="1.465640"/>
</kw>
<kw name="Get Machine Expectation" owner="TestUtils">
<msg time="2026-02-19T20:25:44.137653" level="INFO">${CANVAS_FPS_THRESHOLD_FPS} = 59</msg>
<var>${CANVAS_FPS_THRESHOLD_FPS}</var>
<arg>id=canvas-fps-threshold-fps</arg>
<arg>machine=%{TEST_MACHINE}</arg>
<arg>wpeversion=%{TEST_WPEWEBKIT_VERSION}</arg>
<arg>type=number</arg>
<status status="PASS" start="2026-02-19T20:25:44.136893" elapsed="0.000827"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${fps} &gt; ${CANVAS_FPS_THRESHOLD_FPS}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:25:44.138057" elapsed="0.000900"/>
</kw>
<kw name="Get Machine Expectation" owner="TestUtils">
<msg time="2026-02-19T20:25:44.140117" level="INFO">${CANVAS_FPS_THRESHOLD_AVERAGE} = 16</msg>
<var>${CANVAS_FPS_THRESHOLD_AVERAGE}</var>
<arg>id=canvas-fps-threshold-average</arg>
<arg>machine=%{TEST_MACHINE}</arg>
<arg>wpeversion=%{TEST_WPEWEBKIT_VERSION}</arg>
<arg>type=number</arg>
<status status="PASS" start="2026-02-19T20:25:44.139351" elapsed="0.000830"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<msg time="2026-02-19T20:25:44.141403" level="FAIL">'16.67 &lt; 16' should be true.</msg>
<arg>${average} &lt; ${CANVAS_FPS_THRESHOLD_AVERAGE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="FAIL" start="2026-02-19T20:25:44.140669" elapsed="0.001066">'16.67 &lt; 16' should be true.</status>
</kw>
<kw name="Get Machine Expectation" owner="TestUtils">
<var>${CANVAS_FPS_THRESHOLD_STD_DEVIATION}</var>
<arg>id=canvas-fps-threshold-std-deviation</arg>
<arg>machine=%{TEST_MACHINE}</arg>
<arg>wpeversion=%{TEST_WPEWEBKIT_VERSION}</arg>
<arg>type=number</arg>
<status status="NOT RUN" start="2026-02-19T20:25:44.142082" elapsed="0.000067"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${std_deviation} &lt; ${CANVAS_FPS_THRESHOLD_STD_DEVIATION}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:25:44.142521" elapsed="0.000105"/>
</kw>
<kw name="Get Machine Expectation" owner="TestUtils">
<var>${CANVAS_FPS_THRESHOLD_CPU_LOAD}</var>
<arg>id=canvas-fps-threshold-cpu-load</arg>
<arg>machine=%{TEST_MACHINE}</arg>
<arg>wpeversion=%{TEST_WPEWEBKIT_VERSION}</arg>
<arg>type=number</arg>
<status status="NOT RUN" start="2026-02-19T20:25:44.143035" elapsed="0.000087"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${cpu_load} &lt; ${CANVAS_FPS_THRESHOLD_CPU_LOAD}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:25:44.143569" elapsed="0.000061"/>
</kw>
<kw name="Get Machine Expectation" owner="TestUtils">
<var>${CANVAS_FPS_THRESHOLD_MEMORY_USED}</var>
<arg>id=canvas-fps-threshold-memory-used</arg>
<arg>machine=%{TEST_MACHINE}</arg>
<arg>wpeversion=%{TEST_WPEWEBKIT_VERSION}</arg>
<arg>type=number</arg>
<status status="NOT RUN" start="2026-02-19T20:25:44.143910" elapsed="0.000058"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${CANVAS_FPS_THRESHOLD_MEMORY_USED}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:25:44.144358" elapsed="0.000084"/>
</kw>
<doc>Verifies that canvas animation runs at 60 FPS with acceptable CPU and memory usage.</doc>
<tag>test:retry(1)</tag>
<timeout value="5 minutes"/>
<status status="FAIL" start="2026-02-19T20:25:18.930823" elapsed="25.214129">'16.67 &lt; 16' should be true.
[RETRY] FAIL on 1. retry.</status>
</test>
<kw name="Webdriver Remote Stop" owner="keywords_common" type="TEARDOWN">
<kw name="Close All Browsers" owner="SeleniumLibrary">
<doc>Closes all open browsers and resets the browser cache.</doc>
<status status="PASS" start="2026-02-19T20:25:44.146958" elapsed="0.060362"/>
</kw>
<kw name="Ssh Webdriver Remote Stop" owner="TestUtils">
<msg time="2026-02-19T20:25:45.012596" level="INFO">RUN: Killing all 'WPEWebDriver' related processes ...</msg>
<arg>%{TEST_BOARD_IP}</arg>
<status status="PASS" start="2026-02-19T20:25:44.208107" elapsed="0.804880"/>
</kw>
<kw name="Ssh Force Kill" owner="TestUtils">
<msg time="2026-02-19T20:25:45.813929" level="INFO">RUN: Killing all 'wpe-simple-launcher' related processes ...</msg>
<arg>%{TEST_BOARD_IP}</arg>
<arg>wpe-simple-launcher</arg>
<doc>Force kill all related process.</doc>
<status status="PASS" start="2026-02-19T20:25:45.013724" elapsed="0.800532"/>
</kw>
<doc>Stops WebDriver session and cleans up browser processes.</doc>
<timeout value="2 minutes"/>
<status status="PASS" start="2026-02-19T20:25:44.146267" elapsed="1.668446"/>
</kw>
<doc>Canvas animation performance (FPS, CPU, memory) on different machines and WPEWebKit versions.</doc>
<status status="FAIL" start="2026-02-19T20:24:18.546195" elapsed="87.268804"/>
</suite>
<suite id="s1-s10" name="Tests 020 Motionmark" source="/app/tests_results/20260219_201245_robot_/../../robot_framework/tests/tests_020_motionmark.robot">
<kw name="Wait For Webdriver Remote Start" type="SETUP">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Device Is IDLE" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:25:46.515783" level="INFO">${stdout} = ('USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND\nroot         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]\nroot         3  0.0  0.0      0     0 ?        ...</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>ps -auxfww</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:25:45.831105" elapsed="0.684896"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:25:46.518395" level="INFO">${formatted} = USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S   ...</msg>
<var>${formatted}</var>
<arg>r"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:25:46.516722" elapsed="0.001877"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:25:46.519855" level="INFO">USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [pool_workqueue_release]
root         4  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kvfree_rcu_reclaim]
root         5  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rcu_gp]
root         6  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sync_wq]
root         7  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-slub_flushwq]
root         9  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:0H-mmc_complete]
root        11  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:0-ipv6_addrconf]
root        12  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mm_percpu_wq]
root        13  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_tasks_trace_kthread]
root        14  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/0]
root        15  0.1  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_sched]
root        16  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_par_gp_kthread_worker/0]
root        17  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_gp_kthread_worker]
root        18  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/0]
root        19  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/0]
root        20  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/1]
root        21  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/1]
root        22  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/1]
root        23  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:0-pm]
root        24  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:0H-events_highpri]
root        25  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/2]
root        26  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/2]
root        27  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/2]
root        28  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:0-rcu_gp]
root        29  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:0H-kblockd]
root        30  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/3]
root        31  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/3]
root        32  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/3]
root        34  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:0H-events_highpri]
root        35  0.3  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u17:0-xprtiod]
root        36  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:0-events_unbound]
root        39  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kdevtmpfs]
root        40  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-inet_frag_wq]
root        41  0.4  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:1-rpciod]
root        43  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:3-nfsiod]
root        44  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [oom_reaper]
root        45  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-writeback]
root        46  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kcompactd0]
root        47  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kblockd]
root        49  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:1-rpciod]
root        50  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:2-rpciod]
root        51  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ata_sff]
root        52  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:1-mm_percpu_wq]
root        57  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [watchdogd]
root        60  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:1H-kblockd]
root        61  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rpciod]
root        62  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-xprtiod]
root        63  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-cfg80211]
root        64  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kswapd0]
root        65  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:1-rpciod]
root        66  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-nfsiod]
root        67  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-120000.hdmi]
root        70  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cec-dw_hdmi]
root        71  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-dw-hdmi-cec]
root        72  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-130000.gpu]
root        73  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-134000.gpu]
root        74  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-2204000.gpu]
root        76  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc0]
root        78  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc1]
root        79  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc2]
root        80  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc3]
root        81  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [scsi_eh_0]
root        82  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-scsi_tmf_0]
root        83  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ci_otg]
root        84  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:1-rpciod]
root        85  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:2-kvfree_rcu_reclaim]
root        87  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u21:0]
root        88  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u22:0]
root        89  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u23:0]
root        90  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u24:0]
root        91  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u25:0]
root        92  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        93  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/286-mmc0]
root        95  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        96  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/287-mmc1]
root        99  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root       100  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/288-mmc2]
root       101  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2101000.jr-engine]
root       102  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:2-events_unbound]
root       104  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [hwrng]
root       105  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2102000.jr-engine]
root       106  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/105-2198000.mmc cd]
root       107  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/30-2190000.mmc cd]
root       108  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mmc_complete]
root       109  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:1H-mmc_complete]
root       113  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:5-events]
root       115  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mld]
root       116  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ipv6_addrconf]
root       117  0.3  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u16:1-130000.gpu]
root       119  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/297-imx_thermal]
root       123  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:1H]
root       125  0.3  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:4-xprtiod]
root       126  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:1H-events_highpri]
root       127  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:4-events_unbound]
root       128  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:4-rpciod]
root       129  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:3-rpciod]
root       131  0.5  0.0      0     0 ?        I    20:12   0:04  \_ [kworker/u17:5-rpciod]
root       132  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:5-rpciod]
root       248  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/298-vdoa]
root       250  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/301-coda-jpeg]
root       251  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-coda]
root       295  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:5-rpciod]
root       302  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:6-kvfree_rcu_reclaim]
root       305  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:6-nfsiod]
root       443  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:6-rpciod]
root      2202  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/u19:7-rpciod]
root      2292  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/2:1-events]
root      2342  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/3:0-events]
root      2373  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/1:1-cgroup_destroy]
root      2460  0.0  0.0      0     0 ?        I    20:18   0:00  \_ [kworker/0:0-events]
root      3647  0.0  0.0      0     0 ?        I    20:21   0:00  \_ [kworker/u18:3-nfsiod]
root      4310  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/2:2-mm_percpu_wq]
root      4490  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:0-nfsiod]
root      4492  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u20:0-rpciod]
root      4493  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:3-rpciod]
root      4494  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:5-events_unbound]
root      4595  0.0  0.0      0     0 ?        I    20:23   0:00  \_ [kworker/0:1-events]
root      4607  0.0  0.0      0     0 ?        I    20:23   0:00  \_ [kworker/3:2-cgroup_destroy]
root      5022  0.0  0.0      0     0 ?        I    20:24   0:00  \_ [kworker/1:2-events]
root         1  2.4  0.3  11272  7468 ?        Ss   20:12   0:20 /sbin/init
rpc        157  0.0  0.0   2824  1836 ?        Ss   20:12   0:00 /usr/sbin/rpcbind -w -f
root       159  0.5  0.3  33328  7976 ?        Ss   20:12   0:04 /usr/lib/systemd/systemd-journald
root       194  0.0  0.1   8328  3736 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-userdbd
root      4158  0.0  0.2   8816  4128 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root      4164  0.0  0.2   8816  4392 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root      4170  0.0  0.2   8816  4432 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root       204  0.1  0.2  20304  5440 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-udevd
systemd+   241  0.0  0.2   8648  4948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-resolved
systemd+   246  0.0  0.2  17744  4628 ?        Ssl  20:12   0:00 /usr/lib/systemd/systemd-timesyncd
root       315  0.0  0.0   1572  1172 ?        Ss   20:12   0:00 /usr/sbin/atd -f
avahi      316  0.0  0.1   4268  2272 ?        Ss   20:12   0:00 avahi-daemon: running [wandboard-mesa.local]
avahi      345  0.0  0.0   4092  1080 ?        S    20:12   0:00  \_ avahi-daemon: chroot helper
root       318  0.0  0.0   2080  1180 ?        Ss   20:12   0:00 /usr/sbin/crond -n
message+   319  1.2  0.1   4208  2628 ?        Ss   20:12   0:10 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
dhcpcd     320  0.0  0.1   4428  3552 ?        Ss   20:12   0:00 dhcpcd: [manager] [ip4] [ip6]
root       326  0.0  0.1   4660  2080 ?        S    20:12   0:00  \_ dhcpcd: [privileged proxy]
dhcpcd     387  0.0  0.0   4440  1440 ?        S    20:12   0:00  |   \_ dhcpcd: [BPF ARP] end0 192.168.1.72
dhcpcd     327  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [network proxy]
dhcpcd     328  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [control proxy]
root       323  0.0  0.1   6284  3268 ?        Ss   20:12   0:00 /usr/sbin/ofonod -n
root       324  0.1  0.0   1528  1076 ?        Ss   20:12   0:01 /usr/sbin/syslogd -F
root       325  0.6  0.2   8772  4812 ?        Ss   20:12   0:04 /usr/lib/systemd/systemd-logind
systemd+   346  0.0  0.2   9452  5948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-networkd
root       359  0.0  0.1   3704  2752 ?        Ss   20:12   0:00 /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     370  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     371  0.0  0.1   4276  2912 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     372  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     373  0.0  0.1   4468  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     374  0.0  0.1   4276  2832 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
ntp        365  0.0  0.2   7812  4796 ?        Ssl  20:12   0:00 /usr/sbin/ntpd -u ntp -p /run/ntpd.pid -g
root       368  0.0  0.0   1536  1024 tty1     Ss+  20:12   0:00 /sbin/agetty -o -p -- \u --noclear - linux
root       369  0.0  0.0   1564  1148 ttymxc0  Ss+  20:12   0:00 /sbin/agetty -8 -L ttymxc0 115200 linux
polkitd    378  0.3  0.6 109048 14152 ?        Ssl  20:12   0:02 /usr/lib/polkit-1/polkitd --no-debug
weston     381  0.1  0.3  10028  6600 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd --user
weston     383  0.0  0.1  10944  2148 ?        S    20:12   0:00  \_ (sd-pam)
weston    1586  0.0  0.1   3912  2472 ?        Ss   20:15   0:00  \_ /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
weston    1589  0.0  0.1  43120  4004 ?        Ssl  20:15   0:00  \_ /usr/libexec/at-spi-bus-launcher
weston    1594  0.0  0.1   3912  2592 ?        S    20:15   0:00  |   \_ /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 10 --address=unix:path=/run/user/1000/at-spi/bus
weston    1635  0.0  0.2  35636  4440 ?        Sl   20:15   0:00  \_ /usr/libexec/at-spi2-registryd --use-gnome-session
weston    2792  5.6  1.6  92616 33288 tty7     Ssl+ 20:19   0:22 /usr/bin/weston --continue-without-input --modules=systemd-notify.so --debug --debug --debug
weston    2794  0.0  0.1  10900  2200 tty7     S+   20:19   0:00  \_ (sd-pam)
weston    2818  0.0  0.3  13088  7548 ?        Ss   20:19   0:00  \_ /usr/libexec/weston-keyboard
weston    2819  0.3  0.7  21008 15368 ?        Ss   20:19   0:01  \_ /usr/libexec/weston-desktop-shell
root      4979  1.0  0.3  10028  6648 ?        Ss   20:24   0:00 /usr/lib/systemd/systemd --user
root      4981  0.0  0.1  10484  2116 ?        S    20:24   0:00  \_ (sd-pam)
root      5313 24.5  0.2   6776  5568 ?        Ss   20:25   0:00 sshd: root@notty
root      5318  175  0.1   4996  2924 ?        Rs   20:25   0:00  \_ ps -auxfww</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:25:46.519206" elapsed="0.001210"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:25:47.132734" level="INFO">${stdout} = ('1.64', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:25:46.521134" elapsed="0.611798"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:25:47.135428" level="INFO">${value} = 1.64</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:25:47.133656" elapsed="0.002024"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:25:47.135986" elapsed="0.000216"/>
</return>
<msg time="2026-02-19T20:25:47.137009" level="INFO">${cpu_load} = 1.64</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:25:46.520735" elapsed="0.616421"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:25:47.137661" level="INFO">CPU load: 1.64</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:25:47.137389" elapsed="0.000367"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<msg time="2026-02-19T20:25:47.138384" level="FAIL">'1.64 &lt; 1' should be true.</msg>
<arg>${cpu_load} &lt; ${CPU_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="FAIL" start="2026-02-19T20:25:47.137962" elapsed="0.000620">'1.64 &lt; 1' should be true.</status>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<status status="NOT RUN" start="2026-02-19T20:25:47.138895" elapsed="0.000068"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-02-19T20:25:47.139157" elapsed="0.000056"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${MEMORY_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:25:47.139395" elapsed="0.000052"/>
</kw>
<doc>Check if the Device is idle.</doc>
<status status="FAIL" start="2026-02-19T20:25:45.830785" elapsed="1.308893">'1.64 &lt; 1' should be true.</status>
</kw>
<kw name="Check Device Is IDLE" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:25:58.791621" level="INFO">${stdout} = ('USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND\nroot         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]\nroot         3  0.0  0.0      0     0 ?        ...</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>ps -auxfww</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:25:57.141659" elapsed="1.650169"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:25:58.794212" level="INFO">${formatted} = USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S   ...</msg>
<var>${formatted}</var>
<arg>r"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:25:58.792594" elapsed="0.001788"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:25:58.795475" level="INFO">USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [pool_workqueue_release]
root         4  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kvfree_rcu_reclaim]
root         5  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rcu_gp]
root         6  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sync_wq]
root         7  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-slub_flushwq]
root         9  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:0H-mmc_complete]
root        11  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:0-ipv6_addrconf]
root        12  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mm_percpu_wq]
root        13  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_tasks_trace_kthread]
root        14  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/0]
root        15  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_sched]
root        16  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_par_gp_kthread_worker/0]
root        17  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_gp_kthread_worker]
root        18  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/0]
root        19  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/0]
root        20  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/1]
root        21  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/1]
root        22  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/1]
root        23  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:0-events]
root        24  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:0H-events_highpri]
root        25  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/2]
root        26  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/2]
root        27  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/2]
root        28  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:0-rcu_gp]
root        29  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:0H-kblockd]
root        30  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/3]
root        31  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/3]
root        32  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/3]
root        34  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:0H-events_highpri]
root        35  0.3  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u17:0-xprtiod]
root        36  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:0-events_unbound]
root        39  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kdevtmpfs]
root        40  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-inet_frag_wq]
root        41  0.4  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:1-rpciod]
root        43  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:3-nfsiod]
root        44  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [oom_reaper]
root        45  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-writeback]
root        46  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kcompactd0]
root        47  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kblockd]
root        49  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:1-rpciod]
root        50  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:2-rpciod]
root        51  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ata_sff]
root        52  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:1-events]
root        57  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [watchdogd]
root        60  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:1H-kblockd]
root        61  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rpciod]
root        62  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-xprtiod]
root        63  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-cfg80211]
root        64  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kswapd0]
root        65  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:1-rpciod]
root        66  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-nfsiod]
root        67  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-120000.hdmi]
root        70  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cec-dw_hdmi]
root        71  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-dw-hdmi-cec]
root        72  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-130000.gpu]
root        73  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-134000.gpu]
root        74  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-2204000.gpu]
root        76  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc0]
root        78  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc1]
root        79  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc2]
root        80  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc3]
root        81  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [scsi_eh_0]
root        82  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-scsi_tmf_0]
root        83  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ci_otg]
root        84  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:1-rpciod]
root        85  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:2-events_unbound]
root        87  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u21:0]
root        88  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u22:0]
root        89  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u23:0]
root        90  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u24:0]
root        91  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u25:0]
root        92  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        93  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/286-mmc0]
root        95  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        96  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/287-mmc1]
root        99  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root       100  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/288-mmc2]
root       101  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2101000.jr-engine]
root       102  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:2-xprtiod]
root       104  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [hwrng]
root       105  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2102000.jr-engine]
root       106  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/105-2198000.mmc cd]
root       107  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/30-2190000.mmc cd]
root       108  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mmc_complete]
root       109  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:1H-mmc_complete]
root       113  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:5-events]
root       115  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mld]
root       116  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ipv6_addrconf]
root       117  0.3  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u16:1-130000.gpu]
root       119  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/297-imx_thermal]
root       123  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:1H]
root       125  0.3  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:4-xprtiod]
root       126  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:1H-events_highpri]
root       127  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:4-events_unbound]
root       128  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:4-rpciod]
root       129  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:3-rpciod]
root       131  0.5  0.0      0     0 ?        I    20:12   0:04  \_ [kworker/u17:5-rpciod]
root       132  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:5-rpciod]
root       248  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/298-vdoa]
root       250  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/301-coda-jpeg]
root       251  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-coda]
root       295  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:5-rpciod]
root       302  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:6-kvfree_rcu_reclaim]
root       305  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:6-nfsiod]
root       443  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:6-rpciod]
root      2202  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/u19:7-rpciod]
root      2292  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/2:1-events]
root      2342  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/3:0-events]
root      2373  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/1:1-cgroup_destroy]
root      2460  0.0  0.0      0     0 ?        I    20:18   0:00  \_ [kworker/0:0-rcu_gp]
root      3647  0.0  0.0      0     0 ?        I    20:21   0:00  \_ [kworker/u18:3-nfsiod]
root      4310  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/2:2-events]
root      4490  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:0-nfsiod]
root      4492  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u20:0-rpciod]
root      4493  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:3-rpciod]
root      4494  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:5-events_unbound]
root      4595  0.0  0.0      0     0 ?        I    20:23   0:00  \_ [kworker/0:1-events]
root      4607  0.0  0.0      0     0 ?        I    20:23   0:00  \_ [kworker/3:2-cgroup_destroy]
root      5022  0.0  0.0      0     0 ?        I    20:24   0:00  \_ [kworker/1:2-rcu_gp]
root         1  2.4  0.3  11272  7468 ?        Ss   20:12   0:20 /sbin/init
rpc        157  0.0  0.0   2824  1836 ?        Ss   20:12   0:00 /usr/sbin/rpcbind -w -f
root       159  0.5  0.3  33328  8104 ?        Ss   20:12   0:04 /usr/lib/systemd/systemd-journald
root       194  0.0  0.1   8328  3736 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-userdbd
root      4158  0.0  0.2   8816  4128 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root      4164  0.0  0.2   8816  4392 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root      4170  0.0  0.2   8816  4432 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root       204  0.1  0.2  20304  5440 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-udevd
systemd+   241  0.0  0.2   8648  4948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-resolved
systemd+   246  0.0  0.2  17744  4628 ?        Ssl  20:12   0:00 /usr/lib/systemd/systemd-timesyncd
root       315  0.0  0.0   1572  1172 ?        Ss   20:12   0:00 /usr/sbin/atd -f
avahi      316  0.0  0.1   4268  2272 ?        Ss   20:12   0:00 avahi-daemon: running [wandboard-mesa.local]
avahi      345  0.0  0.0   4092  1080 ?        S    20:12   0:00  \_ avahi-daemon: chroot helper
root       318  0.0  0.0   2080  1180 ?        Ss   20:12   0:00 /usr/sbin/crond -n
message+   319  1.2  0.1   4208  2628 ?        Ss   20:12   0:10 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
dhcpcd     320  0.0  0.1   4428  3552 ?        Ss   20:12   0:00 dhcpcd: [manager] [ip4] [ip6]
root       326  0.0  0.1   4660  2080 ?        S    20:12   0:00  \_ dhcpcd: [privileged proxy]
dhcpcd     387  0.0  0.0   4440  1440 ?        S    20:12   0:00  |   \_ dhcpcd: [BPF ARP] end0 192.168.1.72
dhcpcd     327  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [network proxy]
dhcpcd     328  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [control proxy]
root       323  0.0  0.1   6284  3268 ?        Ss   20:12   0:00 /usr/sbin/ofonod -n
root       324  0.1  0.0   1528  1076 ?        Ss   20:12   0:01 /usr/sbin/syslogd -F
root       325  0.6  0.2   8772  4812 ?        Ss   20:12   0:04 /usr/lib/systemd/systemd-logind
systemd+   346  0.0  0.2   9452  5948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-networkd
root       359  0.0  0.1   3704  2752 ?        Ss   20:12   0:00 /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     370  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     371  0.0  0.1   4276  2912 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     372  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     373  0.0  0.1   4468  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     374  0.0  0.1   4276  2832 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
ntp        365  0.0  0.2   7812  4796 ?        Ssl  20:12   0:00 /usr/sbin/ntpd -u ntp -p /run/ntpd.pid -g
root       368  0.0  0.0   1536  1024 tty1     Ss+  20:12   0:00 /sbin/agetty -o -p -- \u --noclear - linux
root       369  0.0  0.0   1564  1148 ttymxc0  Ss+  20:12   0:00 /sbin/agetty -8 -L ttymxc0 115200 linux
polkitd    378  0.3  0.6 109048 14152 ?        Ssl  20:12   0:02 /usr/lib/polkit-1/polkitd --no-debug
weston     381  0.1  0.3  10028  6600 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd --user
weston     383  0.0  0.1  10944  2148 ?        S    20:12   0:00  \_ (sd-pam)
weston    1586  0.0  0.1   3912  2472 ?        Ss   20:15   0:00  \_ /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
weston    1589  0.0  0.1  43120  4004 ?        Ssl  20:15   0:00  \_ /usr/libexec/at-spi-bus-launcher
weston    1594  0.0  0.1   3912  2592 ?        S    20:15   0:00  |   \_ /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 10 --address=unix:path=/run/user/1000/at-spi/bus
weston    1635  0.0  0.2  35636  4440 ?        Sl   20:15   0:00  \_ /usr/libexec/at-spi2-registryd --use-gnome-session
weston    2792  5.5  1.6  93636 33288 tty7     Ssl+ 20:19   0:22 /usr/bin/weston --continue-without-input --modules=systemd-notify.so --debug --debug --debug
weston    2794  0.0  0.1  10900  2200 tty7     S+   20:19   0:00  \_ (sd-pam)
weston    2818  0.0  0.3  13088  7548 ?        Ss   20:19   0:00  \_ /usr/libexec/weston-keyboard
weston    2819  0.3  0.7  21008 15368 ?        Ss   20:19   0:01  \_ /usr/libexec/weston-desktop-shell
root      5364  9.2  0.2   6776  5480 ?        Ss   20:25   0:00 sshd: root@notty
root      5383  175  0.1   4996  2804 ?        Rs   20:25   0:00  \_ ps -auxfww
root      5376 65.9  0.3  10028  6736 ?        Ss   20:25   0:00 /usr/lib/systemd/systemd --user
root      5378  0.0  0.1  10484  2072 ?        S    20:25   0:00  \_ (sd-pam)</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:25:58.794999" elapsed="0.000971"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:25:59.382384" level="INFO">${stdout} = ('1.35', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:25:58.796706" elapsed="0.585937"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:25:59.384889" level="INFO">${value} = 1.35</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:25:59.383320" elapsed="0.001736"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:25:59.385350" elapsed="0.000243"/>
</return>
<msg time="2026-02-19T20:25:59.386264" level="INFO">${cpu_load} = 1.35</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:25:58.796280" elapsed="0.590128"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:25:59.387159" level="INFO">CPU load: 1.35</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:25:59.386655" elapsed="0.000611"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<msg time="2026-02-19T20:25:59.387944" level="FAIL">'1.35 &lt; 1' should be true.</msg>
<arg>${cpu_load} &lt; ${CPU_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="FAIL" start="2026-02-19T20:25:59.387490" elapsed="0.000584">'1.35 &lt; 1' should be true.</status>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<status status="NOT RUN" start="2026-02-19T20:25:59.388780" elapsed="0.000077"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-02-19T20:25:59.389067" elapsed="0.000058"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${MEMORY_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:25:59.389316" elapsed="0.000054"/>
</kw>
<doc>Check if the Device is idle.</doc>
<status status="FAIL" start="2026-02-19T20:25:57.140738" elapsed="2.248833">'1.35 &lt; 1' should be true.</status>
</kw>
<kw name="Check Device Is IDLE" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:26:11.059742" level="INFO">${stdout} = ('USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND\nroot         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]\nroot         3  0.0  0.0      0     0 ?        ...</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>ps -auxfww</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:26:09.391470" elapsed="1.668490"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:26:11.062266" level="INFO">${formatted} = USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S   ...</msg>
<var>${formatted}</var>
<arg>r"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:26:11.060662" elapsed="0.001770"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:26:11.063702" level="INFO">USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [pool_workqueue_release]
root         4  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kvfree_rcu_reclaim]
root         5  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rcu_gp]
root         6  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sync_wq]
root         7  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-slub_flushwq]
root         9  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:0H-mmc_complete]
root        11  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:0-ipv6_addrconf]
root        12  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mm_percpu_wq]
root        13  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_tasks_trace_kthread]
root        14  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/0]
root        15  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_sched]
root        16  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_par_gp_kthread_worker/0]
root        17  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_gp_kthread_worker]
root        18  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/0]
root        19  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/0]
root        20  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/1]
root        21  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/1]
root        22  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/1]
root        23  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:0-events]
root        24  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:0H-events_highpri]
root        25  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/2]
root        26  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/2]
root        27  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/2]
root        28  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:0-rcu_gp]
root        29  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:0H-kblockd]
root        30  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/3]
root        31  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/3]
root        32  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/3]
root        34  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:0H-events_highpri]
root        35  0.3  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u17:0-xprtiod]
root        36  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:0-kvfree_rcu_reclaim]
root        39  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kdevtmpfs]
root        40  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-inet_frag_wq]
root        41  0.4  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:1-rpciod]
root        43  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:3-nfsiod]
root        44  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [oom_reaper]
root        45  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-writeback]
root        46  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kcompactd0]
root        47  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kblockd]
root        49  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:1-rpciod]
root        50  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:2-rpciod]
root        51  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ata_sff]
root        52  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:1-events]
root        57  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [watchdogd]
root        60  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:1H-kblockd]
root        61  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rpciod]
root        62  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-xprtiod]
root        63  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-cfg80211]
root        64  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kswapd0]
root        65  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:1-rpciod]
root        66  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-nfsiod]
root        67  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-120000.hdmi]
root        70  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cec-dw_hdmi]
root        71  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-dw-hdmi-cec]
root        72  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-130000.gpu]
root        73  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-134000.gpu]
root        74  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-2204000.gpu]
root        76  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc0]
root        78  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc1]
root        79  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc2]
root        80  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc3]
root        81  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [scsi_eh_0]
root        82  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-scsi_tmf_0]
root        83  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ci_otg]
root        84  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:1-rpciod]
root        85  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:2-kvfree_rcu_reclaim]
root        87  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u21:0]
root        88  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u22:0]
root        89  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u23:0]
root        90  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u24:0]
root        91  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u25:0]
root        92  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        93  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/286-mmc0]
root        95  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        96  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/287-mmc1]
root        99  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root       100  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/288-mmc2]
root       101  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2101000.jr-engine]
root       102  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:2-events_unbound]
root       104  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [hwrng]
root       105  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2102000.jr-engine]
root       106  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/105-2198000.mmc cd]
root       107  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/30-2190000.mmc cd]
root       108  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mmc_complete]
root       109  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:1H-mmc_complete]
root       113  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:5-events]
root       115  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mld]
root       116  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ipv6_addrconf]
root       117  0.3  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u16:1-130000.gpu]
root       119  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/297-imx_thermal]
root       123  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:1H]
root       125  0.3  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:4-xprtiod]
root       126  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:1H-events_highpri]
root       127  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:4-events_unbound]
root       128  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:4-rpciod]
root       129  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:3-rpciod]
root       131  0.5  0.0      0     0 ?        I    20:12   0:04  \_ [kworker/u17:5-rpciod]
root       132  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:5-rpciod]
root       248  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/298-vdoa]
root       250  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/301-coda-jpeg]
root       251  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-coda]
root       295  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:5-rpciod]
root       302  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:6-kvfree_rcu_reclaim]
root       305  0.1  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:6-nfsiod]
root       443  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:6-rpciod]
root      2202  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/u19:7-rpciod]
root      2292  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/2:1-events]
root      2342  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/3:0-events]
root      2373  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/1:1-cgroup_destroy]
root      2460  0.0  0.0      0     0 ?        I    20:18   0:00  \_ [kworker/0:0-cgroup_destroy]
root      3647  0.0  0.0      0     0 ?        I    20:21   0:00  \_ [kworker/u18:3-nfsiod]
root      4310  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/2:2-events]
root      4490  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:0-nfsiod]
root      4492  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u20:0-rpciod]
root      4493  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:3-rpciod]
root      4494  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:5-events_unbound]
root      4595  0.0  0.0      0     0 ?        I    20:23   0:00  \_ [kworker/0:1-events_power_efficient]
root      4607  0.0  0.0      0     0 ?        I    20:23   0:00  \_ [kworker/3:2-cgroup_destroy]
root      5022  0.0  0.0      0     0 ?        I    20:24   0:00  \_ [kworker/1:2-events]
root         1  2.4  0.3  11272  7468 ?        Ss   20:12   0:20 /sbin/init
rpc        157  0.0  0.0   2824  1836 ?        Ss   20:12   0:00 /usr/sbin/rpcbind -w -f
root       159  0.5  0.3  33328  8232 ?        Ss   20:12   0:04 /usr/lib/systemd/systemd-journald
root       194  0.0  0.1   8328  3736 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-userdbd
root      4158  0.0  0.2   8816  4128 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root      4164  0.0  0.2   8816  4392 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root      4170  0.0  0.2   8816  4432 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root       204  0.1  0.2  20304  5440 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-udevd
systemd+   241  0.0  0.2   8648  4948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-resolved
systemd+   246  0.0  0.2  17744  4628 ?        Ssl  20:12   0:00 /usr/lib/systemd/systemd-timesyncd
root       315  0.0  0.0   1572  1172 ?        Ss   20:12   0:00 /usr/sbin/atd -f
avahi      316  0.0  0.1   4268  2272 ?        Ss   20:12   0:00 avahi-daemon: running [wandboard-mesa.local]
avahi      345  0.0  0.0   4092  1080 ?        S    20:12   0:00  \_ avahi-daemon: chroot helper
root       318  0.0  0.0   2080  1180 ?        Ss   20:12   0:00 /usr/sbin/crond -n
message+   319  1.2  0.1   4208  2628 ?        Ss   20:12   0:10 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
dhcpcd     320  0.0  0.1   4428  3552 ?        Ss   20:12   0:00 dhcpcd: [manager] [ip4] [ip6]
root       326  0.0  0.1   4660  2080 ?        S    20:12   0:00  \_ dhcpcd: [privileged proxy]
dhcpcd     387  0.0  0.0   4440  1440 ?        S    20:12   0:00  |   \_ dhcpcd: [BPF ARP] end0 192.168.1.72
dhcpcd     327  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [network proxy]
dhcpcd     328  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [control proxy]
root       323  0.0  0.1   6284  3268 ?        Ss   20:12   0:00 /usr/sbin/ofonod -n
root       324  0.1  0.0   1528  1076 ?        Ss   20:12   0:01 /usr/sbin/syslogd -F
root       325  0.6  0.2   8772  4812 ?        Ss   20:12   0:05 /usr/lib/systemd/systemd-logind
systemd+   346  0.0  0.2   9452  5948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-networkd
root       359  0.0  0.1   3704  2752 ?        Ss   20:12   0:00 /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     370  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     371  0.0  0.1   4276  2912 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     372  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     373  0.0  0.1   4468  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     374  0.0  0.1   4276  2832 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
ntp        365  0.0  0.2   7812  4796 ?        Ssl  20:12   0:00 /usr/sbin/ntpd -u ntp -p /run/ntpd.pid -g
root       368  0.0  0.0   1536  1024 tty1     Ss+  20:12   0:00 /sbin/agetty -o -p -- \u --noclear - linux
root       369  0.0  0.0   1564  1148 ttymxc0  Ss+  20:12   0:00 /sbin/agetty -8 -L ttymxc0 115200 linux
polkitd    378  0.3  0.6 109048 14152 ?        Ssl  20:12   0:02 /usr/lib/polkit-1/polkitd --no-debug
weston     381  0.1  0.3  10028  6600 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd --user
weston     383  0.0  0.1  10944  2148 ?        S    20:12   0:00  \_ (sd-pam)
weston    1586  0.0  0.1   3912  2472 ?        Ss   20:15   0:00  \_ /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
weston    1589  0.0  0.1  43120  4004 ?        Ssl  20:15   0:00  \_ /usr/libexec/at-spi-bus-launcher
weston    1594  0.0  0.1   3912  2592 ?        S    20:15   0:00  |   \_ /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 10 --address=unix:path=/run/user/1000/at-spi/bus
weston    1635  0.0  0.2  35636  4440 ?        Sl   20:15   0:00  \_ /usr/libexec/at-spi2-registryd --use-gnome-session
weston    2792  5.3  1.6  93636 33288 tty7     Ssl+ 20:19   0:22 /usr/bin/weston --continue-without-input --modules=systemd-notify.so --debug --debug --debug
weston    2794  0.0  0.1  10900  2200 tty7     S+   20:19   0:00  \_ (sd-pam)
weston    2818  0.0  0.3  13088  7548 ?        Ss   20:19   0:00  \_ /usr/libexec/weston-keyboard
weston    2819  0.3  0.7  21008 15368 ?        Ss   20:19   0:01  \_ /usr/libexec/weston-desktop-shell
root      5414  9.2  0.2   6776  5520 ?        Ss   20:26   0:00 sshd: root@notty
root      5430  150  0.1   4996  2868 ?        Rs   20:26   0:00  \_ ps -auxfww
root      5423 67.3  0.3  10024  6624 ?        Ss   20:26   0:00 /usr/lib/systemd/systemd --user
root      5425  0.0  0.1  10484  2072 ?        S    20:26   0:00  \_ (sd-pam)</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:26:11.063063" elapsed="0.001281"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:26:11.653428" level="INFO">${stdout} = ('1.14', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:26:11.065156" elapsed="0.588500"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:26:11.655767" level="INFO">${value} = 1.14</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:26:11.654310" elapsed="0.001614"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:26:11.656204" elapsed="0.000205"/>
</return>
<msg time="2026-02-19T20:26:11.657076" level="INFO">${cpu_load} = 1.14</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:26:11.064753" elapsed="0.592484"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:26:11.658011" level="INFO">CPU load: 1.14</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:26:11.657758" elapsed="0.000346"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<msg time="2026-02-19T20:26:11.658726" level="FAIL">'1.14 &lt; 1' should be true.</msg>
<arg>${cpu_load} &lt; ${CPU_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="FAIL" start="2026-02-19T20:26:11.658307" elapsed="0.000556">'1.14 &lt; 1' should be true.</status>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<status status="NOT RUN" start="2026-02-19T20:26:11.659195" elapsed="0.000066"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-02-19T20:26:11.659457" elapsed="0.000055"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${MEMORY_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:26:11.659699" elapsed="0.000052"/>
</kw>
<doc>Check if the Device is idle.</doc>
<status status="FAIL" start="2026-02-19T20:26:09.390546" elapsed="2.269392">'1.14 &lt; 1' should be true.</status>
</kw>
<kw name="Check Device Is IDLE" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:26:23.249817" level="INFO">${stdout} = ('USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND\nroot         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]\nroot         3  0.0  0.0      0     0 ?        ...</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>ps -auxfww</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:26:21.666936" elapsed="1.583087"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:26:23.252289" level="INFO">${formatted} = USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S   ...</msg>
<var>${formatted}</var>
<arg>r"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:26:23.250712" elapsed="0.001744"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:26:23.253684" level="INFO">USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [pool_workqueue_release]
root         4  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kvfree_rcu_reclaim]
root         5  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rcu_gp]
root         6  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sync_wq]
root         7  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-slub_flushwq]
root         9  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:0H-mmc_complete]
root        11  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:0-ipv6_addrconf]
root        12  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mm_percpu_wq]
root        13  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_tasks_trace_kthread]
root        14  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/0]
root        15  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_sched]
root        16  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_par_gp_kthread_worker/0]
root        17  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_gp_kthread_worker]
root        18  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/0]
root        19  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/0]
root        20  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/1]
root        21  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/1]
root        22  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/1]
root        23  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:0-events]
root        24  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:0H-events_highpri]
root        25  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/2]
root        26  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/2]
root        27  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/2]
root        28  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:0-rcu_gp]
root        29  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:0H-kblockd]
root        30  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/3]
root        31  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/3]
root        32  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/3]
root        34  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:0H-events_highpri]
root        35  0.3  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u17:0-xprtiod]
root        36  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:0-events_unbound]
root        39  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kdevtmpfs]
root        40  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-inet_frag_wq]
root        41  0.4  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:1-rpciod]
root        43  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:3-nfsiod]
root        44  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [oom_reaper]
root        45  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-writeback]
root        46  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kcompactd0]
root        47  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kblockd]
root        49  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:1-rpciod]
root        50  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:2-rpciod]
root        51  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ata_sff]
root        52  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:1-events]
root        57  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [watchdogd]
root        60  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:1H-kblockd]
root        61  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rpciod]
root        62  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-xprtiod]
root        63  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-cfg80211]
root        64  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kswapd0]
root        65  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:1-rpciod]
root        66  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-nfsiod]
root        67  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-120000.hdmi]
root        70  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cec-dw_hdmi]
root        71  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-dw-hdmi-cec]
root        72  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-130000.gpu]
root        73  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-134000.gpu]
root        74  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-2204000.gpu]
root        76  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc0]
root        78  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc1]
root        79  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc2]
root        80  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc3]
root        81  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [scsi_eh_0]
root        82  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-scsi_tmf_0]
root        83  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ci_otg]
root        84  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:1-rpciod]
root        85  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:2-events_unbound]
root        87  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u21:0]
root        88  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u22:0]
root        89  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u23:0]
root        90  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u24:0]
root        91  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u25:0]
root        92  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        93  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/286-mmc0]
root        95  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        96  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/287-mmc1]
root        99  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root       100  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/288-mmc2]
root       101  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2101000.jr-engine]
root       102  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:2-kvfree_rcu_reclaim]
root       104  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [hwrng]
root       105  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2102000.jr-engine]
root       106  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/105-2198000.mmc cd]
root       107  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/30-2190000.mmc cd]
root       108  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mmc_complete]
root       109  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:1H-mmc_complete]
root       113  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:5-events]
root       115  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mld]
root       116  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ipv6_addrconf]
root       117  0.3  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u16:1-130000.gpu]
root       119  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/297-imx_thermal]
root       123  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:1H]
root       125  0.3  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:4-xprtiod]
root       126  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:1H-events_highpri]
root       127  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:4-events_unbound]
root       128  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:4-rpciod]
root       129  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:3-rpciod]
root       131  0.5  0.0      0     0 ?        I    20:12   0:04  \_ [kworker/u17:5-rpciod]
root       132  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:5-rpciod]
root       248  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/298-vdoa]
root       250  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/301-coda-jpeg]
root       251  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-coda]
root       295  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:5-rpciod]
root       302  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:6-kvfree_rcu_reclaim]
root       305  0.1  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:6-nfsiod]
root       443  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:6-rpciod]
root      2202  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/u19:7-rpciod]
root      2292  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/2:1-cgroup_destroy]
root      2342  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/3:0-events]
root      2373  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/1:1-cgroup_destroy]
root      2460  0.0  0.0      0     0 ?        I    20:18   0:00  \_ [kworker/0:0-events]
root      3647  0.0  0.0      0     0 ?        I    20:21   0:00  \_ [kworker/u18:3-nfsiod]
root      4310  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/2:2-events]
root      4490  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:0-nfsiod]
root      4492  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u20:0-rpciod]
root      4493  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:3-rpciod]
root      4494  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:5-events_unbound]
root      4595  0.0  0.0      0     0 ?        I    20:23   0:00  \_ [kworker/0:1-events]
root      4607  0.0  0.0      0     0 ?        I    20:23   0:00  \_ [kworker/3:2-cgroup_destroy]
root      5022  0.0  0.0      0     0 ?        I    20:24   0:00  \_ [kworker/1:2-events]
root         1  2.4  0.3  11272  7468 ?        Ss   20:12   0:20 /sbin/init
rpc        157  0.0  0.0   2824  1836 ?        Ss   20:12   0:00 /usr/sbin/rpcbind -w -f
root       159  0.5  0.4  33328  8360 ?        Ss   20:12   0:04 /usr/lib/systemd/systemd-journald
root       194  0.0  0.1   8328  3736 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-userdbd
root      4158  0.0  0.2   8816  4128 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root      4164  0.0  0.2   8816  4392 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root      4170  0.0  0.2   8816  4432 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root       204  0.1  0.2  20304  5440 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-udevd
systemd+   241  0.0  0.2   8648  4948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-resolved
systemd+   246  0.0  0.2  17744  4628 ?        Ssl  20:12   0:00 /usr/lib/systemd/systemd-timesyncd
root       315  0.0  0.0   1572  1172 ?        Ss   20:12   0:00 /usr/sbin/atd -f
avahi      316  0.0  0.1   4268  2272 ?        Ss   20:12   0:00 avahi-daemon: running [wandboard-mesa.local]
avahi      345  0.0  0.0   4092  1080 ?        S    20:12   0:00  \_ avahi-daemon: chroot helper
root       318  0.0  0.0   2080  1180 ?        Ss   20:12   0:00 /usr/sbin/crond -n
message+   319  1.2  0.1   4208  2628 ?        Ss   20:12   0:10 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
dhcpcd     320  0.0  0.1   4428  3552 ?        Ss   20:12   0:00 dhcpcd: [manager] [ip4] [ip6]
root       326  0.0  0.1   4660  2080 ?        S    20:12   0:00  \_ dhcpcd: [privileged proxy]
dhcpcd     387  0.0  0.0   4440  1440 ?        S    20:12   0:00  |   \_ dhcpcd: [BPF ARP] end0 192.168.1.72
dhcpcd     327  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [network proxy]
dhcpcd     328  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [control proxy]
root       323  0.0  0.1   6284  3268 ?        Ss   20:12   0:00 /usr/sbin/ofonod -n
root       324  0.1  0.0   1528  1076 ?        Ss   20:12   0:01 /usr/sbin/syslogd -F
root       325  0.6  0.2   8772  4812 ?        Ss   20:12   0:05 /usr/lib/systemd/systemd-logind
systemd+   346  0.0  0.2   9452  5948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-networkd
root       359  0.0  0.1   3704  2752 ?        Ss   20:12   0:00 /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     370  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     371  0.0  0.1   4276  2912 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     372  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     373  0.0  0.1   4468  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     374  0.0  0.1   4276  2832 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
ntp        365  0.0  0.2   7812  4796 ?        Ssl  20:12   0:00 /usr/sbin/ntpd -u ntp -p /run/ntpd.pid -g
root       368  0.0  0.0   1536  1024 tty1     Ss+  20:12   0:00 /sbin/agetty -o -p -- \u --noclear - linux
root       369  0.0  0.0   1564  1148 ttymxc0  Ss+  20:12   0:00 /sbin/agetty -8 -L ttymxc0 115200 linux
polkitd    378  0.3  0.6 109048 14152 ?        Ssl  20:12   0:02 /usr/lib/polkit-1/polkitd --no-debug
weston     381  0.1  0.3  10028  6600 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd --user
weston     383  0.0  0.1  10944  2148 ?        S    20:12   0:00  \_ (sd-pam)
weston    1586  0.0  0.1   3912  2472 ?        Ss   20:15   0:00  \_ /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
weston    1589  0.0  0.1  43120  4004 ?        Ssl  20:15   0:00  \_ /usr/libexec/at-spi-bus-launcher
weston    1594  0.0  0.1   3912  2592 ?        S    20:15   0:00  |   \_ /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 10 --address=unix:path=/run/user/1000/at-spi/bus
weston    1635  0.0  0.2  35636  4440 ?        Sl   20:15   0:00  \_ /usr/libexec/at-spi2-registryd --use-gnome-session
weston    2792  5.2  1.6  93636 33288 tty7     Ssl+ 20:19   0:22 /usr/bin/weston --continue-without-input --modules=systemd-notify.so --debug --debug --debug
weston    2794  0.0  0.1  10900  2200 tty7     S+   20:19   0:00  \_ (sd-pam)
weston    2818  0.0  0.3  13088  7548 ?        Ss   20:19   0:00  \_ /usr/libexec/weston-keyboard
weston    2819  0.3  0.7  21008 15368 ?        Ss   20:19   0:01  \_ /usr/libexec/weston-desktop-shell
root      5479  8.1  0.2   6776  5540 ?        Ss   20:26   0:00 sshd: root@notty
root      5495  150  0.1   4996  2816 ?        Rs   20:26   0:00  \_ ps -auxfww
root      5488 64.6  0.3  10028  6624 ?        Ss   20:26   0:00 /usr/lib/systemd/systemd --user
root      5490  0.0  0.1  10484  2128 ?        S    20:26   0:00  \_ (sd-pam)</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:26:23.253046" elapsed="0.001449"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:26:23.863734" level="INFO">${stdout} = ('0.97', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:26:23.255263" elapsed="0.608665"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:26:23.866457" level="INFO">${value} = 0.97</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:26:23.864988" elapsed="0.001673"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:26:23.866950" elapsed="0.000207"/>
</return>
<msg time="2026-02-19T20:26:23.867845" level="INFO">${cpu_load} = 0.97</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:26:23.254849" elapsed="0.613146"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:26:23.868490" level="INFO">CPU load: 0.97</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:26:23.868231" elapsed="0.000368"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${cpu_load} &lt; ${CPU_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:26:23.868807" elapsed="0.000371"/>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:26:24.407708" level="INFO">${stdout} = ('191', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>free -m | grep Mem | awk '{print $3}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:26:23.869869" elapsed="0.538037"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:26:24.410050" level="INFO">${value} = 191.0</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:26:24.408622" elapsed="0.001583"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:26:24.410487" elapsed="0.000244"/>
</return>
<msg time="2026-02-19T20:26:24.411370" level="INFO">${memory_used} = 191.0</msg>
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:26:23.869475" elapsed="0.542040"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:26:24.412854" level="INFO">Memory used: 191.0</msg>
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:26:24.412150" elapsed="0.000941"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${MEMORY_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:26:24.413637" elapsed="0.000968"/>
</kw>
<doc>Check if the Device is idle.</doc>
<status status="PASS" start="2026-02-19T20:26:21.661039" elapsed="2.753921"/>
</kw>
<arg>18x</arg>
<arg>10s</arg>
<arg>Check Device Is IDLE</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:25:45.830199" elapsed="38.585037"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Webdriver Remote Start" owner="keywords_common">
<kw name="Ssh Webdriver Remote Stop" owner="TestUtils">
<msg time="2026-02-19T20:26:25.212714" level="INFO">RUN: Killing all 'WPEWebDriver' related processes ...</msg>
<arg>%{TEST_BOARD_IP}</arg>
<status status="PASS" start="2026-02-19T20:26:24.418096" elapsed="0.794952"/>
</kw>
<kw name="Ssh Force Kill" owner="TestUtils">
<msg time="2026-02-19T20:26:26.001044" level="INFO">RUN: Killing all 'wpe-simple-launcher' related processes ...</msg>
<arg>%{TEST_BOARD_IP}</arg>
<arg>wpe-simple-launcher</arg>
<doc>Force kill all related process.</doc>
<status status="PASS" start="2026-02-19T20:26:25.213673" elapsed="0.787696"/>
</kw>
<kw name="Ssh Webdriver Remote Start" owner="TestUtils">
<arg>%{TEST_BOARD_IP}</arg>
<arg>%{TEST_BOARD_WEBDRIVER_PORT}</arg>
<status status="PASS" start="2026-02-19T20:26:26.002019" elapsed="0.007836"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-02-19T20:26:31.013422" level="INFO">Slept 5 seconds.</msg>
<arg>5</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-02-19T20:26:26.011647" elapsed="5.002460"/>
</kw>
<kw name="Create WPEWebKitOptions" owner="keywords_common">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:26:31.021029" level="INFO">${wpe_options} = &lt;selenium.webdriver.wpewebkit.options.Options object at 0x72978d667fb0&gt;</msg>
<var>${wpe_options}</var>
<arg>sys.modules['selenium.webdriver'].WPEWebKitOptions()</arg>
<arg>sys, selenium.webdriver</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:26:31.018753" elapsed="0.002350"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-02-19T20:26:31.021936" level="INFO">${wpe_options.binary_location} = /usr/bin/wpe-exported-wayland</msg>
<var>${wpe_options.binary_location}</var>
<arg>${binary_path}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-02-19T20:26:31.021407" elapsed="0.000591"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Call Method" owner="BuiltIn">
<arg>${wpe_options}</arg>
<arg>add_argument</arg>
<arg>${param}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-02-19T20:26:31.023045" elapsed="0.000442"/>
</kw>
<var name="${param}">--automation</var>
<status status="PASS" start="2026-02-19T20:26:31.022768" elapsed="0.000834"/>
</iter>
<var>${param}</var>
<value>@{other_params}</value>
<status status="PASS" start="2026-02-19T20:26:31.022252" elapsed="0.001495"/>
</for>
<kw name="Call Method" owner="BuiltIn">
<arg>${wpe_options}</arg>
<arg>set_capability</arg>
<arg>browserName</arg>
<arg>${binary_name}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-02-19T20:26:31.023974" elapsed="0.000402"/>
</kw>
<return>
<value>${wpe_options}</value>
<status status="PASS" start="2026-02-19T20:26:31.024521" elapsed="0.000240"/>
</return>
<msg time="2026-02-19T20:26:31.025072" level="INFO">${wpe_options} = &lt;selenium.webdriver.wpewebkit.options.Options object at 0x72978d667fb0&gt;</msg>
<var>${wpe_options}</var>
<arg>wpe-simple-launcher</arg>
<arg>/usr/bin/wpe-exported-wayland</arg>
<arg>--automation</arg>
<arg>@{other_params}</arg>
<doc>Creates and configures WPEWebKit options for WebDriver session.</doc>
<status status="PASS" start="2026-02-19T20:26:31.016526" elapsed="0.008615"/>
</kw>
<kw name="Create Webdriver" owner="SeleniumLibrary">
<msg time="2026-02-19T20:26:31.026300" level="INFO">Creating an instance of the Remote WebDriver.</msg>
<arg>Remote</arg>
<arg>command_executor=%{TEST_BOARD_IP}:%{TEST_BOARD_WEBDRIVER_PORT}</arg>
<arg>options=${wpe_options}</arg>
<doc>Creates an instance of Selenium WebDriver.</doc>
<status status="PASS" start="2026-02-19T20:26:31.025470" elapsed="0.962498"/>
</kw>
<doc>Starts WebDriver session on remote test board with WPE launcher.</doc>
<timeout value="2 minutes"/>
<status status="PASS" start="2026-02-19T20:26:24.416999" elapsed="7.571440"/>
</kw>
<arg>20x</arg>
<arg>1000ms</arg>
<arg>Webdriver Remote Start</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:26:24.415858" elapsed="7.573068"/>
</kw>
<status status="PASS" start="2026-02-19T20:25:45.829800" elapsed="46.159997"/>
</kw>
<test id="s1-s10-t1" name="Run MotionMark And Validate Score" line="21">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Device Is IDLE" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:26:32.698681" level="INFO">${stdout} = ('USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND\nroot         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]\nroot         3  0.0  0.0      0     0 ?        ...</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>ps -auxfww</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:26:31.993050" elapsed="0.705838"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:26:32.701823" level="INFO">${formatted} = USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S   ...</msg>
<var>${formatted}</var>
<arg>r"""${stdout}[0]"""</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:26:32.699662" elapsed="0.002334"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:26:32.702772" level="INFO">USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    20:12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [pool_workqueue_release]
root         4  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kvfree_rcu_reclaim]
root         5  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rcu_gp]
root         6  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sync_wq]
root         7  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-slub_flushwq]
root         9  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:0H-mmc_complete]
root        11  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u16:0-ipv6_addrconf]
root        12  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mm_percpu_wq]
root        13  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_tasks_trace_kthread]
root        14  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/0]
root        15  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [rcu_sched]
root        16  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_par_gp_kthread_worker/0]
root        17  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [rcu_exp_gp_kthread_worker]
root        18  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/0]
root        19  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/0]
root        20  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/1]
root        21  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/1]
root        22  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/1]
root        23  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/1:0-mm_percpu_wq]
root        24  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:0H-events_highpri]
root        25  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/2]
root        26  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/2]
root        27  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/2]
root        28  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/2:0-rcu_gp]
root        29  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:0H-kblockd]
root        30  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cpuhp/3]
root        31  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [migration/3]
root        32  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [ksoftirqd/3]
root        34  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:0H-events_highpri]
root        35  0.3  0.0      0     0 ?        I    20:12   0:02  \_ [kworker/u17:0-xprtiod]
root        36  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:0-events_unbound]
root        39  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kdevtmpfs]
root        40  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-inet_frag_wq]
root        41  0.4  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:1-rpciod]
root        43  0.2  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:3-nfsiod]
root        44  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [oom_reaper]
root        45  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-writeback]
root        46  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kcompactd0]
root        47  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-kblockd]
root        49  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:1-rpciod]
root        50  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:2-rpciod]
root        51  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ata_sff]
root        52  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/3:1-mm_percpu_wq]
root        57  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [watchdogd]
root        60  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/3:1H-kblockd]
root        61  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-rpciod]
root        62  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-xprtiod]
root        63  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-cfg80211]
root        64  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [kswapd0]
root        65  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:1-rpciod]
root        66  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-nfsiod]
root        67  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-120000.hdmi]
root        70  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [cec-dw_hdmi]
root        71  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/269-dw-hdmi-cec]
root        72  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-130000.gpu]
root        73  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-134000.gpu]
root        74  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-2204000.gpu]
root        76  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc0]
root        78  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc1]
root        79  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc2]
root        80  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [card1-crtc3]
root        81  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [scsi_eh_0]
root        82  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-scsi_tmf_0]
root        83  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ci_otg]
root        84  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:1-rpciod]
root        85  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:2-xprtiod]
root        87  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u21:0]
root        88  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u22:0]
root        89  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u23:0]
root        90  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u24:0]
root        91  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/u25:0]
root        92  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        93  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/286-mmc0]
root        95  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root        96  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/287-mmc1]
root        99  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-sdhci]
root       100  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/288-mmc2]
root       101  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2101000.jr-engine]
root       102  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:2-xprtiod]
root       104  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [hwrng]
root       105  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [2102000.jr-engine]
root       106  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/105-2198000.mmc cd]
root       107  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/30-2190000.mmc cd]
root       108  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mmc_complete]
root       109  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/0:1H-mmc_complete]
root       113  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/0:5-events]
root       115  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-mld]
root       116  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-ipv6_addrconf]
root       117  0.3  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u16:1-130000.gpu]
root       119  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/297-imx_thermal]
root       123  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/1:1H]
root       125  0.3  0.0      0     0 ?        I    20:12   0:03  \_ [kworker/u17:4-xprtiod]
root       126  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/2:1H-events_highpri]
root       127  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:4-xprtiod]
root       128  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:4-rpciod]
root       129  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:3-rpciod]
root       131  0.5  0.0      0     0 ?        I    20:12   0:04  \_ [kworker/u17:5-rpciod]
root       132  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u18:5-rpciod]
root       248  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/298-vdoa]
root       250  0.0  0.0      0     0 ?        S    20:12   0:00  \_ [irq/301-coda-jpeg]
root       251  0.0  0.0      0     0 ?        I&lt;   20:12   0:00  \_ [kworker/R-coda]
root       295  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:5-rpciod]
root       302  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u20:6-kvfree_rcu_reclaim]
root       305  0.1  0.0      0     0 ?        I    20:12   0:01  \_ [kworker/u17:6-nfsiod]
root       443  0.0  0.0      0     0 ?        I    20:12   0:00  \_ [kworker/u19:6-rpciod]
root      2202  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/u19:7-rpciod]
root      2292  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/2:1-events]
root      2342  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/3:0-events]
root      2373  0.0  0.0      0     0 ?        I    20:17   0:00  \_ [kworker/1:1-cgroup_destroy]
root      2460  0.0  0.0      0     0 ?        I    20:18   0:00  \_ [kworker/0:0-events]
root      3647  0.0  0.0      0     0 ?        I    20:21   0:00  \_ [kworker/u18:3-nfsiod]
root      4310  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/2:2-mm_percpu_wq]
root      4490  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:0-nfsiod]
root      4492  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u20:0-rpciod]
root      4493  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:3-rpciod]
root      4494  0.0  0.0      0     0 ?        I    20:22   0:00  \_ [kworker/u19:5-events_unbound]
root      4595  0.0  0.0      0     0 ?        I    20:23   0:00  \_ [kworker/0:1-events]
root      4607  0.0  0.0      0     0 ?        I    20:23   0:00  \_ [kworker/3:2-events]
root      5022  0.0  0.0      0     0 ?        I    20:24   0:00  \_ [kworker/1:2-events]
root         1  2.4  0.3  11272  7468 ?        Ss   20:12   0:21 /sbin/init
rpc        157  0.0  0.0   2824  1836 ?        Ss   20:12   0:00 /usr/sbin/rpcbind -w -f
root       159  0.5  0.4  33328  8360 ?        Ss   20:12   0:04 /usr/lib/systemd/systemd-journald
root       194  0.0  0.1   8328  3736 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-userdbd
root      4158  0.0  0.2   8816  4128 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root      4164  0.0  0.2   8816  4392 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root      4170  0.0  0.2   8816  4432 ?        S    20:22   0:00  \_ systemd-userwork: waiting...
root       204  0.1  0.2  20304  5440 ?        Ss   20:12   0:01 /usr/lib/systemd/systemd-udevd
systemd+   241  0.0  0.2   8648  4948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-resolved
systemd+   246  0.0  0.2  17744  4628 ?        Ssl  20:12   0:00 /usr/lib/systemd/systemd-timesyncd
root       315  0.0  0.0   1572  1172 ?        Ss   20:12   0:00 /usr/sbin/atd -f
avahi      316  0.0  0.1   4268  2272 ?        Ss   20:12   0:00 avahi-daemon: running [wandboard-mesa.local]
avahi      345  0.0  0.0   4092  1080 ?        S    20:12   0:00  \_ avahi-daemon: chroot helper
root       318  0.0  0.0   2080  1180 ?        Ss   20:12   0:00 /usr/sbin/crond -n
message+   319  1.2  0.1   4208  2628 ?        Ss   20:12   0:10 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
dhcpcd     320  0.0  0.1   4428  3552 ?        Ss   20:12   0:00 dhcpcd: [manager] [ip4] [ip6]
root       326  0.0  0.1   4660  2080 ?        S    20:12   0:00  \_ dhcpcd: [privileged proxy]
dhcpcd     387  0.0  0.0   4440  1440 ?        S    20:12   0:00  |   \_ dhcpcd: [BPF ARP] end0 192.168.1.72
dhcpcd     327  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [network proxy]
dhcpcd     328  0.0  0.0   4424  1200 ?        S    20:12   0:00  \_ dhcpcd: [control proxy]
root       323  0.0  0.1   6284  3268 ?        Ss   20:12   0:00 /usr/sbin/ofonod -n
root       324  0.1  0.0   1528  1076 ?        Ss   20:12   0:01 /usr/sbin/syslogd -F
root       325  0.6  0.2   8772  4812 ?        Ss   20:12   0:05 /usr/lib/systemd/systemd-logind
systemd+   346  0.0  0.2   9452  5948 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd-networkd
root       359  0.0  0.1   3704  2752 ?        Ss   20:12   0:00 /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     370  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     371  0.0  0.1   4276  2912 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     372  0.0  0.1   4276  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     373  0.0  0.1   4468  2916 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
daemon     374  0.0  0.1   4276  2832 ?        S    20:12   0:00  \_ /usr/sbin/httpd -DFOREGROUND -D SSL -D PHP5 -k start
ntp        365  0.0  0.2   7812  4796 ?        Ssl  20:12   0:00 /usr/sbin/ntpd -u ntp -p /run/ntpd.pid -g
root       368  0.0  0.0   1536  1024 tty1     Ss+  20:12   0:00 /sbin/agetty -o -p -- \u --noclear - linux
root       369  0.0  0.0   1564  1148 ttymxc0  Ss+  20:12   0:00 /sbin/agetty -8 -L ttymxc0 115200 linux
polkitd    378  0.3  0.6 109048 14152 ?        Ssl  20:12   0:02 /usr/lib/polkit-1/polkitd --no-debug
weston     381  0.1  0.3  10028  6600 ?        Ss   20:12   0:00 /usr/lib/systemd/systemd --user
weston     383  0.0  0.1  10944  2148 ?        S    20:12   0:00  \_ (sd-pam)
weston    1586  0.0  0.1   3912  2472 ?        Ss   20:15   0:00  \_ /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
weston    1589  0.0  0.1  43120  4004 ?        Ssl  20:15   0:00  \_ /usr/libexec/at-spi-bus-launcher
weston    1594  0.0  0.1   3912  2592 ?        S    20:15   0:00  |   \_ /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 10 --address=unix:path=/run/user/1000/at-spi/bus
weston    1635  0.0  0.2  35636  4440 ?        Sl   20:15   0:00  \_ /usr/libexec/at-spi2-registryd --use-gnome-session
weston    2792  5.1  1.6  93636 33288 tty7     Ssl+ 20:19   0:22 /usr/bin/weston --continue-without-input --modules=systemd-notify.so --debug --debug --debug
weston    2794  0.0  0.1  10900  2200 tty7     S+   20:19   0:00  \_ (sd-pam)
weston    2818  0.0  0.3  13088  7548 ?        Ss   20:19   0:00  \_ /usr/libexec/weston-keyboard
weston    2819  0.3  0.7  21008 15368 ?        Ss   20:19   0:01  \_ /usr/libexec/weston-desktop-shell
root      5488  6.1  0.3  10028  6624 ?        Ss   20:26   0:00 /usr/lib/systemd/systemd --user
root      5490  0.0  0.1  10484  2128 ?        S    20:26   0:00  \_ (sd-pam)
root      5540  1.8  0.2   6776  5572 ?        Ss   20:26   0:00 sshd: root@notty
root      5544  1.3  0.3  72668  7816 ?        Ssl  20:26   0:00  \_ WPEWebDriver --host=192.168.1.72 --port=8888 --host-all
root      5564  0.6  0.0   2464  1908 ?        S    20:26   0:00      \_ /bin/sh /usr/bin/wpe-exported-wayland --automation
root      5581  1.5  0.1   3208  2268 ?        S    20:26   0:00          \_ su weston -c /usr/bin/wpe-simple-launcher --ctrl /tmp/wpe-exported-wayland --automation
weston    5583 41.1  1.5 260768 31448 ?        Ssl  20:26   0:00              \_ /usr/bin/wpe-simple-launcher --ctrl /tmp/wpe-exported-wayland --automation
weston    5590 56.9  1.2 241616 26144 ?        SLl  20:26   0:00                  \_ /usr/libexec/wpe-webkit-2.0/WPENetworkProcess 2 9 11
weston    5592 93.9  2.5 292152 52044 ?        RLl  20:26   0:00                  \_ /usr/libexec/wpe-webkit-2.0/WPEWebProcess 4 17 19
root      5594 23.2  0.2   6776  5660 ?        Ss   20:26   0:00 sshd: root@notty
root      5620  175  0.1   5176  2832 ?        Rs   20:26   0:00  \_ ps -auxfww</msg>
<arg>${formatted}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:26:32.702401" elapsed="0.000800"/>
</kw>
<kw name="Get Remote CPU Load" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:26:33.330034" level="INFO">${stdout} = ('0.89', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:26:32.704028" elapsed="0.626201"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:26:33.332466" level="INFO">${value} = 0.89</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:26:33.330932" elapsed="0.001733"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:26:33.332963" elapsed="0.000229"/>
</return>
<msg time="2026-02-19T20:26:33.333889" level="INFO">${cpu_load} = 0.89</msg>
<var>${cpu_load}</var>
<doc>Returns the current 1-minute CPU load average from the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:26:32.703528" elapsed="0.630511"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:26:33.334748" level="INFO">CPU load: 0.89</msg>
<arg>CPU load: ${cpu_load}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:26:33.334398" elapsed="0.000464"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${cpu_load} &lt; ${CPU_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:26:33.335089" elapsed="0.000503"/>
</kw>
<kw name="Get Remote Memory Used" owner="keywords_common">
<kw name="Ssh Command" owner="TestUtils">
<msg time="2026-02-19T20:26:33.976341" level="INFO">${stdout} = ('242', '')</msg>
<var>${stdout}</var>
<arg>%{TEST_BOARD_IP}</arg>
<arg>free -m | grep Mem | awk '{print $3}'</arg>
<doc>Run SSH command.</doc>
<status status="PASS" start="2026-02-19T20:26:33.336407" elapsed="0.640126"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:26:33.978671" level="INFO">${value} = 242.0</msg>
<var>${value}</var>
<arg>float(${stdout}[0])</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:26:33.977223" elapsed="0.001608"/>
</kw>
<return>
<value>${value}</value>
<status status="PASS" start="2026-02-19T20:26:33.979140" elapsed="0.000204"/>
</return>
<msg time="2026-02-19T20:26:33.980070" level="INFO">${memory_used} = 242.0</msg>
<var>${memory_used}</var>
<doc>Returns the amount of used memory in MB on the test board.</doc>
<timeout value="30 seconds"/>
<status status="PASS" start="2026-02-19T20:26:33.335926" elapsed="0.644291"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-02-19T20:26:33.981398" level="INFO">Memory used: 242.0</msg>
<arg>Memory used: ${memory_used}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-02-19T20:26:33.980828" elapsed="0.000688"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${memory_used} &lt; ${MEMORY_LOAD_ON_IDLE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-02-19T20:26:33.981734" elapsed="0.000497"/>
</kw>
<doc>Check if the Device is idle.</doc>
<status status="PASS" start="2026-02-19T20:26:31.992642" elapsed="1.989740"/>
</kw>
<arg>18x</arg>
<arg>10s</arg>
<arg>Check Device Is IDLE</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-02-19T20:26:31.992041" elapsed="1.990452"/>
</kw>
<kw name="Go To" owner="SeleniumLibrary">
<msg time="2026-02-19T20:26:33.983355" level="INFO">Opening url 'https://browserbench.org/MotionMark1.2/'</msg>
<arg>${URL}</arg>
<doc>Navigates the current browser window to the provided ``url``.</doc>
<status status="PASS" start="2026-02-19T20:26:33.982949" elapsed="3.063704"/>
</kw>
<kw name="Wait Until Page Contains Element" owner="SeleniumLibrary">
<arg>${RUN_BENCHMARK_BUTTON}</arg>
<doc>Waits until the element ``locator`` appears on the current page.</doc>
<status status="PASS" start="2026-02-19T20:26:37.047870" elapsed="0.068475"/>
</kw>
<kw name="Click Element" owner="SeleniumLibrary">
<msg time="2026-02-19T20:26:37.118718" level="INFO">Clicking element 'xpath=//*[@id="intro"]/div[2]/button'.</msg>
<arg>${RUN_BENCHMARK_BUTTON}</arg>
<doc>Click the element identified by ``locator``.</doc>
<status status="PASS" start="2026-02-19T20:26:37.117388" elapsed="0.082731"/>
</kw>
<kw name="Capture Images Until Test Completion">
<variable name="${index}">
<msg time="2026-02-19T20:26:37.203475" level="INFO">${index} = 1</msg>
<var>1</var>
<status status="PASS" start="2026-02-19T20:26:37.202940" elapsed="0.000756"/>
</variable>
<while condition="${index} &lt;= ${max_iterations}">
<iter>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-02-19T20:26:57.207283" level="INFO">Slept 20 seconds.</msg>
<arg>20s</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-02-19T20:26:37.206100" elapsed="20.001688"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:26:57.687960" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="motionmark_test_1.png"&gt;&lt;img src="motionmark_test_1.png" width="800px"&gt;&lt;/a&gt;</msg>
<arg>motionmark_test_${index}.png</arg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:26:57.208596" elapsed="0.479808"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:26:57.690461" level="INFO">${index} = 2</msg>
<var>${index}</var>
<arg>${index} + 1</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:26:57.689073" elapsed="0.001620"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="Element Should Be Visible" owner="SeleniumLibrary">
<msg time="2026-02-19T20:26:58.261049" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-38.png"&gt;&lt;img src="selenium-screenshot-38.png" width="800px"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:26:58.261924" level="FAIL">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</msg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Verifies that the element identified by ``locator`` is visible.</doc>
<status status="FAIL" start="2026-02-19T20:26:57.691476" elapsed="0.573310">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</status>
</kw>
<msg time="2026-02-19T20:26:58.265057" level="INFO">${is_test_again_visible} = False</msg>
<var>${is_test_again_visible}</var>
<arg>Element Should Be Visible</arg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Runs the given keyword with given arguments and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-02-19T20:26:57.691130" elapsed="0.573988"/>
</kw>
<if>
<branch type="IF" condition="${is_test_again_visible}">
<break>
<status status="NOT RUN" start="2026-02-19T20:26:58.265596" elapsed="0.000067"/>
</break>
<status status="NOT RUN" start="2026-02-19T20:26:58.265377" elapsed="0.000372"/>
</branch>
<status status="PASS" start="2026-02-19T20:26:58.265303" elapsed="0.000520"/>
</if>
<status status="PASS" start="2026-02-19T20:26:37.204120" elapsed="21.061757"/>
</iter>
<iter>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-02-19T20:27:18.267168" level="INFO">Slept 20 seconds.</msg>
<arg>20s</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-02-19T20:26:58.266502" elapsed="20.001163"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:27:55.243377" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="motionmark_test_2.png"&gt;&lt;img src="motionmark_test_2.png" width="800px"&gt;&lt;/a&gt;</msg>
<arg>motionmark_test_${index}.png</arg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:27:18.268458" elapsed="36.975569"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:27:55.246089" level="INFO">${index} = 3</msg>
<var>${index}</var>
<arg>${index} + 1</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:27:55.244744" elapsed="0.001407"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="Element Should Be Visible" owner="SeleniumLibrary">
<msg time="2026-02-19T20:27:55.730039" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-39.png"&gt;&lt;img src="selenium-screenshot-39.png" width="800px"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:27:55.730664" level="FAIL">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</msg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Verifies that the element identified by ``locator`` is visible.</doc>
<status status="FAIL" start="2026-02-19T20:27:55.246681" elapsed="0.485283">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</status>
</kw>
<msg time="2026-02-19T20:27:55.732585" level="INFO">${is_test_again_visible} = False</msg>
<var>${is_test_again_visible}</var>
<arg>Element Should Be Visible</arg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Runs the given keyword with given arguments and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-02-19T20:27:55.246391" elapsed="0.486346"/>
</kw>
<if>
<branch type="IF" condition="${is_test_again_visible}">
<break>
<status status="NOT RUN" start="2026-02-19T20:27:55.733490" elapsed="0.000056"/>
</break>
<status status="NOT RUN" start="2026-02-19T20:27:55.733188" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-02-19T20:27:55.733090" elapsed="0.000623"/>
</if>
<status status="PASS" start="2026-02-19T20:26:58.265965" elapsed="57.467797"/>
</iter>
<iter>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-02-19T20:28:15.734917" level="INFO">Slept 20 seconds.</msg>
<arg>20s</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-02-19T20:27:55.734351" elapsed="20.001011"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:28:16.304399" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="motionmark_test_3.png"&gt;&lt;img src="motionmark_test_3.png" width="800px"&gt;&lt;/a&gt;</msg>
<arg>motionmark_test_${index}.png</arg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:28:15.736127" elapsed="0.568739"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:28:16.306700" level="INFO">${index} = 4</msg>
<var>${index}</var>
<arg>${index} + 1</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:28:16.305530" elapsed="0.001236"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="Element Should Be Visible" owner="SeleniumLibrary">
<msg time="2026-02-19T20:28:16.913710" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-40.png"&gt;&lt;img src="selenium-screenshot-40.png" width="800px"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:28:16.914320" level="FAIL">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</msg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Verifies that the element identified by ``locator`` is visible.</doc>
<status status="FAIL" start="2026-02-19T20:28:16.307283" elapsed="0.608440">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</status>
</kw>
<msg time="2026-02-19T20:28:16.915992" level="INFO">${is_test_again_visible} = False</msg>
<var>${is_test_again_visible}</var>
<arg>Element Should Be Visible</arg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Runs the given keyword with given arguments and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-02-19T20:28:16.307004" elapsed="0.609047"/>
</kw>
<if>
<branch type="IF" condition="${is_test_again_visible}">
<break>
<status status="NOT RUN" start="2026-02-19T20:28:16.916406" elapsed="0.000049"/>
</break>
<status status="NOT RUN" start="2026-02-19T20:28:16.916234" elapsed="0.000292"/>
</branch>
<status status="PASS" start="2026-02-19T20:28:16.916188" elapsed="0.000427"/>
</if>
<status status="PASS" start="2026-02-19T20:27:55.733833" elapsed="21.182831"/>
</iter>
<iter>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-02-19T20:28:36.917972" level="INFO">Slept 20 seconds.</msg>
<arg>20s</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-02-19T20:28:16.917265" elapsed="20.001156"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:29:19.592463" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="motionmark_test_4.png"&gt;&lt;img src="motionmark_test_4.png" width="800px"&gt;&lt;/a&gt;</msg>
<arg>motionmark_test_${index}.png</arg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:28:36.919171" elapsed="42.673775"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:29:19.594425" level="INFO">${index} = 5</msg>
<var>${index}</var>
<arg>${index} + 1</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:29:19.593653" elapsed="0.000834"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="Element Should Be Visible" owner="SeleniumLibrary">
<msg time="2026-02-19T20:29:20.171660" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-41.png"&gt;&lt;img src="selenium-screenshot-41.png" width="800px"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:29:20.172227" level="FAIL">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</msg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Verifies that the element identified by ``locator`` is visible.</doc>
<status status="FAIL" start="2026-02-19T20:29:19.595042" elapsed="0.578477">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</status>
</kw>
<msg time="2026-02-19T20:29:20.174111" level="INFO">${is_test_again_visible} = False</msg>
<var>${is_test_again_visible}</var>
<arg>Element Should Be Visible</arg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Runs the given keyword with given arguments and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-02-19T20:29:19.594743" elapsed="0.579426"/>
</kw>
<if>
<branch type="IF" condition="${is_test_again_visible}">
<break>
<status status="NOT RUN" start="2026-02-19T20:29:20.174526" elapsed="0.000060"/>
</break>
<status status="NOT RUN" start="2026-02-19T20:29:20.174354" elapsed="0.000306"/>
</branch>
<status status="PASS" start="2026-02-19T20:29:20.174306" elapsed="0.000424"/>
</if>
<status status="PASS" start="2026-02-19T20:28:16.916736" elapsed="63.258041"/>
</iter>
<iter>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-02-19T20:29:40.176443" level="INFO">Slept 20 seconds.</msg>
<arg>20s</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-02-19T20:29:20.175802" elapsed="20.001137"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:29:40.666064" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="motionmark_test_5.png"&gt;&lt;img src="motionmark_test_5.png" width="800px"&gt;&lt;/a&gt;</msg>
<arg>motionmark_test_${index}.png</arg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:29:40.177852" elapsed="0.488643"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:29:40.668504" level="INFO">${index} = 6</msg>
<var>${index}</var>
<arg>${index} + 1</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:29:40.667173" elapsed="0.001425"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="Element Should Be Visible" owner="SeleniumLibrary">
<msg time="2026-02-19T20:29:41.214918" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-42.png"&gt;&lt;img src="selenium-screenshot-42.png" width="800px"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:29:41.215468" level="FAIL">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</msg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Verifies that the element identified by ``locator`` is visible.</doc>
<status status="FAIL" start="2026-02-19T20:29:40.669141" elapsed="0.547643">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</status>
</kw>
<msg time="2026-02-19T20:29:41.217371" level="INFO">${is_test_again_visible} = False</msg>
<var>${is_test_again_visible}</var>
<arg>Element Should Be Visible</arg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Runs the given keyword with given arguments and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-02-19T20:29:40.668854" elapsed="0.548667"/>
</kw>
<if>
<branch type="IF" condition="${is_test_again_visible}">
<break>
<status status="NOT RUN" start="2026-02-19T20:29:41.217944" elapsed="0.000048"/>
</break>
<status status="NOT RUN" start="2026-02-19T20:29:41.217767" elapsed="0.000298"/>
</branch>
<status status="PASS" start="2026-02-19T20:29:41.217718" elapsed="0.000417"/>
</if>
<status status="PASS" start="2026-02-19T20:29:20.174844" elapsed="21.043340"/>
</iter>
<iter>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-02-19T20:30:01.219413" level="INFO">Slept 20 seconds.</msg>
<arg>20s</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-02-19T20:29:41.218788" elapsed="20.001113"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:30:44.019510" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="motionmark_test_6.png"&gt;&lt;img src="motionmark_test_6.png" width="800px"&gt;&lt;/a&gt;</msg>
<arg>motionmark_test_${index}.png</arg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:30:01.220625" elapsed="42.799405"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:30:44.022052" level="INFO">${index} = 7</msg>
<var>${index}</var>
<arg>${index} + 1</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:30:44.020741" elapsed="0.001372"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="Element Should Be Visible" owner="SeleniumLibrary">
<msg time="2026-02-19T20:30:44.526687" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-43.png"&gt;&lt;img src="selenium-screenshot-43.png" width="800px"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:30:44.527318" level="FAIL">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</msg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Verifies that the element identified by ``locator`` is visible.</doc>
<status status="FAIL" start="2026-02-19T20:30:44.022648" elapsed="0.505983">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</status>
</kw>
<msg time="2026-02-19T20:30:44.529220" level="INFO">${is_test_again_visible} = False</msg>
<var>${is_test_again_visible}</var>
<arg>Element Should Be Visible</arg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Runs the given keyword with given arguments and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-02-19T20:30:44.022354" elapsed="0.507017"/>
</kw>
<if>
<branch type="IF" condition="${is_test_again_visible}">
<break>
<status status="NOT RUN" start="2026-02-19T20:30:44.530142" elapsed="0.000049"/>
</break>
<status status="NOT RUN" start="2026-02-19T20:30:44.529841" elapsed="0.000423"/>
</branch>
<status status="PASS" start="2026-02-19T20:30:44.529730" elapsed="0.000610"/>
</if>
<status status="PASS" start="2026-02-19T20:29:41.218249" elapsed="63.312140"/>
</iter>
<iter>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-02-19T20:31:04.531660" level="INFO">Slept 20 seconds.</msg>
<arg>20s</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-02-19T20:30:44.530990" elapsed="20.001124"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:31:05.088194" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="motionmark_test_7.png"&gt;&lt;img src="motionmark_test_7.png" width="800px"&gt;&lt;/a&gt;</msg>
<arg>motionmark_test_${index}.png</arg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:31:04.532848" elapsed="0.555813"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:31:05.090570" level="INFO">${index} = 8</msg>
<var>${index}</var>
<arg>${index} + 1</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:31:05.089317" elapsed="0.001316"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="Element Should Be Visible" owner="SeleniumLibrary">
<msg time="2026-02-19T20:31:05.665068" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-44.png"&gt;&lt;img src="selenium-screenshot-44.png" width="800px"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:31:05.665646" level="FAIL">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</msg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Verifies that the element identified by ``locator`` is visible.</doc>
<status status="FAIL" start="2026-02-19T20:31:05.091160" elapsed="0.575770">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</status>
</kw>
<msg time="2026-02-19T20:31:05.667517" level="INFO">${is_test_again_visible} = False</msg>
<var>${is_test_again_visible}</var>
<arg>Element Should Be Visible</arg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Runs the given keyword with given arguments and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-02-19T20:31:05.090880" elapsed="0.576708"/>
</kw>
<if>
<branch type="IF" condition="${is_test_again_visible}">
<break>
<status status="NOT RUN" start="2026-02-19T20:31:05.667959" elapsed="0.000067"/>
</break>
<status status="NOT RUN" start="2026-02-19T20:31:05.667772" elapsed="0.000339"/>
</branch>
<status status="PASS" start="2026-02-19T20:31:05.667726" elapsed="0.000456"/>
</if>
<status status="PASS" start="2026-02-19T20:30:44.530458" elapsed="21.137773"/>
</iter>
<iter>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-02-19T20:31:25.669534" level="INFO">Slept 20 seconds.</msg>
<arg>20s</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-02-19T20:31:05.668898" elapsed="20.001140"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:32:09.160108" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="motionmark_test_8.png"&gt;&lt;img src="motionmark_test_8.png" width="800px"&gt;&lt;/a&gt;</msg>
<arg>motionmark_test_${index}.png</arg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:31:25.670752" elapsed="43.489832"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:32:09.162247" level="INFO">${index} = 9</msg>
<var>${index}</var>
<arg>${index} + 1</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:32:09.161260" elapsed="0.001049"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="Element Should Be Visible" owner="SeleniumLibrary">
<msg time="2026-02-19T20:32:09.709823" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-45.png"&gt;&lt;img src="selenium-screenshot-45.png" width="800px"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:32:09.710372" level="FAIL">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</msg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Verifies that the element identified by ``locator`` is visible.</doc>
<status status="FAIL" start="2026-02-19T20:32:09.162848" elapsed="0.548877">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</status>
</kw>
<msg time="2026-02-19T20:32:09.712145" level="INFO">${is_test_again_visible} = False</msg>
<var>${is_test_again_visible}</var>
<arg>Element Should Be Visible</arg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Runs the given keyword with given arguments and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-02-19T20:32:09.162566" elapsed="0.549639"/>
</kw>
<if>
<branch type="IF" condition="${is_test_again_visible}">
<break>
<status status="NOT RUN" start="2026-02-19T20:32:09.712571" elapsed="0.000049"/>
</break>
<status status="NOT RUN" start="2026-02-19T20:32:09.712386" elapsed="0.000306"/>
</branch>
<status status="PASS" start="2026-02-19T20:32:09.712342" elapsed="0.000424"/>
</if>
<status status="PASS" start="2026-02-19T20:31:05.668357" elapsed="64.044460"/>
</iter>
<iter>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-02-19T20:32:29.713980" level="INFO">Slept 20 seconds.</msg>
<arg>20s</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-02-19T20:32:09.713399" elapsed="20.001032"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:32:30.347055" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="motionmark_test_9.png"&gt;&lt;img src="motionmark_test_9.png" width="800px"&gt;&lt;/a&gt;</msg>
<arg>motionmark_test_${index}.png</arg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:32:29.715158" elapsed="0.632105"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:32:30.348094" level="INFO">${index} = 10</msg>
<var>${index}</var>
<arg>${index} + 1</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:32:30.347560" elapsed="0.000595"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="Element Should Be Visible" owner="SeleniumLibrary">
<msg time="2026-02-19T20:32:31.023582" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-46.png"&gt;&lt;img src="selenium-screenshot-46.png" width="800px"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:32:31.024148" level="FAIL">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</msg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Verifies that the element identified by ``locator`` is visible.</doc>
<status status="FAIL" start="2026-02-19T20:32:30.348685" elapsed="0.676195">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</status>
</kw>
<msg time="2026-02-19T20:32:31.025118" level="INFO">${is_test_again_visible} = False</msg>
<var>${is_test_again_visible}</var>
<arg>Element Should Be Visible</arg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Runs the given keyword with given arguments and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-02-19T20:32:30.348393" elapsed="0.676784"/>
</kw>
<if>
<branch type="IF" condition="${is_test_again_visible}">
<break>
<status status="NOT RUN" start="2026-02-19T20:32:31.025531" elapsed="0.000060"/>
</break>
<status status="NOT RUN" start="2026-02-19T20:32:31.025362" elapsed="0.000300"/>
</branch>
<status status="PASS" start="2026-02-19T20:32:31.025315" elapsed="0.000416"/>
</if>
<status status="PASS" start="2026-02-19T20:32:09.712883" elapsed="21.312895"/>
</iter>
<iter>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-02-19T20:32:51.026972" level="INFO">Slept 20 seconds.</msg>
<arg>20s</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-02-19T20:32:31.026359" elapsed="20.001061"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:33:34.790848" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="motionmark_test_10.png"&gt;&lt;img src="motionmark_test_10.png" width="800px"&gt;&lt;/a&gt;</msg>
<arg>motionmark_test_${index}.png</arg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:32:51.028129" elapsed="43.762996"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:33:34.791996" level="INFO">${index} = 11</msg>
<var>${index}</var>
<arg>${index} + 1</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:33:34.791411" elapsed="0.000650"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="Element Should Be Visible" owner="SeleniumLibrary">
<msg time="2026-02-19T20:33:35.401912" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-47.png"&gt;&lt;img src="selenium-screenshot-47.png" width="800px"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:33:35.402467" level="FAIL">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</msg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Verifies that the element identified by ``locator`` is visible.</doc>
<status status="FAIL" start="2026-02-19T20:33:34.792634" elapsed="0.611305">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</status>
</kw>
<msg time="2026-02-19T20:33:35.404535" level="INFO">${is_test_again_visible} = False</msg>
<var>${is_test_again_visible}</var>
<arg>Element Should Be Visible</arg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Runs the given keyword with given arguments and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-02-19T20:33:34.792319" elapsed="0.612416"/>
</kw>
<if>
<branch type="IF" condition="${is_test_again_visible}">
<break>
<status status="NOT RUN" start="2026-02-19T20:33:35.405645" elapsed="0.000121"/>
</break>
<status status="NOT RUN" start="2026-02-19T20:33:35.405188" elapsed="0.000755"/>
</branch>
<status status="PASS" start="2026-02-19T20:33:35.405078" elapsed="0.001182"/>
</if>
<status status="PASS" start="2026-02-19T20:32:31.025844" elapsed="64.380563"/>
</iter>
<iter>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-02-19T20:33:55.409421" level="INFO">Slept 20 seconds.</msg>
<arg>20s</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-02-19T20:33:35.408221" elapsed="20.001712"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:33:55.863056" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="motionmark_test_11.png"&gt;&lt;img src="motionmark_test_11.png" width="800px"&gt;&lt;/a&gt;</msg>
<arg>motionmark_test_${index}.png</arg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:33:55.410662" elapsed="0.452852"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:33:55.865531" level="INFO">${index} = 12</msg>
<var>${index}</var>
<arg>${index} + 1</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:33:55.864211" elapsed="0.001511"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="Element Should Be Visible" owner="SeleniumLibrary">
<msg time="2026-02-19T20:33:56.459225" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-48.png"&gt;&lt;img src="selenium-screenshot-48.png" width="800px"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:33:56.459848" level="FAIL">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</msg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Verifies that the element identified by ``locator`` is visible.</doc>
<status status="FAIL" start="2026-02-19T20:33:55.866741" elapsed="0.594453">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</status>
</kw>
<msg time="2026-02-19T20:33:56.461818" level="INFO">${is_test_again_visible} = False</msg>
<var>${is_test_again_visible}</var>
<arg>Element Should Be Visible</arg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Runs the given keyword with given arguments and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-02-19T20:33:55.866348" elapsed="0.595627"/>
</kw>
<if>
<branch type="IF" condition="${is_test_again_visible}">
<break>
<status status="NOT RUN" start="2026-02-19T20:33:56.462689" elapsed="0.000048"/>
</break>
<status status="NOT RUN" start="2026-02-19T20:33:56.462455" elapsed="0.000356"/>
</branch>
<status status="PASS" start="2026-02-19T20:33:56.462319" elapsed="0.000560"/>
</if>
<status status="PASS" start="2026-02-19T20:33:35.406822" elapsed="21.056105"/>
</iter>
<iter>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-02-19T20:34:16.464541" level="INFO">Slept 20 seconds.</msg>
<arg>20s</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-02-19T20:33:56.463907" elapsed="20.001118"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:34:58.633407" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="motionmark_test_12.png"&gt;&lt;img src="motionmark_test_12.png" width="800px"&gt;&lt;/a&gt;</msg>
<arg>motionmark_test_${index}.png</arg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:34:16.465755" elapsed="42.168133"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:34:58.635927" level="INFO">${index} = 13</msg>
<var>${index}</var>
<arg>${index} + 1</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:34:58.634590" elapsed="0.001497"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="Element Should Be Visible" owner="SeleniumLibrary">
<msg time="2026-02-19T20:34:59.138246" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-49.png"&gt;&lt;img src="selenium-screenshot-49.png" width="800px"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:34:59.138826" level="FAIL">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</msg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Verifies that the element identified by ``locator`` is visible.</doc>
<status status="FAIL" start="2026-02-19T20:34:58.637159" elapsed="0.502946">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</status>
</kw>
<msg time="2026-02-19T20:34:59.140707" level="INFO">${is_test_again_visible} = False</msg>
<var>${is_test_again_visible}</var>
<arg>Element Should Be Visible</arg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Runs the given keyword with given arguments and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-02-19T20:34:58.636730" elapsed="0.504131"/>
</kw>
<if>
<branch type="IF" condition="${is_test_again_visible}">
<break>
<status status="NOT RUN" start="2026-02-19T20:34:59.141761" elapsed="0.000127"/>
</break>
<status status="NOT RUN" start="2026-02-19T20:34:59.141307" elapsed="0.000710"/>
</branch>
<status status="PASS" start="2026-02-19T20:34:59.141195" elapsed="0.000892"/>
</if>
<status status="PASS" start="2026-02-19T20:33:56.462993" elapsed="62.679145"/>
</iter>
<iter>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-02-19T20:35:19.143425" level="INFO">Slept 20 seconds.</msg>
<arg>20s</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-02-19T20:34:59.142755" elapsed="20.001163"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:35:19.630946" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="motionmark_test_13.png"&gt;&lt;img src="motionmark_test_13.png" width="800px"&gt;&lt;/a&gt;</msg>
<arg>motionmark_test_${index}.png</arg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:35:19.144648" elapsed="0.486738"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:35:19.633404" level="INFO">${index} = 14</msg>
<var>${index}</var>
<arg>${index} + 1</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:35:19.632078" elapsed="0.001507"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="Element Should Be Visible" owner="SeleniumLibrary">
<msg time="2026-02-19T20:35:20.193761" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-50.png"&gt;&lt;img src="selenium-screenshot-50.png" width="800px"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:35:20.194324" level="FAIL">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</msg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Verifies that the element identified by ``locator`` is visible.</doc>
<status status="FAIL" start="2026-02-19T20:35:19.634647" elapsed="0.560960">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</status>
</kw>
<msg time="2026-02-19T20:35:20.196207" level="INFO">${is_test_again_visible} = False</msg>
<var>${is_test_again_visible}</var>
<arg>Element Should Be Visible</arg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Runs the given keyword with given arguments and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-02-19T20:35:19.634199" elapsed="0.562156"/>
</kw>
<if>
<branch type="IF" condition="${is_test_again_visible}">
<break>
<status status="NOT RUN" start="2026-02-19T20:35:20.196852" elapsed="0.000053"/>
</break>
<status status="NOT RUN" start="2026-02-19T20:35:20.196619" elapsed="0.000359"/>
</branch>
<status status="PASS" start="2026-02-19T20:35:20.196572" elapsed="0.000474"/>
</if>
<status status="PASS" start="2026-02-19T20:34:59.142205" elapsed="21.054889"/>
</iter>
<iter>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-02-19T20:35:40.198325" level="INFO">Slept 20 seconds.</msg>
<arg>20s</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-02-19T20:35:20.197701" elapsed="20.001126"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-02-19T20:36:12.671832" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="motionmark_test_14.png"&gt;&lt;img src="motionmark_test_14.png" width="800px"&gt;&lt;/a&gt;</msg>
<arg>motionmark_test_${index}.png</arg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-02-19T20:35:40.199515" elapsed="32.472783"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-02-19T20:36:12.673958" level="INFO">${index} = 15</msg>
<var>${index}</var>
<arg>${index} + 1</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-02-19T20:36:12.672994" elapsed="0.001028"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="Element Should Be Visible" owner="SeleniumLibrary">
<msg time="2026-02-19T20:36:13.219289" level="INFO" html="true">&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;a href="selenium-screenshot-51.png"&gt;&lt;img src="selenium-screenshot-51.png" width="800px"&gt;&lt;/a&gt;</msg>
<msg time="2026-02-19T20:36:13.219949" level="FAIL">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</msg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Verifies that the element identified by ``locator`` is visible.</doc>
<status status="FAIL" start="2026-02-19T20:36:12.674585" elapsed="0.546661">The element 'xpath=//button[contains(@onclick, 'benchmarkController.startBenchmark()') and contains(text(), 'Test Again')]' should be visible, but it is not.</status>
</kw>
<msg time="2026-02-19T20:36:13.221775" level="INFO">${is_test_again_visible} = False</msg>
<var>${is_test_again_visible}</var>
<arg>Element Should Be Visible</arg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Runs the given keyword with given arguments and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-02-19T20:36:12.674266" elapsed="0.547569"/>
</kw>
<if>
<branch type="IF" condition="${is_test_again_visible}">
<break>
<status status="NOT RUN" start="2026-02-19T20:36:13.222195" elapsed="0.000049"/>
</break>
<status status="NOT RUN" start="2026-02-19T20:36:13.222020" elapsed="0.000299"/>
</branch>
<status status="PASS" start="2026-02-19T20:36:13.221974" elapsed="0.000414"/>
</if>
<status status="PASS" start="2026-02-19T20:35:20.197160" elapsed="53.025277"/>
</iter>
<iter>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-02-19T20:36:31.991033" level="FAIL">Test timeout 10 minutes exceeded.</msg>
<arg>20s</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="FAIL" start="2026-02-19T20:36:13.223075" elapsed="18.768241">Test timeout 10 minutes exceeded.</status>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<arg>motionmark_test_${index}.png</arg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="NOT RUN" start="2026-02-19T20:36:31.992122" elapsed="0.000224"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${index}</var>
<arg>${index} + 1</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-02-19T20:36:31.992921" elapsed="0.000147"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<var>${is_test_again_visible}</var>
<arg>Element Should Be Visible</arg>
<arg>${TEST_AGAIN_BUTTON}</arg>
<doc>Runs the given keyword with given arguments and returns the status as a Boolean value.</doc>
<status status="NOT RUN" start="2026-02-19T20:36:31.993633" elapsed="0.000961"/>
</kw>
<if>
<branch type="IF" condition="${is_test_again_visible}">
<break>
<status status="NOT RUN" start="2026-02-19T20:36:31.995277" elapsed="0.000122"/>
</break>
<status status="NOT RUN" start="2026-02-19T20:36:31.995024" elapsed="0.000579"/>
</branch>
<status status="NOT RUN" start="2026-02-19T20:36:31.994926" elapsed="0.000858"/>
</if>
<status status="FAIL" start="2026-02-19T20:36:13.222505" elapsed="18.773615">Test timeout 10 minutes exceeded.</status>
</iter>
<status status="FAIL" start="2026-02-19T20:26:37.204110" elapsed="594.792155">Test timeout 10 minutes exceeded.</status>
</while>
<doc>Captures a screenshot each time a new test section loads until the "Test Again" button appears
or the max iterations are reached.</doc>
<status status="FAIL" start="2026-02-19T20:26:37.201895" elapsed="594.794582">Test timeout 10 minutes exceeded.</status>
</kw>
<kw name="Wait Until Page Contains Element" owner="SeleniumLibrary">
<arg>${TEST_AGAIN_BUTTON}</arg>
<arg>timeout=600s</arg>
<doc>Waits until the element ``locator`` appears on the current page.</doc>
<status status="NOT RUN" start="2026-02-19T20:36:31.996849" elapsed="0.000067"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="NOT RUN" start="2026-02-19T20:36:31.997274" elapsed="0.000089"/>
</kw>
<kw name="Get Global Score">
<var>${score}</var>
<doc>Returns the global MotionMark score from the results section.</doc>
<status status="NOT RUN" start="2026-02-19T20:36:31.997765" elapsed="0.000067"/>
</kw>
<kw name="Get Test Name Score Mapping">
<var>${mapping}</var>
<doc>Returns a dictionary mapping each test name to its score.</doc>
<status status="NOT RUN" start="2026-02-19T20:36:31.998260" elapsed="0.000065"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>MotionMark Score : ${score}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-02-19T20:36:31.998767" elapsed="0.000088"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>Name/Score Mapping: ${mapping}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-02-19T20:36:31.999206" elapsed="0.000083"/>
</kw>
<kw name="Get Machine Expectation" owner="TestUtils">
<var>${MOTIONMARK_MIN_SCORE}</var>
<arg>id=motionmark-min-score</arg>
<arg>machine=%{TEST_MACHINE}</arg>
<arg>wpeversion=%{TEST_WPEWEBKIT_VERSION}</arg>
<arg>type=number</arg>
<status status="NOT RUN" start="2026-02-19T20:36:31.999701" elapsed="0.000080"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${score} &gt; ${MOTIONMARK_MIN_SCORE}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="NOT RUN" start="2026-02-19T20:36:32.000074" elapsed="0.000063"/>
</kw>
<doc>Loads MotionMark benchmark, runs it, waits for the score, and validates.</doc>
<tag>test:retry(0)</tag>
<timeout value="10 minutes"/>
<status status="FAIL" start="2026-02-19T20:26:31.990461" elapsed="600.010079">Test timeout 10 minutes exceeded.</status>
</test>
<kw name="Webdriver Remote Stop" owner="keywords_common" type="TEARDOWN">
<kw name="Close All Browsers" owner="SeleniumLibrary">
<doc>Closes all open browsers and resets the browser cache.</doc>
<status status="PASS" start="2026-02-19T20:36:32.002508" elapsed="0.071716"/>
</kw>
<kw name="Ssh Webdriver Remote Stop" owner="TestUtils">
<msg time="2026-02-19T20:36:32.989812" level="INFO">RUN: Killing all 'WPEWebDriver' related processes ...</msg>
<arg>%{TEST_BOARD_IP}</arg>
<status status="PASS" start="2026-02-19T20:36:32.074950" elapsed="0.915194"/>
</kw>
<kw name="Ssh Force Kill" owner="TestUtils">
<msg time="2026-02-19T20:36:33.780915" level="INFO">RUN: Killing all 'wpe-simple-launcher' related processes ...</msg>
<arg>%{TEST_BOARD_IP}</arg>
<arg>wpe-simple-launcher</arg>
<doc>Force kill all related process.</doc>
<status status="PASS" start="2026-02-19T20:36:32.990788" elapsed="0.790457"/>
</kw>
<doc>Stops WebDriver session and cleans up browser processes.</doc>
<timeout value="2 minutes"/>
<status status="PASS" start="2026-02-19T20:36:32.001847" elapsed="1.780052"/>
</kw>
<doc>MotionMark automation benchmark suite for browser performance testing.</doc>
<status status="FAIL" start="2026-02-19T20:25:45.818762" elapsed="647.963414"/>
</suite>
<status status="FAIL" start="2026-02-19T20:12:48.348395" elapsed="1425.438121"/>
</suite>
<statistics>
<total>
<stat pass="15" fail="6" skip="0">All Tests</stat>
</total>
<tag>
<stat pass="0" fail="3" skip="0">test:retry(0)</stat>
<stat pass="0" fail="1" skip="0">test:retry(1)</stat>
</tag>
<suite>
<stat name="WPE image tests" id="s1" pass="15" fail="6" skip="0">WPE image tests</stat>
<stat name="Tests 005 Basics" id="s1-s1" pass="6" fail="0" skip="0">WPE image tests.Tests 005 Basics</stat>
<stat name="Tests 006 Stress Ng" id="s1-s2" pass="4" fail="0" skip="0">WPE image tests.Tests 006 Stress Ng</stat>
<stat name="Tests 007 Wpe Testbed" id="s1-s3" pass="2" fail="0" skip="0">WPE image tests.Tests 007 Wpe Testbed</stat>
<stat name="Tests 008 Remote Inspector" id="s1-s4" pass="0" fail="1" skip="0">WPE image tests.Tests 008 Remote Inspector</stat>
<stat name="Tests 010 Input Events" id="s1-s5" pass="2" fail="1" skip="0">WPE image tests.Tests 010 Input Events</stat>
<stat name="Tests 011 Navigation Bar" id="s1-s6" pass="0" fail="1" skip="0">WPE image tests.Tests 011 Navigation Bar</stat>
<stat name="Tests 013 Glyphs" id="s1-s7" pass="1" fail="0" skip="0">WPE image tests.Tests 013 Glyphs</stat>
<stat name="Tests 015 Video" id="s1-s8" pass="0" fail="1" skip="0">WPE image tests.Tests 015 Video</stat>
<stat name="Tests 017 Canvas" id="s1-s9" pass="0" fail="1" skip="0">WPE image tests.Tests 017 Canvas</stat>
<stat name="Tests 020 Motionmark" id="s1-s10" pass="0" fail="1" skip="0">WPE image tests.Tests 020 Motionmark</stat>
</suite>
</statistics>
<errors>
<msg time="2026-02-19T20:18:08.741001" level="WARN" html="true">Test '&lt;a onclick="makeElementVisible('s1-s5-t2')" href="#s1-s5-t2" title="Link to details"&gt;Test Check Browser Touch Scroll Using Uinput&lt;/a&gt;' has been retried 2 times (max: 2).</msg>
<msg time="2026-02-19T20:23:51.948786" level="WARN" html="true">Test '&lt;a onclick="makeElementVisible('s1-s8-t1')" href="#s1-s8-t1" title="Link to details"&gt;Verify Full HD 30 FPS&lt;/a&gt;' has been retried 2 times (max: 2).</msg>
<msg time="2026-02-19T20:25:18.931291" level="WARN" html="true">Test '&lt;a onclick="makeElementVisible('s1-s9-t1')" href="#s1-s9-t1" title="Link to details"&gt;Verify Canvas Animation 60 FPS&lt;/a&gt;' has been retried 1 times (max: 1).</msg>
</errors>
</robot>
