[INFO] cloning repository https://github.com/sanchuanhehe/hisiflash [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/sanchuanhehe/hisiflash" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsanchuanhehe%2Fhisiflash", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsanchuanhehe%2Fhisiflash'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ee40717412898f0868b77d4b7e35bbc52b733c91 [INFO] testing sanchuanhehe/hisiflash against try#8da20828b6ea601dfd8e2448cb50ace88876bd78 for pr-150933 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsanchuanhehe%2Fhisiflash" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/sanchuanhehe/hisiflash [INFO] finished tweaking git repo https://github.com/sanchuanhehe/hisiflash [INFO] tweaked toml for git repo https://github.com/sanchuanhehe/hisiflash written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/sanchuanhehe/hisiflash on toolchain 8da20828b6ea601dfd8e2448cb50ace88876bd78 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8da20828b6ea601dfd8e2448cb50ace88876bd78" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/sanchuanhehe/hisiflash 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" "+8da20828b6ea601dfd8e2448cb50ace88876bd78" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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:cfa559dde23f44738f9990739aaa3487d8df3af37eb5df0572f7cf76004a604a" "/opt/rustwide/cargo-home/bin/cargo" "+8da20828b6ea601dfd8e2448cb50ace88876bd78" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 24b7c2ab58f2dac2445bfa484e5d08879a48b260c179d21c81fc57f3087922df [INFO] running `Command { std: "docker" "start" "-a" "24b7c2ab58f2dac2445bfa484e5d08879a48b260c179d21c81fc57f3087922df", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "24b7c2ab58f2dac2445bfa484e5d08879a48b260c179d21c81fc57f3087922df", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "24b7c2ab58f2dac2445bfa484e5d08879a48b260c179d21c81fc57f3087922df", kill_on_drop: false }` [INFO] [stdout] 24b7c2ab58f2dac2445bfa484e5d08879a48b260c179d21c81fc57f3087922df [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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:cfa559dde23f44738f9990739aaa3487d8df3af37eb5df0572f7cf76004a604a" "/opt/rustwide/cargo-home/bin/cargo" "+8da20828b6ea601dfd8e2448cb50ace88876bd78" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 733c27691db4f72ea3347867adb15bdc0fa90a344278cd309ee7518ae702dbbd [INFO] running `Command { std: "docker" "start" "-a" "733c27691db4f72ea3347867adb15bdc0fa90a344278cd309ee7518ae702dbbd", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.106 [INFO] [stderr] Compiling unicode-ident v1.0.22 [INFO] [stderr] Compiling libc v0.2.180 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling bstr v1.12.1 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling zmij v1.0.17 [INFO] [stderr] Compiling winnow v0.7.14 [INFO] [stderr] Compiling libudev-sys v0.1.4 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling arc-swap v1.8.0 [INFO] [stderr] Compiling unsafe-libyaml v0.2.11 [INFO] [stderr] Compiling itertools v0.11.0 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling syn v2.0.114 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Compiling signal-hook v0.3.18 [INFO] [stderr] Compiling rustix v1.1.3 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling base62 v2.2.3 [INFO] [stderr] Compiling normpath v1.5.0 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling nix v0.30.1 [INFO] [stderr] Compiling clap_lex v0.7.7 [INFO] [stderr] Compiling unicode-width v0.2.2 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Compiling clap_builder v4.5.54 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling console v0.15.11 [INFO] [stderr] Compiling libudev v0.3.0 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling nix v0.26.4 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling lock_api v0.4.14 [INFO] [stderr] Compiling linux-raw-sys v0.4.15 [INFO] [stderr] Compiling glob v0.3.3 [INFO] [stderr] Compiling dirs-sys v0.5.0 [INFO] [stderr] Compiling signal-hook-mio v0.2.5 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling regex v1.12.2 [INFO] [stderr] Compiling globset v0.4.18 [INFO] [stderr] Compiling env_filter v0.1.4 [INFO] [stderr] Compiling tempfile v3.24.0 [INFO] [stderr] Compiling ignore v0.4.25 [INFO] [stderr] Compiling jiff v0.2.18 [INFO] [stderr] Compiling hisiflash-cli v1.0.0-alpha.11 (/opt/rustwide/workdir/hisiflash-cli) [INFO] [stderr] Compiling globwalk v0.8.1 [INFO] [stderr] Compiling shell-words v1.1.1 [INFO] [stderr] Compiling indicatif v0.17.11 [INFO] [stderr] Compiling ctrlc v3.5.1 [INFO] [stderr] Compiling crossterm v0.28.1 [INFO] [stderr] Compiling directories v6.0.0 [INFO] [stderr] Compiling sys-locale v0.3.2 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling rust-i18n v3.1.5 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling clap_derive v4.5.49 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling dialoguer v0.11.0 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling unescaper v0.1.8 [INFO] [stderr] Compiling serialport v4.8.1 [INFO] [stderr] Compiling hisiflash v0.3.0 (/opt/rustwide/workdir/hisiflash) [INFO] [stderr] Compiling clap v4.5.54 [INFO] [stderr] Compiling clap_complete v4.5.65 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling env_logger v0.11.8 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling serde_yaml v0.9.34+deprecated [INFO] [stderr] Compiling triomphe v0.1.15 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling rust-i18n-support v3.1.5 [INFO] [stderr] Compiling rust-i18n-macro v3.1.5 [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 27s [INFO] running `Command { std: "docker" "inspect" "733c27691db4f72ea3347867adb15bdc0fa90a344278cd309ee7518ae702dbbd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "733c27691db4f72ea3347867adb15bdc0fa90a344278cd309ee7518ae702dbbd", kill_on_drop: false }` [INFO] [stdout] 733c27691db4f72ea3347867adb15bdc0fa90a344278cd309ee7518ae702dbbd [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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:cfa559dde23f44738f9990739aaa3487d8df3af37eb5df0572f7cf76004a604a" "/opt/rustwide/cargo-home/bin/cargo" "+8da20828b6ea601dfd8e2448cb50ace88876bd78" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c36ca5f249c9ce6026c4d04cb1daf5c1f58c181f63570b60b5a632046e704fde [INFO] running `Command { std: "docker" "start" "-a" "c36ca5f249c9ce6026c4d04cb1daf5c1f58c181f63570b60b5a632046e704fde", kill_on_drop: false }` [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Compiling bstr v1.12.1 [INFO] [stderr] Compiling predicates-core v1.0.10 [INFO] [stderr] Compiling float-cmp v0.10.0 [INFO] [stderr] Compiling assert_cmd v2.1.2 [INFO] [stderr] Compiling difflib v0.4.0 [INFO] [stderr] Compiling termtree v0.5.1 [INFO] [stderr] Compiling normalize-line-endings v0.3.0 [INFO] [stderr] Compiling wait-timeout v0.2.1 [INFO] [stderr] Compiling predicates-tree v1.0.13 [INFO] [stderr] Compiling globset v0.4.18 [INFO] [stderr] Compiling regex v1.12.2 [INFO] [stderr] Compiling ignore v0.4.25 [INFO] [stderr] Compiling globwalk v0.8.1 [INFO] [stderr] Compiling rust-i18n-support v3.1.5 [INFO] [stderr] Compiling env_filter v0.1.4 [INFO] [stderr] Compiling predicates v3.1.4 [INFO] [stderr] Compiling rust-i18n v3.1.5 [INFO] [stderr] Compiling env_logger v0.11.8 [INFO] [stderr] Compiling rust-i18n-macro v3.1.5 [INFO] [stderr] Compiling hisiflash v0.3.0 (/opt/rustwide/workdir/hisiflash) [INFO] [stderr] Compiling hisiflash-cli v1.0.0-alpha.11 (/opt/rustwide/workdir/hisiflash-cli) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 36.57s [INFO] running `Command { std: "docker" "inspect" "c36ca5f249c9ce6026c4d04cb1daf5c1f58c181f63570b60b5a632046e704fde", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c36ca5f249c9ce6026c4d04cb1daf5c1f58c181f63570b60b5a632046e704fde", kill_on_drop: false }` [INFO] [stdout] c36ca5f249c9ce6026c4d04cb1daf5c1f58c181f63570b60b5a632046e704fde [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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:cfa559dde23f44738f9990739aaa3487d8df3af37eb5df0572f7cf76004a604a" "/opt/rustwide/cargo-home/bin/cargo" "+8da20828b6ea601dfd8e2448cb50ace88876bd78" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 3c82d9cc520e9b6063d04d5d9ffb48c8c8973a7d45b54c6a1f54b312da4e8a44 [INFO] running `Command { std: "docker" "start" "-a" "3c82d9cc520e9b6063d04d5d9ffb48c8c8973a7d45b54c6a1f54b312da4e8a44", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.28s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/hisiflash-e973e9c9ef04fee4) [INFO] [stdout] [INFO] [stdout] running 142 tests [INFO] [stdout] test device::tests::test_format_port_list ... ok [INFO] [stdout] test device::tests::test_detected_port_is_likely_hisilicon ... ok [INFO] [stdout] test device::tests::test_device_kind_from_vid_pid ... ok [INFO] [stdout] test device::tests::test_device_kind_is_known ... ok [INFO] [stdout] test error::tests::test_error_from_io ... ok [INFO] [stdout] test image::fwpkg::tests::test_bin_info_is_loaderboot ... ok [INFO] [stdout] test error::tests::test_error_is_send_sync ... ok [INFO] [stdout] test error::tests::test_error_display_messages ... ok [INFO] [stdout] test image::fwpkg::tests::test_bin_info_read_v1 ... ok [INFO] [stdout] test image::fwpkg::tests::test_fwpkg_bin_data ... ok [INFO] [stdout] test image::fwpkg::tests::test_fwpkg_bin_data_out_of_bounds ... ok [INFO] [stdout] test image::fwpkg::tests::test_fwpkg_debug_format ... ok [INFO] [stdout] test image::fwpkg::tests::test_fwpkg_from_bytes_invalid_magic ... ok [INFO] [stdout] test image::fwpkg::tests::test_fwpkg_from_bytes_too_small ... ok [INFO] [stdout] test image::fwpkg::tests::test_fwpkg_from_bytes_valid_v1 ... ok [INFO] [stdout] test image::fwpkg::tests::test_fwpkg_verify_crc ... ok [INFO] [stdout] test image::fwpkg::tests::test_fwpkg_verify_crc_mismatch ... ok [INFO] [stdout] test image::fwpkg::tests::test_fwpkg_version_header_size ... ok [INFO] [stdout] test image::fwpkg::tests::test_header_is_valid ... ok [INFO] [stdout] test image::fwpkg::tests::test_header_read_from_auto_detect_v1 ... ok [INFO] [stdout] test image::fwpkg::tests::test_header_read_from_invalid_magic ... ok [INFO] [stdout] test image::fwpkg::tests::test_header_read_v1 ... ok [INFO] [stdout] test image::fwpkg::tests::test_header_sizes ... ok [INFO] [stdout] test image::fwpkg::tests::test_magic_constants ... ok [INFO] [stdout] test image::fwpkg::tests::test_partition_type_all_variants ... ok [INFO] [stdout] test image::fwpkg::tests::test_partition_type_as_u32 ... ok [INFO] [stdout] test image::fwpkg::tests::test_partition_type_from_u32 ... ok [INFO] [stdout] test image::fwpkg::tests::test_partition_type_loaderboot_alias ... ok [INFO] [stdout] test image::fwpkg::tests::test_partition_type_roundtrip ... ok [INFO] [stdout] test monitor::tests::test_clean_monitor_text_filters_control_chars ... ok [INFO] [stdout] test monitor::tests::test_drain_utf8_lossy_keeps_incomplete_suffix ... ok [INFO] [stdout] test monitor::tests::test_drain_utf8_lossy_replaces_invalid_bytes_and_continues ... ok [INFO] [stdout] test monitor::tests::test_format_output_no_timestamp_updates_line_state ... ok [INFO] [stdout] test monitor::tests::test_format_output_normalizes_standalone_cr_to_newline ... ok [INFO] [stdout] test port::native::tests::test_serial_config_builder ... ok [INFO] [stdout] test port::native::tests::test_serial_config_default ... ok [INFO] [stdout] test port::tests::test_flow_control_default ... ok [INFO] [stdout] test port::tests::test_port_info_clone ... ok [INFO] [stdout] test port::tests::test_port_info_fields ... ok [INFO] [stdout] test port::tests::test_data_bits_default ... ok [INFO] [stdout] test port::tests::test_serial_config_default ... ok [INFO] [stdout] test port::tests::test_serial_config_from_string ... ok [INFO] [stdout] test port::tests::test_serial_config_with_timeout ... ok [INFO] [stdout] test port::tests::test_stop_bits_default ... ok [INFO] [stdout] test protocol::crc::tests::test_crc16_xmodem_123456789 ... ok [INFO] [stdout] test protocol::crc::tests::test_crc16_xmodem_empty ... ok [INFO] [stdout] test port::tests::test_serial_config_new ... ok [INFO] [stdout] test protocol::crc::tests::test_crc16_xmodem_hello ... ok [INFO] [stdout] test protocol::seboot::tests::test_command_type_reversed ... ok [INFO] [stdout] test protocol::crc::tests::test_crc16_xmodem_update ... ok [INFO] [stdout] test protocol::seboot::tests::test_command_type_swapped ... ok [INFO] [stdout] test protocol::seboot::tests::test_contains_handshake_ack ... ok [INFO] [stdout] test protocol::seboot::tests::test_command_type_reversed_is_bitwise_not ... ok [INFO] [stdout] test protocol::seboot::tests::test_contains_handshake_ack_at_start ... ok [INFO] [stdout] test protocol::seboot::tests::test_contains_handshake_ack_too_short ... ok [INFO] [stdout] test protocol::seboot::tests::test_download_flash_image_frame ... ok [INFO] [stdout] test protocol::seboot::tests::test_download_flash_image_rom_flag ... ok [INFO] [stdout] test protocol::seboot::tests::test_contains_handshake_ack_not_found ... ok [INFO] [stdout] test protocol::seboot::tests::test_erase_all_frame ... ok [INFO] [stdout] test protocol::seboot::tests::test_download_nv_frame ... ok [INFO] [stdout] test protocol::seboot::tests::test_frame_command_type_getter ... ok [INFO] [stdout] test protocol::seboot::tests::test_frame_crc_is_appended ... ok [INFO] [stdout] test protocol::seboot::tests::test_handshake_frame_baud_rate ... ok [INFO] [stdout] test protocol::seboot::tests::test_image_type_from_u32 ... ok [INFO] [stdout] test protocol::seboot::tests::test_handshake_frame_length ... ok [INFO] [stdout] test protocol::seboot::tests::test_read_otp_efuse_frame ... ok [INFO] [stdout] test protocol::seboot::tests::test_reset_frame ... ok [INFO] [stdout] test protocol::seboot::tests::test_seboot_ack_parse_failure ... ok [INFO] [stdout] test protocol::seboot::tests::test_seboot_ack_parse_no_magic ... ok [INFO] [stdout] test protocol::seboot::tests::test_seboot_ack_parse_success ... ok [INFO] [stdout] test protocol::seboot::tests::test_seboot_ack_parse_too_short ... ok [INFO] [stdout] test protocol::seboot::tests::test_download_version_frame ... ok [INFO] [stdout] test protocol::seboot::tests::test_flash_lock_frame ... ok [INFO] [stdout] test port::tests::test_parity_default ... ok [INFO] [stdout] test port::tests::test_enums_are_copy ... ok [INFO] [stdout] test protocol::seboot::tests::test_switch_dfu_frame ... ok [INFO] [stdout] test protocol::seboot::tests::test_seboot_ack_parse_with_prefix ... ok [INFO] [stdout] test protocol::seboot::tests::test_set_baud_rate_frame ... ok [INFO] [stdout] test protocol::seboot::tests::test_upload_data_frame ... ok [INFO] [stdout] test protocol::ymodem::tests::test_build_block_soh ... ok [INFO] [stdout] test protocol::ymodem::tests::test_transfer_interrupted_before_start ... ok [INFO] [stdout] test protocol::ymodem::tests::test_build_block_stx ... ok [INFO] [stdout] test protocol::ymodem::tests::test_wait_for_c_interrupted_immediate ... ok [INFO] [stdout] test protocol::ymodem::tests::test_ymodem_transfer_exact_block_size ... ok [INFO] [stdout] test protocol::ymodem::tests::test_ymodem_no_c_before_finish ... ok [INFO] [stdout] test protocol::ymodem::tests::test_ymodem_transfer_multi_block ... ok [INFO] [stdout] test target::chip::tests::test_chip_config_bs2x_defaults ... ok [INFO] [stdout] test protocol::ymodem::tests::test_ymodem_transfer_single_c_wait ... ok [INFO] [stdout] test target::chip::tests::test_chip_config_builder ... ok [INFO] [stdout] test target::chip::tests::test_chip_config_default_trait ... ok [INFO] [stdout] test target::chip::tests::test_chip_family_clone_eq ... ok [INFO] [stdout] test target::chip::tests::test_chip_config_defaults ... ok [INFO] [stdout] test target::chip::tests::test_chip_family_default ... ok [INFO] [stdout] test target::chip::tests::test_chip_family_default_baud ... ok [INFO] [stdout] test target::chip::tests::test_chip_family_display ... ok [INFO] [stdout] test target::chip::tests::test_chip_family_efuse ... ok [INFO] [stdout] test target::chip::tests::test_chip_family_from_name ... ok [INFO] [stdout] test target::chip::tests::test_chip_family_from_name_case_insensitive ... ok [INFO] [stdout] test target::chip::tests::test_chip_family_signed_firmware ... ok [INFO] [stdout] test target::chip::tests::test_chip_family_supported_bauds ... ok [INFO] [stdout] test target::chip::tests::test_chip_family_hash ... ok [INFO] [stdout] test target::chip::tests::test_chip_family_high_speed_baud ... ok [INFO] [stdout] test target::chip::tests::test_chip_family_usb_dfu ... ok [INFO] [stdout] test target::ws63::flasher::tests::test_create_flasher_with_port_unsupported_chip ... ok [INFO] [stdout] test target::ws63::flasher::tests::test_download_binary_interrupted_short_circuits_retry ... ok [INFO] [stdout] test target::ws63::flasher::tests::test_erase_size_alignment_4k ... ok [INFO] [stdout] test target::ws63::flasher::tests::test_create_flasher_with_mock_port ... ok [INFO] [stdout] test target::ws63::flasher::tests::test_download_frame_erase_size_in_bytes ... ok [INFO] [stdout] test target::chip::tests::test_create_flasher_unsupported_chip ... ok [INFO] [stdout] test target::ws63::flasher::tests::test_flasher_builder_methods ... ok [INFO] [stdout] test target::ws63::flasher::tests::test_flasher_new_with_mock_port ... ok [INFO] [stdout] test target::ws63::flasher::tests::test_mock_port_name ... ok [INFO] [stdout] test target::ws63::flasher::tests::test_loaderboot_no_download_command ... ok [INFO] [stdout] test target::ws63::flasher::tests::test_flasher_trait_object ... ok [INFO] [stdout] test target::ws63::flasher::tests::test_mock_port_buffers ... ok [INFO] [stdout] test target::ws63::flasher::tests::test_is_interrupted_error_for_io_interrupted_and_message ... ok [INFO] [stdout] test target::ws63::flasher::tests::test_mock_port_baud_timeout ... ok [INFO] [stdout] test target::ws63::flasher::tests::test_multiple_flashers_same_port ... ok [INFO] [stdout] test target::ws63::flasher::tests::test_mock_port_pin_control ... ok [INFO] [stdout] test target::ws63::flasher::tests::test_mock_port_read_write ... ok [INFO] [stdout] test target::ws63::protocol::tests::test_command_frame_command_getter ... ok [INFO] [stdout] test target::ws63::protocol::tests::test_command_swapped ... ok [INFO] [stdout] test target::ws63::protocol::tests::test_constants ... ok [INFO] [stdout] test target::ws63::protocol::tests::test_contains_handshake_ack ... ok [INFO] [stdout] test target::ws63::protocol::tests::test_download_frame ... ok [INFO] [stdout] test target::ws63::protocol::tests::test_erase_all_frame ... ok [INFO] [stdout] test target::ws63::protocol::tests::test_frame_length_field_matches_actual ... ok [INFO] [stdout] test target::ws63::protocol::tests::test_frame_magic_bytes ... ok [INFO] [stdout] test target::ws63::protocol::tests::test_handshake_frame ... ok [INFO] [stdout] test target::ws63::protocol::tests::test_reset_frame_structure ... ok [INFO] [stdout] test target::ws63::protocol::tests::test_response_frame_parse_failure ... ok [INFO] [stdout] test target::ws63::protocol::tests::test_response_frame_parse_handshake_ack ... ok [INFO] [stdout] test target::ws63::protocol::tests::test_response_frame_parse_too_short ... ok [INFO] [stdout] test target::ws63::protocol::tests::test_response_frame_parse_no_magic ... ok [INFO] [stdout] test target::ws63::protocol::tests::test_response_frame_parse_with_prefix ... ok [INFO] [stdout] test tests::test_interrupt_checker_default_false ... ok [INFO] [stdout] test tests::test_interrupt_checker_toggle_true_false ... ok [INFO] [stdout] test target::ws63::flasher::tests::test_wait_for_magic_finds_magic ... ok [INFO] [stdout] test target::ws63::flasher::tests::test_wait_for_magic_partial_then_real ... ok [INFO] [stdout] test port::native::tests::test_list_ports ... ok [INFO] [stdout] test target::ws63::flasher::tests::test_wait_for_magic_timeout_no_magic ... ok [INFO] [stdout] test target::ws63::flasher::tests::test_normal_partition_sends_download_command ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 142 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 30.09s [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/hisiflash-33851fea556b71d1) [INFO] [stdout] running 182 tests [INFO] [stdout] test cli_tests::test_chip_to_chip_family ... ok [INFO] [stdout] test cli_tests::test_apply_config_defaults_for_flash ... ok [INFO] [stdout] test cli_tests::test_cli_command_is_valid ... ok [INFO] [stdout] test cli_tests::test_cli_default_values ... ok [INFO] [stdout] test cli_tests::test_apply_config_defaults_invalid_chip ... ok [INFO] [stdout] test cli_tests::test_cli_global_options ... ok [INFO] [stdout] test cli_tests::test_cli_invalid_chip ... ok [INFO] [stdout] test cli_tests::test_all_subcommands_have_localized_about_zh_cn ... ok [INFO] [stdout] test cli_tests::test_build_localized_command_creates_valid_command ... ok [INFO] [stdout] test cli_tests::test_apply_config_does_not_override_explicit_cli_values ... ok [INFO] [stdout] test cli_tests::test_cli_parse_completions ... ok [INFO] [stdout] test cli_tests::test_build_localized_command_has_subcommands ... ok [INFO] [stdout] test cli_tests::test_build_localized_command_zh_cn ... ok [INFO] [stdout] test cli_tests::test_cli_parse_flash_with_all_options ... ok [INFO] [stdout] test cli_tests::test_cli_parse_flash ... ok [INFO] [stdout] test cli_tests::test_cli_parse_erase ... ok [INFO] [stdout] test cli_tests::test_cli_parse_flash_monitor_port ... ok [INFO] [stdout] test cli_tests::test_cli_parse_list_ports ... ok [INFO] [stdout] test cli_tests::test_cli_parse_info ... ok [INFO] [stdout] test cli_tests::test_cli_parse_flash_without_firmware ... ok [INFO] [stdout] test cli_tests::test_cli_parse_info_json ... ok [INFO] [stdout] test cli_tests::test_cli_parse_monitor_with_monitor_port ... ok [INFO] [stdout] test cli_tests::test_cli_parse_list_ports_json ... ok [INFO] [stdout] test cli_tests::test_cli_parse_monitor_raw ... ok [INFO] [stdout] test cli_tests::test_cli_parse_monitor ... ok [INFO] [stdout] test cli_tests::test_cli_parse_monitor_default_baud ... ok [INFO] [stdout] test cli_tests::test_cli_parse_write ... ok [INFO] [stdout] test cli_tests::test_cli_parse_write_program ... ok [INFO] [stdout] test cli_tests::test_localize_arg_unknown_key ... ok [INFO] [stdout] test cli_tests::test_localize_arg_known_key ... ok [INFO] [stdout] test cli_tests::test_map_exit_code_cancelled_is_130 ... ok [INFO] [stdout] test cli_tests::test_parse_bin_arg_invalid_address ... ok [INFO] [stdout] test cli_tests::test_parse_bin_arg_invalid_missing_address ... ok [INFO] [stdout] test cli_tests::test_parse_bin_arg_invalid_no_colon ... ok [INFO] [stdout] test cli_tests::test_parse_bin_arg_no_prefix ... ok [INFO] [stdout] test cli_tests::test_parse_bin_arg_valid ... ok [INFO] [stdout] test cli_tests::test_parse_bin_arg_windows_path ... ok [INFO] [stdout] test cli_tests::test_parse_hex_u32_invalid ... ok [INFO] [stdout] test cli_tests::test_parse_hex_u32_overflow ... ok [INFO] [stdout] test cli_tests::test_parse_hex_u32_with_prefix ... ok [INFO] [stdout] test cli_tests::test_parse_hex_u32_with_underscores ... ok [INFO] [stdout] test cli_tests::test_parse_hex_u32_with_whitespace ... ok [INFO] [stdout] test cli_tests::test_parse_hex_u32_without_prefix ... ok [INFO] [stdout] test cli_tests::test_parse_hex_u32_zero ... ok [INFO] [stdout] test cli_tests::test_partition_type_str_values ... ok [INFO] [stdout] test cli_tests::test_main_help_zh_cn_option_descriptions ... ok [INFO] [stdout] test cli_tests::test_main_help_no_english_leaks_zh_cn ... ok [INFO] [stdout] test cli_tests::test_run_short_version_returns_ok ... ok [INFO] [stdout] test cli_tests::test_run_version_returns_ok ... ok [INFO] [stdout] hisiflash 1.0.0-alpha.11 [INFO] [stdout] [INFO] [stdout] 跨平台海思芯片烧录工具 (WS63、BS2X 系列) [INFO] [stdout] [INFO] [stdout] 用法: [INFO] [stdout] hisiflash [OPTIONS] [INFO] [stdout] [INFO] [stdout] 命令: [INFO] [stdout] flash Flash a FWPKG firmware package [INFO] [stdout] write Write raw binary files to flash [INFO] [stdout] write-program Write a single binary with program data [INFO] [stdout] erase Erase flash memory [INFO] [stdout] info Show information about a firmware file [INFO] [stdout] list-ports List available serial ports [INFO] [stdout] monitor Open serial monitor [INFO] [stdout] completions Generate shell completion scripts [INFO] [stdout] help Print this message or the help of the given subcommand(s) [INFO] [stdout] [INFO] [stdout] 选项: [INFO] [stdout] -p, --port Serial port to use (auto-detected if not specified) [env: HISIFLASH_PORT=] [INFO] [stdout] -b, --baud Baud rate for data transfer [env: HISIFLASH_BAUD=] [default: 921600] [INFO] [stdout] -c, --chip Target chip type [env: HISIFLASH_CHIP=] [default: ws63] [INFO] [stdout] --lang Language/locale for messages (e.g., en, zh-CN) [env: HISIFLASH_LANG=] [INFO] [stdout] -v, --verbose... Verbose output level (-v, -vv, -vvv for increasing detail) [INFO] [stdout] -q, --quiet Quiet mode (suppress non-essential output) [INFO] [stdout] --non-interactive Non-interactive mode (fail instead of prompting) [env: HISIFLASH_NON_INTERACTIVE=] [INFO] [stdout] --confirm-port Confirm port selection even for auto-detected ports [INFO] [stdout] --list-all-ports List all available ports (including unknown types) [INFO] [stdout] --config Path to a configuration file [INFO] [stdout] -h, --help 打印帮助信息 (使用 '--help' 查看更多) [INFO] [stdout] -V, --version 打印版本信息 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] 环境变量: [INFO] [stdout] HISIFLASH_PORT 默认串口 [INFO] [stdout] HISIFLASH_BAUD 默认波特率 (默认: 921600) [INFO] [stdout] HISIFLASH_CHIP 默认芯片类型 (ws63, bs2x, bs25) [INFO] [stdout] HISIFLASH_LANG 语言/区域设置 (en, zh-CN) [INFO] [stdout] HISIFLASH_NON_INTERACTIVE 非交互模式 (禁用提示) [INFO] [stdout] [INFO] [stdout] 更多信息请访问: https://github.com/sanchuanhehe/hisiflash [INFO] [stdout] test cli_tests::test_run_no_args_returns_ok ... ok [INFO] [stdout] test cli_tests::test_subcmd_help_flash_en_has_english_headings ... ok [INFO] [stdout] test cli_tests::test_subcmd_completions_zh_cn_localized ... ok [INFO] [stdout] test cli_tests::test_subcmd_help_flash_global_args_propagated ... ok [INFO] [stdout] test cli_tests::test_subcmd_erase_no_arguments_heading ... ok [INFO] [stdout] test cli_tests::test_subcmd_help_flash_no_english_leaks_zh_cn ... ok [INFO] [stdout] test cli_tests::test_main_help_zh_cn_command_descriptions ... ok [INFO] [stdout] test cli_tests::test_main_help_en_has_english_headings ... ok [INFO] [stdout] test cli_tests::test_main_help_zh_cn_has_localized_headings ... ok [INFO] [stdout] test cli_tests::test_subcmd_help_flash_zh_cn_has_localized_headings ... ok [INFO] [stdout] test cli_tests::test_use_fancy_output_follows_tty_flag ... ok [INFO] [stdout] test cli_tests::test_subcmd_help_flash_zh_cn_has_localized_content ... ok [INFO] [stdout] test cli_tests::test_subcmd_write_zh_cn_localized ... ok [INFO] [stdout] test commands::completions::tests::test_cmd_completions_elvish_generates_output ... ok [INFO] [stdout] test commands::completions::tests::test_detect_shell_type_returns_option ... ok [INFO] [stdout] test commands::completions::tests::test_cmd_completions_zsh_generates_output ... ok [INFO] [stdout] test commands::completions::tests::test_dirs_for_data_returns_path ... ok [INFO] [stdout] test commands::completions::tests::test_install_path_bash ... ok [INFO] [stdout] test commands::completions::tests::test_install_path_elvish ... ok [INFO] [stdout] test commands::completions::tests::test_install_path_powershell ... ok [INFO] [stdout] test commands::completions::tests::test_install_path_fish ... ok [INFO] [stdout] test commands::completions::tests::test_shell_from_path_bash ... ok [INFO] [stdout] test commands::completions::tests::test_shell_from_path_elvish ... ok [INFO] [stdout] test commands::completions::tests::test_shell_from_path_empty ... ok [INFO] [stdout] test commands::completions::tests::test_home_dir_returns_value ... ok [INFO] [stdout] test commands::completions::tests::test_shell_from_path_fish ... ok [INFO] [stdout] test commands::completions::tests::test_shell_from_path_just_name ... ok [INFO] [stdout] test commands::completions::tests::test_shell_from_path_powershell ... ok [INFO] [stdout] test commands::completions::tests::test_shell_from_path_unknown ... ok [INFO] [stdout] test commands::completions::tests::test_shell_from_path_zsh ... ok [INFO] [stdout] test cli_tests::test_long_help_has_more_detail_than_short ... ok [INFO] [stdout] test commands::completions::tests::test_xdg_config_dir_returns_path ... ok [INFO] [stdout] test commands::firmware::tests::test_display_label_exact_base ... ok [INFO] [stdout] test commands::firmware::tests::test_display_label_no_common_prefix ... ok [INFO] [stdout] test commands::firmware::tests::test_display_label_with_base ... ok [INFO] [stdout] test commands::completions::tests::test_install_path_zsh ... ok [INFO] [stdout] test commands::firmware::tests::test_case_insensitive_extension ... ok [INFO] [stdout] test commands::firmware::tests::test_find_single_firmware ... ok [INFO] [stdout] test commands::firmware::tests::test_find_multiple_firmware ... ok [INFO] [stdout] test commands::firmware::tests::test_find_no_firmware ... ok [INFO] [stdout] test commands::firmware::tests::test_human_size ... ok [INFO] [stdout] test commands::firmware::tests::test_resolve_multiple_non_interactive_fails ... ok [INFO] [stdout] test commands::firmware::tests::test_priority_dirs ... ok [INFO] [stdout] test cli_tests::test_subcmd_long_help_has_more_detail_than_short ... ok [INFO] [stdout] test commands::firmware::tests::test_resolve_no_firmware_empty_dir ... ok [INFO] [stdout] test commands::firmware::tests::test_truncate_start_cuts_left ... ok [INFO] [stdout] test commands::firmware::tests::test_resolve_single_non_interactive ... ok [INFO] [stdout] test commands::completions::tests::test_cmd_completions_bash_generates_output ... ok [INFO] [stdout] test commands::firmware::tests::test_resolve_with_explicit_path ... ok [INFO] [stdout] test commands::firmware::tests::test_truncate_start_exact_fit ... ok [INFO] [stdout] test commands::firmware::tests::test_truncate_start_path_cuts_at_separator ... ok [INFO] [stdout] test commands::firmware::tests::test_truncate_start_preserves_size_suffix ... ok [INFO] [stdout] test commands::firmware::tests::test_truncate_start_short_string_unchanged ... ok [INFO] [stdout] test commands::info::tests::test_format_partition_type_efuse_contains_text ... ok [INFO] [stdout] test commands::info::tests::test_format_partition_type_all_variants_non_empty ... ok [INFO] [stdout] test commands::info::tests::test_format_partition_type_database_contains_text ... ok [INFO] [stdout] test commands::info::tests::test_format_partition_type_flashboot_contains_text ... ok [INFO] [stdout] test commands::info::tests::test_format_partition_type_kvnv_contains_text ... ok [INFO] [stdout] test commands::info::tests::test_format_partition_type_loader_contains_text ... ok [INFO] [stdout] test commands::info::tests::test_format_partition_type_normal_no_color ... ok [INFO] [stdout] test commands::info::tests::test_format_partition_type_unknown_with_value ... ok [INFO] [stdout] test commands::info::tests::test_format_partition_type_version_no_color ... ok [INFO] [stdout] test commands::info::tests::test_partition_type_str_matches_format_for_plain_variants ... ok [INFO] [stdout] test commands::info::tests::test_partition_type_str_all_variants ... ok [INFO] [stdout] test commands::monitor::tests::test_contains_reset_evidence_boot_pattern ... ok [INFO] [stdout] test commands::monitor::tests::test_contains_reset_evidence_verify_pattern ... ok [INFO] [stdout] test commands::monitor::tests::test_contains_reset_evidence_flash_init_pattern ... ok [INFO] [stdout] test commands::monitor::tests::test_contains_reset_evidence_negative_case ... ok [INFO] [stdout] test commands::monitor::tests::test_format_output_empty_string ... ok [INFO] [stdout] test commands::monitor::tests::test_format_output_no_timestamp_crlf_normalization ... ok [INFO] [stdout] test commands::monitor::tests::test_format_output_no_timestamp_newline_normalization ... ok [INFO] [stdout] test commands::monitor::tests::test_format_output_no_timestamp_plain ... ok [INFO] [stdout] test commands::monitor::tests::test_format_output_no_timestamp_standalone_cr ... ok [INFO] [stdout] test commands::monitor::tests::test_format_output_only_newlines ... ok [INFO] [stdout] test commands::monitor::tests::test_format_output_with_timestamp_after_newline ... ok [INFO] [stdout] test commands::monitor::tests::test_format_output_with_timestamp_only_at_line_start ... ok [INFO] [stdout] test commands::monitor::tests::test_split_utf8_empty ... ok [INFO] [stdout] test commands::monitor::tests::test_format_output_with_timestamp_inserts_prefix ... ok [INFO] [stdout] test commands::monitor::tests::test_split_utf8_mixed_valid_and_partial ... ok [INFO] [stdout] test commands::monitor::tests::test_split_utf8_partial_multibyte ... ok [INFO] [stdout] test commands::monitor::tests::test_split_utf8_valid_ascii ... ok [INFO] [stdout] test commands::monitor::tests::test_split_utf8_single_invalid_byte ... ok [INFO] [stdout] test commands::monitor::tests::test_split_utf8_valid_multibyte ... ok [INFO] [stdout] test config::tests::test_config_from_empty_toml ... ok [INFO] [stdout] test config::tests::test_config_from_partial_toml ... ok [INFO] [stdout] test config::tests::test_config_merge_baud ... ok [INFO] [stdout] test config::tests::test_config_merge_does_not_overwrite_with_none ... ok [INFO] [stdout] test config::tests::test_config_merge_late_baud ... ok [INFO] [stdout] test config::tests::test_config_from_toml ... ok [INFO] [stdout] test config::tests::test_config_merge_serial ... ok [INFO] [stdout] test config::tests::test_config_merge_skip_verify ... ok [INFO] [stdout] test config::tests::test_config_merge_usb_devices_extend ... ok [INFO] [stdout] test config::tests::test_default_config ... ok [INFO] [stdout] test config::tests::test_default_connection_config ... ok [INFO] [stdout] test config::tests::test_default_flash_config ... ok [INFO] [stdout] test config::tests::test_default_port_config ... ok [INFO] [stdout] test config::tests::test_config_roundtrip_toml ... ok [INFO] [stdout] test commands::firmware::tests::test_max_depth_exceeded ... ok [INFO] [stdout] test commands::firmware::tests::test_skip_git_and_target ... ok [INFO] [stdout] test commands::firmware::tests::test_truncate_start_very_narrow ... ok [INFO] [stdout] test config::tests::test_global_config_dir_is_some ... ok [INFO] [stdout] test config::tests::test_global_config_path_is_some ... ok [INFO] [stdout] test config::tests::test_load_from_path_nonexistent ... ok [INFO] [stdout] test config::tests::test_load_from_path_valid ... ok [INFO] [stdout] test config::tests::test_port_config_toml_roundtrip ... ok [INFO] [stdout] test config::tests::test_remember_usb_device_creates_file ... ok [INFO] [stdout] test config::tests::test_remember_usb_device_no_duplicates ... ok [INFO] [stdout] test config::tests::test_usb_device_eq ... ok [INFO] [stdout] test config::tests::test_remember_usb_device_multiple_different ... ok [INFO] [stdout] test config::tests::test_save_port_serialization_only ... ok [INFO] [stdout] test config::tests::test_usb_device_clone ... ok [INFO] [stdout] test config::tests::test_usb_device_matches ... ok [INFO] [stdout] test config::tests::test_save_port_creates_valid_toml ... ok [INFO] [stdout] test config::tests::test_save_port_without_vid_pid ... ok [INFO] [stdout] test locale_tests::test_locale_chinese_variants ... ok [INFO] [stdout] test locale_tests::test_locale_posix_defaults ... ok [INFO] [stdout] test locale_tests::test_locale_english_variants ... ok [INFO] [stdout] test locale_tests::test_locale_unsupported_fallback ... ok [INFO] [stdout] test serial::tests::test_is_known_device_builtin ... ok [INFO] [stdout] test serial::tests::test_is_known_device_from_config ... ok [INFO] [stdout] test serial::tests::test_select_non_interactive_single_port_returns_selected_port ... ok [INFO] [stdout] test serial::tests::test_is_known_device_no_vid_pid ... ok [INFO] [stdout] test serial::tests::test_is_known_device_unknown ... ok [INFO] [stdout] test serial::tests::test_serial_options_clone ... ok [INFO] [stdout] test serial::tests::test_serial_options_default ... ok [INFO] [stdout] test serial::tests::test_serial_options_with_port ... ok [INFO] [stdout] test serial::tests::test_select_non_interactive_no_ports_returns_usage_error ... ok [INFO] [stdout] test serial::tests::test_truncate_port_label_handles_ansi ... ok [INFO] [stdout] test serial::tests::test_truncate_port_label_right_preserves_left ... ok [INFO] [stdout] test serial::tests::test_selected_port_fields ... ok [INFO] [stdout] test serial::tests::test_select_non_interactive_multiple_ports_returns_usage_error ... ok [INFO] [stdout] test commands::completions::tests::test_cmd_completions_fish_generates_output ... ok [INFO] [stdout] test commands::completions::tests::test_cmd_completions_powershell_generates_output ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 182 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.20s [INFO] [stdout] [INFO] [stderr] Running tests/cli_contract.rs (/opt/rustwide/target/debug/deps/cli_contract-1849215987010247) [INFO] [stdout] [INFO] [stdout] running 31 tests [INFO] [stdout] test completions_command_writes_to_stdout ... ok [INFO] [stdout] test exit_code_two_for_usage_error_missing_required_arg ... ok [INFO] [stdout] test exit_code_130_for_cancelled_operation ... ok [INFO] [stdout] test erase_command_invalid_args_writes_to_stderr_only ... ok [INFO] [stdout] test colors_disabled_when_not_tty ... ok [INFO] [stdout] test exit_code_one_for_unexpected_error ... ok [INFO] [stdout] test exit_code_two_for_usage_error_invalid_flag ... ok [INFO] [stdout] test exit_code_two_for_usage_error_unknown_command ... ok [INFO] [stdout] test help_exits_zero_and_writes_stdout_only ... ok [INFO] [stdout] test help_includes_usage_examples ... ok [INFO] [stdout] test info_json_error_returns_clean_error_json ... ok [INFO] [stdout] test info_command_with_valid_file_writes_to_stdout ... ok [INFO] [stdout] test info_json_error_keeps_stdout_clean ... ok [INFO] [stdout] test info_json_success_returns_structured_json ... ok [INFO] [stdout] test non_interactive_environment_variable_works ... ok [INFO] [stdout] test exit_code_zero_on_success ... ok [INFO] [stdout] test flash_command_writes_to_stderr_only ... ok [INFO] [stdout] test option_terminator_allows_dash_prefixed_operand ... ok [INFO] [stdout] test non_interactive_flash_with_multiple_firmwares_fails_fast ... ok [INFO] [stdout] test non_interactive_flag_is_recognized ... ok [INFO] [stdout] test short_help_exits_zero_and_writes_stdout_only ... ok [INFO] [stdout] test unknown_command_suggests_similar ... ok [INFO] [stdout] test option_terminator_with_flash_command ... ok [INFO] [stdout] test version_exits_zero_and_writes_stdout_only ... ok [INFO] [stdout] test short_version_exits_zero_and_writes_stdout_only ... ok [INFO] [stdout] test write_command_invalid_args_writes_to_stderr_only ... ok [INFO] [stdout] test unknown_flag_suggests_similar ... ok [INFO] [stdout] test exit_code_four_for_device_not_found ... ok [INFO] [stdout] test exit_code_three_for_config_error_invalid_file ... ok [INFO] [stdout] test json_output_is_valid_json_without_extra_lines ... ok [INFO] [stdout] test list_ports_json_returns_valid_json ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 31 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.38s [INFO] [stdout] [INFO] [stderr] Doc-tests hisiflash [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stdout] test hisiflash/src/lib.rs - (line 31) ... ignored [INFO] [stdout] test hisiflash/src/lib.rs - (line 48) ... ignored [INFO] [stdout] test hisiflash/src/lib.rs - (line 67) - compile ... ok [INFO] [stdout] test hisiflash/src/target/ws63/flasher.rs - target::ws63::flasher::Ws63Flasher

::with_cancel (line 158) ... ignored [INFO] [stdout] test hisiflash/src/port/mod.rs - port (line 35) - compile ... ok [INFO] [stdout] test hisiflash/src/target/ws63/flasher.rs - target::ws63::flasher (line 15) - compile ... ok [INFO] [stdout] test hisiflash/src/protocol/crc.rs - protocol::crc::crc16_xmodem (line 46) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 3 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] all doctests ran in 0.84s; merged doctests compilation took 0.83s [INFO] running `Command { std: "docker" "inspect" "3c82d9cc520e9b6063d04d5d9ffb48c8c8973a7d45b54c6a1f54b312da4e8a44", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3c82d9cc520e9b6063d04d5d9ffb48c8c8973a7d45b54c6a1f54b312da4e8a44", kill_on_drop: false }` [INFO] [stdout] 3c82d9cc520e9b6063d04d5d9ffb48c8c8973a7d45b54c6a1f54b312da4e8a44