[INFO] cloning repository https://github.com/dsainz3/govee2mqtt-v2 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/dsainz3/govee2mqtt-v2" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdsainz3%2Fgovee2mqtt-v2", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdsainz3%2Fgovee2mqtt-v2'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 8afd80df8eddb1a9fd715ee7b8f4bb5583fa9611 [INFO] testing dsainz3/govee2mqtt-v2 against master#0d162b25edd5bf0dba9a22e83b614f1113e90474 for pr-150681-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdsainz3%2Fgovee2mqtt-v2" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/dsainz3/govee2mqtt-v2 [INFO] finished tweaking git repo https://github.com/dsainz3/govee2mqtt-v2 [INFO] tweaked toml for git repo https://github.com/dsainz3/govee2mqtt-v2 written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/dsainz3/govee2mqtt-v2 on toolchain 0d162b25edd5bf0dba9a22e83b614f1113e90474 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/dsainz3/govee2mqtt-v2 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded des v0.8.1 [INFO] [stderr] Downloaded k9 v0.12.0 [INFO] [stderr] Downloaded phf_shared v0.12.1 [INFO] [stderr] Downloaded clap-num v1.2.0 [INFO] [stderr] Downloaded phf v0.12.1 [INFO] [stderr] Downloaded csscolorparser v0.8.1 [INFO] [stderr] Downloaded color-backtrace v0.7.2 [INFO] [stderr] Downloaded mosquitto-rs v0.11.2 [INFO] [stderr] Downloaded p12 v0.6.3 [INFO] [stderr] Downloaded sqlite-cache v0.1.4 [INFO] [stderr] Downloaded terminal_size v0.2.6 [INFO] [stderr] Downloaded rc2 v0.8.1 [INFO] [stderr] Downloaded serde_json_path_to_error v0.1.5 [INFO] [stderr] Downloaded chrono-tz v0.10.4 [INFO] [stderr] Downloaded libmosquitto-sys v0.2.3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 1960855ea5020410cd9981018397ee2a96f20830153550270446da4f5996f5af [INFO] running `Command { std: "docker" "start" "-a" "1960855ea5020410cd9981018397ee2a96f20830153550270446da4f5996f5af", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "1960855ea5020410cd9981018397ee2a96f20830153550270446da4f5996f5af", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1960855ea5020410cd9981018397ee2a96f20830153550270446da4f5996f5af", kill_on_drop: false }` [INFO] [stdout] 1960855ea5020410cd9981018397ee2a96f20830153550270446da4f5996f5af [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9fbd720052cf19c246914e4df876efe860b8abe9892c0c3d36d92013aa4a51ce [INFO] running `Command { std: "docker" "start" "-a" "9fbd720052cf19c246914e4df876efe860b8abe9892c0c3d36d92013aa4a51ce", kill_on_drop: false }` [INFO] [stderr] Compiling syn v2.0.110 [INFO] [stderr] Compiling libc v0.2.177 [INFO] [stderr] Compiling cc v1.2.47 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling tracing-core v0.1.34 [INFO] [stderr] Compiling http v1.3.1 [INFO] [stderr] Compiling siphasher v1.0.1 [INFO] [stderr] Compiling uncased v0.9.10 [INFO] [stderr] Compiling bitflags v2.10.0 [INFO] [stderr] Compiling icu_properties_data v2.1.1 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling zerocopy v0.8.28 [INFO] [stderr] Compiling hashbrown v0.16.1 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling block-padding v0.3.3 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Compiling openssl-src v300.5.4+3.5.4 [INFO] [stderr] Compiling http-body v1.0.1 [INFO] [stderr] Compiling http-body-util v0.1.3 [INFO] [stderr] Compiling inout v0.1.4 [INFO] [stderr] Compiling indexmap v2.12.1 [INFO] [stderr] Compiling mio v1.1.0 [INFO] [stderr] Compiling socket2 v0.6.1 [INFO] [stderr] Compiling openssl-sys v0.9.111 [INFO] [stderr] Compiling concurrent-queue v2.5.0 [INFO] [stderr] Compiling libsqlite3-sys v0.30.1 [INFO] [stderr] Compiling cipher v0.4.4 [INFO] [stderr] Compiling phf_shared v0.13.1 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling regex-syntax v0.8.8 [INFO] [stderr] Compiling fastrand v2.3.0 [INFO] [stderr] Compiling phf_generator v0.13.1 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling event-listener v5.4.1 [INFO] [stderr] Compiling libmosquitto-sys v0.2.3 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling hashlink v0.9.1 [INFO] [stderr] Compiling serde_path_to_error v0.1.20 [INFO] [stderr] Compiling event-listener-strategy v0.5.4 [INFO] [stderr] Compiling phf_shared v0.12.1 [INFO] [stderr] Compiling fallible-streaming-iterator v0.1.9 [INFO] [stderr] Compiling http-range-header v0.4.2 [INFO] [stderr] Compiling chrono-tz v0.10.4 [INFO] [stderr] Compiling fallible-iterator v0.3.0 [INFO] [stderr] Compiling rustls-pki-types v1.13.0 [INFO] [stderr] Compiling phf v0.12.1 [INFO] [stderr] Compiling backtrace v0.3.76 [INFO] [stderr] Compiling sha1 v0.10.6 [INFO] [stderr] Compiling async-channel v2.5.0 [INFO] [stderr] Compiling hmac v0.12.1 [INFO] [stderr] Compiling des v0.8.1 [INFO] [stderr] Compiling regex v1.12.2 [INFO] [stderr] Compiling cbc v0.1.2 [INFO] [stderr] Compiling rc2 v0.8.1 [INFO] [stderr] Compiling dirs-sys-next v0.1.2 [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling env_filter v0.1.4 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling tokio-macros v2.6.0 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling tracing-attributes v0.1.30 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling tokio v1.48.0 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling phf_macros v0.13.1 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling phf v0.13.1 [INFO] [stderr] Compiling axum-core v0.5.5 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling icu_properties v2.1.1 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling clap_derive v4.5.49 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling tokio-util v0.7.17 [INFO] [stderr] Compiling tower v0.5.2 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling rusqlite v0.32.1 [INFO] [stderr] Compiling h2 v0.4.12 [INFO] [stderr] Compiling url v2.5.7 [INFO] [stderr] Compiling tower-http v0.6.7 [INFO] [stderr] Compiling chrono v0.4.42 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling thiserror-impl v2.0.17 [INFO] [stderr] Compiling strum_macros v0.27.2 [INFO] [stderr] Compiling matchit v0.8.4 [INFO] [stderr] Compiling matchit v0.7.3 [INFO] [stderr] Compiling jiff v0.2.16 [INFO] [stderr] Compiling yasna v0.5.2 [INFO] [stderr] Compiling termcolor v1.4.1 [INFO] [stderr] Compiling govee v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling p12 v0.6.3 [INFO] [stderr] Compiling color-backtrace v0.7.2 [INFO] [stderr] Compiling thiserror v2.0.17 [INFO] [stderr] Compiling uuid v1.18.1 [INFO] [stderr] Compiling sqlite-cache v0.1.4 [INFO] [stderr] Compiling strum v0.27.2 [INFO] [stderr] Compiling clap v4.5.53 [INFO] [stderr] Compiling serde_json_path_to_error v0.1.5 [INFO] [stderr] Compiling csscolorparser v0.8.1 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling dirs-next v2.0.0 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling clap-num v1.2.0 [INFO] [stderr] Compiling if-addrs v0.14.0 [INFO] [stderr] Compiling hyper v1.8.1 [INFO] [stderr] Compiling env_logger v0.11.8 [INFO] [stderr] Compiling hyper-util v0.1.18 [INFO] [stderr] Compiling axum v0.8.7 [INFO] [stderr] Compiling openssl v0.10.75 [INFO] [stderr] Compiling native-tls v0.2.14 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling hyper-tls v0.6.0 [INFO] [stderr] Compiling reqwest v0.12.24 [INFO] [stderr] Compiling mosquitto-rs v0.11.2 [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 5m 37s [INFO] running `Command { std: "docker" "inspect" "9fbd720052cf19c246914e4df876efe860b8abe9892c0c3d36d92013aa4a51ce", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9fbd720052cf19c246914e4df876efe860b8abe9892c0c3d36d92013aa4a51ce", kill_on_drop: false }` [INFO] [stdout] 9fbd720052cf19c246914e4df876efe860b8abe9892c0c3d36d92013aa4a51ce [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9fed7f0d39948af0a341b566bf7a4fad4a6963ddfe9996faa3bbbd2f6b3db1d5 [INFO] running `Command { std: "docker" "start" "-a" "9fed7f0d39948af0a341b566bf7a4fad4a6963ddfe9996faa3bbbd2f6b3db1d5", kill_on_drop: false }` [INFO] [stderr] Compiling unicode-ident v1.0.22 [INFO] [stderr] Compiling libc v0.2.177 [INFO] [stderr] Compiling io-lifetimes v1.0.11 [INFO] [stderr] Compiling proc-macro2 v1.0.103 [INFO] [stderr] Compiling regex-syntax v0.8.8 [INFO] [stderr] Compiling rustix v0.37.28 [INFO] [stderr] Compiling quote v1.0.42 [INFO] [stderr] Compiling linux-raw-sys v0.3.8 [INFO] [stderr] Compiling colored v2.2.0 [INFO] [stderr] Compiling diff v0.1.13 [INFO] [stderr] Compiling govee v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling syn v2.0.110 [INFO] [stderr] Compiling mio v1.1.0 [INFO] [stderr] Compiling socket2 v0.6.1 [INFO] [stderr] Compiling openssl-sys v0.9.111 [INFO] [stderr] Compiling dirs-sys-next v0.1.2 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling backtrace v0.3.76 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling uuid v1.18.1 [INFO] [stderr] Compiling libmosquitto-sys v0.2.3 [INFO] [stderr] Compiling terminal_size v0.2.6 [INFO] [stderr] Compiling color-backtrace v0.7.2 [INFO] [stderr] Compiling p12 v0.6.3 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling dirs-next v2.0.0 [INFO] [stderr] Compiling if-addrs v0.14.0 [INFO] [stderr] Compiling regex v1.12.2 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling env_filter v0.1.4 [INFO] [stderr] Compiling env_logger v0.11.8 [INFO] [stderr] Compiling k9 v0.12.0 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling tracing-attributes v0.1.30 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling tokio-macros v2.6.0 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling tokio v1.48.0 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling openssl v0.10.75 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling phf_macros v0.13.1 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling axum-core v0.5.5 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling phf v0.13.1 [INFO] [stderr] Compiling clap_derive v4.5.49 [INFO] [stderr] Compiling thiserror-impl v2.0.17 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling icu_properties v2.1.1 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling chrono v0.4.42 [INFO] [stderr] Compiling strum_macros v0.27.2 [INFO] [stderr] Compiling sqlite-cache v0.1.4 [INFO] [stderr] Compiling thiserror v2.0.17 [INFO] [stderr] Compiling clap v4.5.53 [INFO] [stderr] Compiling native-tls v0.2.14 [INFO] [stderr] Compiling mosquitto-rs v0.11.2 [INFO] [stderr] Compiling serde_json_path_to_error v0.1.5 [INFO] [stderr] Compiling csscolorparser v0.8.1 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling tokio-util v0.7.17 [INFO] [stderr] Compiling tower v0.5.2 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling url v2.5.7 [INFO] [stderr] Compiling strum v0.27.2 [INFO] [stderr] Compiling h2 v0.4.12 [INFO] [stderr] Compiling tower-http v0.6.7 [INFO] [stderr] Compiling chrono-tz v0.10.4 [INFO] [stderr] Compiling hyper v1.8.1 [INFO] [stderr] Compiling hyper-util v0.1.18 [INFO] [stderr] Compiling hyper-tls v0.6.0 [INFO] [stderr] Compiling axum v0.8.7 [INFO] [stderr] Compiling reqwest v0.12.24 [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 2m 05s [INFO] running `Command { std: "docker" "inspect" "9fed7f0d39948af0a341b566bf7a4fad4a6963ddfe9996faa3bbbd2f6b3db1d5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9fed7f0d39948af0a341b566bf7a4fad4a6963ddfe9996faa3bbbd2f6b3db1d5", kill_on_drop: false }` [INFO] [stdout] 9fed7f0d39948af0a341b566bf7a4fad4a6963ddfe9996faa3bbbd2f6b3db1d5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] ee3024fe265ce14898085fd11b73a48cae84961704df5e0ed4c65e678ad9b941 [INFO] running `Command { std: "docker" "start" "-a" "ee3024fe265ce14898085fd11b73a48cae84961704df5e0ed4c65e678ad9b941", kill_on_drop: false }` [INFO] [stderr] Compiling govee v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 20.07s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/govee-838f7ca4b614d18f) [INFO] [stdout] [INFO] [stdout] running 28 tests [INFO] [stdout] test hass_mqtt::work_mode::test::test_work_mode_parser3 ... ok [INFO] [stdout] test hass_mqtt::work_mode::test::test_work_mode_parser4 ... ok [INFO] [stdout] test ble::test::scene_command ... ok [INFO] [stdout] test ble::test::basic_round_trip ... ok [INFO] [stdout] test ble::test::packet_manager ... ok [INFO] [stdout] test hass_mqtt::work_mode::test::test_work_mode_parser ... ok [INFO] [stdout] test platform_api::test::enum_repr ... ok [INFO] [stdout] test hass_mqtt::work_mode::test::test_work_mode_parser2 ... ok [INFO] [stdout] test hass_mqtt::work_mode::test::test_issue100 ... ok [INFO] [stdout] test service::device::test::name_compute ... ok [INFO] [stdout] test service::hass::test_camel_case_to_space_separated ... ok [INFO] [stdout] test service::http::test_build_router ... ok [INFO] [stdout] test temperature::test::display ... ok [INFO] [stdout] test rest_api::test::list_appliances ... FAILED [INFO] [stdout] test temperature::test::parsing ... ok [INFO] [stdout] test platform_api::test::get_device_scenes ... FAILED [INFO] [stdout] test temperature::test::value_conversion ... ok [INFO] [stdout] test platform_api::test::list_devices_issue4 ... FAILED [INFO] [stdout] test rest_api::test::list_devices ... FAILED [INFO] [stdout] test platform_api::test::list_devices ... FAILED [INFO] [stdout] test platform_api::test::get_device_state ... FAILED [INFO] [stdout] test platform_api::test::list_devices_2 ... FAILED [INFO] [stdout] test undoc_api::test::get_one_click ... FAILED [INFO] [stdout] test undoc_api::test::issue36 ... FAILED [INFO] [stdout] test undoc_api::test::issue_14 ... FAILED [INFO] [stdout] test undoc_api::test::get_device_scenes ... FAILED [INFO] [stdout] test undoc_api::test::light_effect_library ... FAILED [INFO] [stdout] test undoc_api::test::issue_21 ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- rest_api::test::list_appliances stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'rest_api::test::list_appliances' (70) panicked at src/rest_api.rs:261:9: [INFO] [stdout] [INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [INFO] [stdout] assert_matches_snapshot!(format!("{resp:#?}")); [INFO] [stdout] [INFO] [stdout] Assertion Failure! [INFO] [stdout] [INFO] [stdout] Expected string to match snapshot stored in [INFO] [stdout] src/__k9_snapshots__/rest_api/rest_api_test_list_appliances.snap [INFO] [stdout] [INFO] [stdout] Difference: [INFO] [stdout] [INFO] [stdout] GetDevicesResponse { [INFO] [stdout] code: 200, [INFO] [stdout] message: "Success", [INFO] [stdout] data: GetDevicesDeviceList { [INFO] [stdout] devices: [ [INFO] [stdout] RestDeviceInfo { [INFO] [stdout] sku: "H7160", [INFO] [stdout] device: "XX:4E:D8", [INFO] [stdout] device_name: "Smart Humidifier", [INFO] [stdout] controllable: true, [INFO] [stdout] properties: RestDeviceProperties { [INFO] [stdout] color_temperature: None, [INFO] [stdout] mode: Some( [INFO] [stdout] Object { [INFO] [stdout] "options": Array [ [INFO] [stdout] Object { [INFO] [stdout] "name": String("Custom"), [INFO] [stdout] "value": Number(1), [INFO] [stdout] }, [INFO] [stdout] Object { [INFO] [stdout] "name": String("Auto"), [INFO] [stdout] "value": Number(2), [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] gear: Some( [INFO] [stdout] Object { [INFO] [stdout] "options": Array [ [INFO] [stdout] Object { [INFO] [stdout] "name": String("gear"), [INFO] [stdout] "value": Array [ [INFO] [stdout] Number(1), [INFO] [stdout] Number(2), [INFO] [stdout] Number(3), [INFO] [stdout] Number(4), [INFO] [stdout] Number(5), [INFO] [stdout] Number(6), [INFO] [stdout] Number(7), [INFO] [stdout] Number(8), [INFO] [stdout] Number(9), [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] }, [INFO] [stdout] retrievable: false, [INFO] [stdout] supported_commands: [ [INFO] [stdout] Turn, [INFO] [stdout] Mode, [INFO] [stdout] Gear, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] } [INFO] [stdout] - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] run with `K9_UPDATE_SNAPSHOTS=1` to update/create snapshots [INFO] [stdout] [INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [INFO] [stdout] [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5680a45a47a2 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5680a45a47a2 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5680a45a47a2 - std[3b51380354919863]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x5680a45a47a2 - <::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x5680a45bd6fa - ::fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x5680a45bd6fa - core[27de1724e4349be2]::fmt::write [INFO] [stdout] 6: 0x5680a45aa0d6 - std[3b51380354919863]::io::default_write_fmt::> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5680a45aa0d6 - as std[3b51380354919863]::io::Write>::write_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x5680a458075f - ::print [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x5680a458075f - std[3b51380354919863]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x5680a459bd49 - std[3b51380354919863]::panicking::default_hook [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x5680a3b0688e - core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 12: 0x5680a3b0688e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5680a459bfb2 - core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 14: 0x5680a459bfb2 - std[3b51380354919863]::panicking::panic_with_hook [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x5680a4580818 - std[3b51380354919863]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x5680a4575279 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x5680a458192d - __rustc[d79c0ace40940972]::rust_begin_unwind [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x5680a45bde6c - core[27de1724e4349be2]::panicking::panic_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x5680a3833338 - core[27de1724e4349be2]::panicking::panic_display:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:259:5 [INFO] [stdout] 20: 0x5680a38657a6 - govee[14548bf8a5f0c675]::rest_api::test::list_appliances [INFO] [stdout] at /opt/rustwide/workdir/src/rest_api.rs:261:9 [INFO] [stdout] 21: 0x5680a3850a17 - govee[14548bf8a5f0c675]::rest_api::test::list_appliances::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/rest_api.rs:258:25 [INFO] [stdout] 22: 0x5680a362b056 - >::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 23: 0x5680a3afac3b - core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 24: 0x5680a3afac3b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18 [INFO] [stdout] 25: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74 [INFO] [stdout] 26: 0x5680a3b0749a - as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 27: 0x5680a3b0749a - std[3b51380354919863]::panicking::catch_unwind::do_call::, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40 [INFO] [stdout] 28: 0x5680a3b0749a - std[3b51380354919863]::panicking::catch_unwind::, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19 [INFO] [stdout] 29: 0x5680a3b0749a - std[3b51380354919863]::panic::catch_unwind::, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14 [INFO] [stdout] 30: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test_in_process [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27 [INFO] [stdout] 31: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43 [INFO] [stdout] 32: 0x5680a3b02a44 - test[182b2e79ecd7bbd9]::run_test::{closure#1} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41 [INFO] [stdout] 33: 0x5680a3b02a44 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 34: 0x5680a3b09f92 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 35: 0x5680a3b09f92 - ::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 36: 0x5680a3b09f92 - std[3b51380354919863]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40 [INFO] [stdout] 37: 0x5680a3b09f92 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19 [INFO] [stdout] 38: 0x5680a3b09f92 - std[3b51380354919863]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14 [INFO] [stdout] 39: 0x5680a3b09f92 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 40: 0x5680a3b09f92 - ::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 41: 0x5680a45a3acf - + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9 [INFO] [stdout] 42: 0x5680a45a3acf - ::new::thread_start [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17 [INFO] [stdout] 43: 0x781fbb638aa4 - [INFO] [stdout] 44: 0x781fbb6c5a64 - clone [INFO] [stdout] 45: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- platform_api::test::get_device_scenes stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'platform_api::test::get_device_scenes' (65) panicked at src/platform_api.rs:1121:9: [INFO] [stdout] [INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [INFO] [stdout] assert_matches_snapshot!(format!("{resp:#?}")); [INFO] [stdout] [INFO] [stdout] Assertion Failure! [INFO] [stdout] [INFO] [stdout] Expected string to match snapshot stored in [INFO] [stdout] src/__k9_snapshots__/platform_api/platform_api_test_get_device_scenes.snap [INFO] [stdout] [INFO] [stdout] Difference: [INFO] [stdout] [INFO] [stdout] GetDeviceScenesResponse { [INFO] [stdout] request_id: "uuid", [INFO] [stdout] code: 200, [INFO] [stdout] message: "success", [INFO] [stdout] payload: GetDeviceScenesResponsePayload { [INFO] [stdout] sku: "H6072", [INFO] [stdout] device: "AA:BB:CC:DD:EE:AA:BB:FF", [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "lightScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "rainbow B", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(7691), [INFO] [stdout] "paramId": Number(11837), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Sunrise", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1606), [INFO] [stdout] "paramId": Number(1681), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Sunset", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1607), [INFO] [stdout] "paramId": Number(1682), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Ocean", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1608), [INFO] [stdout] "paramId": Number(1683), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Forest", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1609), [INFO] [stdout] "paramId": Number(1684), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Sunset Glow", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1610), [INFO] [stdout] "paramId": Number(1685), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Ripple", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1611), [INFO] [stdout] "paramId": Number(1686), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rainbow", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1612), [INFO] [stdout] "paramId": Number(1687), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Meteor", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1613), [INFO] [stdout] "paramId": Number(1688), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Aurora", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1614), [INFO] [stdout] "paramId": Number(1689), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Karst Cave", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1615), [INFO] [stdout] "paramId": Number(1690), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Glacier", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1616), [INFO] [stdout] "paramId": Number(1691), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Lake", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1617), [INFO] [stdout] "paramId": Number(1692), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Fire", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1618), [INFO] [stdout] "paramId": Number(1693), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Journey of Flowers", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1619), [INFO] [stdout] "paramId": Number(1694), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Downpour", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1620), [INFO] [stdout] "paramId": Number(1695), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rustling leaves", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1621), [INFO] [stdout] "paramId": Number(1696), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Wave", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1622), [INFO] [stdout] "paramId": Number(1697), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Morning", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1623), [INFO] [stdout] "paramId": Number(1698), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Night", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1624), [INFO] [stdout] "paramId": Number(1699), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Cherry blossoms", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1625), [INFO] [stdout] "paramId": Number(1700), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Movie", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1626), [INFO] [stdout] "paramId": Number(1701), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Leisure", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1627), [INFO] [stdout] "paramId": Number(1702), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Night Light", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1628), [INFO] [stdout] "paramId": Number(1703), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Romantic", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1629), [INFO] [stdout] "paramId": Number(1704), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Fireworks", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1630), [INFO] [stdout] "paramId": Number(1705), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Tunnel", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1631), [INFO] [stdout] "paramId": Number(1706), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Drinks", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1632), [INFO] [stdout] "paramId": Number(1707), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Work", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1633), [INFO] [stdout] "paramId": Number(1708), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Study", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1634), [INFO] [stdout] "paramId": Number(1709), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Candy", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1635), [INFO] [stdout] "paramId": Number(1710), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Breathe", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1636), [INFO] [stdout] "paramId": Number(1711), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Gradient", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1637), [INFO] [stdout] "paramId": Number(1712), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Energetic", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1638), [INFO] [stdout] "paramId": Number(1713), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Dreamlike", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1639), [INFO] [stdout] "paramId": Number(1714), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Dreamland", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1640), [INFO] [stdout] "paramId": Number(1715), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Fight", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1641), [INFO] [stdout] "paramId": Number(1716), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Light", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1642), [INFO] [stdout] "paramId": Number(1717), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Tenderness", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1643), [INFO] [stdout] "paramId": Number(1718), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Warm", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1644), [INFO] [stdout] "paramId": Number(1719), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Cheerful", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1645), [INFO] [stdout] "paramId": Number(1720), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rush", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1646), [INFO] [stdout] "paramId": Number(1721), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Profound", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1647), [INFO] [stdout] "paramId": Number(1722), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Daze", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1648), [INFO] [stdout] "paramId": Number(1723), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Halloween", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1649), [INFO] [stdout] "paramId": Number(1724), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Christmas", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1650), [INFO] [stdout] "paramId": Number(1725), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Party", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1651), [INFO] [stdout] "paramId": Number(1726), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Celebration", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1652), [INFO] [stdout] "paramId": Number(1727), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Ghost", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1653), [INFO] [stdout] "paramId": Number(1728), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Poppin", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1664), [INFO] [stdout] "paramId": Number(1739), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Swing", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1665), [INFO] [stdout] "paramId": Number(1740), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Racing", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1666), [INFO] [stdout] "paramId": Number(1741), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Flash", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1667), [INFO] [stdout] "paramId": Number(1742), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Marbles", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1668), [INFO] [stdout] "paramId": Number(1743), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Split", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1669), [INFO] [stdout] "paramId": Number(1744), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Stacking", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1654), [INFO] [stdout] "paramId": Number(1729), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Greedy Snake", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1655), [INFO] [stdout] "paramId": Number(1730), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Bouncing Ball", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1656), [INFO] [stdout] "paramId": Number(1731), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Strike", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1657), [INFO] [stdout] "paramId": Number(1732), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Bubble", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1658), [INFO] [stdout] "paramId": Number(1733), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Crossing", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1659), [INFO] [stdout] "paramId": Number(1734), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Electro Dance", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1660), [INFO] [stdout] "paramId": Number(1735), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Flow", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1661), [INFO] [stdout] "paramId": Number(1736), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Accumulation", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1662), [INFO] [stdout] "paramId": Number(1737), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Release", [INFO] [stdout] value: Object { [INFO] [stdout] "id": Number(1663), [INFO] [stdout] "paramId": Number(1738), [INFO] [stdout] }, [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] } [INFO] [stdout] - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] run with `K9_UPDATE_SNAPSHOTS=1` to update/create snapshots [INFO] [stdout] [INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [INFO] [stdout] [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5680a45a47a2 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5680a45a47a2 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5680a45a47a2 - std[3b51380354919863]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x5680a45a47a2 - <::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x5680a45bd6fa - ::fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x5680a45bd6fa - core[27de1724e4349be2]::fmt::write [INFO] [stdout] 6: 0x5680a45aa0d6 - std[3b51380354919863]::io::default_write_fmt::> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5680a45aa0d6 - as std[3b51380354919863]::io::Write>::write_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x5680a458075f - ::print [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x5680a458075f - std[3b51380354919863]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x5680a459bd49 - std[3b51380354919863]::panicking::default_hook [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x5680a3b0688e - core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 12: 0x5680a3b0688e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5680a459bfb2 - core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 14: 0x5680a459bfb2 - std[3b51380354919863]::panicking::panic_with_hook [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x5680a4580818 - std[3b51380354919863]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x5680a4575279 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x5680a458192d - __rustc[d79c0ace40940972]::rust_begin_unwind [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x5680a45bde6c - core[27de1724e4349be2]::panicking::panic_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x5680a3833338 - core[27de1724e4349be2]::panicking::panic_display:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:259:5 [INFO] [stdout] 20: 0x5680a386276f - govee[14548bf8a5f0c675]::platform_api::test::get_device_scenes [INFO] [stdout] at /opt/rustwide/workdir/src/platform_api.rs:1121:9 [INFO] [stdout] 21: 0x5680a3849d77 - govee[14548bf8a5f0c675]::platform_api::test::get_device_scenes::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/platform_api.rs:1119:27 [INFO] [stdout] 22: 0x5680a362adc6 - >::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 23: 0x5680a3afac3b - core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 24: 0x5680a3afac3b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18 [INFO] [stdout] 25: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74 [INFO] [stdout] 26: 0x5680a3b0749a - as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 27: 0x5680a3b0749a - std[3b51380354919863]::panicking::catch_unwind::do_call::, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40 [INFO] [stdout] 28: 0x5680a3b0749a - std[3b51380354919863]::panicking::catch_unwind::, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19 [INFO] [stdout] 29: 0x5680a3b0749a - std[3b51380354919863]::panic::catch_unwind::, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14 [INFO] [stdout] 30: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test_in_process [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27 [INFO] [stdout] 31: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43 [INFO] [stdout] 32: 0x5680a3b02a44 - test[182b2e79ecd7bbd9]::run_test::{closure#1} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41 [INFO] [stdout] 33: 0x5680a3b02a44 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 34: 0x5680a3b09f92 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 35: 0x5680a3b09f92 - ::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 36: 0x5680a3b09f92 - std[3b51380354919863]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40 [INFO] [stdout] 37: 0x5680a3b09f92 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19 [INFO] [stdout] 38: 0x5680a3b09f92 - std[3b51380354919863]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14 [INFO] [stdout] 39: 0x5680a3b09f92 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 40: 0x5680a3b09f92 - ::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 41: 0x5680a45a3acf - + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9 [INFO] [stdout] 42: 0x5680a45a3acf - ::new::thread_start [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17 [INFO] [stdout] 43: 0x781fbb638aa4 - [INFO] [stdout] 44: 0x781fbb6c5a64 - clone [INFO] [stdout] 45: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- platform_api::test::list_devices_issue4 stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'platform_api::test::list_devices_issue4' (69) panicked at src/platform_api.rs:1139:9: [INFO] [stdout] [INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [INFO] [stdout] assert_matches_snapshot!(format!("{resp:#?}")); [INFO] [stdout] [INFO] [stdout] Assertion Failure! [INFO] [stdout] [INFO] [stdout] Expected string to match snapshot stored in [INFO] [stdout] src/__k9_snapshots__/platform_api/platform_api_test_list_devices_issue4.snap [INFO] [stdout] [INFO] [stdout] Difference: [INFO] [stdout] [INFO] [stdout] GetDevicesResponse { [INFO] [stdout] code: 200, [INFO] [stdout] message: "success", [INFO] [stdout] data: [ [INFO] [stdout] HttpDeviceInfo { [INFO] [stdout] sku: "H7111", [INFO] [stdout] device: "AA:BB:CC:DD:EE:FF:00:11", [INFO] [stdout] device_name: "Smart Floor Fan", [INFO] [stdout] device_type: Fan, [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Toggle, [INFO] [stdout] instance: "oscillationToggle", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: WorkMode, [INFO] [stdout] instance: "workMode", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "workMode", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "FanSpeed", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Custom", [INFO] [stdout] value: Number(2), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Auto", [INFO] [stdout] value: Number(3), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Sleep", [INFO] [stdout] value: Number(5), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Nature", [INFO] [stdout] value: Number(6), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Storm", [INFO] [stdout] value: Number(7), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "modeValue", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "FanSpeed", [INFO] [stdout] value: Null, [INFO] [stdout] extras: { [INFO] [stdout] "options": Array [ [INFO] [stdout] Object { [INFO] [stdout] "value": Number(1), [INFO] [stdout] }, [INFO] [stdout] Object { [INFO] [stdout] "value": Number(2), [INFO] [stdout] }, [INFO] [stdout] Object { [INFO] [stdout] "value": Number(3), [INFO] [stdout] }, [INFO] [stdout] Object { [INFO] [stdout] "value": Number(4), [INFO] [stdout] }, [INFO] [stdout] Object { [INFO] [stdout] "value": Number(5), [INFO] [stdout] }, [INFO] [stdout] Object { [INFO] [stdout] "value": Number(6), [INFO] [stdout] }, [INFO] [stdout] Object { [INFO] [stdout] "value": Number(7), [INFO] [stdout] }, [INFO] [stdout] Object { [INFO] [stdout] "value": Number(8), [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Custom", [INFO] [stdout] value: Null, [INFO] [stdout] extras: { [INFO] [stdout] "defaultValue": Number(0), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Auto", [INFO] [stdout] value: Null, [INFO] [stdout] extras: { [INFO] [stdout] "defaultValue": Number(0), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Sleep", [INFO] [stdout] value: Null, [INFO] [stdout] extras: { [INFO] [stdout] "defaultValue": Number(0), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Nature", [INFO] [stdout] value: Null, [INFO] [stdout] extras: { [INFO] [stdout] "defaultValue": Number(0), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Storm", [INFO] [stdout] value: Null, [INFO] [stdout] extras: { [INFO] [stdout] "defaultValue": Number(0), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] HttpDeviceInfo { [INFO] [stdout] sku: "H7141", [INFO] [stdout] device: "AA:BB:CC:DD:EE:FF:00:11", [INFO] [stdout] device_name: "Smart Humidifier", [INFO] [stdout] device_type: Humidifier, [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: WorkMode, [INFO] [stdout] instance: "workMode", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "workMode", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Manual", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Custom", [INFO] [stdout] value: Number(2), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Auto", [INFO] [stdout] value: Number(3), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "modeValue", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Manual", [INFO] [stdout] value: Null, [INFO] [stdout] extras: { [INFO] [stdout] "options": Array [ [INFO] [stdout] Object { [INFO] [stdout] "value": Number(1), [INFO] [stdout] }, [INFO] [stdout] Object { [INFO] [stdout] "value": Number(2), [INFO] [stdout] }, [INFO] [stdout] Object { [INFO] [stdout] "value": Number(3), [INFO] [stdout] }, [INFO] [stdout] Object { [INFO] [stdout] "value": Number(4), [INFO] [stdout] }, [INFO] [stdout] Object { [INFO] [stdout] "value": Number(5), [INFO] [stdout] }, [INFO] [stdout] Object { [INFO] [stdout] "value": Number(6), [INFO] [stdout] }, [INFO] [stdout] Object { [INFO] [stdout] "value": Number(7), [INFO] [stdout] }, [INFO] [stdout] Object { [INFO] [stdout] "value": Number(8), [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Custom", [INFO] [stdout] value: Null, [INFO] [stdout] extras: { [INFO] [stdout] "defaultValue": Number(0), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Auto", [INFO] [stdout] value: Null, [INFO] [stdout] extras: { [INFO] [stdout] "range": Object { [INFO] [stdout] "max": Number(70), [INFO] [stdout] "min": Number(40), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Range, [INFO] [stdout] instance: "humidity", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 40, [INFO] [stdout] max: 70, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Event, [INFO] [stdout] instance: "lackWaterEvent", [INFO] [stdout] parameters: None, [INFO] [stdout] alarm_type: Some( [INFO] [stdout] 51, [INFO] [stdout] ), [INFO] [stdout] event_state: Some( [INFO] [stdout] Object { [INFO] [stdout] "options": Array [ [INFO] [stdout] Object { [INFO] [stdout] "message": String("Lack of Water"), [INFO] [stdout] "name": String("lack"), [INFO] [stdout] "value": Number(1), [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] HttpDeviceInfo { [INFO] [stdout] sku: "H7131", [INFO] [stdout] device: "AA:BB:CC:DD:EE:FF:00:11", [INFO] [stdout] device_name: "Smart Space Heater", [INFO] [stdout] device_type: Heater, [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Toggle, [INFO] [stdout] instance: "oscillationToggle", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Toggle, [INFO] [stdout] instance: "nightlightToggle", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Range, [INFO] [stdout] instance: "brightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 1, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Mode, [INFO] [stdout] instance: "nightlightScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Flame", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rainbow", [INFO] [stdout] value: Number(2), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rhythm", [INFO] [stdout] value: Number(3), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Easy", [INFO] [stdout] value: Number(4), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Sleep", [INFO] [stdout] value: Number(5), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: TemperatureSetting, [INFO] [stdout] instance: "targetTemperature", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "autoStop", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Auto Stop", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Maintain", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: Some( [INFO] [stdout] Number(0), [INFO] [stdout] ), [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "temperature", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 5, [INFO] [stdout] max: 30, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "unit", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Celsius", [INFO] [stdout] value: String("Celsius"), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Fahrenheit", [INFO] [stdout] value: String("Fahrenheit"), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: Some( [INFO] [stdout] String("Celsius"), [INFO] [stdout] ), [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Property, [INFO] [stdout] instance: "sensorTemperature", [INFO] [stdout] parameters: None, [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: WorkMode, [INFO] [stdout] instance: "workMode", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "workMode", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "gearMode", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Fan", [INFO] [stdout] value: Number(9), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Auto", [INFO] [stdout] value: Number(3), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "modeValue", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "gearMode", [INFO] [stdout] value: Null, [INFO] [stdout] extras: { [INFO] [stdout] "options": Array [ [INFO] [stdout] Object { [INFO] [stdout] "name": String("Low"), [INFO] [stdout] "value": Number(1), [INFO] [stdout] }, [INFO] [stdout] Object { [INFO] [stdout] "name": String("Medium"), [INFO] [stdout] "value": Number(2), [INFO] [stdout] }, [INFO] [stdout] Object { [INFO] [stdout] "name": String("High"), [INFO] [stdout] "value": Number(3), [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Fan", [INFO] [stdout] value: Null, [INFO] [stdout] extras: { [INFO] [stdout] "defaultValue": Number(0), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Auto", [INFO] [stdout] value: Null, [INFO] [stdout] extras: { [INFO] [stdout] "defaultValue": Number(0), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] HttpDeviceInfo { [INFO] [stdout] sku: "H7121", [INFO] [stdout] device: "AA:BB:CC:DD:EE:FF:00:11", [INFO] [stdout] device_name: "Smart Air Purifier", [INFO] [stdout] device_type: AirPurifier, [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: WorkMode, [INFO] [stdout] instance: "workMode", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "workMode", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "High", [INFO] [stdout] value: Number(3), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Medium", [INFO] [stdout] value: Number(2), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Low", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Sleep", [INFO] [stdout] value: Number(16), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "modeValue", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "High", [INFO] [stdout] value: Null, [INFO] [stdout] extras: { [INFO] [stdout] "defaultValue": Number(0), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Medium", [INFO] [stdout] value: Null, [INFO] [stdout] extras: { [INFO] [stdout] "defaultValue": Number(0), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Low", [INFO] [stdout] value: Null, [INFO] [stdout] extras: { [INFO] [stdout] "defaultValue": Number(0), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Sleep", [INFO] [stdout] value: Null, [INFO] [stdout] extras: { [INFO] [stdout] "defaultValue": Number(0), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Property, [INFO] [stdout] instance: "filterLifeTime", [INFO] [stdout] parameters: None, [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Property, [INFO] [stdout] instance: "airQuality", [INFO] [stdout] parameters: None, [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] HttpDeviceInfo { [INFO] [stdout] sku: "H6052", [INFO] [stdout] device: "AA:BB:CC:DD:EE:FF:00:11", [INFO] [stdout] device_name: "Aura Table Lamp", [INFO] [stdout] device_type: Light, [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Toggle, [INFO] [stdout] instance: "gradientToggle", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Range, [INFO] [stdout] instance: "brightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 1, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedBrightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 15, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "brightness", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedColorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 15, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorTemperatureK", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 2000, [INFO] [stdout] max: 9000, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "lightScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: MusicSetting, [INFO] [stdout] instance: "musicMode", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "musicMode", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Spectrum", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Vibrate", [INFO] [stdout] value: Number(2), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Energic", [INFO] [stdout] value: Number(3), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rhythm", [INFO] [stdout] value: Number(4), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "sensitivity", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "autoColor", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "diyScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "snapshot", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] HttpDeviceInfo { [INFO] [stdout] sku: "H6059", [INFO] [stdout] device: "AA:BB:CC:DD:EE:FF:00:11", [INFO] [stdout] device_name: "Aura Mini", [INFO] [stdout] device_type: Light, [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Range, [INFO] [stdout] instance: "brightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 1, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedBrightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 15, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "brightness", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorTemperatureK", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 2000, [INFO] [stdout] max: 9000, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "lightScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: MusicSetting, [INFO] [stdout] instance: "musicMode", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "musicMode", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Magic", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rhythm", [INFO] [stdout] value: Number(2), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "sensitivity", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "autoColor", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "diyScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "snapshot", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] HttpDeviceInfo { [INFO] [stdout] sku: "H6057", [INFO] [stdout] device: "AA:BB:CC:DD:EE:FF:00:11", [INFO] [stdout] device_name: "Night Light", [INFO] [stdout] device_type: Light, [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Toggle, [INFO] [stdout] instance: "gradientToggle", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Range, [INFO] [stdout] instance: "brightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 1, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedBrightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 15, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "brightness", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedColorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 15, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorTemperatureK", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 2000, [INFO] [stdout] max: 9000, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "lightScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: MusicSetting, [INFO] [stdout] instance: "musicMode", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "musicMode", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Energic", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Dynamic", [INFO] [stdout] value: Number(2), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Calm", [INFO] [stdout] value: Number(3), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Spectrum", [INFO] [stdout] value: Number(4), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "LightWaves", [INFO] [stdout] value: Number(5), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "ColorPainting", [INFO] [stdout] value: Number(6), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Hopping", [INFO] [stdout] value: Number(7), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Dandelion", [INFO] [stdout] value: Number(8), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "sensitivity", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "autoColor", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "diyScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "snapshot", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] HttpDeviceInfo { [INFO] [stdout] sku: "H618A", [INFO] [stdout] device: "AA:BB:CC:DD:EE:FF:00:11", [INFO] [stdout] device_name: "Alex's Light Strip", [INFO] [stdout] device_type: Light, [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Toggle, [INFO] [stdout] instance: "gradientToggle", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Range, [INFO] [stdout] instance: "brightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 1, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedBrightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 15, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "brightness", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedColorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 15, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorTemperatureK", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 2000, [INFO] [stdout] max: 9000, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "lightScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: MusicSetting, [INFO] [stdout] instance: "musicMode", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "musicMode", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Energic", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rhythm", [INFO] [stdout] value: Number(2), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Spectrum", [INFO] [stdout] value: Number(3), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rolling", [INFO] [stdout] value: Number(4), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Separation", [INFO] [stdout] value: Number(5), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Hopping", [INFO] [stdout] value: Number(6), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "PianoKeys", [INFO] [stdout] value: Number(7), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Fountain", [INFO] [stdout] value: Number(8), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "DayAndNight", [INFO] [stdout] value: Number(9), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Sprouting", [INFO] [stdout] value: Number(10), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Shiny", [INFO] [stdout] value: Number(11), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "sensitivity", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "autoColor", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "diyScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "snapshot", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] HttpDeviceInfo { [INFO] [stdout] sku: "H70B1", [INFO] [stdout] device: "AA:BB:CC:DD:EE:FF:00:11", [INFO] [stdout] device_name: "Smart Curtain Lights", [INFO] [stdout] device_type: Light, [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Range, [INFO] [stdout] instance: "brightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 1, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorTemperatureK", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 2000, [INFO] [stdout] max: 9000, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "lightScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: MusicSetting, [INFO] [stdout] instance: "musicMode", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "musicMode", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "MeteorShower", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Crossing", [INFO] [stdout] value: Number(2), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "DreamColor", [INFO] [stdout] value: Number(3), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "FloatingMist", [INFO] [stdout] value: Number(4), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Spectrum", [INFO] [stdout] value: Number(5), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "FallingSand", [INFO] [stdout] value: Number(6), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "sensitivity", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "autoColor", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "diyScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "snapshot", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] } [INFO] [stdout] - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] run with `K9_UPDATE_SNAPSHOTS=1` to update/create snapshots [INFO] [stdout] [INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [INFO] [stdout] [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5680a45a47a2 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5680a45a47a2 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5680a45a47a2 - std[3b51380354919863]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x5680a45a47a2 - <::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x5680a45bd6fa - ::fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x5680a45bd6fa - core[27de1724e4349be2]::fmt::write [INFO] [stdout] 6: 0x5680a45aa0d6 - std[3b51380354919863]::io::default_write_fmt::> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5680a45aa0d6 - as std[3b51380354919863]::io::Write>::write_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x5680a458075f - ::print [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x5680a458075f - std[3b51380354919863]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x5680a459bd49 - std[3b51380354919863]::panicking::default_hook [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x5680a3b0688e - core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 12: 0x5680a3b0688e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5680a459bfb2 - core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 14: 0x5680a459bfb2 - std[3b51380354919863]::panicking::panic_with_hook [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x5680a4580818 - std[3b51380354919863]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x5680a4575279 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x5680a458192d - __rustc[d79c0ace40940972]::rust_begin_unwind [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x5680a45bde6c - core[27de1724e4349be2]::panicking::panic_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x5680a3833338 - core[27de1724e4349be2]::panicking::panic_display:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:259:5 [INFO] [stdout] 20: 0x5680a3862cb6 - govee[14548bf8a5f0c675]::platform_api::test::list_devices_issue4 [INFO] [stdout] at /opt/rustwide/workdir/src/platform_api.rs:1139:9 [INFO] [stdout] 21: 0x5680a3849da7 - govee[14548bf8a5f0c675]::platform_api::test::list_devices_issue4::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/platform_api.rs:1136:29 [INFO] [stdout] 22: 0x5680a362ae06 - >::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 23: 0x5680a3afac3b - core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 24: 0x5680a3afac3b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18 [INFO] [stdout] 25: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74 [INFO] [stdout] 26: 0x5680a3b0749a - as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 27: 0x5680a3b0749a - std[3b51380354919863]::panicking::catch_unwind::do_call::, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40 [INFO] [stdout] 28: 0x5680a3b0749a - std[3b51380354919863]::panicking::catch_unwind::, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19 [INFO] [stdout] 29: 0x5680a3b0749a - std[3b51380354919863]::panic::catch_unwind::, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14 [INFO] [stdout] 30: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test_in_process [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27 [INFO] [stdout] 31: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43 [INFO] [stdout] 32: 0x5680a3b02a44 - test[182b2e79ecd7bbd9]::run_test::{closure#1} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41 [INFO] [stdout] 33: 0x5680a3b02a44 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 34: 0x5680a3b09f92 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 35: 0x5680a3b09f92 - ::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 36: 0x5680a3b09f92 - std[3b51380354919863]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40 [INFO] [stdout] 37: 0x5680a3b09f92 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19 [INFO] [stdout] 38: 0x5680a3b09f92 - std[3b51380354919863]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14 [INFO] [stdout] 39: 0x5680a3b09f92 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 40: 0x5680a3b09f92 - ::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 41: 0x5680a45a3acf - + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9 [INFO] [stdout] 42: 0x5680a45a3acf - ::new::thread_start [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17 [INFO] [stdout] 43: 0x781fbb638aa4 - [INFO] [stdout] 44: 0x781fbb6c5a64 - clone [INFO] [stdout] 45: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- rest_api::test::list_devices stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'rest_api::test::list_devices' (71) panicked at src/rest_api.rs:254:9: [INFO] [stdout] [INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [INFO] [stdout] assert_matches_snapshot!(format!("{resp:#?}")); [INFO] [stdout] [INFO] [stdout] Assertion Failure! [INFO] [stdout] [INFO] [stdout] Expected string to match snapshot stored in [INFO] [stdout] src/__k9_snapshots__/rest_api/rest_api_test_list_devices.snap [INFO] [stdout] [INFO] [stdout] Difference: [INFO] [stdout] [INFO] [stdout] GetDevicesResponse { [INFO] [stdout] code: 200, [INFO] [stdout] message: "Success", [INFO] [stdout] data: GetDevicesDeviceList { [INFO] [stdout] devices: [ [INFO] [stdout] RestDeviceInfo { [INFO] [stdout] sku: "H6072", [INFO] [stdout] device: "XX:34:11", [INFO] [stdout] device_name: "Study Floor Lamp 1", [INFO] [stdout] controllable: true, [INFO] [stdout] properties: RestDeviceProperties { [INFO] [stdout] color_temperature: Some( [INFO] [stdout] ColorTemperatureProperties { [INFO] [stdout] range: RestRange { [INFO] [stdout] min: 2000, [INFO] [stdout] max: 9000, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] mode: None, [INFO] [stdout] gear: None, [INFO] [stdout] }, [INFO] [stdout] retrievable: true, [INFO] [stdout] supported_commands: [ [INFO] [stdout] Turn, [INFO] [stdout] Brightness, [INFO] [stdout] Color, [INFO] [stdout] ColorTemperature, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] } [INFO] [stdout] - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] run with `K9_UPDATE_SNAPSHOTS=1` to update/create snapshots [INFO] [stdout] [INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [INFO] [stdout] [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5680a45a47a2 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5680a45a47a2 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5680a45a47a2 - std[3b51380354919863]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x5680a45a47a2 - <::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x5680a45bd6fa - ::fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x5680a45bd6fa - core[27de1724e4349be2]::fmt::write [INFO] [stdout] 6: 0x5680a45aa0d6 - std[3b51380354919863]::io::default_write_fmt::> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5680a45aa0d6 - as std[3b51380354919863]::io::Write>::write_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x5680a458075f - ::print [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x5680a458075f - std[3b51380354919863]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x5680a459bd49 - std[3b51380354919863]::panicking::default_hook [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x5680a3b0688e - core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 12: 0x5680a3b0688e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5680a459bfb2 - core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 14: 0x5680a459bfb2 - std[3b51380354919863]::panicking::panic_with_hook [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x5680a4580818 - std[3b51380354919863]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x5680a4575279 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x5680a458192d - __rustc[d79c0ace40940972]::rust_begin_unwind [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x5680a45bde6c - core[27de1724e4349be2]::panicking::panic_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x5680a3833338 - core[27de1724e4349be2]::panicking::panic_display:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:259:5 [INFO] [stdout] 20: 0x5680a3865266 - govee[14548bf8a5f0c675]::rest_api::test::list_devices [INFO] [stdout] at /opt/rustwide/workdir/src/rest_api.rs:254:9 [INFO] [stdout] 21: 0x5680a38509e7 - govee[14548bf8a5f0c675]::rest_api::test::list_devices::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/rest_api.rs:251:22 [INFO] [stdout] 22: 0x5680a362b016 - >::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 23: 0x5680a3afac3b - core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 24: 0x5680a3afac3b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18 [INFO] [stdout] 25: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74 [INFO] [stdout] 26: 0x5680a3b0749a - as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 27: 0x5680a3b0749a - std[3b51380354919863]::panicking::catch_unwind::do_call::, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40 [INFO] [stdout] 28: 0x5680a3b0749a - std[3b51380354919863]::panicking::catch_unwind::, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19 [INFO] [stdout] 29: 0x5680a3b0749a - std[3b51380354919863]::panic::catch_unwind::, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14 [INFO] [stdout] 30: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test_in_process [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27 [INFO] [stdout] 31: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43 [INFO] [stdout] 32: 0x5680a3b02a44 - test[182b2e79ecd7bbd9]::run_test::{closure#1} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41 [INFO] [stdout] 33: 0x5680a3b02a44 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 34: 0x5680a3b09f92 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 35: 0x5680a3b09f92 - ::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 36: 0x5680a3b09f92 - std[3b51380354919863]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40 [INFO] [stdout] 37: 0x5680a3b09f92 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19 [INFO] [stdout] 38: 0x5680a3b09f92 - std[3b51380354919863]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14 [INFO] [stdout] 39: 0x5680a3b09f92 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 40: 0x5680a3b09f92 - ::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 41: 0x5680a45a3acf - + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9 [INFO] [stdout] 42: 0x5680a45a3acf - ::new::thread_start [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17 [INFO] [stdout] 43: 0x781fbb638aa4 - [INFO] [stdout] 44: 0x781fbb6c5a64 - clone [INFO] [stdout] 45: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- platform_api::test::list_devices stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'platform_api::test::list_devices' (67) panicked at src/platform_api.rs:1151:9: [INFO] [stdout] [INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [INFO] [stdout] assert_matches_snapshot!(format!("{resp:#?}")); [INFO] [stdout] [INFO] [stdout] Assertion Failure! [INFO] [stdout] [INFO] [stdout] Expected string to match snapshot stored in [INFO] [stdout] src/__k9_snapshots__/platform_api/platform_api_test_list_devices.snap [INFO] [stdout] [INFO] [stdout] Difference: [INFO] [stdout] [INFO] [stdout] GetDevicesResponse { [INFO] [stdout] code: 200, [INFO] [stdout] message: "success", [INFO] [stdout] data: [ [INFO] [stdout] HttpDeviceInfo { [INFO] [stdout] sku: "H6601", [INFO] [stdout] device: "9D:FA:85:EB:D3:00:8B:FF", [INFO] [stdout] device_name: "", [INFO] [stdout] device_type: Other( [INFO] [stdout] "NONE", [INFO] [stdout] ), [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Toggle, [INFO] [stdout] instance: "gradientToggle", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Range, [INFO] [stdout] instance: "brightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 1, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedColorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: None, [INFO] [stdout] element_range: None, [INFO] [stdout] element_type: None, [INFO] [stdout] options: [ [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 0, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 1, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 2, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 3, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 4, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 5, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 6, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 7, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 8, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 9, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 10, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 11, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 12, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 13, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 14, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorTemperatureK", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 2000, [INFO] [stdout] max: 9000, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "lightScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Tudum", [INFO] [stdout] value: Number(3054), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Party", [INFO] [stdout] value: Number(3055), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Dance Party", [INFO] [stdout] value: Number(3056), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Dine Together", [INFO] [stdout] value: Number(3057), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Dating", [INFO] [stdout] value: Number(3058), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Adventure", [INFO] [stdout] value: Number(3059), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Technology", [INFO] [stdout] value: Number(3060), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Sports", [INFO] [stdout] value: Number(3061), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Dreamlike", [INFO] [stdout] value: Number(3062), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Dynamic", [INFO] [stdout] value: Number(3063), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Blossom", [INFO] [stdout] value: Number(3064), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Christmas", [INFO] [stdout] value: Number(3065), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Halloween", [INFO] [stdout] value: Number(3066), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Fireworks", [INFO] [stdout] value: Number(3067), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Ghost", [INFO] [stdout] value: Number(3068), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Easter", [INFO] [stdout] value: Number(3069), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Valentine's Day", [INFO] [stdout] value: Number(3070), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Spin", [INFO] [stdout] value: Number(3071), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Stacking", [INFO] [stdout] value: Number(3072), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Shoot", [INFO] [stdout] value: Number(3073), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Racing", [INFO] [stdout] value: Number(3074), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Poker", [INFO] [stdout] value: Number(3075), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Crossing", [INFO] [stdout] value: Number(3076), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Fight", [INFO] [stdout] value: Number(3077), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Electro Dance", [INFO] [stdout] value: Number(3078), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Swing", [INFO] [stdout] value: Number(3079), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Candy Crush", [INFO] [stdout] value: Number(3080), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Portal", [INFO] [stdout] value: Number(3081), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Freeze", [INFO] [stdout] value: Number(3082), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Excited", [INFO] [stdout] value: Number(3083), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Tension", [INFO] [stdout] value: Number(3084), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Fright", [INFO] [stdout] value: Number(3085), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Energetic", [INFO] [stdout] value: Number(3086), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Doubt", [INFO] [stdout] value: Number(3087), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Meditation", [INFO] [stdout] value: Number(3088), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Daze", [INFO] [stdout] value: Number(3089), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Action", [INFO] [stdout] value: Number(3090), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rivalry", [INFO] [stdout] value: Number(3091), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Puzzle Game", [INFO] [stdout] value: Number(3092), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Shooting Game", [INFO] [stdout] value: Number(3093), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Racing Game", [INFO] [stdout] value: Number(3094), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Card Playing", [INFO] [stdout] value: Number(3095), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: MusicSetting, [INFO] [stdout] instance: "musicMode", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "musicMode", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Energic", [INFO] [stdout] value: Number(5), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rhythm", [INFO] [stdout] value: Number(3), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Spectrum", [INFO] [stdout] value: Number(6), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rolling", [INFO] [stdout] value: Number(4), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "sensitivity", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "autoColor", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "diyScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Fade", [INFO] [stdout] value: Number(8216567), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "snapshot", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Sunrise", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Sunset", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] HttpDeviceInfo { [INFO] [stdout] sku: "H605C", [INFO] [stdout] device: "69:EC:D1:37:36:39:24:4B", [INFO] [stdout] device_name: "", [INFO] [stdout] device_type: Other( [INFO] [stdout] "NONE", [INFO] [stdout] ), [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Toggle, [INFO] [stdout] instance: "gradientToggle", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Range, [INFO] [stdout] instance: "brightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 1, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedColorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: None, [INFO] [stdout] element_range: None, [INFO] [stdout] element_type: None, [INFO] [stdout] options: [ [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 0, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 1, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 2, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 3, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 4, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 5, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 6, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 7, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 8, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 9, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 10, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 11, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 12, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 13, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 14, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorTemperatureK", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 2000, [INFO] [stdout] max: 9000, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "lightScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Tudum", [INFO] [stdout] value: Number(3054), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Party", [INFO] [stdout] value: Number(3055), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Dance Party", [INFO] [stdout] value: Number(3056), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Dine Together", [INFO] [stdout] value: Number(3057), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Dating", [INFO] [stdout] value: Number(3058), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Adventure", [INFO] [stdout] value: Number(3059), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Technology", [INFO] [stdout] value: Number(3060), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Sports", [INFO] [stdout] value: Number(3061), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Dreamlike", [INFO] [stdout] value: Number(3062), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Dynamic", [INFO] [stdout] value: Number(3063), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Blossom", [INFO] [stdout] value: Number(3064), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Christmas", [INFO] [stdout] value: Number(3065), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Halloween", [INFO] [stdout] value: Number(3066), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Fireworks", [INFO] [stdout] value: Number(3067), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Ghost", [INFO] [stdout] value: Number(3068), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Easter", [INFO] [stdout] value: Number(3069), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Valentine's Day", [INFO] [stdout] value: Number(3070), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Spin", [INFO] [stdout] value: Number(3071), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Stacking", [INFO] [stdout] value: Number(3072), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Shoot", [INFO] [stdout] value: Number(3073), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Racing", [INFO] [stdout] value: Number(3074), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Poker", [INFO] [stdout] value: Number(3075), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Crossing", [INFO] [stdout] value: Number(3076), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Fight", [INFO] [stdout] value: Number(3077), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Electro Dance", [INFO] [stdout] value: Number(3078), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Swing", [INFO] [stdout] value: Number(3079), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Candy Crush", [INFO] [stdout] value: Number(3080), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Portal", [INFO] [stdout] value: Number(3081), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Freeze", [INFO] [stdout] value: Number(3082), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Excited", [INFO] [stdout] value: Number(3083), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Tension", [INFO] [stdout] value: Number(3084), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Fright", [INFO] [stdout] value: Number(3085), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Energetic", [INFO] [stdout] value: Number(3086), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Doubt", [INFO] [stdout] value: Number(3087), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Meditation", [INFO] [stdout] value: Number(3088), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Daze", [INFO] [stdout] value: Number(3089), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Action", [INFO] [stdout] value: Number(3090), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rivalry", [INFO] [stdout] value: Number(3091), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Puzzle Game", [INFO] [stdout] value: Number(3092), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Shooting Game", [INFO] [stdout] value: Number(3093), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Racing Game", [INFO] [stdout] value: Number(3094), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Card Playing", [INFO] [stdout] value: Number(3095), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: MusicSetting, [INFO] [stdout] instance: "musicMode", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "musicMode", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Energic", [INFO] [stdout] value: Number(5), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rhythm", [INFO] [stdout] value: Number(3), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Spectrum", [INFO] [stdout] value: Number(4), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rolling", [INFO] [stdout] value: Number(6), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "sensitivity", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "autoColor", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicSetting, [INFO] [stdout] instance: "diyScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "fade", [INFO] [stdout] value: Number(8216567), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "snapshot", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "color scene", [INFO] [stdout] value: Number(465503), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] HttpDeviceInfo { [INFO] [stdout] sku: "H7055", [INFO] [stdout] device: "B6:21:C3:37:34:32:33:86", [INFO] [stdout] device_name: "", [INFO] [stdout] device_type: Other( [INFO] [stdout] "NONE", [INFO] [stdout] ), [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Toggle, [INFO] [stdout] instance: "gradientToggle", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Range, [INFO] [stdout] instance: "brightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 1, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedColorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: None, [INFO] [stdout] element_range: None, [INFO] [stdout] element_type: None, [INFO] [stdout] options: [ [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 0, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 1, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 2, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 3, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 4, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 5, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 6, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 7, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 8, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 9, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 10, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 11, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 12, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 13, [INFO] [stdout] }, [INFO] [stdout] ArrayOption { [INFO] [stdout] value: 14, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorTemperatureK", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 2000, [INFO] [stdout] max: 9000, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "lightScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Tudum", [INFO] [stdout] value: Number(3054), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Party", [INFO] [stdout] value: Number(3055), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Dance Party", [INFO] [stdout] value: Number(3056), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Dine Together", [INFO] [stdout] value: Number(3057), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Dating", [INFO] [stdout] value: Number(3058), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Adventure", [INFO] [stdout] value: Number(3059), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Technology", [INFO] [stdout] value: Number(3060), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Sports", [INFO] [stdout] value: Number(3061), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Dreamlike", [INFO] [stdout] value: Number(3062), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Dynamic", [INFO] [stdout] value: Number(3063), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Blossom", [INFO] [stdout] value: Number(3064), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Christmas", [INFO] [stdout] value: Number(3065), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Halloween", [INFO] [stdout] value: Number(3066), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Fireworks", [INFO] [stdout] value: Number(3067), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Ghost", [INFO] [stdout] value: Number(3068), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Easter", [INFO] [stdout] value: Number(3069), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Valentine's Day", [INFO] [stdout] value: Number(3070), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Spin", [INFO] [stdout] value: Number(3071), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Stacking", [INFO] [stdout] value: Number(3072), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Shoot", [INFO] [stdout] value: Number(3073), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Racing", [INFO] [stdout] value: Number(3074), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Poker", [INFO] [stdout] value: Number(3075), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Crossing", [INFO] [stdout] value: Number(3076), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Fight", [INFO] [stdout] value: Number(3077), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Electro Dance", [INFO] [stdout] value: Number(3078), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Swing", [INFO] [stdout] value: Number(3079), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Candy Crush", [INFO] [stdout] value: Number(3080), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Portal", [INFO] [stdout] value: Number(3081), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Freeze", [INFO] [stdout] value: Number(3082), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Excited", [INFO] [stdout] value: Number(3083), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Tension", [INFO] [stdout] value: Number(3084), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Fright", [INFO] [stdout] value: Number(3085), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Energetic", [INFO] [stdout] value: Number(3086), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Doubt", [INFO] [stdout] value: Number(3087), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Meditation", [INFO] [stdout] value: Number(3088), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Daze", [INFO] [stdout] value: Number(3089), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Action", [INFO] [stdout] value: Number(3090), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rivalry", [INFO] [stdout] value: Number(3091), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Puzzle Game", [INFO] [stdout] value: Number(3092), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Shooting Game", [INFO] [stdout] value: Number(3093), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Racing Game", [INFO] [stdout] value: Number(3094), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Card Playing", [INFO] [stdout] value: Number(3095), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: MusicSetting, [INFO] [stdout] instance: "musicMode", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "musicMode", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Energic", [INFO] [stdout] value: Number(5), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rhythm", [INFO] [stdout] value: Number(3), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Spectrum", [INFO] [stdout] value: Number(6), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rolling", [INFO] [stdout] value: Number(4), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "sensitivity", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "autoColor", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "diyScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Fade", [INFO] [stdout] value: Number(8216567), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "snapshot", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Sunrise", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Sunset", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] } [INFO] [stdout] - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] run with `K9_UPDATE_SNAPSHOTS=1` to update/create snapshots [INFO] [stdout] [INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [INFO] [stdout] [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5680a45a47a2 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5680a45a47a2 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5680a45a47a2 - std[3b51380354919863]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x5680a45a47a2 - <::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x5680a45bd6fa - ::fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x5680a45bd6fa - core[27de1724e4349be2]::fmt::write [INFO] [stdout] 6: 0x5680a45aa0d6 - std[3b51380354919863]::io::default_write_fmt::> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5680a45aa0d6 - as std[3b51380354919863]::io::Write>::write_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x5680a458075f - ::print [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x5680a458075f - std[3b51380354919863]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x5680a459bd49 - std[3b51380354919863]::panicking::default_hook [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x5680a3b0688e - core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 12: 0x5680a3b0688e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5680a459bfb2 - core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 14: 0x5680a459bfb2 - std[3b51380354919863]::panicking::panic_with_hook [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x5680a4580818 - std[3b51380354919863]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x5680a4575279 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x5680a458192d - __rustc[d79c0ace40940972]::rust_begin_unwind [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x5680a45bde6c - core[27de1724e4349be2]::panicking::panic_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x5680a3833338 - core[27de1724e4349be2]::panicking::panic_display:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:259:5 [INFO] [stdout] 20: 0x5680a3861716 - govee[14548bf8a5f0c675]::platform_api::test::list_devices [INFO] [stdout] at /opt/rustwide/workdir/src/platform_api.rs:1151:9 [INFO] [stdout] 21: 0x5680a3849ce7 - govee[14548bf8a5f0c675]::platform_api::test::list_devices::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/platform_api.rs:1149:22 [INFO] [stdout] 22: 0x5680a362ad06 - >::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 23: 0x5680a3afac3b - core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 24: 0x5680a3afac3b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18 [INFO] [stdout] 25: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74 [INFO] [stdout] 26: 0x5680a3b0749a - as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 27: 0x5680a3b0749a - std[3b51380354919863]::panicking::catch_unwind::do_call::, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40 [INFO] [stdout] 28: 0x5680a3b0749a - std[3b51380354919863]::panicking::catch_unwind::, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19 [INFO] [stdout] 29: 0x5680a3b0749a - std[3b51380354919863]::panic::catch_unwind::, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14 [INFO] [stdout] 30: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test_in_process [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27 [INFO] [stdout] 31: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43 [INFO] [stdout] 32: 0x5680a3b02a44 - test[182b2e79ecd7bbd9]::run_test::{closure#1} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41 [INFO] [stdout] 33: 0x5680a3b02a44 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 34: 0x5680a3b09f92 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 35: 0x5680a3b09f92 - ::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 36: 0x5680a3b09f92 - std[3b51380354919863]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40 [INFO] [stdout] 37: 0x5680a3b09f92 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19 [INFO] [stdout] 38: 0x5680a3b09f92 - std[3b51380354919863]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14 [INFO] [stdout] 39: 0x5680a3b09f92 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 40: 0x5680a3b09f92 - ::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 41: 0x5680a45a3acf - + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9 [INFO] [stdout] 42: 0x5680a45a3acf - ::new::thread_start [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17 [INFO] [stdout] 43: 0x781fbb638aa4 - [INFO] [stdout] 44: 0x781fbb6c5a64 - clone [INFO] [stdout] 45: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- platform_api::test::get_device_state stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'platform_api::test::get_device_state' (66) panicked at src/platform_api.rs:1129:9: [INFO] [stdout] [INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [INFO] [stdout] assert_matches_snapshot!(format!("{resp:#?}")); [INFO] [stdout] [INFO] [stdout] Assertion Failure! [INFO] [stdout] [INFO] [stdout] Expected string to match snapshot stored in [INFO] [stdout] src/__k9_snapshots__/platform_api/platform_api_test_get_device_state.snap [INFO] [stdout] [INFO] [stdout] Difference: [INFO] [stdout] [INFO] [stdout] GetDeviceStateResponse { [INFO] [stdout] request_id: "uuid", [INFO] [stdout] code: 200, [INFO] [stdout] message: "success", [INFO] [stdout] payload: HttpDeviceState { [INFO] [stdout] sku: "H7143", [INFO] [stdout] device: "52:8B:D4:AD:FC:45:5D:FE", [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapabilityState { [INFO] [stdout] kind: Online, [INFO] [stdout] instance: "online", [INFO] [stdout] state: Object { [INFO] [stdout] "value": Bool(false), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] DeviceCapabilityState { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] state: Object { [INFO] [stdout] "value": Number(0), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] DeviceCapabilityState { [INFO] [stdout] kind: Toggle, [INFO] [stdout] instance: "warmMistToggle", [INFO] [stdout] state: Object { [INFO] [stdout] "value": Number(0), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] DeviceCapabilityState { [INFO] [stdout] kind: WorkMode, [INFO] [stdout] instance: "workMode", [INFO] [stdout] state: Object { [INFO] [stdout] "value": Object { [INFO] [stdout] "modeValue": Number(9), [INFO] [stdout] "workMode": Number(3), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] DeviceCapabilityState { [INFO] [stdout] kind: Range, [INFO] [stdout] instance: "humidity", [INFO] [stdout] state: Object { [INFO] [stdout] "value": String(""), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] DeviceCapabilityState { [INFO] [stdout] kind: Toggle, [INFO] [stdout] instance: "nightlightToggle", [INFO] [stdout] state: Object { [INFO] [stdout] "value": Number(1), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] DeviceCapabilityState { [INFO] [stdout] kind: Range, [INFO] [stdout] instance: "brightness", [INFO] [stdout] state: Object { [INFO] [stdout] "value": Number(5), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] DeviceCapabilityState { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorRgb", [INFO] [stdout] state: Object { [INFO] [stdout] "value": Number(16777215), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] DeviceCapabilityState { [INFO] [stdout] kind: Mode, [INFO] [stdout] instance: "nightlightScene", [INFO] [stdout] state: Object { [INFO] [stdout] "value": Number(5), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] } [INFO] [stdout] - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] run with `K9_UPDATE_SNAPSHOTS=1` to update/create snapshots [INFO] [stdout] [INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [INFO] [stdout] [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5680a45a47a2 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5680a45a47a2 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5680a45a47a2 - std[3b51380354919863]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x5680a45a47a2 - <::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x5680a45bd6fa - ::fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x5680a45bd6fa - core[27de1724e4349be2]::fmt::write [INFO] [stdout] 6: 0x5680a45aa0d6 - std[3b51380354919863]::io::default_write_fmt::> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5680a45aa0d6 - as std[3b51380354919863]::io::Write>::write_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x5680a458075f - ::print [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x5680a458075f - std[3b51380354919863]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x5680a459bd49 - std[3b51380354919863]::panicking::default_hook [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x5680a3b0688e - core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 12: 0x5680a3b0688e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5680a459bfb2 - core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 14: 0x5680a459bfb2 - std[3b51380354919863]::panicking::panic_with_hook [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x5680a4580818 - std[3b51380354919863]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x5680a4575279 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x5680a458192d - __rustc[d79c0ace40940972]::rust_begin_unwind [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x5680a45bde6c - core[27de1724e4349be2]::panicking::panic_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x5680a3833338 - core[27de1724e4349be2]::panicking::panic_display:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:259:5 [INFO] [stdout] 20: 0x5680a38621df - govee[14548bf8a5f0c675]::platform_api::test::get_device_state [INFO] [stdout] at /opt/rustwide/workdir/src/platform_api.rs:1129:9 [INFO] [stdout] 21: 0x5680a3849d47 - govee[14548bf8a5f0c675]::platform_api::test::get_device_state::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/platform_api.rs:1127:26 [INFO] [stdout] 22: 0x5680a362ad86 - >::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 23: 0x5680a3afac3b - core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 24: 0x5680a3afac3b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18 [INFO] [stdout] 25: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74 [INFO] [stdout] 26: 0x5680a3b0749a - as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 27: 0x5680a3b0749a - std[3b51380354919863]::panicking::catch_unwind::do_call::, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40 [INFO] [stdout] 28: 0x5680a3b0749a - std[3b51380354919863]::panicking::catch_unwind::, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19 [INFO] [stdout] 29: 0x5680a3b0749a - std[3b51380354919863]::panic::catch_unwind::, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14 [INFO] [stdout] 30: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test_in_process [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27 [INFO] [stdout] 31: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43 [INFO] [stdout] 32: 0x5680a3b02a44 - test[182b2e79ecd7bbd9]::run_test::{closure#1} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41 [INFO] [stdout] 33: 0x5680a3b02a44 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 34: 0x5680a3b09f92 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 35: 0x5680a3b09f92 - ::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 36: 0x5680a3b09f92 - std[3b51380354919863]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40 [INFO] [stdout] 37: 0x5680a3b09f92 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19 [INFO] [stdout] 38: 0x5680a3b09f92 - std[3b51380354919863]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14 [INFO] [stdout] 39: 0x5680a3b09f92 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 40: 0x5680a3b09f92 - ::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 41: 0x5680a45a3acf - + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9 [INFO] [stdout] 42: 0x5680a45a3acf - ::new::thread_start [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17 [INFO] [stdout] 43: 0x781fbb638aa4 - [INFO] [stdout] 44: 0x781fbb6c5a64 - clone [INFO] [stdout] 45: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- platform_api::test::list_devices_2 stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'platform_api::test::list_devices_2' (68) panicked at src/platform_api.rs:1145:9: [INFO] [stdout] [INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [INFO] [stdout] assert_matches_snapshot!(format!("{resp:#?}")); [INFO] [stdout] [INFO] [stdout] Assertion Failure! [INFO] [stdout] [INFO] [stdout] Expected string to match snapshot stored in [INFO] [stdout] src/__k9_snapshots__/platform_api/platform_api_test_list_devices_2.snap [INFO] [stdout] [INFO] [stdout] Difference: [INFO] [stdout] [INFO] [stdout] GetDevicesResponse { [INFO] [stdout] code: 200, [INFO] [stdout] message: "success", [INFO] [stdout] data: [ [INFO] [stdout] HttpDeviceInfo { [INFO] [stdout] sku: "H6072", [INFO] [stdout] device: "AA:BB:CC:DD:AA:BB:CC:DD", [INFO] [stdout] device_name: "Floor Lamp", [INFO] [stdout] device_type: Light, [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Toggle, [INFO] [stdout] instance: "gradientToggle", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Range, [INFO] [stdout] instance: "brightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 1, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedBrightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 8, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "brightness", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedColorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 8, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorTemperatureK", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 2000, [INFO] [stdout] max: 9000, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "lightScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: MusicSetting, [INFO] [stdout] instance: "musicMode", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "musicMode", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Energic", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rhythm", [INFO] [stdout] value: Number(2), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Bounce", [INFO] [stdout] value: Number(3), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Hopping", [INFO] [stdout] value: Number(4), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Strike", [INFO] [stdout] value: Number(5), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Vibrate", [INFO] [stdout] value: Number(6), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "sensitivity", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "autoColor", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "diyScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "snapshot", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] HttpDeviceInfo { [INFO] [stdout] sku: "H6072", [INFO] [stdout] device: "AA:BB:CC:DD:AA:BB:CC:DD", [INFO] [stdout] device_name: "Floor Lamp", [INFO] [stdout] device_type: Light, [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Toggle, [INFO] [stdout] instance: "gradientToggle", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Range, [INFO] [stdout] instance: "brightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 1, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedBrightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 8, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "brightness", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedColorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 8, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorTemperatureK", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 2000, [INFO] [stdout] max: 9000, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "lightScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: MusicSetting, [INFO] [stdout] instance: "musicMode", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "musicMode", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Energic", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rhythm", [INFO] [stdout] value: Number(2), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Bounce", [INFO] [stdout] value: Number(3), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Hopping", [INFO] [stdout] value: Number(4), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Strike", [INFO] [stdout] value: Number(5), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Vibrate", [INFO] [stdout] value: Number(6), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "sensitivity", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "autoColor", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "diyScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "snapshot", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] HttpDeviceInfo { [INFO] [stdout] sku: "H619A", [INFO] [stdout] device: "AA:BB:CC:DD:AA:BB:CC:DD", [INFO] [stdout] device_name: "H619A_CDF5", [INFO] [stdout] device_type: Light, [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Toggle, [INFO] [stdout] instance: "gradientToggle", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Range, [INFO] [stdout] instance: "brightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 1, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedBrightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 15, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "brightness", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedColorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 15, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorTemperatureK", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 2000, [INFO] [stdout] max: 9000, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "lightScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: MusicSetting, [INFO] [stdout] instance: "musicMode", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "musicMode", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Energic", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rhythm", [INFO] [stdout] value: Number(2), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Spectrum", [INFO] [stdout] value: Number(3), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rolling", [INFO] [stdout] value: Number(4), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Separation", [INFO] [stdout] value: Number(5), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Hopping", [INFO] [stdout] value: Number(6), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "PianoKeys", [INFO] [stdout] value: Number(7), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Fountain", [INFO] [stdout] value: Number(8), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "DayAndNight", [INFO] [stdout] value: Number(9), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Sprouting", [INFO] [stdout] value: Number(10), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Shiny", [INFO] [stdout] value: Number(11), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "sensitivity", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "autoColor", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "diyScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "snapshot", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] HttpDeviceInfo { [INFO] [stdout] sku: "H619A", [INFO] [stdout] device: "AA:BB:CC:DD:AA:BB:CC:DD", [INFO] [stdout] device_name: "Strip", [INFO] [stdout] device_type: Light, [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Toggle, [INFO] [stdout] instance: "gradientToggle", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Range, [INFO] [stdout] instance: "brightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 1, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedBrightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 15, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "brightness", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedColorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 15, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorTemperatureK", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 2000, [INFO] [stdout] max: 9000, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "lightScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: MusicSetting, [INFO] [stdout] instance: "musicMode", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "musicMode", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Energic", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rhythm", [INFO] [stdout] value: Number(2), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Spectrum", [INFO] [stdout] value: Number(3), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rolling", [INFO] [stdout] value: Number(4), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Separation", [INFO] [stdout] value: Number(5), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Hopping", [INFO] [stdout] value: Number(6), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "PianoKeys", [INFO] [stdout] value: Number(7), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Fountain", [INFO] [stdout] value: Number(8), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "DayAndNight", [INFO] [stdout] value: Number(9), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Sprouting", [INFO] [stdout] value: Number(10), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Shiny", [INFO] [stdout] value: Number(11), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "sensitivity", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "autoColor", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "diyScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "snapshot", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] HttpDeviceInfo { [INFO] [stdout] sku: "H61A2", [INFO] [stdout] device: "AA:BB:CC:DD:AA:BB:CC:DD", [INFO] [stdout] device_name: "Neon", [INFO] [stdout] device_type: Light, [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Toggle, [INFO] [stdout] instance: "gradientToggle", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Range, [INFO] [stdout] instance: "brightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 1, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedBrightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 15, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "brightness", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedColorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 15, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: None, [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorTemperatureK", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 2000, [INFO] [stdout] max: 9000, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "lightScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: MusicSetting, [INFO] [stdout] instance: "musicMode", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "musicMode", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Energic", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rhythm", [INFO] [stdout] value: Number(2), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Spectrum", [INFO] [stdout] value: Number(3), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rolling", [INFO] [stdout] value: Number(4), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Separation", [INFO] [stdout] value: Number(5), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Hopping", [INFO] [stdout] value: Number(6), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "PianoKeys", [INFO] [stdout] value: Number(7), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Fountain", [INFO] [stdout] value: Number(8), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "DayandNight", [INFO] [stdout] value: Number(9), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Sprouting", [INFO] [stdout] value: Number(10), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Shiny", [INFO] [stdout] value: Number(11), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "sensitivity", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "autoColor", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "diyScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "snapshot", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] HttpDeviceInfo { [INFO] [stdout] sku: "H610A", [INFO] [stdout] device: "AA:BB:CC:DD:AA:BB:CC:DD", [INFO] [stdout] device_name: "Govee Glide Lively 1", [INFO] [stdout] device_type: Light, [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] HttpDeviceInfo { [INFO] [stdout] sku: "H6058", [INFO] [stdout] device: "AA:BB:CC:DD:AA:BB:CC:DD", [INFO] [stdout] device_name: "Portable Table Lamp", [INFO] [stdout] device_type: Light, [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Range, [INFO] [stdout] instance: "brightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 1, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedBrightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 15, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "brightness", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorTemperatureK", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 2000, [INFO] [stdout] max: 9000, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "lightScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: MusicSetting, [INFO] [stdout] instance: "musicMode", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "musicMode", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Dynamic", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Calm", [INFO] [stdout] value: Number(2), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "sensitivity", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "autoColor", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "diyScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "snapshot", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] HttpDeviceInfo { [INFO] [stdout] sku: "H6072", [INFO] [stdout] device: "AA:BB:CC:DD:AA:BB:CC:DD", [INFO] [stdout] device_name: "Floor Lamp", [INFO] [stdout] device_type: Light, [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Toggle, [INFO] [stdout] instance: "gradientToggle", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Range, [INFO] [stdout] instance: "brightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 1, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedBrightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 8, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "brightness", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedColorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 8, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorTemperatureK", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 2000, [INFO] [stdout] max: 9000, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "lightScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: MusicSetting, [INFO] [stdout] instance: "musicMode", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "musicMode", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Energic", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rhythm", [INFO] [stdout] value: Number(2), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Bounce", [INFO] [stdout] value: Number(3), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Hopping", [INFO] [stdout] value: Number(4), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Strike", [INFO] [stdout] value: Number(5), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Vibrate", [INFO] [stdout] value: Number(6), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "sensitivity", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "autoColor", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "diyScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "snapshot", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] HttpDeviceInfo { [INFO] [stdout] sku: "H6072", [INFO] [stdout] device: "AA:BB:CC:DD:AA:BB:CC:DD", [INFO] [stdout] device_name: "Light", [INFO] [stdout] device_type: Light, [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Toggle, [INFO] [stdout] instance: "gradientToggle", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Range, [INFO] [stdout] instance: "brightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 1, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedBrightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 8, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "brightness", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedColorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 8, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorTemperatureK", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 2000, [INFO] [stdout] max: 9000, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "lightScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: MusicSetting, [INFO] [stdout] instance: "musicMode", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "musicMode", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Energic", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rhythm", [INFO] [stdout] value: Number(2), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Bounce", [INFO] [stdout] value: Number(3), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Hopping", [INFO] [stdout] value: Number(4), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Strike", [INFO] [stdout] value: Number(5), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Vibrate", [INFO] [stdout] value: Number(6), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "sensitivity", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "autoColor", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "diyScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "snapshot", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] HttpDeviceInfo { [INFO] [stdout] sku: "H6072", [INFO] [stdout] device: "AA:BB:CC:DD:AA:BB:CC:DD", [INFO] [stdout] device_name: "Lamp", [INFO] [stdout] device_type: Light, [INFO] [stdout] capabilities: [ [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: OnOff, [INFO] [stdout] instance: "powerSwitch", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Toggle, [INFO] [stdout] instance: "gradientToggle", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: Range, [INFO] [stdout] instance: "brightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 1, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedBrightness", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 8, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "brightness", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: SegmentColorSetting, [INFO] [stdout] instance: "segmentedColorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "segment", [INFO] [stdout] field_type: Array { [INFO] [stdout] size: Some( [INFO] [stdout] ArraySize { [INFO] [stdout] min: 1, [INFO] [stdout] max: 8, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_range: Some( [INFO] [stdout] ElementRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 14, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] element_type: Some( [INFO] [stdout] "INTEGER", [INFO] [stdout] ), [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorRgb", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: ColorSetting, [INFO] [stdout] instance: "colorTemperatureK", [INFO] [stdout] parameters: Some( [INFO] [stdout] Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 2000, [INFO] [stdout] max: 9000, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "lightScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: MusicSetting, [INFO] [stdout] instance: "musicMode", [INFO] [stdout] parameters: Some( [INFO] [stdout] Struct { [INFO] [stdout] fields: [ [INFO] [stdout] StructField { [INFO] [stdout] field_name: "musicMode", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Energic", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Rhythm", [INFO] [stdout] value: Number(2), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Bounce", [INFO] [stdout] value: Number(3), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Hopping", [INFO] [stdout] value: Number(4), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Strike", [INFO] [stdout] value: Number(5), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "Vibrate", [INFO] [stdout] value: Number(6), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "sensitivity", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: Some( [INFO] [stdout] "unit.percent", [INFO] [stdout] ), [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 100, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: true, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "autoColor", [INFO] [stdout] field_type: Enum { [INFO] [stdout] options: [ [INFO] [stdout] EnumOption { [INFO] [stdout] name: "on", [INFO] [stdout] value: Number(1), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] EnumOption { [INFO] [stdout] name: "off", [INFO] [stdout] value: Number(0), [INFO] [stdout] extras: {}, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] StructField { [INFO] [stdout] field_name: "rgb", [INFO] [stdout] field_type: Integer { [INFO] [stdout] unit: None, [INFO] [stdout] range: IntegerRange { [INFO] [stdout] min: 0, [INFO] [stdout] max: 16777215, [INFO] [stdout] precision: 1, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] default_value: None, [INFO] [stdout] required: false, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "diyScene", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] DeviceCapability { [INFO] [stdout] kind: DynamicScene, [INFO] [stdout] instance: "snapshot", [INFO] [stdout] parameters: Some( [INFO] [stdout] Enum { [INFO] [stdout] options: [], [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] alarm_type: None, [INFO] [stdout] event_state: None, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] } [INFO] [stdout] - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] run with `K9_UPDATE_SNAPSHOTS=1` to update/create snapshots [INFO] [stdout] [INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [INFO] [stdout] [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5680a45a47a2 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5680a45a47a2 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5680a45a47a2 - std[3b51380354919863]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x5680a45a47a2 - <::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x5680a45bd6fa - ::fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x5680a45bd6fa - core[27de1724e4349be2]::fmt::write [INFO] [stdout] 6: 0x5680a45aa0d6 - std[3b51380354919863]::io::default_write_fmt::> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5680a45aa0d6 - as std[3b51380354919863]::io::Write>::write_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x5680a458075f - ::print [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x5680a458075f - std[3b51380354919863]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x5680a459bd49 - std[3b51380354919863]::panicking::default_hook [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x5680a3b0688e - core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 12: 0x5680a3b0688e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5680a459bfb2 - core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 14: 0x5680a459bfb2 - std[3b51380354919863]::panicking::panic_with_hook [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x5680a4580818 - std[3b51380354919863]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x5680a4575279 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x5680a458192d - __rustc[d79c0ace40940972]::rust_begin_unwind [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x5680a45bde6c - core[27de1724e4349be2]::panicking::panic_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x5680a3833338 - core[27de1724e4349be2]::panicking::panic_display:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:259:5 [INFO] [stdout] 20: 0x5680a3861c56 - govee[14548bf8a5f0c675]::platform_api::test::list_devices_2 [INFO] [stdout] at /opt/rustwide/workdir/src/platform_api.rs:1145:9 [INFO] [stdout] 21: 0x5680a3849d17 - govee[14548bf8a5f0c675]::platform_api::test::list_devices_2::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/platform_api.rs:1143:24 [INFO] [stdout] 22: 0x5680a362ad46 - >::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 23: 0x5680a3afac3b - core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 24: 0x5680a3afac3b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18 [INFO] [stdout] 25: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74 [INFO] [stdout] 26: 0x5680a3b0749a - as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 27: 0x5680a3b0749a - std[3b51380354919863]::panicking::catch_unwind::do_call::, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40 [INFO] [stdout] 28: 0x5680a3b0749a - std[3b51380354919863]::panicking::catch_unwind::, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19 [INFO] [stdout] 29: 0x5680a3b0749a - std[3b51380354919863]::panic::catch_unwind::, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14 [INFO] [stdout] 30: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test_in_process [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27 [INFO] [stdout] 31: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43 [INFO] [stdout] 32: 0x5680a3b02a44 - test[182b2e79ecd7bbd9]::run_test::{closure#1} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41 [INFO] [stdout] 33: 0x5680a3b02a44 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 34: 0x5680a3b09f92 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 35: 0x5680a3b09f92 - ::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 36: 0x5680a3b09f92 - std[3b51380354919863]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40 [INFO] [stdout] 37: 0x5680a3b09f92 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19 [INFO] [stdout] 38: 0x5680a3b09f92 - std[3b51380354919863]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14 [INFO] [stdout] 39: 0x5680a3b09f92 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 40: 0x5680a3b09f92 - ::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 41: 0x5680a45a3acf - + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9 [INFO] [stdout] 42: 0x5680a45a3acf - ::new::thread_start [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17 [INFO] [stdout] 43: 0x781fbb638aa4 - [INFO] [stdout] 44: 0x781fbb6c5a64 - clone [INFO] [stdout] 45: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- undoc_api::test::get_one_click stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'undoc_api::test::get_one_click' (79) panicked at src/undoc_api.rs:936:9: [INFO] [stdout] [INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [INFO] [stdout] assert_matches_snapshot!(format!("{resp:#?}")); [INFO] [stdout] [INFO] [stdout] Assertion Failure! [INFO] [stdout] [INFO] [stdout] Expected string to match snapshot stored in [INFO] [stdout] src/__k9_snapshots__/undoc_api/undoc_api_test_get_one_click.snap [INFO] [stdout] [INFO] [stdout] Difference: [INFO] [stdout] [INFO] [stdout] OneClickResponse { [INFO] [stdout] data: OneClickComponentList { [INFO] [stdout] components: [ [INFO] [stdout] OneClickComponent { [INFO] [stdout] can_disable: None, [INFO] [stdout] can_manage: true, [INFO] [stdout] feast_type: None, [INFO] [stdout] feasts: [], [INFO] [stdout] groups: [], [INFO] [stdout] main_device: None, [INFO] [stdout] component_id: 1234, [INFO] [stdout] environments: [], [INFO] [stdout] name: "Environment Information", [INFO] [stdout] component_type: 4, [INFO] [stdout] guide_url: None, [INFO] [stdout] h5_url: None, [INFO] [stdout] video_url: None, [INFO] [stdout] one_clicks: [], [INFO] [stdout] }, [INFO] [stdout] OneClickComponent { [INFO] [stdout] can_disable: Some( [INFO] [stdout] 0, [INFO] [stdout] ), [INFO] [stdout] can_manage: false, [INFO] [stdout] feast_type: None, [INFO] [stdout] feasts: [], [INFO] [stdout] groups: [], [INFO] [stdout] main_device: None, [INFO] [stdout] component_id: 1234, [INFO] [stdout] environments: [], [INFO] [stdout] name: "Default", [INFO] [stdout] component_type: 1, [INFO] [stdout] guide_url: Some( [INFO] [stdout] "https://d1f2504ijhdyjw.cloudfront.net/mp4/a7cdba10f8a30785265447a16cbfcc27-oneClick.mp4", [INFO] [stdout] ), [INFO] [stdout] h5_url: None, [INFO] [stdout] video_url: None, [INFO] [stdout] one_clicks: [ [INFO] [stdout] OneClick { [INFO] [stdout] name: "woot", [INFO] [stdout] plan_type: 0, [INFO] [stdout] preset_id: 0, [INFO] [stdout] preset_state: 0, [INFO] [stdout] siri_engine_id: 1234, [INFO] [stdout] rule_type: 0, [INFO] [stdout] desc: "", [INFO] [stdout] exec_rules: [], [INFO] [stdout] group_id: 0, [INFO] [stdout] group_name: "", [INFO] [stdout] iot_rules: [ [INFO] [stdout] OneClickIotRule { [INFO] [stdout] device_obj: OneClickIotRuleDevice { [INFO] [stdout] name: Some( [INFO] [stdout] "Study Floor Lamp 1", [INFO] [stdout] ), [INFO] [stdout] device: Some( [INFO] [stdout] "xx:34:11", [INFO] [stdout] ), [INFO] [stdout] sku: Some( [INFO] [stdout] "H6072", [INFO] [stdout] ), [INFO] [stdout] topic: Some( [INFO] [stdout] REDACTED, [INFO] [stdout] ), [INFO] [stdout] ble_address: Some( [INFO] [stdout] "", [INFO] [stdout] ), [INFO] [stdout] ble_name: Some( [INFO] [stdout] "Govee_H6072_3411", [INFO] [stdout] ), [INFO] [stdout] device_splicing_status: 0, [INFO] [stdout] feast_id: 0, [INFO] [stdout] feast_name: "", [INFO] [stdout] feast_type: 0, [INFO] [stdout] goods_type: Some( [INFO] [stdout] 30, [INFO] [stdout] ), [INFO] [stdout] ic: Some( [INFO] [stdout] 66, [INFO] [stdout] ), [INFO] [stdout] ic_sub_1: Some( [INFO] [stdout] 0, [INFO] [stdout] ), [INFO] [stdout] ic_sub_2: Some( [INFO] [stdout] 0, [INFO] [stdout] ), [INFO] [stdout] is_feast: false, [INFO] [stdout] pact_type: Some( [INFO] [stdout] 2, [INFO] [stdout] ), [INFO] [stdout] pact_code: Some( [INFO] [stdout] 1, [INFO] [stdout] ), [INFO] [stdout] settings: None, [INFO] [stdout] spec: Some( [INFO] [stdout] "", [INFO] [stdout] ), [INFO] [stdout] sub_device: "", [INFO] [stdout] sub_device_num: 0, [INFO] [stdout] sub_devices: Some( [INFO] [stdout] Object {}, [INFO] [stdout] ), [INFO] [stdout] version_hard: Some( [INFO] [stdout] "3.02.00", [INFO] [stdout] ), [INFO] [stdout] version_soft: Some( [INFO] [stdout] "2.04.05", [INFO] [stdout] ), [INFO] [stdout] wifi_soft_version: Some( [INFO] [stdout] "1.02.11", [INFO] [stdout] ), [INFO] [stdout] wifi_hard_version: Some( [INFO] [stdout] "1.00.10", [INFO] [stdout] ), [INFO] [stdout] }, [INFO] [stdout] rule: [ [INFO] [stdout] OneClickIotRuleEntry { [INFO] [stdout] blue_msg: Object { [INFO] [stdout] "bleCmd": String("MwEBAAAAAAAAAAAAAAAAAAAAADM="), [INFO] [stdout] "type": String("switch"), [INFO] [stdout] }, [INFO] [stdout] cmd_type: 0, [INFO] [stdout] cmd_val: OneClickIotRuleEntryCmd { [INFO] [stdout] open: Some( [INFO] [stdout] 1, [INFO] [stdout] ), [INFO] [stdout] scenes_code: None, [INFO] [stdout] scence_id: None, [INFO] [stdout] scenes_str: None, [INFO] [stdout] scence_param_id: None, [INFO] [stdout] }, [INFO] [stdout] device_type: 2, [INFO] [stdout] iot_msg: Object { [INFO] [stdout] "msg": Object { [INFO] [stdout] "accountTopic": String("GA/"), [INFO] [stdout] "cmd": String("turn"), [INFO] [stdout] "cmdVersion": Number(1), [INFO] [stdout] "data": Object { [INFO] [stdout] "val": Number(1), [INFO] [stdout] }, [INFO] [stdout] "transaction": String("v_1704000430613857"), [INFO] [stdout] "type": Number(1), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] OneClickIotRuleEntry { [INFO] [stdout] blue_msg: Object { [INFO] [stdout] "bleCmd": String("owABCAIDGhQAAAEAAf//AAAAAKU=,owEA/zIB//8AAAAAAAAAA0dQAHo=,owIAEAAB//8AAAAAAvsUEP9/AM0=,owP/fwD/AAD/AAD/FgD/FgD/AN8=,owQA/38A/38A//8A//8A//8A/1g=,owX/AP//AP//AP//AAAAAAAAAFk=,owYCIGQAAAEAAf//AAD//wIAMtM=,o/8DBoH+B7T/AAD/AAAAAAAAAZQ="), [INFO] [stdout] "modeCmd": String("MwUEMwgAAAAAAAAAAAAAAAAAAAk="), [INFO] [stdout] "switchCmd": String("MwEBAAAAAAAAAAAAAAAAAAAAADM="), [INFO] [stdout] "type": String("scene"), [INFO] [stdout] }, [INFO] [stdout] cmd_type: 3, [INFO] [stdout] cmd_val: OneClickIotRuleEntryCmd { [INFO] [stdout] open: None, [INFO] [stdout] scenes_code: Some( [INFO] [stdout] 2099, [INFO] [stdout] ), [INFO] [stdout] scence_id: Some( [INFO] [stdout] 1606, [INFO] [stdout] ), [INFO] [stdout] scenes_str: Some( [INFO] [stdout] "Sunrise", [INFO] [stdout] ), [INFO] [stdout] scence_param_id: Some( [INFO] [stdout] 1681, [INFO] [stdout] ), [INFO] [stdout] }, [INFO] [stdout] device_type: 2, [INFO] [stdout] iot_msg: Object { [INFO] [stdout] "msg": Object { [INFO] [stdout] "accountTopic": String("GA/"), [INFO] [stdout] "cmd": String("ptReal"), [INFO] [stdout] "cmdVersion": Number(1), [INFO] [stdout] "data": Object { [INFO] [stdout] "command": Array [ [INFO] [stdout] String("owABCAIDGhQAAAEAAf//AAAAAKU="), [INFO] [stdout] String("owEA/zIB//8AAAAAAAAAA0dQAHo="), [INFO] [stdout] String("owIAEAAB//8AAAAAAvsUEP9/AM0="), [INFO] [stdout] String("owP/fwD/AAD/AAD/FgD/FgD/AN8="), [INFO] [stdout] String("owQA/38A/38A//8A//8A//8A/1g="), [INFO] [stdout] String("owX/AP//AP//AP//AAAAAAAAAFk="), [INFO] [stdout] String("owYCIGQAAAEAAf//AAD//wIAMtM="), [INFO] [stdout] String("o/8DBoH+B7T/AAD/AAAAAAAAAZQ="), [INFO] [stdout] String("MwUEMwgAAAAAAAAAAAAAAAAAAAk="), [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] "transaction": String("v_1704000406594520"), [INFO] [stdout] "type": Number(1), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] OneClickComponent { [INFO] [stdout] can_disable: Some( [INFO] [stdout] 1, [INFO] [stdout] ), [INFO] [stdout] can_manage: true, [INFO] [stdout] feast_type: None, [INFO] [stdout] feasts: [], [INFO] [stdout] groups: [], [INFO] [stdout] main_device: None, [INFO] [stdout] component_id: 1234, [INFO] [stdout] environments: [], [INFO] [stdout] name: "Daily", [INFO] [stdout] component_type: 1, [INFO] [stdout] guide_url: Some( [INFO] [stdout] "https://d1f2504ijhdyjw.cloudfront.net/mp4/a7cdba10f8a30785265447a16cbfcc27-oneClick.mp4", [INFO] [stdout] ), [INFO] [stdout] h5_url: None, [INFO] [stdout] video_url: None, [INFO] [stdout] one_clicks: [ [INFO] [stdout] OneClick { [INFO] [stdout] name: "Get Home", [INFO] [stdout] plan_type: 0, [INFO] [stdout] preset_id: 1101, [INFO] [stdout] preset_state: 1, [INFO] [stdout] siri_engine_id: 0, [INFO] [stdout] rule_type: 1, [INFO] [stdout] desc: "", [INFO] [stdout] exec_rules: [ [INFO] [stdout] Object { [INFO] [stdout] "actionPresetId": Number(12344), [INFO] [stdout] "devices": Array [ [INFO] [stdout] Object { [INFO] [stdout] "bleAddress": String(""), [INFO] [stdout] "bleName": String("Govee_H6072_5225"), [INFO] [stdout] "device": String("52:25"), [INFO] [stdout] "deviceName": String("Primary Bed Hers"), [INFO] [stdout] "deviceTopic": String("GD/"), [INFO] [stdout] "goodsType": Number(30), [INFO] [stdout] "imgUrl": String("https://d1f2504ijhdyjw.cloudfront.net/sku-img/814c890088f34da331e1eecf8ea46fc2-add_list_type_device_6072.png"), [INFO] [stdout] "pactCode": Number(1), [INFO] [stdout] "pactType": Number(2), [INFO] [stdout] "rule": Object { [INFO] [stdout] "blueMsg": String(""), [INFO] [stdout] "effectCommand": String(""), [INFO] [stdout] "iotMsg": String(""), [INFO] [stdout] "name": String("Turn on the lights"), [INFO] [stdout] "onOff": String("1"), [INFO] [stdout] "onOffIotMsg": Null, [INFO] [stdout] }, [INFO] [stdout] "sku": String("H6072"), [INFO] [stdout] "versionHard": String("3.02.00"), [INFO] [stdout] "versionSoft": String("2.04.05"), [INFO] [stdout] "wifiHardVersion": String("1.02.00"), [INFO] [stdout] "wifiSoftVersion": String("2.05.08"), [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] "imgUrl": String(""), [INFO] [stdout] "name": String("Turn On"), [INFO] [stdout] "showType": Number(0), [INFO] [stdout] "skuType": Number(1), [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] group_id: 0, [INFO] [stdout] group_name: "", [INFO] [stdout] iot_rules: [], [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] OneClickComponent { [INFO] [stdout] can_disable: None, [INFO] [stdout] can_manage: true, [INFO] [stdout] feast_type: Some( [INFO] [stdout] 2, [INFO] [stdout] ), [INFO] [stdout] feasts: [ [INFO] [stdout] Object { [INFO] [stdout] "devices": Array [], [INFO] [stdout] "enable": Number(1), [INFO] [stdout] "feastId": Number(-1), [INFO] [stdout] "feastMainDevice": Object {}, [INFO] [stdout] "gId": Number(-1), [INFO] [stdout] "groupId": Number(0), [INFO] [stdout] "name": String("Scenic DreamView"), [INFO] [stdout] "presetId": Number(1), [INFO] [stdout] "presetState": Number(1), [INFO] [stdout] "type": Number(13), [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] groups: [], [INFO] [stdout] main_device: Some( [INFO] [stdout] Object { [INFO] [stdout] "bleAddress": Null, [INFO] [stdout] "bleName": Null, [INFO] [stdout] "device": String(":11"), [INFO] [stdout] "goodsType": Number(30), [INFO] [stdout] "ic": Null, [INFO] [stdout] "ic_sub_1": Null, [INFO] [stdout] "ic_sub_2": Null, [INFO] [stdout] "name": Null, [INFO] [stdout] "pactCode": Null, [INFO] [stdout] "pactType": Null, [INFO] [stdout] "sku": String("H6072"), [INFO] [stdout] "spec": Null, [INFO] [stdout] "subDevice": Null, [INFO] [stdout] "subDevices": Null, [INFO] [stdout] "topic": Null, [INFO] [stdout] "versionHard": Null, [INFO] [stdout] "versionSoft": Null, [INFO] [stdout] "wifiHardVersion": Null, [INFO] [stdout] "wifiSoftVersion": Null, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] component_id: 23424, [INFO] [stdout] environments: [], [INFO] [stdout] name: "DreamView", [INFO] [stdout] component_type: 2, [INFO] [stdout] guide_url: None, [INFO] [stdout] h5_url: Some( [INFO] [stdout] "https://app-h5.govee.com/user-manual/dreamview-intro", [INFO] [stdout] ), [INFO] [stdout] video_url: Some( [INFO] [stdout] "https://app-h5.govee.com/user-manual/faq/voice-guide?updateTime=21", [INFO] [stdout] ), [INFO] [stdout] one_clicks: [], [INFO] [stdout] }, [INFO] [stdout] OneClickComponent { [INFO] [stdout] can_disable: None, [INFO] [stdout] can_manage: true, [INFO] [stdout] feast_type: None, [INFO] [stdout] feasts: [], [INFO] [stdout] groups: [ [INFO] [stdout] Object { [INFO] [stdout] "accountId": Number(123444), [INFO] [stdout] "devices": Array [ [INFO] [stdout] Object { [INFO] [stdout] "bleAddress": String(":35:29"), [INFO] [stdout] "bleName": String("Govee_H6072_3529"), [INFO] [stdout] "device": String(":35:29"), [INFO] [stdout] "feastId": Null, [INFO] [stdout] "feastName": Null, [INFO] [stdout] "feastType": Null, [INFO] [stdout] "goodsType": Number(30), [INFO] [stdout] "ic": Number(66), [INFO] [stdout] "ic_sub_1": Number(0), [INFO] [stdout] "ic_sub_2": Number(0), [INFO] [stdout] "isFeast": Null, [INFO] [stdout] "name": String("Study Floor Lamp 2"), [INFO] [stdout] "pactCode": Number(1), [INFO] [stdout] "pactType": Number(2), [INFO] [stdout] "secretCode": Null, [INFO] [stdout] "settings": Null, [INFO] [stdout] "sku": String("H6072"), [INFO] [stdout] "spec": String(""), [INFO] [stdout] "subDevice": String(""), [INFO] [stdout] "subDevices": Object {}, [INFO] [stdout] "topic": String("GD/"), [INFO] [stdout] "versionHard": String("3.02.00"), [INFO] [stdout] "versionSoft": String("2.04.05"), [INFO] [stdout] "wifiHardVersion": String("1.00.10"), [INFO] [stdout] "wifiSoftVersion": String("1.02.11"), [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] "enable": Number(1), [INFO] [stdout] "gId": Number(1234), [INFO] [stdout] "isBasedGroup": Number(1), [INFO] [stdout] "name": String("Study Floor Lamp"), [INFO] [stdout] "presetId": Number(0), [INFO] [stdout] "presetState": Number(0), [INFO] [stdout] "presetStatus": Null, [INFO] [stdout] "type": Number(8), [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] main_device: None, [INFO] [stdout] component_id: 12312312, [INFO] [stdout] environments: [], [INFO] [stdout] name: "Group", [INFO] [stdout] component_type: 3, [INFO] [stdout] guide_url: Some( [INFO] [stdout] "https://d1f2504ijhdyjw.cloudfront.net/mp4/14656fc5953a4a05adbd880cbd9d2a42-group.mp4", [INFO] [stdout] ), [INFO] [stdout] h5_url: None, [INFO] [stdout] video_url: None, [INFO] [stdout] one_clicks: [], [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] message: "Success", [INFO] [stdout] status: 200, [INFO] [stdout] } [INFO] [stdout] - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] run with `K9_UPDATE_SNAPSHOTS=1` to update/create snapshots [INFO] [stdout] [INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [INFO] [stdout] [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5680a45a47a2 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5680a45a47a2 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5680a45a47a2 - std[3b51380354919863]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x5680a45a47a2 - <::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x5680a45bd6fa - ::fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x5680a45bd6fa - core[27de1724e4349be2]::fmt::write [INFO] [stdout] 6: 0x5680a45aa0d6 - std[3b51380354919863]::io::default_write_fmt::> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5680a45aa0d6 - as std[3b51380354919863]::io::Write>::write_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x5680a458075f - ::print [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x5680a458075f - std[3b51380354919863]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x5680a459bd49 - std[3b51380354919863]::panicking::default_hook [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x5680a3b0688e - core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 12: 0x5680a3b0688e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5680a459bfb2 - core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 14: 0x5680a459bfb2 - std[3b51380354919863]::panicking::panic_with_hook [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x5680a4580818 - std[3b51380354919863]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x5680a4575279 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x5680a458192d - __rustc[d79c0ace40940972]::rust_begin_unwind [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x5680a45bde6c - core[27de1724e4349be2]::panicking::panic_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x5680a3833338 - core[27de1724e4349be2]::panicking::panic_display:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:259:5 [INFO] [stdout] 20: 0x5680a38877cb - govee[14548bf8a5f0c675]::undoc_api::test::get_one_click [INFO] [stdout] at /opt/rustwide/workdir/src/undoc_api.rs:936:9 [INFO] [stdout] 21: 0x5680a387fac7 - govee[14548bf8a5f0c675]::undoc_api::test::get_one_click::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/undoc_api.rs:933:23 [INFO] [stdout] 22: 0x5680a362b096 - >::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 23: 0x5680a3afac3b - core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 24: 0x5680a3afac3b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18 [INFO] [stdout] 25: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74 [INFO] [stdout] 26: 0x5680a3b0749a - as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 27: 0x5680a3b0749a - std[3b51380354919863]::panicking::catch_unwind::do_call::, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40 [INFO] [stdout] 28: 0x5680a3b0749a - std[3b51380354919863]::panicking::catch_unwind::, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19 [INFO] [stdout] 29: 0x5680a3b0749a - std[3b51380354919863]::panic::catch_unwind::, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14 [INFO] [stdout] 30: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test_in_process [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27 [INFO] [stdout] 31: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43 [INFO] [stdout] 32: 0x5680a3b02a44 - test[182b2e79ecd7bbd9]::run_test::{closure#1} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41 [INFO] [stdout] 33: 0x5680a3b02a44 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 34: 0x5680a3b09f92 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 35: 0x5680a3b09f92 - ::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 36: 0x5680a3b09f92 - std[3b51380354919863]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40 [INFO] [stdout] 37: 0x5680a3b09f92 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19 [INFO] [stdout] 38: 0x5680a3b09f92 - std[3b51380354919863]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14 [INFO] [stdout] 39: 0x5680a3b09f92 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 40: 0x5680a3b09f92 - ::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 41: 0x5680a45a3acf - + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9 [INFO] [stdout] 42: 0x5680a45a3acf - ::new::thread_start [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17 [INFO] [stdout] 43: 0x781fbb638aa4 - [INFO] [stdout] 44: 0x781fbb6c5a64 - clone [INFO] [stdout] 45: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- undoc_api::test::issue36 stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'undoc_api::test::issue36' (80) panicked at src/undoc_api.rs:943:9: [INFO] [stdout] [INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [INFO] [stdout] assert_matches_snapshot!(format!("{resp:#?}")); [INFO] [stdout] [INFO] [stdout] Assertion Failure! [INFO] [stdout] [INFO] [stdout] Expected string to match snapshot stored in [INFO] [stdout] src/__k9_snapshots__/undoc_api/undoc_api_test_issue36.snap [INFO] [stdout] [INFO] [stdout] Difference: [INFO] [stdout] [INFO] [stdout] OneClickResponse { [INFO] [stdout] data: OneClickComponentList { [INFO] [stdout] components: [ [INFO] [stdout] OneClickComponent { [INFO] [stdout] can_disable: None, [INFO] [stdout] can_manage: true, [INFO] [stdout] feast_type: None, [INFO] [stdout] feasts: [], [INFO] [stdout] groups: [], [INFO] [stdout] main_device: None, [INFO] [stdout] component_id: 19401031, [INFO] [stdout] environments: [], [INFO] [stdout] name: "Environment Information", [INFO] [stdout] component_type: 4, [INFO] [stdout] guide_url: None, [INFO] [stdout] h5_url: None, [INFO] [stdout] video_url: None, [INFO] [stdout] one_clicks: [], [INFO] [stdout] }, [INFO] [stdout] OneClickComponent { [INFO] [stdout] can_disable: Some( [INFO] [stdout] 0, [INFO] [stdout] ), [INFO] [stdout] can_manage: false, [INFO] [stdout] feast_type: None, [INFO] [stdout] feasts: [], [INFO] [stdout] groups: [], [INFO] [stdout] main_device: None, [INFO] [stdout] component_id: 19401034, [INFO] [stdout] environments: [], [INFO] [stdout] name: "Default", [INFO] [stdout] component_type: 1, [INFO] [stdout] guide_url: Some( [INFO] [stdout] "https://d1f2504ijhdyjw.cloudfront.net/mp4/a7cdba10f8a30785265447a16cbfcc27-oneClick.mp4", [INFO] [stdout] ), [INFO] [stdout] h5_url: None, [INFO] [stdout] video_url: None, [INFO] [stdout] one_clicks: [ [INFO] [stdout] OneClick { [INFO] [stdout] name: "Turn off the tv light", [INFO] [stdout] plan_type: 0, [INFO] [stdout] preset_id: 0, [INFO] [stdout] preset_state: 0, [INFO] [stdout] siri_engine_id: 148376, [INFO] [stdout] rule_type: 0, [INFO] [stdout] desc: "", [INFO] [stdout] exec_rules: [], [INFO] [stdout] group_id: 0, [INFO] [stdout] group_name: "", [INFO] [stdout] iot_rules: [ [INFO] [stdout] OneClickIotRule { [INFO] [stdout] device_obj: OneClickIotRuleDevice { [INFO] [stdout] name: Some( [INFO] [stdout] "TV Backlight", [INFO] [stdout] ), [INFO] [stdout] device: Some( [INFO] [stdout] "XX:XX:XX", [INFO] [stdout] ), [INFO] [stdout] sku: Some( [INFO] [stdout] "H6199", [INFO] [stdout] ), [INFO] [stdout] topic: Some( [INFO] [stdout] REDACTED, [INFO] [stdout] ), [INFO] [stdout] ble_address: Some( [INFO] [stdout] "XX:XX:XX", [INFO] [stdout] ), [INFO] [stdout] ble_name: Some( [INFO] [stdout] "ihoment_H6199_3468", [INFO] [stdout] ), [INFO] [stdout] device_splicing_status: 0, [INFO] [stdout] feast_id: 0, [INFO] [stdout] feast_name: "", [INFO] [stdout] feast_type: 0, [INFO] [stdout] goods_type: Some( [INFO] [stdout] 24, [INFO] [stdout] ), [INFO] [stdout] ic: Some( [INFO] [stdout] 50, [INFO] [stdout] ), [INFO] [stdout] ic_sub_1: Some( [INFO] [stdout] 0, [INFO] [stdout] ), [INFO] [stdout] ic_sub_2: Some( [INFO] [stdout] 0, [INFO] [stdout] ), [INFO] [stdout] is_feast: false, [INFO] [stdout] pact_type: Some( [INFO] [stdout] 1, [INFO] [stdout] ), [INFO] [stdout] pact_code: Some( [INFO] [stdout] 1, [INFO] [stdout] ), [INFO] [stdout] settings: None, [INFO] [stdout] spec: Some( [INFO] [stdout] "", [INFO] [stdout] ), [INFO] [stdout] sub_device: "", [INFO] [stdout] sub_device_num: 0, [INFO] [stdout] sub_devices: Some( [INFO] [stdout] Object {}, [INFO] [stdout] ), [INFO] [stdout] version_hard: Some( [INFO] [stdout] "1.00.01", [INFO] [stdout] ), [INFO] [stdout] version_soft: Some( [INFO] [stdout] "1.07.02", [INFO] [stdout] ), [INFO] [stdout] wifi_soft_version: Some( [INFO] [stdout] "1.00.29", [INFO] [stdout] ), [INFO] [stdout] wifi_hard_version: Some( [INFO] [stdout] "1.00.01", [INFO] [stdout] ), [INFO] [stdout] }, [INFO] [stdout] rule: [ [INFO] [stdout] OneClickIotRuleEntry { [INFO] [stdout] blue_msg: Null, [INFO] [stdout] cmd_type: 0, [INFO] [stdout] cmd_val: OneClickIotRuleEntryCmd { [INFO] [stdout] open: Some( [INFO] [stdout] 0, [INFO] [stdout] ), [INFO] [stdout] scenes_code: None, [INFO] [stdout] scence_id: None, [INFO] [stdout] scenes_str: None, [INFO] [stdout] scence_param_id: None, [INFO] [stdout] }, [INFO] [stdout] device_type: 2, [INFO] [stdout] iot_msg: Object { [INFO] [stdout] "msg": Object { [INFO] [stdout] "accountTopic": String("GA/86f8778be8053ab0ffc5fa8831bcdef9"), [INFO] [stdout] "cmd": String("turn"), [INFO] [stdout] "cmdVersion": Number(0), [INFO] [stdout] "data": Object { [INFO] [stdout] "val": Number(0), [INFO] [stdout] }, [INFO] [stdout] "transaction": String("v_1627356304842075"), [INFO] [stdout] "type": Number(1), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] OneClick { [INFO] [stdout] name: "Turn on the tv light", [INFO] [stdout] plan_type: 0, [INFO] [stdout] preset_id: 0, [INFO] [stdout] preset_state: 0, [INFO] [stdout] siri_engine_id: 148364, [INFO] [stdout] rule_type: 0, [INFO] [stdout] desc: "", [INFO] [stdout] exec_rules: [], [INFO] [stdout] group_id: 0, [INFO] [stdout] group_name: "", [INFO] [stdout] iot_rules: [ [INFO] [stdout] OneClickIotRule { [INFO] [stdout] device_obj: OneClickIotRuleDevice { [INFO] [stdout] name: Some( [INFO] [stdout] "TV Backlight", [INFO] [stdout] ), [INFO] [stdout] device: Some( [INFO] [stdout] "XX:XX:XX", [INFO] [stdout] ), [INFO] [stdout] sku: Some( [INFO] [stdout] "H6199", [INFO] [stdout] ), [INFO] [stdout] topic: Some( [INFO] [stdout] REDACTED, [INFO] [stdout] ), [INFO] [stdout] ble_address: Some( [INFO] [stdout] "XX:XX:XX", [INFO] [stdout] ), [INFO] [stdout] ble_name: Some( [INFO] [stdout] "ihoment_H6199_3468", [INFO] [stdout] ), [INFO] [stdout] device_splicing_status: 0, [INFO] [stdout] feast_id: 0, [INFO] [stdout] feast_name: "", [INFO] [stdout] feast_type: 0, [INFO] [stdout] goods_type: Some( [INFO] [stdout] 24, [INFO] [stdout] ), [INFO] [stdout] ic: Some( [INFO] [stdout] 50, [INFO] [stdout] ), [INFO] [stdout] ic_sub_1: Some( [INFO] [stdout] 0, [INFO] [stdout] ), [INFO] [stdout] ic_sub_2: Some( [INFO] [stdout] 0, [INFO] [stdout] ), [INFO] [stdout] is_feast: false, [INFO] [stdout] pact_type: Some( [INFO] [stdout] 1, [INFO] [stdout] ), [INFO] [stdout] pact_code: Some( [INFO] [stdout] 1, [INFO] [stdout] ), [INFO] [stdout] settings: None, [INFO] [stdout] spec: Some( [INFO] [stdout] "", [INFO] [stdout] ), [INFO] [stdout] sub_device: "", [INFO] [stdout] sub_device_num: 0, [INFO] [stdout] sub_devices: Some( [INFO] [stdout] Object {}, [INFO] [stdout] ), [INFO] [stdout] version_hard: Some( [INFO] [stdout] "1.00.01", [INFO] [stdout] ), [INFO] [stdout] version_soft: Some( [INFO] [stdout] "1.07.02", [INFO] [stdout] ), [INFO] [stdout] wifi_soft_version: Some( [INFO] [stdout] "1.00.29", [INFO] [stdout] ), [INFO] [stdout] wifi_hard_version: Some( [INFO] [stdout] "1.00.01", [INFO] [stdout] ), [INFO] [stdout] }, [INFO] [stdout] rule: [ [INFO] [stdout] OneClickIotRuleEntry { [INFO] [stdout] blue_msg: Null, [INFO] [stdout] cmd_type: 0, [INFO] [stdout] cmd_val: OneClickIotRuleEntryCmd { [INFO] [stdout] open: Some( [INFO] [stdout] 1, [INFO] [stdout] ), [INFO] [stdout] scenes_code: None, [INFO] [stdout] scence_id: None, [INFO] [stdout] scenes_str: None, [INFO] [stdout] scence_param_id: None, [INFO] [stdout] }, [INFO] [stdout] device_type: 2, [INFO] [stdout] iot_msg: Object { [INFO] [stdout] "msg": Object { [INFO] [stdout] "accountTopic": String("GA/86f8778be8053ab0ffc5fa8831bcdef9"), [INFO] [stdout] "cmd": String("turn"), [INFO] [stdout] "cmdVersion": Number(0), [INFO] [stdout] "data": Object { [INFO] [stdout] "val": Number(1), [INFO] [stdout] }, [INFO] [stdout] "transaction": String("v_1627356180144429"), [INFO] [stdout] "type": Number(1), [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] OneClickComponent { [INFO] [stdout] can_disable: None, [INFO] [stdout] can_manage: true, [INFO] [stdout] feast_type: Some( [INFO] [stdout] 3, [INFO] [stdout] ), [INFO] [stdout] feasts: [], [INFO] [stdout] groups: [], [INFO] [stdout] main_device: Some( [INFO] [stdout] Object { [INFO] [stdout] "bleAddress": Null, [INFO] [stdout] "bleName": Null, [INFO] [stdout] "device": Null, [INFO] [stdout] "goodsType": Null, [INFO] [stdout] "ic": Null, [INFO] [stdout] "ic_sub_1": Null, [INFO] [stdout] "ic_sub_2": Null, [INFO] [stdout] "name": Null, [INFO] [stdout] "pactCode": Null, [INFO] [stdout] "pactType": Null, [INFO] [stdout] "sku": Null, [INFO] [stdout] "spec": Null, [INFO] [stdout] "subDevice": Null, [INFO] [stdout] "subDevices": Null, [INFO] [stdout] "topic": Null, [INFO] [stdout] "versionHard": Null, [INFO] [stdout] "versionSoft": Null, [INFO] [stdout] "wifiHardVersion": Null, [INFO] [stdout] "wifiSoftVersion": Null, [INFO] [stdout] }, [INFO] [stdout] ), [INFO] [stdout] component_id: 19401032, [INFO] [stdout] environments: [], [INFO] [stdout] name: "DreamView", [INFO] [stdout] component_type: 2, [INFO] [stdout] guide_url: None, [INFO] [stdout] h5_url: Some( [INFO] [stdout] "https://app-h5.govee.com/user-manual/dreamview-intro", [INFO] [stdout] ), [INFO] [stdout] video_url: Some( [INFO] [stdout] "https://app-h5.govee.com/user-manual/faq/voice-guide?updateTime=21", [INFO] [stdout] ), [INFO] [stdout] one_clicks: [], [INFO] [stdout] }, [INFO] [stdout] OneClickComponent { [INFO] [stdout] can_disable: None, [INFO] [stdout] can_manage: true, [INFO] [stdout] feast_type: None, [INFO] [stdout] feasts: [], [INFO] [stdout] groups: [ [INFO] [stdout] Object { [INFO] [stdout] "accountId": Number(2631851), [INFO] [stdout] "devices": Array [ [INFO] [stdout] Object { [INFO] [stdout] "bleAddress": String("XX:XX:XX"), [INFO] [stdout] "bleName": String("Govee_H6046_3D43"), [INFO] [stdout] "device": String("XX:XX:XX:3D:43"), [INFO] [stdout] "feastId": Null, [INFO] [stdout] "feastName": Null, [INFO] [stdout] "feastType": Null, [INFO] [stdout] "goodsType": Number(112), [INFO] [stdout] "ic": Number(10), [INFO] [stdout] "ic_sub_1": Number(0), [INFO] [stdout] "ic_sub_2": Number(0), [INFO] [stdout] "isFeast": Null, [INFO] [stdout] "name": String("H6046_3D43"), [INFO] [stdout] "pactCode": Number(1), [INFO] [stdout] "pactType": Number(1), [INFO] [stdout] "secretCode": String("redacted="), [INFO] [stdout] "settings": Null, [INFO] [stdout] "sku": String("H6046"), [INFO] [stdout] "spec": String(""), [INFO] [stdout] "subDevice": Null, [INFO] [stdout] "subDevices": Object {}, [INFO] [stdout] "topic": String("GD/"), [INFO] [stdout] "versionHard": String("3.02.01"), [INFO] [stdout] "versionSoft": String("1.00.09"), [INFO] [stdout] "wifiHardVersion": String("1.02.00"), [INFO] [stdout] "wifiSoftVersion": String("2.05.08"), [INFO] [stdout] }, [INFO] [stdout] Object { [INFO] [stdout] "bleAddress": String("XX:XX:XX"), [INFO] [stdout] "bleName": String("ihoment_H6199_3468"), [INFO] [stdout] "device": String("XX:XX:XX"), [INFO] [stdout] "feastId": Null, [INFO] [stdout] "feastName": Null, [INFO] [stdout] "feastType": Null, [INFO] [stdout] "goodsType": Number(24), [INFO] [stdout] "ic": Number(50), [INFO] [stdout] "ic_sub_1": Number(0), [INFO] [stdout] "ic_sub_2": Number(0), [INFO] [stdout] "isFeast": Null, [INFO] [stdout] "name": String("TV Backlight"), [INFO] [stdout] "pactCode": Number(1), [INFO] [stdout] "pactType": Number(1), [INFO] [stdout] "secretCode": Null, [INFO] [stdout] "settings": Null, [INFO] [stdout] "sku": String("H6199"), [INFO] [stdout] "spec": String(""), [INFO] [stdout] "subDevice": Null, [INFO] [stdout] "subDevices": Object {}, [INFO] [stdout] "topic": String("GD/"), [INFO] [stdout] "versionHard": String("1.00.01"), [INFO] [stdout] "versionSoft": String("1.07.02"), [INFO] [stdout] "wifiHardVersion": String("1.00.01"), [INFO] [stdout] "wifiSoftVersion": String("1.00.29"), [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] "enable": Number(1), [INFO] [stdout] "gId": Number(-1), [INFO] [stdout] "isBasedGroup": Number(1), [INFO] [stdout] "name": String("Basic Group Control"), [INFO] [stdout] "presetId": Number(1), [INFO] [stdout] "presetState": Number(1), [INFO] [stdout] "presetStatus": Null, [INFO] [stdout] "type": Number(1), [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] main_device: None, [INFO] [stdout] component_id: 19401033, [INFO] [stdout] environments: [], [INFO] [stdout] name: "Group", [INFO] [stdout] component_type: 3, [INFO] [stdout] guide_url: Some( [INFO] [stdout] "https://d1f2504ijhdyjw.cloudfront.net/mp4/14656fc5953a4a05adbd880cbd9d2a42-group.mp4", [INFO] [stdout] ), [INFO] [stdout] h5_url: None, [INFO] [stdout] video_url: None, [INFO] [stdout] one_clicks: [], [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] message: "Success", [INFO] [stdout] status: 200, [INFO] [stdout] } [INFO] [stdout] - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] run with `K9_UPDATE_SNAPSHOTS=1` to update/create snapshots [INFO] [stdout] [INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [INFO] [stdout] [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5680a45a47a2 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5680a45a47a2 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5680a45a47a2 - std[3b51380354919863]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x5680a45a47a2 - <::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x5680a45bd6fa - ::fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x5680a45bd6fa - core[27de1724e4349be2]::fmt::write [INFO] [stdout] 6: 0x5680a45aa0d6 - std[3b51380354919863]::io::default_write_fmt::> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5680a45aa0d6 - as std[3b51380354919863]::io::Write>::write_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x5680a458075f - ::print [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x5680a458075f - std[3b51380354919863]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x5680a459bd49 - std[3b51380354919863]::panicking::default_hook [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x5680a3b0688e - core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 12: 0x5680a3b0688e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5680a459bfb2 - core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 14: 0x5680a459bfb2 - std[3b51380354919863]::panicking::panic_with_hook [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x5680a4580818 - std[3b51380354919863]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x5680a4575279 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x5680a458192d - __rustc[d79c0ace40940972]::rust_begin_unwind [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x5680a45bde6c - core[27de1724e4349be2]::panicking::panic_fmt [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x5680a3833338 - core[27de1724e4349be2]::panicking::panic_display:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:259:5 [INFO] [stdout] 20: 0x5680a38887bb - govee[14548bf8a5f0c675]::undoc_api::test::issue36 [INFO] [stdout] at /opt/rustwide/workdir/src/undoc_api.rs:943:9 [INFO] [stdout] 21: 0x5680a387fb57 - govee[14548bf8a5f0c675]::undoc_api::test::issue36::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/undoc_api.rs:940:17 [INFO] [stdout] 22: 0x5680a362b156 - >::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 23: 0x5680a3afac3b - core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 24: 0x5680a3afac3b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18 [INFO] [stdout] 25: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74 [INFO] [stdout] 26: 0x5680a3b0749a - as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 27: 0x5680a3b0749a - std[3b51380354919863]::panicking::catch_unwind::do_call::, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40 [INFO] [stdout] 28: 0x5680a3b0749a - std[3b51380354919863]::panicking::catch_unwind::, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19 [INFO] [stdout] 29: 0x5680a3b0749a - std[3b51380354919863]::panic::catch_unwind::, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14 [INFO] [stdout] 30: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test_in_process [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27 [INFO] [stdout] 31: 0x5680a3b0749a - test[182b2e79ecd7bbd9]::run_test::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43 [INFO] [stdout] 32: 0x5680a3b02a44 - test[182b2e79ecd7bbd9]::run_test::{closure#1} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41 [INFO] [stdout] 33: 0x5680a3b02a44 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 34: 0x5680a3b09f92 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 35: 0x5680a3b09f92 - ::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 36: 0x5680a3b09f92 - std[3b51380354919863]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40 [INFO] [stdout] 37: 0x5680a3b09f92 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19 [INFO] [stdout] 38: 0x5680a3b09f92 - std[3b51380354919863]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14 [INFO] [stdout] 39: 0x5680a3b09f92 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 40: 0x5680a3b09f92 - ::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 41: 0x5680a45a3acf - + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9 [INFO] [stdout] 42: 0x5680a45a3acf - ::new::thread_start [INFO] [stdout] at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17 [INFO] [stdout] 43: 0x781fbb638aa4 - [INFO] [stdout] 44: 0x781fbb6c5a64 - clone [INFO] [stdout] 45: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- undoc_api::test::issue_14 stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'undoc_api::test::issue_14' (81) panicked at src/undoc_api.rs:956:9: [INFO] [stdout] [INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [INFO] [stdout] assert_matches_snapshot!(format!("{resp:#?}")); [INFO] [stdout] [INFO] [stdout] Assertion Failure! [INFO] [stdout] [INFO] [stdout] Expected string to match snapshot stored in [INFO] [stdout] src/__k9_snapshots__/undoc_api/undoc_api_test_issue_14.snap [INFO] [stdout] [INFO] [stdout] Difference: [INFO] [stdout] [INFO] [stdout] DevicesResponse { [INFO] [stdout] devices: [ [INFO] [stdout] DeviceEntry { [INFO] [stdout] attributes_id: 17, [INFO] [stdout] device_id: Some( [INFO] [stdout] 12154591, [INFO] [stdout] ), [INFO] [stdout] device: "XX:XX:XX:XX:XX:XX:07:4D", [INFO] [stdout] device_ext: DeviceEntryExt { [INFO] [stdout] device_settings: DeviceSettings { [INFO] [stdout] wifi_name: Some( [INFO] [stdout] "TP-Link_IoT_2G", [INFO] [stdout] ), [INFO] [stdout] address: Some( [INFO] [stdout] "XX:XX:XX:XX:XX:XX", [INFO] [stdout] ), [INFO] [stdout] ble_name: Some( [INFO] [stdout] "GBK_H618A_074D", [INFO] [stdout] ), [INFO] [stdout] topic: Some( [INFO] [stdout] REDACTED, [INFO] [stdout] ), [INFO] [stdout] wifi_mac: Some( [INFO] [stdout] "XX:XX:XX:XX:XX:XX", [INFO] [stdout] ), [INFO] [stdout] pact_type: Some( [INFO] [stdout] 2, [INFO] [stdout] ), [INFO] [stdout] pact_code: Some( [INFO] [stdout] 1, [INFO] [stdout] ), [INFO] [stdout] dsp_version_soft: None, [INFO] [stdout] wifi_soft_version: Some( [INFO] [stdout] "2.05.08", [INFO] [stdout] ), [INFO] [stdout] wifi_hard_version: Some( [INFO] [stdout] "1.02.00", [INFO] [stdout] ), [INFO] [stdout] ic: Some( [INFO] [stdout] 15, [INFO] [stdout] ), [INFO] [stdout] ic_sub_1: None, [INFO] [stdout] ic_sub_2: None, [INFO] [stdout] secret_code: Some( [INFO] [stdout] REDACTED, [INFO] [stdout] ), [INFO] [stdout] boil_water_completed_noti_on_off: true, [INFO] [stdout] boil_water_exception_noti_on_off: false, [INFO] [stdout] completion_noti_on_off: true, [INFO] [stdout] auto_shut_down_on_off: true, [INFO] [stdout] water_shortage_on_off: false, [INFO] [stdout] air_quality_on_off: false, [INFO] [stdout] mcu_soft_version: None, [INFO] [stdout] mcu_hard_version: None, [INFO] [stdout] sku: Some( [INFO] [stdout] "H618A", [INFO] [stdout] ), [INFO] [stdout] device: Some( [INFO] [stdout] "XX:XX:XX:XX:XX:XX:07:4D", [INFO] [stdout] ), [INFO] [stdout] device_name: Some( [INFO] [stdout] "Led Bar", [INFO] [stdout] ), [INFO] [stdout] version_hard: Some( [INFO] [stdout] "2.01.02", [INFO] [stdout] ), [INFO] [stdout] version_soft: Some( [INFO] [stdout] "2.06.15", [INFO] [stdout] ), [INFO] [stdout] play_state: Some( [INFO] [stdout] false, [INFO] [stdout] ), [INFO] [stdout] tem_min: None, [INFO] [stdout] tem_max: None, [INFO] [stdout] tem_warning: None, [INFO] [stdout] fah_open: None, [INFO] [stdout] tem_cali: None, [INFO] [stdout] hum_min: None, [INFO] [stdout] hum_max: None, [INFO] [stdout] hum_warning: None, [INFO] [stdout] hum_cali: None, [INFO] [stdout] net_waring: None, [INFO] [stdout] upload_rate: None, [INFO] [stdout] battery: None, [INFO] [stdout] time: None, [INFO] [stdout] wifi_level: None, [INFO] [stdout] pm25_min: None, [INFO] [stdout] pm25_max: None, [INFO] [stdout] pm25_warning: None, [INFO] [stdout] sub_devices: None, [INFO] [stdout] bd_type: None, [INFO] [stdout] filter_expire_on_off: false, [INFO] [stdout] shapes: None, [INFO] [stdout] support_ble_broad_v3: None, [INFO] [stdout] }, [INFO] [stdout] ext_resources: ExtResources { [INFO] [stdout] sku_url: Some( [INFO] [stdout] "https://d1f2504ijhdyjw.cloudfront.net/sku-img/1888088d25fbf1fedd34316acccf9ee3-add_list_type_device_618ac.png.png", [INFO] [stdout] ), [INFO] [stdout] head_on_img_new: Some( [INFO] [stdout] "", [INFO] [stdout] ), [INFO] [stdout] head_on_img: Some( [INFO] [stdout] "https://d1f2504ijhdyjw.cloudfront.net/sku-img/eed1b442fc5d3aaa28563ded4284e057-new_light_title_6160_on.png", [INFO] [stdout] ), [INFO] [stdout] head_off_img: Some( [INFO] [stdout] "https://d1f2504ijhdyjw.cloudfront.net/sku-img/cb48afdb8618c2ddfd8fe16673336af0-new_light_title_6160_off.png", [INFO] [stdout] ), [INFO] [stdout] head_off_img_new: Some( [INFO] [stdout] "", [INFO] [stdout] ), [INFO] [stdout] ext: Some( [INFO] [stdout] "", [INFO] [stdout] ), [INFO] [stdout] ic: Some( [INFO] [stdout] 15, [INFO] [stdout] ), [INFO] [stdout] }, [INFO] [stdout] last_device_data: LastDeviceData { [INFO] [stdout] online: Some( [INFO] [stdout] false, [INFO] [stdout] ), [INFO] [stdout] bind: None, [INFO] [stdout] tem: None, [INFO] [stdout] hum: None, [INFO] [stdout] last_time: None, [INFO] [stdout] avg_day_tem: None, [INFO] [stdout] avg_day_hum: None, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] device_name: "Led Bar", [INFO] [stdout] goods_type: 74, [INFO] [stdout] group_id: 0, [INFO] [stdout] pact_code: Some( [INFO] [stdout] 1, [INFO] [stdout] ), [INFO] [stdout] pact_type: Some( [INFO] [stdout] 2, [INFO] [stdout] ), [INFO] [stdout] share: Some( [INFO] [stdout] 0, [INFO] [stdout] ), [INFO] [stdout] sku: "H618A", [INFO] [stdout] spec: "", [INFO] [stdout] support_scene: true, [INFO] [stdout] version_hard: "2.01.02", [INFO] [stdout] version_soft: "2.06.15", [INFO] [stdout] gid_confirmed: None, [INFO] [stdout] }, [INFO] [stdout] DeviceEntry { [INFO] [stdout] attributes_id: 1, [INFO] [stdout] device_id: Some( [INFO] [stdout] 10874276, [INFO] [stdout] ), [INFO] [stdout] device: "XX:XX:XX:XX:XX:XX:4C:67", [INFO] [stdout] device_ext: DeviceEntryExt { [INFO] [stdout] device_settings: DeviceSettings { [INFO] [stdout] wifi_name: Some( [INFO] [stdout] "TP-Link_IoT_2G", [INFO] [stdout] ), [INFO] [stdout] address: Some( [INFO] [stdout] "XX:XX:XX:XX:XX:XX", [INFO] [stdout] ), [INFO] [stdout] ble_name: Some( [INFO] [stdout] "Govee_H6199_4C67", [INFO] [stdout] ), [INFO] [stdout] topic: Some( [INFO] [stdout] REDACTED, [INFO] [stdout] ), [INFO] [stdout] wifi_mac: Some( [INFO] [stdout] "XX:XX:XX:XX:XX:XX", [INFO] [stdout] ), [INFO] [stdout] pact_type: Some( [INFO] [stdout] 2, [INFO] [stdout] ), [INFO] [stdout] pact_code: Some( [INFO] [stdout] 1, [INFO] [stdout] ), [INFO] [stdout] dsp_version_soft: None, [INFO] [stdout] wifi_soft_version: Some( [INFO] [stdout] "1.00.33", [INFO] [stdout] ), [INFO] [stdout] wifi_hard_version: Some( [INFO] [stdout] "1.03.00", [INFO] [stdout] ), [INFO] [stdout] ic: Some( [INFO] [stdout] 50, [INFO] [stdout] ), [INFO] [stdout] ic_sub_1: None, [INFO] [stdout] ic_sub_2: None, [INFO] [stdout] secret_code: None, [INFO] [stdout] boil_water_completed_noti_on_off: true, [INFO] [stdout] boil_water_exception_noti_on_off: false, [INFO] [stdout] completion_noti_on_off: true, [INFO] [stdout] auto_shut_down_on_off: true, [INFO] [stdout] water_shortage_on_off: false, [INFO] [stdout] air_quality_on_off: false, [INFO] [stdout] mcu_soft_version: None, [INFO] [stdout] mcu_hard_version: None, [INFO] [stdout] sku: Some( [INFO] [stdout] "H6199", [INFO] [stdout] ), [INFO] [stdout] device: Some( [INFO] [stdout] "XX:XX:XX:XX:XX:XX:4C:67", [INFO] [stdout] ), [INFO] [stdout] device_name: Some( [INFO] [stdout] "DreamView T1", [INFO] [stdout] ), [INFO] [stdout] version_hard: Some( [INFO] [stdout] "3.02.01", [INFO] [stdout] ), [INFO] [stdout] version_soft: Some( [INFO] [stdout] "1.10.04", [INFO] [stdout] ), [INFO] [stdout] play_state: Some( [INFO] [stdout] false, [INFO] [stdout] ), [INFO] [stdout] tem_min: None, [INFO] [stdout] tem_max: None, [INFO] [stdout] tem_warning: None, [INFO] [stdout] fah_open: None, [INFO] [stdout] tem_cali: None, [INFO] [stdout] hum_min: None, [INFO] [stdout] hum_max: None, [INFO] [stdout] hum_warning: None, [INFO] [stdout] hum_cali: None, [INFO] [stdout] net_waring: None, [INFO] [stdout] upload_rate: None, [INFO] [stdout] battery: None, [INFO] [stdout] time: None, [INFO] [stdout] wifi_level: None, [INFO] [stdout] pm25_min: None, [INFO] [stdout] pm25_max: None, [INFO] [stdout] pm25_warning: None, [INFO] [stdout] sub_devices: None, [INFO] [stdout] bd_type: None, [INFO] [stdout] filter_expire_on_off: false, [INFO] [stdout] shapes: None, [INFO] [stdout] support_ble_broad_v3: None, [INFO] [stdout] }, [INFO] [stdout] ext_resources: ExtResources { [INFO] [stdout] sku_url: Some( [INFO] [stdout] "https://d1f2504ijhdyjw.cloudfront.net/sku-img/77af67823455a4cd4a65c9d490a8fec9-add_list_type_device_6199.png", [INFO] [stdout] ), [INFO] [stdout] head_on_img_new: Some( [INFO] [stdout] "", [INFO] [stdout] ), [INFO] [stdout] head_on_img: Some( [INFO] [stdout] "https://d1f2504ijhdyjw.cloudfront.net/sku-img/f888cb880ed3646868ebfb52db643569-new_light_title_6104_alexa_on.png", [INFO] [stdout] ), [INFO] [stdout] head_off_img: Some( [INFO] [stdout] "https://d1f2504ijhdyjw.cloudfront.net/sku-img/c163d1b2aa45e3278b4ff7a25b69e8c8-new_light_title_6104_alexa_off.png", [INFO] [stdout] ), [INFO] [stdout] head_off_img_new: Some( [INFO] [stdout] "", [INFO] [stdout] ), [INFO] [stdout] ext: Some( [INFO] [stdout] "", [INFO] [stdout] ), [INFO] [stdout] ic: Some( [INFO] [stdout] 50, [INFO] [stdout] ), [INFO] [stdout] }, [INFO] [stdout] last_device_data: LastDeviceData { [INFO] [stdout] online: Some( [INFO] [stdout] false, [INFO] [stdout] ), [INFO] [stdout] bind: None, [INFO] [stdout] tem: None, [INFO] [stdout] hum: None, [INFO] [stdout] last_time: None, [INFO] [stdout] avg_day_tem: None, [INFO] [stdout] avg_day_hum: None, [INFO] [stdout] }, [INFO] [stdout] }, [INFO] [stdout] device_name: "DreamView T1", [INFO] [stdout] goods_type: 24, [INFO] [stdout] group_id: 0, [INFO] [stdout] pact_code: Some( [INFO] [stdout] 1, [INFO] [stdout] ), [INFO] [stdout] pact_type: Some( [INFO] [stdout] 2, [INFO] [stdout] ), [INFO] [stdout] share: Some( [INFO] [stdout] 0, [INFO] [stdout] ), [INFO] [stdout] sku: "H6199", [INFO] [stdout] spec: "", [INFO] [stdout] support_scene: true, [INFO] [stdout] version_hard: "3.02.01", [INFO] [stdout] version_soft: "1.10.04", [INFO] [stdout] gid_confirmed: None, [INFO] [stdout] }, [INFO] [stdout] DeviceEntry { [INFO] [stdout] attributes_id: 1, [INFO] [stdout] device_id: Some( [INFO] [stdout] 7450178, [INFO] [stdout] ), [INFO] [stdout] device: "XX:XX:XX:XX:XX:XX:B4:D0", [INFO] [stdout] device_ext: DeviceEntryExt { [INFO] [stdout] device_settings: DeviceSettings { [INFO] [stdout] wifi_name: Some( [INFO] [stdout] "TP-Link_IoT_2G", [INFO] [stdout] ), [INFO] [stdout] address: Some( [INFO] [stdout] "XX:XX:XX:XX:XX:XX", [INFO] [stdout] ), [INFO] [stdout] ble_name: Some( [INFO] [stdout] "GBK_H618C_B4D0", [INFO] [stdout] ), [INFO] [stdout] topic: Some( [INFO] [stdout] REDACTED, [INFO] [stdout] ), [INFO] [stdout] wifi_mac: Some( [INFO] [stdout] "XX:XX:XX:XX:XX:XX", [INFO] [stdout] ), [INFO] [stdout] pact_type: Some( [INFO] [stdout] 2, [INFO] [stdout] ), [INFO] [stdout] pact_code: Some( [INFO] [stdout] 1, [INFO] [stdout] ), [INFO] [stdout] dsp_version_soft: None, [INFO] [stdout] wifi_soft_version: Some( [INFO] [stdout] "2.05.08", [INFO] [stdout] ), [INFO] [stdout] wifi_hard_version: Some( [INFO] [stdout] "1.02.00", [INFO] [stdout] ), [INFO] [stdout] ic: Some( [INFO] [stdout] 30, [INFO] [stdout] ), [INFO] [stdout] ic_sub_1: None, [INFO] [stdout] ic_sub_2: None, [INFO] [stdout] secret_code: Some( [INFO] [stdout] REDACTED, [INFO] [stdout] ), [INFO] [stdout] boil_water_completed_noti_on_off: true, [INFO] [stdout] boil_water_exception_noti_on_off: false, [INFO] [stdout] completion_noti_on_off: true, [INFO] [stdout] auto_shut_down_on_off: true, [INFO] [stdout] water_shortage_on_off: false, [INFO] [stdout] air_quality_on_off: false, [INFO] [stdout] mcu_soft_version: None, [INFO] [stdout] mcu_hard_version: None, [INFO] [stdout] sku: Some( [INFO] [stdout] "H618C", [INFO] [stdout] ), [INFO] [stdout] device: Some( [INFO] [stdout] "XX:XX:XX:XX:XX:XX:B4:D0", [INFO] [stdout] ), [INFO] [stdout] device_name: Some( [INFO] [stdout] "Led Escalier Bas Govee", [INFO] [stdout] ), [INFO] [stdout] version_hard: Some( [INFO] [stdout] "2.01.02", [INFO] [stdout] ), [WARN] too many lines in the log, truncating it