[INFO] fetching crate yo-resp 0.3.33...
[INFO] testing yo-resp-0.3.33 against 1.99.0-beta.8 for beta-1.100-2
[INFO] extracting crate yo-resp 0.3.33 into /workspace/builds/worker-2-tc1/source
[INFO] started tweaking crates.io crate yo-resp 0.3.33
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate yo-resp 0.3.33
[INFO] tweaked toml for crates.io crate yo-resp 0.3.33 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate yo-resp 0.3.33 on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate yo-resp 0.3.33 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" "+1.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded yo-vector v0.3.33
[INFO] [stderr]   Downloaded yo-alloc v0.3.33
[INFO] [stderr]   Downloaded yo-shape v0.3.33
[INFO] [stderr]   Downloaded generator v0.8.9
[INFO] [stderr]   Downloaded yo-arena v0.3.33
[INFO] [stderr]   Downloaded either v1.18.0
[INFO] [stderr]   Downloaded which v8.0.6
[INFO] [stderr]   Downloaded yo-series v0.3.33
[INFO] [stderr]   Downloaded yo-reactor v0.3.33
[INFO] [stderr]   Downloaded yo-shard v0.3.33
[INFO] [stderr]   Downloaded mlua-sys v0.12.0
[INFO] [stderr]   Downloaded yo-format v0.3.33
[INFO] [stderr]   Downloaded yo-sketch v0.3.33
[INFO] [stderr]   Downloaded yo-index v0.3.33
[INFO] [stderr]   Downloaded yo-common v0.3.33
[INFO] [stderr]   Downloaded cc v1.4.4
[INFO] [stderr]   Downloaded yo-graph v0.3.33
[INFO] [stderr]   Downloaded yo-doc v0.3.33
[INFO] [stderr]   Downloaded yo-search v0.3.33
[INFO] [stderr]   Downloaded mlua v0.12.1
[INFO] [stderr]   Downloaded bstr v1.13.1
[INFO] [stderr]   Downloaded yo-kv v0.3.33
[INFO] [stderr]   Downloaded syn v3.0.4
[INFO] [stderr]   Downloaded lua-src v551.0.1
[INFO] [stderr]   Downloaded luajit-src v210.7.3+1ee778a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] e9feec304ff2c8ad1ec94e3ca3033125029df7a3c5ec928c0c93e02a3878ad36
[INFO] running `Command { std: "docker" "start" "e9feec304ff2c8ad1ec94e3ca3033125029df7a3c5ec928c0c93e02a3878ad36", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e9feec304ff2c8ad1ec94e3ca3033125029df7a3c5ec928c0c93e02a3878ad36", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "e9feec304ff2c8ad1ec94e3ca3033125029df7a3c5ec928c0c93e02a3878ad36" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e9feec304ff2c8ad1ec94e3ca3033125029df7a3c5ec928c0c93e02a3878ad36", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "e9feec304ff2c8ad1ec94e3ca3033125029df7a3c5ec928c0c93e02a3878ad36" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.189
[INFO] [stderr]    Compiling yo-common v0.3.33
[INFO] [stderr]    Compiling yo-alloc v0.3.33
[INFO] [stderr]    Compiling shlex v2.0.1
[INFO] [stderr]    Compiling find-msvc-tools v0.1.11
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling autocfg v1.5.1
[INFO] [stderr]    Compiling pkg-config v0.3.34
[INFO] [stderr]    Compiling smallvec v1.15.2
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling cc v1.4.4
[INFO] [stderr]    Compiling bstr v1.13.1
[INFO] [stderr]    Compiling either v1.18.0
[INFO] [stderr]    Compiling rustc-hash v2.1.3
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling yo-series v0.3.33
[INFO] [stderr]    Compiling yo-sketch v0.3.33
[INFO] [stderr]    Compiling yo-shape v0.3.33
[INFO] [stderr]    Compiling yo-format v0.3.33
[INFO] [stderr]    Compiling yo-search v0.3.33
[INFO] [stderr]    Compiling which v8.0.6
[INFO] [stderr]    Compiling yo-arena v0.3.33
[INFO] [stderr]    Compiling yo-shard v0.3.33
[INFO] [stderr]    Compiling lua-src v551.0.1
[INFO] [stderr]    Compiling yo-index v0.3.33
[INFO] [stderr]    Compiling luajit-src v210.7.3+1ee778a
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling yo-reactor v0.3.33
[INFO] [stderr]    Compiling yo-kv v0.3.33
[INFO] [stderr]    Compiling mlua-sys v0.12.0
[INFO] [stderr]    Compiling mlua v0.12.1
[INFO] [stderr]    Compiling yo-vector v0.3.33
[INFO] [stderr]    Compiling yo-doc v0.3.33
[INFO] [stderr]    Compiling yo-graph v0.3.33
[INFO] [stderr]    Compiling yo-resp v0.3.33 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 54.39s
[INFO] running `Command { std: "docker" "inspect" "e9feec304ff2c8ad1ec94e3ca3033125029df7a3c5ec928c0c93e02a3878ad36", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "e9feec304ff2c8ad1ec94e3ca3033125029df7a3c5ec928c0c93e02a3878ad36" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling crossbeam-utils v0.8.22
[INFO] [stderr]    Compiling serde_core v1.0.229
[INFO] [stderr]    Compiling either v1.18.0
[INFO] [stderr]    Compiling zerocopy v0.8.56
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.20
[INFO] [stderr]    Compiling syn v3.0.4
[INFO] [stderr]    Compiling crossbeam-deque v0.8.7
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling alloca v0.4.0
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling regex-syntax v0.8.11
[INFO] [stderr]    Compiling clap_builder v4.6.6
[INFO] [stderr]    Compiling itertools v0.13.0
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling rayon v1.12.0
[INFO] [stderr]    Compiling regex-automata v0.4.18
[INFO] [stderr]    Compiling criterion-plot v0.8.2
[INFO] [stderr]    Compiling clap v4.6.6
[INFO] [stderr]    Compiling mlua v0.12.1
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling regex v1.13.1
[INFO] [stderr]    Compiling page_size v0.6.0
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling zerocopy-derive v0.8.56
[INFO] [stderr]    Compiling yo-resp v0.3.33 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling criterion v0.8.2
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 47s
[INFO] running `Command { std: "docker" "inspect" "e9feec304ff2c8ad1ec94e3ca3033125029df7a3c5ec928c0c93e02a3878ad36", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "e9feec304ff2c8ad1ec94e3ca3033125029df7a3c5ec928c0c93e02a3878ad36" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.19s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/yo_resp-210d86b8750159e5)
[INFO] [stdout] 
[INFO] [stdout] running 1127 tests
[INFO] [stdout] test cap::tests::a_v1_only_machine_has_no_v2_line ... ok
[INFO] [stdout] test cap::tests::a_machine_with_no_cgroups_at_all_reports_none ... ok
[INFO] [stdout] test cap::tests::a_real_number_is_bytes ... ok
[INFO] [stdout] test cap::tests::inside_a_cgroup_namespace_the_path_is_just_the_root ... ok
[INFO] [stdout] test cap::tests::asking_the_real_machine_answers_something_sensible ... ok
[INFO] [stdout] test cap::tests::cgroup_v1_is_read_when_v2_has_nothing_to_say ... ok
[INFO] [stdout] test cap::tests::a_number_near_the_top_is_cgroup_v1_saying_no_limit ... ok
[INFO] [stdout] test cap::tests::max_means_there_is_no_limit ... ok
[INFO] [stdout] test cap::tests::nonsense_is_no_limit_rather_than_a_panic ... ok
[INFO] [stdout] test cap::tests::the_budget_is_a_quarter_and_zero_when_there_is_nothing_to_take_a_quarter_of ... ok
[INFO] [stdout] test dispatch::acl::tests::a_first_argument_can_only_be_taken_off_a_command_that_has_subcommands ... ok
[INFO] [stdout] test dispatch::acl::tests::a_key_permission_that_is_not_r_or_w_once_each_is_a_syntax_error ... ok
[INFO] [stdout] test cap::tests::a_tree_that_says_max_all_the_way_up_has_no_limit ... ok
[INFO] [stdout] test dispatch::acl::tests::a_new_selector_starts_where_acl_pubsub_default_says ... ok
[INFO] [stdout] test cap::tests::an_ancestor_with_a_tighter_limit_wins ... ok
[INFO] [stdout] test cap::tests::the_v2_line_is_the_one_with_no_controllers ... ok
[INFO] [stdout] test dispatch::acl::tests::the_flags_a_user_reports_are_the_ones_about_the_account ... ok
[INFO] [stdout] test dispatch::acl::tests::the_reason_a_file_would_not_open_reads_the_way_c_writes_it ... ok
[INFO] [stdout] test dispatch::args::tests::a_client_that_sends_a_megabyte_does_not_get_it_back ... ok
[INFO] [stdout] test dispatch::acl::tests::a_category_a_subcommand_holds_reaches_that_subcommand_and_no_further ... ok
[INFO] [stdout] test dispatch::acl::tests::a_subcommand_can_be_taken_back_off_a_container_that_was_allowed ... ok
[INFO] [stdout] test cap::tests::the_limit_is_read_from_the_leaf ... ok
[INFO] [stdout] test cap::tests::the_tighter_of_the_two_is_the_one_that_counts ... ok
[INFO] [stdout] test dispatch::acl::tests::a_key_permission_with_no_pattern_after_it_is_an_empty_pattern ... ok
[INFO] [stdout] test dispatch::acl::tests::a_line_of_the_file_loses_the_blanks_on_both_ends ... ok
[INFO] [stdout] test dispatch::args::tests::a_command_with_no_arguments_gets_the_short_sentence ... ok
[INFO] [stdout] test dispatch::args::tests::keywords_match_whatever_case_the_client_used ... ok
[INFO] [stdout] test dispatch::args::tests::arguments_are_slices_of_the_read_buffer ... ok
[INFO] [stdout] test dispatch::args::tests::the_unknown_command_message_is_redis_own ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::a_claim_for_the_wrong_slots_ends_the_migration ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::a_key_outside_the_range_is_left_alone ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::a_migration_walks_from_the_sync_to_the_snapshot ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::a_cross_slot_command_ends_the_migration ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::a_far_side_that_never_drains_gives_up ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::a_node_that_lost_everything_keeps_its_keys ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::a_failed_task_makes_way_for_a_new_import ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::a_retry_of_the_same_move_keeps_its_count ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::a_second_import_waits_for_the_first ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::a_second_migration_is_refused_while_one_is_running ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::an_empty_node_still_sends_the_functions_and_the_end ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::an_import_counts_what_it_has_applied ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::an_import_is_booked_before_anything_is_dialled ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::a_claim_somewhere_else_leaves_the_migration_alone ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::an_overlapping_import_is_named_by_its_slots ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::a_collection_goes_as_a_restore ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::cancelling_a_handoff_lets_the_writes_go ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::a_string_goes_as_a_set_and_its_deadline_follows_it ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::cancelling_counts_once ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::a_handoff_the_far_side_never_finishes_gives_up ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::each_slot_is_counted_before_its_keys_arrive ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::only_the_slots_that_are_moving_are_streamed ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::catching_up_stops_the_writes_and_ends_the_stream ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::slots_that_moved_on_their_own_drop_their_keys ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::the_import_states_read_the_way_the_reference_writes_them ... ok
[INFO] [stdout] test dispatch::cluster::bus::tests::a_node_id_has_to_be_forty_hex_characters ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::the_snapshot_connection_closing_after_it_is_read_is_not_a_failure ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::the_snapshot_connection_has_to_match_the_task ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::the_finished_list_is_bounded ... ok
[INFO] [stdout] test dispatch::cluster::bus::tests::a_node_that_cannot_be_reached_is_treated_as_pinged ... ok
[INFO] [stdout] test dispatch::cluster::bus::tests::a_bitmap_round_trips_through_the_reference_bit_order ... ok
[INFO] [stdout] test dispatch::cluster::asm::tests::the_slots_changing_hands_finishes_the_migration ... ok
[INFO] [stdout] test dispatch::cluster::bus::tests::a_master_asked_to_stand_down_stops_writing_and_says_where ... ok
[INFO] [stdout] test dispatch::cluster::bus::tests::an_election_waits_then_asks_then_wins ... ok
[INFO] [stdout] test dispatch::cluster::bus::tests::a_packet_of_the_wrong_length_is_refused ... ok
[INFO] [stdout] test dispatch::cluster::bus::tests::a_manual_failover_waits_for_the_offsets_to_meet ... ok
[INFO] [stdout] test dispatch::cluster::tests::a_config_file_is_not_read_back_as_live_state ... ok
[INFO] [stdout] test dispatch::cluster::tests::a_config_file_puts_every_run_on_the_node_that_owns_it ... ok
[INFO] [stdout] test dispatch::cluster::tests::a_key_lands_in_the_slot_a_real_server_puts_it_in ... ok
[INFO] [stdout] test dispatch::cluster::bus::tests::an_extension_is_padded_to_the_eight_byte_boundary ... ok
[INFO] [stdout] test dispatch::cluster::tests::setslot_will_not_touch_a_slot_a_migration_is_moving ... ok
[INFO] [stdout] test dispatch::cluster::tests::the_hash_tag_rules_are_the_reference_rules ... ok
[INFO] [stdout] test dispatch::debug::tests::a_flag_is_atoi_and_anything_unreadable_is_off ... ok
[INFO] [stdout] test dispatch::debug::tests::a_sleep_reads_the_longest_number_at_the_front ... ok
[INFO] [stdout] test dispatch::failover::tests::the_three_stages_have_the_words_redis_prints ... ok
[INFO] [stdout] test dispatch::follow::tests::a_replication_id_is_forty_hex_characters_and_nothing_else ... ok
[INFO] [stdout] test dispatch::follow::tests::a_state_that_is_not_one_of_the_four_reads_as_no_master ... ok
[INFO] [stdout] test dispatch::indexing::tests::a_document_hands_back_the_pairs_it_was_given ... ok
[INFO] [stdout] test dispatch::indexing::tests::a_document_with_nothing_in_it_is_no_pairs ... ok
[INFO] [stdout] test dispatch::keyspec::tests::a_container_is_asked_about_the_word_behind_it ... ok
[INFO] [stdout] test dispatch::keyspec::tests::a_counted_run_names_every_key_it_counts ... ok
[INFO] [stdout] test dispatch::keyspec::tests::a_keyword_the_command_does_not_carry_is_not_a_failure ... ok
[INFO] [stdout] test dispatch::keyspec::tests::a_last_wins_destination_is_the_last_one_written ... ok
[INFO] [stdout] test dispatch::keyspec::tests::a_run_that_reaches_past_the_last_argument_names_nothing ... ok
[INFO] [stdout] test dispatch::keyspec::tests::an_argument_that_only_looks_like_a_key_is_not_one ... ok
[INFO] [stdout] test dispatch::keyspec::tests::pfmerge_names_its_destination_when_it_was_given_no_sources ... ok
[INFO] [stdout] test dispatch::keyspec::tests::the_streams_keyword_is_walked_to_rather_than_counted_from ... ok
[INFO] [stdout] test dispatch::keyspec::tests::what_a_command_does_to_a_key_can_depend_on_its_options ... ok
[INFO] [stdout] test dispatch::failover::tests::a_stage_that_is_not_one_of_the_three_reads_as_no_failover ... ok
[INFO] [stdout] test dispatch::follow::tests::a_read_that_timed_out_is_not_a_broken_link ... ok
[INFO] [stdout] test dispatch::lua::bit::tests::a_word_is_written_out_as_the_digits_that_were_asked_for ... ok
[INFO] [stdout] test dispatch::lua::cjson::tests::a_number_is_read_the_way_the_c_library_reads_one ... ok
[INFO] [stdout] test dispatch::lua::cjson::tests::a_number_is_written_the_way_the_c_library_writes_one ... ok
[INFO] [stdout] test dispatch::lua::cmsgpack::tests::a_fraction_goes_out_narrow_when_that_loses_nothing ... ok
[INFO] [stdout] test dispatch::lua::cmsgpack::tests::a_whole_number_takes_the_shortest_form_that_holds_it ... ok
[INFO] [stdout] test dispatch::lua::library::tests::a_library_is_found_by_case_and_a_function_is_not ... ok
[INFO] [stdout] test dispatch::lua::library::tests::a_name_is_letters_numbers_and_underscores ... ok
[INFO] [stdout] test dispatch::failover::tests::a_server_nobody_is_failing_over_says_so ... ok
[INFO] [stdout] test dispatch::lua::cmsgpack::tests::a_number_is_whole_only_when_an_integer_holds_it_and_gives_it_back ... ok
[INFO] [stdout] test dispatch::lua::library::tests::a_shebang_that_is_not_one_says_which_way_it_is_wrong ... ok
[INFO] [stdout] test dispatch::lua::library::tests::the_shebang_says_the_engine_and_the_name ... ok
[INFO] [stdout] test dispatch::lua::r#struct::tests::an_integer_goes_out_and_comes_back_the_way_the_c_library_moves_one ... ok
[INFO] [stdout] test dispatch::lua::tests::a_line_that_would_end_early_is_scrubbed ... ok
[INFO] [stdout] test dispatch::lua::tests::the_cache_is_keyed_by_the_digest_of_the_body ... ok
[INFO] [stdout] test dispatch::cluster::bus::tests::cluster_failover_refuses_where_the_reference_refuses ... ok
[INFO] [stdout] test dispatch::lua::bit::tests::a_number_comes_down_to_a_word_the_way_lua_bit_op_does_it ... ok
[INFO] [stdout] test dispatch::lua::tests::the_global_table_holds_what_a_script_is_allowed_to_reach ... ok
[INFO] [stdout] test dispatch::lua::tests::the_interpreter_builds ... ok
[INFO] [stdout] test dispatch::cluster::bus::tests::a_replica_that_should_not_stand_does_not ... ok
[INFO] [stdout] test dispatch::migrate::tests::a_deadline_goes_over_as_what_is_left_of_it ... ok
[INFO] [stdout] test dispatch::migrate::tests::a_key_that_is_not_here_is_not_an_error ... ok
[INFO] [stdout] test dispatch::migrate::tests::a_peer_that_is_not_listening_is_an_io_error ... ok
[INFO] [stdout] test dispatch::cluster::bus::tests::a_vote_is_given_once_and_only_when_every_condition_holds ... ok
[INFO] [stdout] test dispatch::lua::tests::a_body_is_checked_for_being_lua_before_it_is_remembered ... ok
[INFO] [stdout] test dispatch::migrate::tests::a_key_the_peer_refuses_stays_here ... ok
[INFO] [stdout] test dispatch::migrate::tests::a_port_is_read_the_way_atoi_reads_one ... ok
[INFO] [stdout] test dispatch::migrate::tests::a_key_goes_over_and_leaves_nothing_behind ... ok
[INFO] [stdout] test dispatch::migrate::tests::a_select_that_fails_fails_every_key ... ok
[INFO] [stdout] test dispatch::migrate::tests::auth_and_auth2_want_their_arguments ... ok
[INFO] [stdout] test dispatch::migrate::tests::auth_and_auth2_go_out_in_front ... ok
[INFO] [stdout] test dispatch::migrate::tests::a_timeout_that_is_not_positive_is_one_second ... ok
[INFO] [stdout] test dispatch::migrate::tests::the_empty_string_is_a_key_like_any_other ... ok
[INFO] [stdout] test dispatch::migrate::tests::one_key_refused_does_not_hold_the_others_back ... ok
[INFO] [stdout] test dispatch::migrate::tests::a_key_that_has_expired_is_the_same_nokey ... ok
[INFO] [stdout] test dispatch::migrate::tests::the_keys_form_wants_the_key_argument_empty ... ok
[INFO] [stdout] test dispatch::migrate::tests::the_keys_form_takes_the_ones_that_are_here ... ok
[INFO] [stdout] test dispatch::migrate::tests::the_options_are_read_before_the_numbers ... ok
[INFO] [stdout] test dispatch::notify::tests::a_channel_name_carries_the_database_it_happened_on ... ok
[INFO] [stdout] test dispatch::notify::tests::a_field_list_is_length_prefixed_and_comma_joined ... ok
[INFO] [stdout] test dispatch::notify::tests::a_setting_reads_back_in_one_order_whatever_order_it_was_set_in ... ok
[INFO] [stdout] test dispatch::migrate::tests::the_keys_form_reaches_across_stripes ... ok
[INFO] [stdout] test dispatch::notify::tests::all_leaves_out_the_four_classes_it_leaves_out ... ok
[INFO] [stdout] test dispatch::notify::tests::several_fields_of_one_key_come_out_as_one_event ... ok
[INFO] [stdout] test dispatch::notify::tests::the_accepted_characters_are_the_ones_the_error_message_lists ... ok
[INFO] [stdout] test dispatch::notify::tests::the_field_names_are_only_collected_when_something_wants_them ... ok
[INFO] [stdout] test dispatch::notify::tests::the_subkey_channels_count_as_channels ... ok
[INFO] [stdout] test dispatch::scan::tests::the_cursor_ends_up_in_front_of_the_elements ... ok
[INFO] [stdout] test dispatch::search::aggregate::tests::a_null_is_a_value_of_its_own_and_turns_round_with_the_key ... ok
[INFO] [stdout] test dispatch::search::aggregate::tests::a_reducer_with_no_name_gets_one_built_out_of_what_it_was_given ... ok
[INFO] [stdout] test dispatch::search::aggregate::tests::a_row_without_the_property_sorts_last_whichever_way_the_key_runs ... ok
[INFO] [stdout] test dispatch::search::aggregate::tests::a_sort_key_says_which_of_the_two_kinds_of_value_it_holds ... ok
[INFO] [stdout] test dispatch::search::aggregate::tests::the_keys_are_read_in_turn_until_one_of_them_settles_it ... ok
[INFO] [stdout] test dispatch::search::aggregate::tests::two_groups_that_run_together_without_their_lengths_do_not_run_together_with_them ... ok
[INFO] [stdout] test dispatch::search::aggregate::tests::two_values_are_ordered_the_way_a_comparison_orders_them ... ok
[INFO] [stdout] test dispatch::search::cursor::tests::a_cursor_nobody_has_read_from_for_long_enough_is_swept_away ... ok
[INFO] [stdout] test dispatch::migrate::tests::copy_leaves_the_key_where_it_is_and_replace_is_passed_on ... ok
[INFO] [stdout] test dispatch::search::cursor::tests::a_filter_takes_its_rows_off_the_count_and_the_protocol_says_when ... ok
[INFO] [stdout] test dispatch::search::cursor::tests::a_pipeline_that_reads_keys_pulls_a_chunk_of_them_at_a_time ... ok
[INFO] [stdout] test dispatch::search::cursor::tests::a_settled_answer_says_the_total_once_and_nought_after_that ... ok
[INFO] [stdout] test dispatch::search::cursor::tests::a_pipeline_that_reads_nothing_pulls_one_document_at_a_time ... ok
[INFO] [stdout] test dispatch::lua::tests::the_redis_table_holds_the_names_a_script_calls ... ok
[INFO] [stdout] test dispatch::search::docs::tests::a_field_list_is_required_and_comes_in_pairs ... ok
[INFO] [stdout] test dispatch::search::cursor::tests::two_numbers_out_of_the_mint_are_not_the_same_number ... ok
[INFO] [stdout] test dispatch::search::cursor::tests::a_window_with_an_offset_holds_the_pull_back_and_one_without_does_not ... ok
[INFO] [stdout] test dispatch::search::docs::tests::an_option_with_nothing_after_it_names_itself_in_capitals ... ok
[INFO] [stdout] test dispatch::scan::tests::a_cursor_is_read_the_way_strtoull_reads_one ... ok
[INFO] [stdout] test dispatch::search::docs::tests::an_unknown_word_comes_back_as_the_client_wrote_it ... ok
[INFO] [stdout] test dispatch::search::docs::tests::fields_ends_the_option_list ... ok
[INFO] [stdout] test dispatch::search::docs::tests::only_a_language_the_module_knows ... ok
[INFO] [stdout] test dispatch::search::hybrid::tests::a_branch_runs_no_step_and_takes_no_window ... ok
[INFO] [stdout] test dispatch::search::docs::tests::the_option_words_come_in_any_order_and_any_case ... ok
[INFO] [stdout] test dispatch::search::hybrid::tests::a_field_a_step_named_goes_and_a_field_a_load_named_stays ... ok
[INFO] [stdout] test dispatch::search::hybrid::tests::a_branch_keeps_its_own_yield_and_puts_it_first ... ok
[INFO] [stdout] test dispatch::search::hybrid::tests::the_vector_branch_scores_a_row_by_how_close_it_came ... ok
[INFO] [stdout] test dispatch::search::hybrid::tests::the_text_branch_leaves_the_score_where_the_scorer_put_it ... ok
[INFO] [stdout] test dispatch::search::tests::a_geofilter_reads_a_number_the_way_that_one_option_reads_one ... ok
[INFO] [stdout] test dispatch::search::tests::a_number_that_is_not_one_is_spelled_the_way_the_wire_spells_it ... ok
[INFO] [stdout] test dispatch::search::tests::every_row_of_a_window_is_written_in_the_order_the_window_shares ... ok
[INFO] [stdout] test dispatch::server::tests::the_backlog_setting_is_the_size_the_backlog_actually_is ... ok
[INFO] [stdout] test dispatch::server::tests::the_read_only_setting_answers_to_both_of_its_names ... ok
[INFO] [stdout] test dispatch::table::tests::a_key_folds_the_case_and_nothing_else ... ok
[INFO] [stdout] test dispatch::table::tests::a_name_that_cannot_be_a_command_is_rejected_on_its_shape ... ok
[INFO] [stdout] test dispatch::search::tests::a_sort_key_is_written_five_digits_wider_than_the_row_it_sits_beside ... ok
[INFO] [stdout] test dispatch::table::tests::a_spec_knows_where_it_is_in_the_table ... ok
[INFO] [stdout] test dispatch::search::tests::a_sort_key_says_which_of_the_two_kinds_of_value_it_is ... ok
[INFO] [stdout] test dispatch::table::tests::arity_counts_the_command_name ... ok
[INFO] [stdout] test dispatch::table::tests::lookup_ignores_case_and_does_not_match_a_prefix ... ok
[INFO] [stdout] test dispatch::table::tests::every_command_is_findable_by_its_own_name ... ok
[INFO] [stdout] test dispatch::table::tests::every_name_is_spelled_the_way_it_was_registered_and_appears_once ... ok
[INFO] [stdout] test dispatch::table::tests::no_command_is_more_than_two_slots_from_where_it_wants_to_be ... ok
[INFO] [stdout] test dispatch::table::tests::the_index_is_not_full ... ok
[INFO] [stdout] test dispatch::table::tests::the_pair_commands_step_two_keys_at_a_time ... ok
[INFO] [stdout] test dispatch::tests::a_bad_bitfield_subcommand_leaves_the_key_alone ... ok
[INFO] [stdout] test dispatch::tests::a_bad_id_late_in_the_list_stops_the_whole_command ... ok
[INFO] [stdout] test dispatch::tests::a_backup_holds_the_dataset_as_it_was_at_start ... ok
[INFO] [stdout] test dispatch::migrate::tests::an_option_written_after_keys_is_a_key ... ok
[INFO] [stdout] test dispatch::tests::a_bad_index_reports_the_type_only_where_redis_reports_it ... ok
[INFO] [stdout] test dispatch::tests::a_bad_operand_is_not_the_answer_when_the_path_found_nothing_to_use_it_on ... ok
[INFO] [stdout] test dispatch::tests::a_bad_index_late_in_the_line_writes_none_of_the_earlier_ones ... ok
[INFO] [stdout] test dispatch::tests::a_block_move_of_one_needs_no_count_at_all ... ok
[INFO] [stdout] test dispatch::tests::a_bit_is_written_and_read_back_and_a_write_unpacks_an_int ... ok
[INFO] [stdout] test dispatch::tests::a_block_move_onto_itself_rotates_by_the_count ... ok
[INFO] [stdout] test dispatch::tests::a_bitop_across_stripes_reads_every_source ... ok
[INFO] [stdout] test dispatch::tests::a_block_move_orders_the_block_by_the_ends_and_the_ordering_word ... ok
[INFO] [stdout] test dispatch::tests::a_blocked_xread_wakes_on_the_next_entry ... ok
[INFO] [stdout] test dispatch::tests::a_block_move_reads_the_count_before_the_ordering_word ... ok
[INFO] [stdout] test dispatch::tests::a_blocking_block_move_waits_for_the_whole_block_only_under_exactly ... ok
[INFO] [stdout] test dispatch::tests::a_block_move_with_exactly_takes_all_of_them_or_none ... ok
[INFO] [stdout] test dispatch::tests::a_blocking_block_move_that_can_be_answered_answers_like_lmovem ... ok
[INFO] [stdout] test dispatch::tests::a_blocking_command_that_parked_crosses_nothing ... ok
[INFO] [stdout] test dispatch::tests::a_blocking_command_that_can_be_answered_answers_like_the_one_it_wraps ... ok
[INFO] [stdout] test dispatch::tests::a_blocking_block_move_reads_its_directions_then_its_timeout_then_its_count ... ok
[INFO] [stdout] test dispatch::tests::a_blocking_move_reads_its_directions_before_its_timeout ... ok
[INFO] [stdout] test dispatch::tests::a_box_search_reports_the_distance_the_hash_and_the_coordinates ... ok
[INFO] [stdout] test dispatch::tests::a_clause_in_front_of_a_vector_hangs_under_it_as_one_child ... ok
[INFO] [stdout] test dispatch::tests::a_command_a_transaction_may_not_hold_kills_it ... ok
[INFO] [stdout] test dispatch::tests::a_change_nothing_marked_is_found_within_a_turn_of_the_databases ... ok
[INFO] [stdout] test dispatch::tests::a_command_nobody_has_heard_of_is_an_error_and_not_a_closed_socket ... ok
[INFO] [stdout] test dispatch::tests::a_command_counts_what_it_did_separately_from_what_it_refused ... ok
[INFO] [stdout] test dispatch::tests::a_blocking_command_errors_on_a_wrong_type_rather_than_waiting_on_it ... ok
[INFO] [stdout] test dispatch::tests::a_command_goes_from_bytes_to_bytes ... ok
[INFO] [stdout] test dispatch::tests::a_command_that_fails_leaves_nothing_half_written ... ok
[INFO] [stdout] test dispatch::migrate::tests::the_socket_is_kept_and_so_is_what_it_is_selected_on ... ok
[INFO] [stdout] test dispatch::tests::a_command_with_no_keys_never_redirects ... ok
[INFO] [stdout] test dispatch::tests::a_connection_with_no_socket_reports_no_address_and_no_descriptor ... ok
[INFO] [stdout] test dispatch::tests::a_connection_going_away_lets_go_of_its_watches ... ok
[INFO] [stdout] test dispatch::tests::a_condition_that_held_crosses_without_it ... ok
[INFO] [stdout] test dispatch::tests::a_copy_refuses_a_taken_destination_until_it_is_told_it_can_have_it ... ok
[INFO] [stdout] test dispatch::tests::a_copy_into_another_database_is_a_copy_and_onto_itself_there_is_too ... ok
[INFO] [stdout] test dispatch::tests::a_count_and_a_radius_are_refused_in_their_own_words ... ok
[INFO] [stdout] test dispatch::tests::a_copy_is_a_second_value_and_not_a_second_name ... ok
[INFO] [stdout] test dispatch::tests::a_counter_is_an_integer_and_not_a_string_of_digits ... ok
[INFO] [stdout] test dispatch::tests::a_create_takes_two_arguments_or_four_and_reads_the_last_one ... ok
[INFO] [stdout] test dispatch::tests::a_count_that_came_from_params_is_read_by_its_own_rules ... ok
[INFO] [stdout] test dispatch::tests::a_cuckoo_dump_replays_into_a_filter_that_answers_the_same ... ok
[INFO] [stdout] test dispatch::tests::a_deadline_shows_up_without_the_time_left_showing_up ... ok
[INFO] [stdout] test dispatch::tests::a_compaction_rule_across_stripes_reaches_both_ends ... ok
[INFO] [stdout] test dispatch::tests::a_deadline_that_has_already_gone_deletes_the_field_now ... ok
[INFO] [stdout] test dispatch::tests::a_degree_counts_one_way_or_both ... ok
[INFO] [stdout] test dispatch::tests::a_dictionary_counts_the_terms_it_had_not_seen ... ok
[INFO] [stdout] test dispatch::tests::a_dictionary_is_not_a_key ... ok
[INFO] [stdout] test dispatch::tests::a_dictionary_nobody_made_dumps_empty_rather_than_failing ... ok
[INFO] [stdout] test dispatch::tests::a_deadline_that_has_already_gone_deletes_the_key_now ... ok
[INFO] [stdout] test dispatch::tests::a_digest_answers_doubles_and_a_map_on_resp3 ... ok
[INFO] [stdout] test dispatch::tests::a_distance_comes_back_with_four_places_in_whatever_unit_was_asked_for ... ok
[INFO] [stdout] test dispatch::tests::a_document_number_goes_both_ways ... ok
[INFO] [stdout] test dispatch::tests::a_document_number_is_read_the_strict_way ... ok
[INFO] [stdout] test dispatch::tests::a_document_row_looks_the_key_up_before_it_reads_the_keyword ... ok
[INFO] [stdout] test dispatch::tests::a_document_row_reads_its_keyword_at_a_fixed_place ... ok
[INFO] [stdout] test dispatch::tests::a_document_with_no_sortable_value_drops_the_key ... ok
[INFO] [stdout] test dispatch::tests::a_document_row_is_flat_on_one_protocol_and_a_map_on_the_other ... ok
[INFO] [stdout] test dispatch::tests::a_draw_answers_one_member_or_an_array_of_them ... ok
[INFO] [stdout] test dispatch::tests::a_drop_of_an_index_that_is_not_there_touches_no_keys ... ok
[INFO] [stdout] test dispatch::tests::a_dropped_fragment_stops_bounding_the_one_that_was_kept ... ok
[INFO] [stdout] test dispatch::tests::a_dump_follows_an_alias ... ok
[INFO] [stdout] test dispatch::tests::a_copy_across_stripes_leaves_the_source_where_it_was ... ok
[INFO] [stdout] test dispatch::tests::a_double_on_the_wire_is_written_the_way_redis_writes_one ... ok
[INFO] [stdout] test dispatch::tests::a_damaged_file_is_refused_with_the_dataset_still_there ... ok
[INFO] [stdout] test dispatch::tests::a_database_nobody_has_touched_is_still_in_the_total ... ok
[INFO] [stdout] test dispatch::tests::a_dump_replays_into_a_filter_that_answers_the_same ... ok
[INFO] [stdout] test dispatch::tests::a_dump_keeps_a_number_the_table_has_given_up ... ok
[INFO] [stdout] test dispatch::tests::a_failing_command_inside_exec_is_an_element_and_the_rest_still_runs ... ok
[INFO] [stdout] test dispatch::tests::a_field_deadline_goes_on_and_comes_back_in_all_four_units ... ok
[INFO] [stdout] test dispatch::tests::a_dumped_hash_keeps_its_field_deadlines ... ok
[INFO] [stdout] test dispatch::tests::a_field_is_gone_once_its_moment_passes ... ok
[INFO] [stdout] test dispatch::tests::a_failed_himport_prepare_leaves_the_old_fieldset_alone ... ok
[INFO] [stdout] test dispatch::tests::a_field_written_already_past_its_deadline_moves_the_number_twice ... ok
[INFO] [stdout] test dispatch::tests::a_file_that_is_not_an_rdb_is_refused_with_the_dataset_still_there ... ok
[INFO] [stdout] test dispatch::tests::a_filter_is_a_range_written_outside_the_query ... ok
[INFO] [stdout] test dispatch::tests::a_filter_takes_the_membership_operators_and_the_methods_too ... ok
[INFO] [stdout] test dispatch::tests::a_filter_path_reads_and_writes_the_members_it_keeps ... ok
[INFO] [stdout] test dispatch::tests::a_flush_drops_the_dictionaries ... ok
[INFO] [stdout] test dispatch::tests::a_flush_leaves_the_settings_alone ... ok
[INFO] [stdout] test dispatch::tests::a_fresh_index_reads_the_keys_that_were_already_there ... ok
[INFO] [stdout] test dispatch::tests::a_dump_takes_the_attribute_and_not_the_identifier ... ok
[INFO] [stdout] test dispatch::tests::a_full_filter_and_one_that_ran_out_of_filters_answer_differently ... ok
[INFO] [stdout] test dispatch::tests::a_full_filter_grows_a_link_and_a_fixed_one_says_no ... ok
[INFO] [stdout] test dispatch::tests::a_file_one_server_wrote_loads_into_a_server_that_has_never_seen_it ... ok
[INFO] [stdout] test dispatch::tests::a_geo_field_is_dumped_as_a_numeric_one ... ok
[INFO] [stdout] test dispatch::tests::a_function_gets_the_globals_a_script_gets_minus_the_ones_only_eval_has ... ok
[INFO] [stdout] test dispatch::tests::a_geo_search_store_across_stripes_writes_what_it_found ... ok
[INFO] [stdout] test dispatch::tests::a_filter_is_taken_apart_the_way_the_module_takes_one_apart ... ok
[INFO] [stdout] test dispatch::tests::a_graph_and_a_string_are_the_wrong_type_for_each_other ... ok
[INFO] [stdout] test dispatch::tests::a_graph_cannot_be_copied_or_dumped ... ok
[INFO] [stdout] test dispatch::tests::a_flush_drops_the_indexes ... ok
[INFO] [stdout] test dispatch::tests::a_graph_goes_when_its_last_node_does ... ok
[INFO] [stdout] test dispatch::tests::a_grep_answers_the_indexes_whose_elements_match ... ok
[INFO] [stdout] test dispatch::tests::a_grep_reports_a_broken_command_the_way_redis_does ... ok
[INFO] [stdout] test dispatch::tests::a_half_moved_slot_is_a_try_again ... ok
[INFO] [stdout] test dispatch::tests::a_hash_counts_up_and_says_so_when_it_cannot ... ok
[INFO] [stdout] test dispatch::tests::a_hash_scan_leaves_nothing_half_written_when_its_arguments_are_wrong ... ok
[INFO] [stdout] test dispatch::tests::a_hash_that_will_not_read_is_counted_where_ft_info_reports_it ... ok
[INFO] [stdout] test dispatch::tests::a_hash_writes_reads_and_deletes_its_fields ... ok
[INFO] [stdout] test dispatch::tests::a_group_matches_the_word_it_holds_and_not_a_stem_of_it ... ok
[INFO] [stdout] test dispatch::tests::a_hash_that_is_written_reaches_the_index_that_follows_it ... ok
[INFO] [stdout] test dispatch::tests::a_highlight_does_not_mark_a_tag ... ok
[INFO] [stdout] test dispatch::tests::a_highlight_marks_the_matches_and_leaves_the_rest_of_the_field_alone ... ok
[INFO] [stdout] test dispatch::tests::a_help_row_carries_the_description_and_the_value_together ... ok
[INFO] [stdout] test dispatch::tests::a_hop_answers_a_cursor_and_a_page ... ok
[INFO] [stdout] test dispatch::tests::a_json_path_answers_a_set_and_a_legacy_path_answers_a_value ... ok
[INFO] [stdout] test dispatch::tests::a_key_a_keyspace_command_takes_away_loses_its_document ... ok
[INFO] [stdout] test dispatch::tests::a_key_deadline_goes_on_and_comes_back_in_all_four_units ... ok
[INFO] [stdout] test dispatch::tests::a_key_emptied_by_a_deadline_spends_a_number_and_one_emptied_by_hdel_does_not ... ok
[INFO] [stdout] test dispatch::tests::a_key_is_gone_once_its_moment_passes ... ok
[INFO] [stdout] test dispatch::tests::a_key_on_another_node_is_moved_there ... ok
[INFO] [stdout] test dispatch::tests::a_key_that_arrives_under_the_prefix_is_read_and_one_overwritten_is_erased ... ok
[INFO] [stdout] test dispatch::migrate::tests::a_peer_that_never_answers_is_a_read_error ... ok
[INFO] [stdout] test dispatch::tests::a_knn_measures_what_the_query_in_front_of_it_matched ... ok
[INFO] [stdout] test dispatch::tests::a_knn_picks_the_nearest_and_answers_them_in_document_order ... ok
[INFO] [stdout] test dispatch::tests::a_label_query_across_stripes_finds_every_series ... ok
[INFO] [stdout] test dispatch::tests::a_legacy_wildcard_write_touches_every_match_and_answers_only_one ... ok
[INFO] [stdout] test dispatch::tests::a_letter_the_notification_setting_does_not_know_is_refused ... ok
[INFO] [stdout] test dispatch::tests::a_library_cannot_take_a_name_another_library_already_has ... ok
[INFO] [stdout] test dispatch::tests::a_hole_is_reported_before_the_cross_slot ... ok
[INFO] [stdout] test dispatch::tests::a_json_multi_write_across_stripes_reaches_every_key ... ok
[INFO] [stdout] test dispatch::tests::a_keyspace_scan_walks_every_key_once ... ok
[INFO] [stdout] test dispatch::tests::a_list_is_pushed_from_both_ends_and_the_left_one_reverses ... ok
[INFO] [stdout] test dispatch::tests::a_list_move_across_stripes_takes_the_elements_with_it ... ok
[INFO] [stdout] test dispatch::tests::a_library_is_loaded_once_and_called_by_name_forever_after ... ok
[INFO] [stdout] test dispatch::tests::a_library_that_is_wrong_says_which_way_it_is_wrong ... ok
[INFO] [stdout] test dispatch::tests::a_load_refuses_a_count_it_cannot_use ... ok
[INFO] [stdout] test dispatch::tests::a_lookup_answers_a_score_it_works_out_rather_than_the_one_stored ... ok
[INFO] [stdout] test dispatch::tests::a_library_survives_a_dump_and_a_restore ... ok
[INFO] [stdout] test dispatch::tests::a_lookup_answers_five_unless_it_is_told_otherwise ... ok
[INFO] [stdout] test dispatch::tests::a_load_counts_words_and_can_rename_what_it_reads ... ok
[INFO] [stdout] test dispatch::tests::a_load_reports_what_it_kept_and_what_had_already_died ... ok
[INFO] [stdout] test dispatch::tests::a_lua_value_comes_back_as_the_reply_it_maps_to ... ok
[INFO] [stdout] test dispatch::tests::a_madd_answers_each_triple_and_creates_nothing ... ok
[INFO] [stdout] test dispatch::tests::a_merge_down_a_descent_keeps_what_the_inner_match_did ... ok
[INFO] [stdout] test dispatch::tests::a_merge_keeps_what_the_destination_had ... ok
[INFO] [stdout] test dispatch::tests::a_merge_lands_whole_or_not_at_all ... ok
[INFO] [stdout] test dispatch::tests::a_merge_onto_a_number_inside_an_array_is_a_merge_and_not_an_error ... ok
[INFO] [stdout] test dispatch::tests::a_master_takes_writes_however_the_read_only_setting_is_left ... ok
[INFO] [stdout] test dispatch::tests::a_merge_sweeps_the_destination_between_its_inputs ... ok
[INFO] [stdout] test dispatch::tests::a_merge_patch_adds_replaces_and_deletes_in_one_write ... ok
[INFO] [stdout] test dispatch::tests::a_missing_subcommand_and_a_missing_name_are_told_apart ... ok
[INFO] [stdout] test dispatch::tests::a_missing_key_answers_the_no_field_sentinel_for_every_field ... ok
[INFO] [stdout] test dispatch::tests::a_move_checks_the_destination_before_it_takes_anything ... ok
[INFO] [stdout] test dispatch::tests::a_migrating_slot_asks_for_the_keys_that_have_gone ... ok
[INFO] [stdout] test dispatch::tests::a_move_across_stripes_takes_the_member_with_it ... ok
[INFO] [stdout] test dispatch::tests::a_multi_key_pop_names_the_key_that_answered_and_nests_its_pairs ... ok
[INFO] [stdout] test dispatch::tests::a_negative_is_answered_by_whichever_reader_found_it ... ok
[INFO] [stdout] test dispatch::tests::a_move_leaves_the_document_where_it_is ... ok
[INFO] [stdout] test dispatch::tests::a_node_comes_back_with_the_fields_it_went_in_with ... ok
[INFO] [stdout] test dispatch::tests::a_move_takes_from_one_end_and_gives_to_another_even_on_one_key ... ok
[INFO] [stdout] test dispatch::tests::a_normalising_scorer_answers_the_rows_backwards ... ok
[INFO] [stdout] test dispatch::tests::a_number_dump_answers_a_single_range ... ok
[INFO] [stdout] test dispatch::tests::a_number_is_read_the_strict_way_and_then_the_loose_one ... ok
[INFO] [stdout] test dispatch::tests::a_parked_sorted_set_client_waits_for_a_member_and_not_for_a_key ... ok
[INFO] [stdout] test dispatch::tests::a_number_out_of_range_names_the_limit_it_crossed ... ok
[INFO] [stdout] test dispatch::tests::a_password_reads_back_as_stars_whatever_was_written ... ok
[INFO] [stdout] test dispatch::cluster::tests::every_slot_is_in_range ... ok
[INFO] [stdout] test dispatch::tests::a_parked_client_is_served_from_the_stripe_its_key_is_on ... ok
[INFO] [stdout] test dispatch::tests::a_password_set_under_an_open_connection_leaves_it_alone ... ok
[INFO] [stdout] test dispatch::tests::a_path_is_the_shortest_one_and_goes_over_any_label ... ok
[INFO] [stdout] test dispatch::tests::a_parked_stream_reader_is_served_from_the_stripe_its_key_is_on ... ok
[INFO] [stdout] test dispatch::tests::a_payload_comes_back_beside_the_term_or_a_null_does ... ok
[INFO] [stdout] test dispatch::tests::a_pipeline_names_every_step_after_what_it_runs ... ok
[INFO] [stdout] test dispatch::tests::a_pipeline_step_closes_the_door_on_the_search_words ... ok
[INFO] [stdout] test dispatch::tests::a_pipeline_step_can_name_a_distance_the_query_yielded ... ok
[INFO] [stdout] test dispatch::tests::a_pop_count_has_its_own_sentence_and_a_third_argument_is_an_arity_error ... ok
[INFO] [stdout] test dispatch::tests::a_plain_hand_over_does_not_touch_the_epoch ... ok
[INFO] [stdout] test dispatch::tests::a_pop_count_that_is_not_a_positive_number_says_so ... ok
[INFO] [stdout] test dispatch::tests::a_posting_list_is_read_by_the_bytes_and_not_by_the_word ... ok
[INFO] [stdout] test dispatch::tests::a_profile_wraps_the_reply_it_would_have_answered_anyway ... ok
[INFO] [stdout] test dispatch::tests::a_profile_checks_its_own_words_before_it_runs_anything ... ok
[INFO] [stdout] test dispatch::tests::a_promotion_keeps_the_old_history_as_the_second_id ... ok
[INFO] [stdout] test dispatch::tests::a_publish_counts_the_deliveries_and_not_the_clients ... ok
[INFO] [stdout] test dispatch::tests::a_publish_crosses_with_nobody_listening ... ok
[INFO] [stdout] test dispatch::tests::a_query_is_a_bool_and_info_is_a_map_on_resp3 ... ok
[INFO] [stdout] test dispatch::tests::a_random_or_derived_write_crosses_as_what_it_did ... ok
[INFO] [stdout] test dispatch::tests::a_range_delete_costs_the_elements_and_takes_the_key_when_it_empties ... ok
[INFO] [stdout] test dispatch::tests::a_range_read_answers_for_the_holes_too_and_is_capped_at_a_million ... ok
[INFO] [stdout] test dispatch::tests::a_range_says_what_the_module_says_when_the_options_do_not_add_up ... ok
[INFO] [stdout] test dispatch::tests::a_plain_server_has_no_cluster_in_it ... ok
[INFO] [stdout] test dispatch::tests::a_range_store_writes_the_window_into_another_key ... ok
[INFO] [stdout] test dispatch::tests::a_range_takes_negative_ends_and_clamps_the_ones_that_run_off ... ok
[INFO] [stdout] test dispatch::tests::a_range_takes_what_is_inside_it_and_the_distance_is_squared ... ok
[INFO] [stdout] test dispatch::tests::a_range_walks_a_span_and_a_revrange_walks_it_backwards ... ok
[INFO] [stdout] test dispatch::tests::a_rank_says_where_a_member_sits_from_either_end ... ok
[INFO] [stdout] test dispatch::tests::a_read_by_another_connection_does_not ... ok
[INFO] [stdout] test dispatch::tests::a_read_ignores_whatever_follows_the_name ... ok
[INFO] [stdout] test dispatch::tests::a_read_only_replica_refuses_a_write_and_answers_a_read ... ok
[INFO] [stdout] test dispatch::tests::a_random_key_can_come_from_any_stripe ... ok
[INFO] [stdout] test dispatch::tests::a_read_that_visits_its_key_twice_is_counted_once ... ok
[INFO] [stdout] test dispatch::tests::a_read_walks_from_a_timestamp_to_the_end_of_the_series ... ok
[INFO] [stdout] test dispatch::tests::a_range_store_across_stripes_copies_the_window ... ok
[INFO] [stdout] test dispatch::tests::a_relative_deadline_crosses_as_the_instant_it_resolved_to ... ok
[INFO] [stdout] test dispatch::tests::a_rename_inside_the_prefix_keeps_the_number_the_document_had ... ok
[INFO] [stdout] test dispatch::tests::a_read_only_script_is_stopped_at_the_write_and_not_at_the_door ... ok
[INFO] [stdout] test dispatch::tests::a_rename_moves_the_deadline_with_the_value_and_drops_the_one_it_lands_on ... ok
[INFO] [stdout] test dispatch::tests::a_rename_across_stripes_takes_everything_with_it ... ok
[INFO] [stdout] test dispatch::tests::a_rename_over_a_document_leaves_one_of_them ... ok
[INFO] [stdout] test dispatch::tests::a_rename_with_no_source_is_an_error_and_not_a_zero ... ok
[INFO] [stdout] test dispatch::tests::a_replica_asking_to_carry_on_is_caught_up_from_the_backlog ... ok
[INFO] [stdout] test dispatch::tests::a_pfcount_and_a_pfmerge_reach_across_stripes ... ok
[INFO] [stdout] test dispatch::tests::a_replica_with_no_history_is_sent_a_snapshot ... ok
[INFO] [stdout] test dispatch::tests::a_reserve_takes_three_arguments_or_six ... ok
[INFO] [stdout] test dispatch::tests::a_replica_only_hears_the_settings_and_only_from_its_master ... ok
[INFO] [stdout] test dispatch::tests::a_replica_says_who_it_follows_in_info_and_in_role ... ok
[INFO] [stdout] test dispatch::tests::a_restore_that_fails_changes_nothing ... ok
[INFO] [stdout] test dispatch::tests::a_reply_comes_back_into_lua_as_the_value_it_maps_to ... ok
[INFO] [stdout] test dispatch::tests::a_return_answers_the_distance_by_the_name_the_row_carries_it_under ... ok
[INFO] [stdout] test dispatch::tests::a_rewrite_counts_itself_and_writes_nothing ... ok
[INFO] [stdout] test dispatch::tests::a_rewrite_takes_a_number_of_its_own ... ok
[INFO] [stdout] test dispatch::tests::a_return_of_nothing_is_not_the_same_as_nocontent ... ok
[INFO] [stdout] test dispatch::tests::a_ring_keeps_the_newest_and_renumbers_them_when_it_is_resized ... ok
[INFO] [stdout] test dispatch::tests::a_rule_writes_a_bucket_when_a_later_reading_closes_it ... ok
[INFO] [stdout] test dispatch::tests::a_sample_is_read_the_way_redis_reads_a_double ... ok
[INFO] [stdout] test dispatch::tests::a_restore_will_not_take_a_function_name_off_a_library_it_keeps ... ok
[INFO] [stdout] test dispatch::tests::a_save_that_cannot_write_says_so_in_one_word ... ok
[INFO] [stdout] test dispatch::tests::a_scan_answers_pairs_for_what_is_there_and_skips_what_is_not ... ok
[INFO] [stdout] test dispatch::tests::a_save_leaves_no_temporary_file_behind ... ok
[INFO] [stdout] test dispatch::tests::a_scan_narrows_by_pattern_and_by_type ... ok
[INFO] [stdout] test dispatch::tests::a_scan_leaves_nothing_half_written_when_its_arguments_are_wrong ... ok
[INFO] [stdout] test dispatch::tests::a_scan_takes_match_and_count_and_refuses_anything_else ... ok
[INFO] [stdout] test dispatch::tests::a_scan_says_what_is_wrong_with_it ... ok
[INFO] [stdout] test dispatch::tests::a_scan_walks_a_set_of_any_size_exactly_once ... ok
[INFO] [stdout] test dispatch::tests::a_save_inside_a_transaction_says_it_was_scheduled ... ok
[INFO] [stdout] test dispatch::tests::a_score_is_a_double_on_resp3_and_digits_on_resp2 ... ok
[INFO] [stdout] test dispatch::tests::a_scan_of_a_striped_database_walks_all_of_it ... ok
[INFO] [stdout] test dispatch::tests::a_script_cannot_leave_anything_behind_for_the_next_one ... ok
[INFO] [stdout] test dispatch::tests::a_script_can_walk_the_redis_table_it_is_not_allowed_to_write_to ... ok
[INFO] [stdout] test dispatch::tests::a_hash_scan_walks_every_pair_once_and_novalues_drops_half_of_it ... ok
[INFO] [stdout] test dispatch::tests::a_script_gets_the_bit_library_a_real_server_carries ... ok
[INFO] [stdout] test dispatch::tests::a_sealed_backup_is_swept_away_after_the_timeout ... ok
[INFO] [stdout] test dispatch::tests::a_script_gets_the_cjson_library_a_real_server_carries ... ok
[INFO] [stdout] test dispatch::tests::a_search_can_send_the_value_it_sorted_by_back ... ok
[INFO] [stdout] test dispatch::tests::a_search_answers_a_total_and_then_the_rows ... ok
[INFO] [stdout] test dispatch::tests::a_search_centred_on_a_member_starts_from_where_that_member_is ... ok
[INFO] [stdout] test dispatch::tests::a_search_finds_what_is_inside_it_nearest_first ... ok
[INFO] [stdout] test dispatch::tests::a_search_refuses_the_sorts_it_cannot_run ... ok
[INFO] [stdout] test dispatch::tests::a_search_sorts_by_a_field_the_index_keeps_a_copy_of ... ok
[INFO] [stdout] test dispatch::tests::a_script_gets_the_cmsgpack_library_a_real_server_carries ... ok
[INFO] [stdout] test dispatch::tests::a_series_is_made_empty_and_reports_on_itself ... ok
[INFO] [stdout] test dispatch::tests::a_search_sorts_by_a_field_it_has_to_read_the_key_for ... ok
[INFO] [stdout] test dispatch::tests::a_search_for_a_nought_past_the_end_answers_the_length_in_bits ... ok
[INFO] [stdout] test dispatch::tests::a_server_nobody_is_watching_says_so ... ok
[INFO] [stdout] test dispatch::tests::a_script_gets_the_struct_library_a_real_server_carries ... ok
[INFO] [stdout] test dispatch::tests::a_set_goes_from_bytes_to_bytes ... ok
[INFO] [stdout] test dispatch::tests::a_server_that_is_not_failing_over_says_no_failover ... ok
[INFO] [stdout] test dispatch::tests::a_set_command_at_a_key_that_is_not_there_answers_empty ... ok
[INFO] [stdout] test dispatch::tests::a_server_that_has_loaded_nothing_says_so ... ok
[INFO] [stdout] test dispatch::tests::a_setting_is_found_whatever_case_it_is_asked_for_in ... ok
[INFO] [stdout] test dispatch::tests::a_setting_moved_on_one_database_moved_on_all_of_them ... ok
[INFO] [stdout] test dispatch::tests::a_setting_reaches_every_stripe_and_reads_back_from_any_of_them ... ok
[INFO] [stdout] test dispatch::tests::a_server_with_a_password_answers_everything_else_with_noauth ... ok
[INFO] [stdout] test dispatch::tests::a_setting_reads_back_as_a_pair_on_one_protocol_and_a_map_on_the_other ... ok
[INFO] [stdout] test dispatch::tests::a_sketch_is_a_module_key_to_the_rest_of_the_keyspace ... ok
[INFO] [stdout] test dispatch::tests::a_set_operation_across_stripes_reads_every_set ... ok
[INFO] [stdout] test dispatch::tests::a_sketch_is_added_to_and_counted ... ok
[INFO] [stdout] test dispatch::tests::a_sketch_whose_opcodes_do_not_add_up_says_so ... ok
[INFO] [stdout] test dispatch::tests::a_sketch_merge_across_stripes_reads_every_source ... ok
[INFO] [stdout] test dispatch::tests::a_sort_across_stripes_reads_every_pattern_key ... ok
[INFO] [stdout] test dispatch::tests::a_sort_puts_the_field_it_sorted_by_in_front_of_the_row ... ok
[INFO] [stdout] test dispatch::tests::a_sortable_field_is_read_without_the_key_being_opened ... ok
[INFO] [stdout] test dispatch::tests::a_sketch_is_made_from_a_size_or_from_an_error_rate ... ok
[INFO] [stdout] test dispatch::tests::a_sortby_can_name_a_distance_the_query_yielded ... ok
[INFO] [stdout] test dispatch::tests::a_slot_with_keys_in_it_is_not_handed_over ... ok
[INFO] [stdout] test dispatch::tests::a_sorted_set_operation_across_stripes_reads_every_input ... ok
[INFO] [stdout] test dispatch::tests::a_sorted_set_scan_answers_pairs_of_strings_on_both_protocols ... ok
[INFO] [stdout] test dispatch::tests::a_sorted_set_pop_changes_shape_when_it_is_given_a_count ... ok
[INFO] [stdout] test dispatch::tests::a_sorted_set_takes_scores_and_gives_them_back ... ok
[INFO] [stdout] test dispatch::tests::a_spellcheck_reads_its_arguments_leniently ... ok
[INFO] [stdout] test dispatch::tests::a_spellcheck_scores_a_suggestion_by_how_common_it_is ... ok
[INFO] [stdout] test dispatch::tests::a_spellcheck_reads_the_dictionaries_it_is_pointed_at ... ok
[INFO] [stdout] test dispatch::tests::a_store_form_writes_a_key_and_answers_how_big_it_is ... ok
[INFO] [stdout] test dispatch::tests::a_spellcheck_answers_a_map_of_maps_on_resp3 ... ok
[INFO] [stdout] test dispatch::tests::a_store_writes_the_hashes_and_a_storedist_writes_the_distances ... ok
[INFO] [stdout] test dispatch::tests::a_stream_read_across_stripes_reads_every_key ... ok
[INFO] [stdout] test dispatch::tests::a_string_that_is_not_a_sketch_is_refused_with_its_own_sentence ... ok
[INFO] [stdout] test dispatch::tests::a_striped_database_spreads_the_keys_it_is_given ... ok
[INFO] [stdout] test dispatch::tests::a_suggestion_command_on_another_kind_of_key_is_wrongtype ... ok
[INFO] [stdout] test dispatch::tests::a_suggestion_dictionary_is_a_key_with_a_type_of_its_own ... ok
[INFO] [stdout] test dispatch::tests::a_summarize_cuts_a_field_down_to_what_matched ... ok
[INFO] [stdout] test dispatch::tests::a_synonym_command_on_a_name_that_is_not_there_fails ... ok
[INFO] [stdout] test dispatch::tests::a_sync_and_an_rdbchannel_hand_over_the_slots_asked_for ... ok
[INFO] [stdout] test dispatch::tests::a_synonym_dump_folds_the_terms_and_keeps_the_ids_as_given ... ok
[INFO] [stdout] test dispatch::tests::a_t_digest_is_a_module_key_to_the_rest_of_the_keyspace ... ok
[INFO] [stdout] test dispatch::tests::a_tag_dump_pairs_every_value_with_its_documents ... ok
[INFO] [stdout] test dispatch::tests::a_tag_field_with_nothing_in_it_answers_empty ... ok
[INFO] [stdout] test dispatch::tests::a_term_dump_lists_the_stems_beside_the_words ... ok
[INFO] [stdout] test dispatch::tests::a_timeout_has_three_ways_of_being_wrong ... ok
[INFO] [stdout] test dispatch::tests::a_thread_takes_one_memory_reading_a_millisecond ... ok
[INFO] [stdout] test dispatch::tests::a_top_k_sketch_is_a_module_key_to_the_rest_of_the_keyspace ... ok
[INFO] [stdout] test dispatch::tests::a_transaction_crosses_as_its_commands ... ok
[INFO] [stdout] test dispatch::tests::a_transaction_is_refused_when_it_is_queued ... ok
[INFO] [stdout] test dispatch::tests::a_transaction_on_a_read_only_replica_is_refused_whole ... ok
[INFO] [stdout] test dispatch::tests::a_value_digest_does_not_know_what_the_key_is_called ... ok
[INFO] [stdout] test dispatch::tests::a_value_comes_back_byte_for_byte_however_it_was_packed ... ok
[INFO] [stdout] test dispatch::tests::a_value_digest_is_the_number_the_reference_computes ... ok
[INFO] [stdout] test dispatch::tests::a_value_survives_a_dump_and_a_restore ... ok
[INFO] [stdout] test dispatch::tests::a_vector_step_says_which_way_it_was_answered ... ok
[INFO] [stdout] test dispatch::tests::a_vector_clause_yields_its_distance_under_the_name_it_was_given ... ok
[INFO] [stdout] test dispatch::tests::a_vector_the_wrong_size_is_refused_by_the_field_it_reached ... ok
[INFO] [stdout] test dispatch::tests::a_vrange_count_of_zero_asks_for_nothing ... ok
[INFO] [stdout] test dispatch::tests::a_walk_does_not_answer_keys_that_have_expired ... ok
[INFO] [stdout] test dispatch::tests::a_walk_reaches_each_node_once_however_many_ways_there_are ... ok
[INFO] [stdout] test dispatch::tests::a_watched_key_that_expires_fails_the_transaction ... ok
[INFO] [stdout] test dispatch::tests::a_watch_is_on_a_database_and_a_key_and_not_on_a_key ... ok
[INFO] [stdout] test dispatch::tests::a_wide_setting_wraps_into_its_slot_before_it_is_read_back ... ok
[INFO] [stdout] test dispatch::tests::a_window_of_nothing_has_to_start_at_the_top ... ok
[INFO] [stdout] test dispatch::tests::a_window_of_nothing_on_an_aggregation_counts_rather_than_pages ... ok
[INFO] [stdout] test dispatch::tests::a_word_in_a_group_reads_as_a_union_with_the_group_term ... ok
[INFO] [stdout] test dispatch::tests::a_word_setting_folds_where_a_real_server_folds_and_not_otherwise ... ok
[INFO] [stdout] test dispatch::tests::a_word_the_index_holds_is_never_asked_about_whatever_field_it_names ... ok
[INFO] [stdout] test dispatch::tests::a_sweep_of_a_server_with_no_deadlines_anywhere_costs_nothing ... ok
[INFO] [stdout] test dispatch::tests::a_write_checks_the_name_then_the_setting_then_the_value ... ok
[INFO] [stdout] test dispatch::tests::a_wide_server_puts_its_databases_on_its_own_clock ... ok
[INFO] [stdout] test dispatch::tests::a_write_is_refused_when_there_is_no_room_and_nothing_to_evict ... ok
[INFO] [stdout] test dispatch::tests::a_write_by_another_connection_fails_the_transaction ... ok
[INFO] [stdout] test dispatch::tests::a_write_that_changed_nothing_still_crosses ... ok
[INFO] [stdout] test dispatch::tests::a_write_that_puts_the_same_value_back_still_fails_it ... ok
[INFO] [stdout] test dispatch::tests::a_write_that_reaches_a_key_it_did_not_name_still_fails_a_watch ... ok
[INFO] [stdout] test dispatch::tests::a_wrong_type_is_a_miss_to_the_four_that_only_read_fingerprints ... ok
[INFO] [stdout] test dispatch::tests::a_wrong_type_in_the_middle_of_an_mget_is_still_one_nil ... ok
[INFO] [stdout] test dispatch::tests::a_wrongtype_leaves_nothing_half_written ... ok
[INFO] [stdout] test dispatch::tests::a_write_reaches_a_match_that_sits_inside_another_match ... ok
[INFO] [stdout] test dispatch::tests::a_zero_timeout_waits_and_the_smallest_positive_one_does_not ... ok
[INFO] [stdout] test dispatch::tests::a_wrong_type_is_a_miss_to_the_two_that_only_read_bits ... ok
[INFO] [stdout] test dispatch::tests::a_yes_or_no_setting_takes_those_two_words_only ... ok
[INFO] [stdout] test dispatch::tests::an_add_answers_how_many_suggestions_are_in_there_now ... ok
[INFO] [stdout] test dispatch::tests::an_aggregation_answers_a_count_and_then_the_properties ... ok
[INFO] [stdout] test dispatch::tests::addscores_writes_a_shorter_score_than_withscores ... ok
[INFO] [stdout] test dispatch::tests::aggregation_puts_one_column_a_reduction_in_a_flat_row ... ok
[INFO] [stdout] test dispatch::tests::an_aggregation_answers_a_distance_nothing_asked_for ... ok
[INFO] [stdout] test dispatch::tests::an_aggregation_answers_a_map_of_five_as_well ... ok
[INFO] [stdout] test dispatch::tests::an_aggregation_keeps_the_order_a_nearest_neighbour_clause_made ... ok
[INFO] [stdout] test dispatch::tests::an_array_is_a_type_and_an_encoding_a_client_can_see ... ok
[INFO] [stdout] test dispatch::tests::an_array_writes_at_any_index_and_reads_back_what_it_sent ... ok
[INFO] [stdout] test dispatch::tests::an_attribute_is_bytes_and_an_empty_one_takes_it_off ... ok
[INFO] [stdout] test dispatch::tests::an_edge_creates_the_ends_it_needs ... ok
[INFO] [stdout] test dispatch::tests::an_empty_digest_has_an_answer_for_everything ... ok
[INFO] [stdout] test dispatch::tests::an_empty_field_dumps_as_nothing_at_all ... ok
[INFO] [stdout] test dispatch::tests::an_empty_pop_is_a_different_nothing_with_a_count_and_without ... ok
[INFO] [stdout] test dispatch::tests::an_empty_suggestion_is_taken_and_dropped_but_still_makes_the_key ... ok
[INFO] [stdout] test dispatch::tests::an_empty_transaction_answers_an_empty_array ... ok
[INFO] [stdout] test dispatch::tests::an_error_a_command_body_raises_leaves_the_transaction_alive ... ok
[INFO] [stdout] test dispatch::tests::an_append_follows_a_cursor_the_client_can_move ... ok
[INFO] [stdout] test dispatch::tests::an_error_the_funnel_raises_kills_the_transaction ... ok
[INFO] [stdout] test dispatch::tests::an_excess_of_words_is_noticed_after_the_value_is_kept ... ok
[INFO] [stdout] test dispatch::tests::an_expiry_a_read_noticed_crosses_as_a_deletion ... ok
[INFO] [stdout] test dispatch::tests::an_increment_is_applied_as_it_goes_and_stops_at_a_bad_one ... ok
[INFO] [stdout] test dispatch::tests::an_error_from_a_script_names_the_line_it_came_from ... ok
[INFO] [stdout] test dispatch::tests::an_index_can_only_be_made_on_database_zero ... ok
[INFO] [stdout] test dispatch::tests::an_increment_walks_the_newest_value_up_and_down ... ok
[INFO] [stdout] test dispatch::tests::an_index_name_is_case_sensitive_and_a_subcommand_name_is_not ... ok
[INFO] [stdout] test dispatch::tests::an_index_that_skipped_the_scan_fills_up_on_the_next_write ... ok
[INFO] [stdout] test dispatch::tests::an_index_reads_and_writes_from_whichever_end_is_nearer ... ok
[INFO] [stdout] test dispatch::tests::an_integer_member_comes_back_as_the_digits_it_never_stored ... ok
[INFO] [stdout] test dispatch::tests::an_mset_writes_every_triple_it_can_and_checks_the_rest_up_front ... ok
[INFO] [stdout] test dispatch::tests::an_nrange_aggregation_names_one_reduction_a_key ... ok
[INFO] [stdout] test dispatch::tests::an_nrange_joins_its_keys_on_the_timestamp ... ok
[INFO] [stdout] test dispatch::tests::an_nrange_says_what_the_module_says_when_it_does_not_add_up ... ok
[INFO] [stdout] test dispatch::tests::an_offset_off_the_end_of_the_world_is_refused ... ok
[INFO] [stdout] test dispatch::tests::an_op_reduces_a_range_to_one_number ... ok
[INFO] [stdout] test dispatch::tests::another_index_over_the_same_keys_loses_the_documents_too ... ok
[INFO] [stdout] test dispatch::tests::asking_for_tag_values_counts_a_use_of_the_index ... ok
[INFO] [stdout] test dispatch::tests::arity_is_checked_before_the_command_is ... ok
[INFO] [stdout] test dispatch::tests::asking_lets_one_command_into_an_importing_slot ... ok
[INFO] [stdout] test dispatch::tests::auth_on_a_server_with_no_password_says_so_at_length ... ok
[INFO] [stdout] test dispatch::tests::auth_takes_the_password_on_its_own_or_behind_the_user_name ... ok
[INFO] [stdout] test dispatch::tests::backup_help_is_the_text_the_reference_sends ... ok
[INFO] [stdout] test dispatch::tests::backup_list_names_the_files_that_are_pinned_so_far ... ok
[INFO] [stdout] test dispatch::tests::backup_abort_removes_the_file_and_says_who_did_it ... ok
[INFO] [stdout] test dispatch::tests::backup_refuses_the_moves_the_reference_refuses ... ok
[INFO] [stdout] test dispatch::tests::backup_refuses_what_it_cannot_read ... ok
[INFO] [stdout] test dispatch::tests::backup_walks_the_states_the_reference_walks ... ok
[INFO] [stdout] test dispatch::tests::backup_status_is_a_map_on_resp3_and_a_flat_array_on_resp2 ... ok
[INFO] [stdout] test dispatch::tests::bf_add_makes_the_filter_and_says_whether_it_was_new ... ok
[INFO] [stdout] test dispatch::tests::bitfield_reads_and_writes_packed_fields ... ok
[INFO] [stdout] test dispatch::tests::bitfield_ro_answers_gets_and_refuses_the_rest ... ok
[INFO] [stdout] test dispatch::tests::bitop_names_the_operation_in_its_own_complaints ... ok
[INFO] [stdout] test dispatch::tests::bits_are_counted_over_a_range_of_bytes_or_of_bits ... ok
[INFO] [stdout] test dispatch::tests::blmpop_reads_its_count_and_its_key_count_the_way_lmpop_does ... ok
[INFO] [stdout] test dispatch::tests::cf_add_makes_the_filter_and_counts_the_copies ... ok
[INFO] [stdout] test dispatch::tests::change_repl_id_takes_a_new_id_and_forgets_the_old_one ... ok
[INFO] [stdout] test dispatch::tests::bgsave_takes_the_one_word_it_takes_and_nothing_else ... ok
[INFO] [stdout] test dispatch::tests::a_sketch_survives_a_dump_and_a_restore_in_both_encodings ... ok
[INFO] [stdout] test dispatch::tests::churning_sets_does_not_grow_the_server ... ok
[INFO] [stdout] test dispatch::tests::client_help_lists_the_subcommands_that_are_here ... ok
[INFO] [stdout] test dispatch::tests::client_info_counts_the_three_subscribe_namespaces_apart ... ok
[INFO] [stdout] test dispatch::tests::client_info_names_every_field_a_real_server_names ... ok
[INFO] [stdout] test dispatch::tests::client_info_reports_itself_as_the_command_running ... ok
[INFO] [stdout] test dispatch::tests::client_refuses_a_subcommand_it_does_not_have_and_arguments_it_did_not_ask_for ... ok
[INFO] [stdout] test dispatch::tests::client_setinfo_complains_the_way_a_real_server_does ... ok
[INFO] [stdout] test dispatch::tests::client_setname_takes_a_name_back_and_refuses_one_with_a_space_in_it ... ok
[INFO] [stdout] test dispatch::tests::closing_an_import_takes_a_higher_epoch ... ok
[INFO] [stdout] test dispatch::tests::churning_lists_does_not_grow_the_server ... ok
[INFO] [stdout] test dispatch::tests::command_describes_this_server_in_the_shape_a_driver_reads ... ok
[INFO] [stdout] test dispatch::tests::cluster_slots_comes_out_in_slot_order ... ok
[INFO] [stdout] test dispatch::tests::command_getkeys_finds_the_key_memory_usage_names ... ok
[INFO] [stdout] test dispatch::tests::command_getkeys_finds_the_keys_including_the_hidden_ones ... ok
[INFO] [stdout] test dispatch::tests::command_getkeys_reads_the_key_count_out_of_a_script_call ... ok
[INFO] [stdout] test dispatch::tests::commandstats_is_asked_for_and_replication_is_not ... ok
[INFO] [stdout] test dispatch::tests::command_info_sends_sets_where_the_reference_sends_sets ... ok
[INFO] [stdout] test dispatch::tests::conf_says_ok_after_an_option_it_did_not_know ... ok
[INFO] [stdout] test dispatch::tests::config_moves_the_ladder_and_object_encoding_agrees ... ok
[INFO] [stdout] test dispatch::tests::config_answers_what_it_can_and_refuses_what_it_cannot ... ok
[INFO] [stdout] test dispatch::tests::config_set_takes_all_of_the_ladder_or_none_of_it ... ok
[INFO] [stdout] test dispatch::tests::copy_checks_its_options_before_it_looks_for_anything ... ok
[INFO] [stdout] test dispatch::tests::createrule_checks_the_two_keys_last_and_the_two_links_after_that ... ok
[INFO] [stdout] test dispatch::tests::debug_error_hands_back_whatever_it_was_given ... ok
[INFO] [stdout] test dispatch::tests::debug_is_admin_and_stays_off_a_monitor_feed ... ok
[INFO] [stdout] test dispatch::tests::counting_several_keys_counts_their_union ... ok
[INFO] [stdout] test dispatch::tests::debug_object_counts_the_nodes_a_list_broke_into ... ok
[INFO] [stdout] test dispatch::tests::debug_object_describes_how_a_value_is_written_down ... ok
[INFO] [stdout] test dispatch::tests::debug_listpack_answers_for_anything_written_as_one ... ok
[INFO] [stdout] test dispatch::tests::debug_object_does_not_count_as_using_the_key ... ok
[INFO] [stdout] test dispatch::tests::debug_populate_fills_and_skips_what_is_there ... ok
[INFO] [stdout] test dispatch::tests::debug_populate_wants_two_numbers_that_are_not_negative ... ok
[INFO] [stdout] test dispatch::tests::debug_protocol_names_every_type_when_it_is_given_none_of_them ... ok
[INFO] [stdout] test dispatch::tests::debug_protocol_writes_what_the_reference_writes_on_resp2 ... ok
[INFO] [stdout] test dispatch::tests::debug_protocol_writes_what_the_reference_writes_on_resp3 ... ok
[INFO] [stdout] test dispatch::tests::debug_quicklist_packed_threshold_takes_what_the_reference_takes ... ok
[INFO] [stdout] test dispatch::tests::debug_quicklist_takes_a_level_it_does_nothing_with ... ok
[INFO] [stdout] test dispatch::tests::debug_reload_brings_every_type_back_the_way_it_went_in ... ok
[INFO] [stdout] test dispatch::tests::debug_reload_drops_a_key_whose_deadline_went_by ... ok
[INFO] [stdout] test dispatch::tests::debug_reload_noflush_keeps_what_the_file_does_not_mention ... ok
[INFO] [stdout] test dispatch::tests::debug_reload_nosave_reads_the_file_that_is_already_there ... ok
[INFO] [stdout] test dispatch::tests::debug_reload_puts_every_key_back_in_its_own_database ... ok
[INFO] [stdout] test dispatch::tests::debug_reload_refuses_to_drop_a_key_with_no_rdb_form ... ok
[INFO] [stdout] test dispatch::tests::debug_reload_takes_its_three_words_and_no_others ... ok
[INFO] [stdout] test dispatch::tests::debug_reload_that_cannot_read_the_file_says_to_check_the_log ... ok
[INFO] [stdout] test dispatch::tests::debug_says_the_same_thing_about_a_bad_name_and_a_bad_count ... ok
[INFO] [stdout] test dispatch::tests::debug_reload_that_cannot_write_the_file_says_so_in_one_word ... ok
[INFO] [stdout] test dispatch::tests::deleting_a_key_that_was_never_there_does_not_fail_a_watch_on_it ... ok
[INFO] [stdout] test dispatch::tests::deleting_counts_keys_removed_and_existing_counts_arguments_matched ... ok
[INFO] [stdout] test dispatch::tests::debug_sdslen_measures_the_name_and_the_string_under_it ... ok
[INFO] [stdout] test dispatch::tests::deleting_takes_out_a_span_and_answers_how_many_went ... ok
[INFO] [stdout] test dispatch::tests::deleting_the_last_suggestion_deletes_the_key ... ok
[INFO] [stdout] test dispatch::tests::digesting_does_not_count_as_using_anything ... ok
[INFO] [stdout] test dispatch::tests::drawing_a_member_removes_nothing_and_says_nil_at_a_missing_key ... ok
[INFO] [stdout] test dispatch::tests::dropping_the_documents_leaves_a_key_the_index_never_read ... ok
[INFO] [stdout] test dispatch::tests::dump_answers_nothing_for_a_key_that_is_not_there ... ok
[INFO] [stdout] test dispatch::tests::discard_and_reset_both_throw_the_queue_away ... ok
[INFO] [stdout] test dispatch::tests::dump_leaves_the_deadline_behind_and_restore_is_given_a_new_one ... ok
[INFO] [stdout] test dispatch::tests::each_thread_starts_its_compaction_somewhere_else ... ok
[INFO] [stdout] test dispatch::tests::each_kind_of_step_writes_the_keys_that_belong_to_it ... ok
[INFO] [stdout] test dispatch::tests::empty_fills_a_gap_and_last_carries_the_reading_before_it ... ok
[INFO] [stdout] test dispatch::tests::emptying_a_set_takes_the_key_with_it ... ok
[INFO] [stdout] test dispatch::tests::every_array_command_refuses_a_key_holding_something_else ... ok
[INFO] [stdout] test dispatch::tests::every_bitmap_command_says_wrongtype ... ok
[INFO] [stdout] test dispatch::tests::every_field_ttl_command_says_wrongtype_and_writes_nothing ... ok
[INFO] [stdout] test dispatch::tests::every_function_subcommand_complains_about_its_own_arity ... ok
[INFO] [stdout] test dispatch::tests::every_geo_command_says_wrongtype ... ok
[INFO] [stdout] test dispatch::tests::every_hash_command_says_wrongtype_and_writes_nothing ... ok
[INFO] [stdout] test dispatch::tests::every_list_command_says_wrongtype_and_writes_nothing ... ok
[INFO] [stdout] test dispatch::tests::eval_counts_its_keys_before_it_compiles_anything ... ok
[INFO] [stdout] test dispatch::tests::every_type_can_be_copied ... ok
[INFO] [stdout] test dispatch::tests::every_sorted_set_command_says_wrongtype_and_writes_nothing ... ok
[INFO] [stdout] test dispatch::tests::every_type_can_be_given_a_deadline_and_it_is_the_same_deadline ... ok
[INFO] [stdout] test dispatch::tests::every_way_a_search_can_be_written_wrong_has_its_own_sentence ... ok
[INFO] [stdout] test dispatch::tests::every_way_a_transaction_ends_lets_go_of_the_watches ... ok
[INFO] [stdout] test dispatch::tests::evicted_keys_and_expired_keys_are_different_numbers ... ok
[INFO] [stdout] test dispatch::tests::every_xgroup_subcommand_that_changed_something_crosses ... ok
[INFO] [stdout] test dispatch::tests::exec_sent_by_a_subscriber_aborts_the_transaction ... ok
[INFO] [stdout] test dispatch::tests::exec_and_discard_want_a_transaction_to_be_open ... ok
[INFO] [stdout] test dispatch::tests::exec_without_the_password_is_an_abort_and_says_why ... ok
[INFO] [stdout] test dispatch::tests::failover_refuses_in_the_order_the_reference_refuses ... ok
[INFO] [stdout] test dispatch::tests::fcall_checks_the_name_before_it_looks_at_anything_else ... ok
[INFO] [stdout] test dispatch::tests::flushdb_does_not_fail_a_watch_on_a_key_that_was_not ... ok
[INFO] [stdout] test dispatch::tests::flushdb_fails_a_watch_on_a_key_that_was_there ... ok
[INFO] [stdout] test dispatch::tests::flushing_empties_this_database_or_every_one_of_them ... ok
[INFO] [stdout] test dispatch::tests::fp32_and_values_are_the_same_vector ... ok
[INFO] [stdout] test dispatch::tests::function_list_says_what_every_library_registered ... ok
[INFO] [stdout] test dispatch::tests::exec_with_an_argument_is_an_abort_and_not_an_arity_error ... ok
[INFO] [stdout] test dispatch::tests::fuzzy_allows_one_edit_and_nothing_allows_two ... ok
[INFO] [stdout] test dispatch::tests::getkeys_reads_the_count_of_a_joined_read ... ok
[INFO] [stdout] test dispatch::tests::hello_agrees_on_a_protocol_and_refuses_the_ones_that_do_not_exist ... ok
[INFO] [stdout] test dispatch::tests::hello_says_which_option_would_have_worked ... ok
[INFO] [stdout] test dispatch::tests::hgetall_answers_a_map_on_resp3_and_the_same_pairs_flat_on_resp2 ... ok
[INFO] [stdout] test dispatch::tests::function_stats_counts_what_is_loaded_and_says_nothing_is_running ... ok
[INFO] [stdout] test dispatch::tests::hgetdel_hands_the_value_out_and_then_takes_the_field ... ok
[INFO] [stdout] test dispatch::tests::hgetex_reads_and_moves_the_deadline_in_one_command ... ok
[INFO] [stdout] test dispatch::tests::himport_checks_each_subcommand_count_under_its_own_name ... ok
[INFO] [stdout] test dispatch::tests::himport_complains_in_the_order_a_real_server_does ... ok
[INFO] [stdout] test dispatch::tests::himport_fieldsets_belong_to_the_connection_and_not_to_the_keyspace ... ok
[INFO] [stdout] test dispatch::tests::himport_prepare_replaces_and_the_discards_count ... ok
[INFO] [stdout] test dispatch::tests::himport_writes_declared_values_into_sorted_fields ... ok
[INFO] [stdout] test dispatch::tests::himport_set_replaces_the_whole_key ... ok
[INFO] [stdout] test dispatch::tests::hrandfield_draws_what_it_was_asked_for_and_nests_values_on_resp3 ... ok
[INFO] [stdout] test dispatch::tests::hmget_answers_once_per_field_and_hmset_answers_ok ... ok
[INFO] [stdout] test dispatch::tests::hsetex_writes_all_of_it_or_none_of_it ... ok
[INFO] [stdout] test dispatch::tests::hsetex_clears_the_deadline_unless_it_is_told_to_keep_it ... ok
[INFO] [stdout] test dispatch::tests::increments_are_parsed_whole_and_the_counters_saturate ... ok
[INFO] [stdout] test dispatch::tests::info_cpu_reports_processor_time_that_was_really_measured ... ok
[INFO] [stdout] test dispatch::tests::info_keyspace_counts_the_keys_that_have_a_deadline ... ok
[INFO] [stdout] test dispatch::tests::info_memory_reports_the_cap_and_the_quarter_of_it_that_gets_used ... ok
[INFO] [stdout] test dispatch::tests::info_reports_the_numbers_it_can_stand_behind ... ok
[INFO] [stdout] test dispatch::tests::inkeys_comes_off_the_total ... ok
[INFO] [stdout] test dispatch::tests::insert_checks_every_occurrence_and_matches_on_the_first_letter ... ok
[INFO] [stdout] test dispatch::tests::insert_is_a_reserve_and_a_madd_with_different_errors ... ok
[INFO] [stdout] test dispatch::tests::intercard_counts_and_stops_at_its_limit ... ok
[INFO] [stdout] test dispatch::tests::json_arrindex_has_an_exclusive_stop_and_a_start_that_cannot_run_off_the_end ... ok
[INFO] [stdout] test dispatch::tests::json_arrinsert_is_all_or_nothing_across_the_matches ... ok
[INFO] [stdout] test dispatch::tests::json_debug_answers_a_byte_count_and_its_own_help ... ok
[INFO] [stdout] test dispatch::tests::incr_adds_to_the_score_that_is_already_there ... ok
[INFO] [stdout] test dispatch::tests::json_get_lays_out_the_wrapper_it_builds ... ok
[INFO] [stdout] test dispatch::tests::json_mget_answers_once_per_key_whatever_is_under_them ... ok
[INFO] [stdout] test dispatch::tests::json_resp_answers_the_document_as_resp_types ... ok
[INFO] [stdout] test dispatch::tests::json_set_creates_one_field_and_refuses_to_invent_the_rest ... ok
[INFO] [stdout] test dispatch::tests::json_strappend_reads_its_shape_off_the_argument_count ... ok
[INFO] [stdout] test dispatch::tests::keys_and_randomkey_look_at_the_whole_database ... ok
[INFO] [stdout] test dispatch::tests::lastsave_starts_at_the_time_the_server_did_and_moves_on_a_save ... ok
[INFO] [stdout] test dispatch::tests::lcs_answers_the_length_the_string_and_the_runs ... ok
[INFO] [stdout] test dispatch::tests::limit_and_withscores_are_read_by_all_of_them_and_refused_afterwards ... ok
[INFO] [stdout] test dispatch::tests::linsert_says_three_things_with_one_signed_number ... ok
[INFO] [stdout] test dispatch::tests::lmpop_answers_from_the_first_key_that_has_anything ... ok
[INFO] [stdout] test dispatch::tests::limited_folds_the_branches_an_expansion_made_and_leaves_a_bar_alone ... ok
[INFO] [stdout] test dispatch::tests::lmpop_has_its_own_words_for_a_count_and_for_a_key_count ... ok
[INFO] [stdout] test dispatch::tests::losing_a_group_while_blocked_is_the_ordinary_sentence ... ok
[INFO] [stdout] test dispatch::tests::lpos_words_its_three_mistakes_the_way_redis_does ... ok
[INFO] [stdout] test dispatch::tests::lpos_walks_from_either_end_and_stops_where_it_is_told ... ok
[INFO] [stdout] test dispatch::tests::ltrim_keeps_a_window_and_an_empty_one_deletes_the_key ... ok
[INFO] [stdout] test dispatch::tests::lrem_counts_in_three_directions_and_takes_the_key_when_it_empties ... ok
[INFO] [stdout] test dispatch::tests::madd_truncates_its_reply_at_the_item_that_did_not_fit ... ok
[INFO] [stdout] test dispatch::tests::memory_stats_grows_a_field_for_every_database_holding_a_key ... ok
[INFO] [stdout] test dispatch::tests::memory_usage_counts_the_record_the_body_and_a_share_of_the_index ... ok
[INFO] [stdout] test dispatch::tests::memory_usage_reads_samples_and_does_not_use_it ... ok
[INFO] [stdout] test dispatch::tests::memory_answers_the_four_that_only_look ... ok
[INFO] [stdout] test dispatch::tests::mget_writes_the_newest_sample_and_the_labels_that_were_asked_for ... ok
[INFO] [stdout] test dispatch::tests::move_answers_zero_when_either_end_says_no ... ok
[INFO] [stdout] test dispatch::tests::move_takes_the_key_out_of_one_database_and_puts_it_in_another ... ok
[INFO] [stdout] test dispatch::tests::move_refuses_a_database_that_is_not_one_and_the_one_it_is_on ... ok
[INFO] [stdout] test dispatch::tests::moving_a_member_takes_it_off_one_set_and_puts_it_on_another ... ok
[INFO] [stdout] test dispatch::tests::moving_checks_the_types_in_the_order_redis_checks_them ... ok
[INFO] [stdout] test dispatch::tests::mset_takes_its_pairs_from_the_read_buffer ... ok
[INFO] [stdout] test dispatch::tests::mrange_reads_every_series_and_folds_the_groups_it_is_asked_for ... ok
[INFO] [stdout] test dispatch::tests::neither_way_of_dropping_an_index_takes_the_other_ones_word ... ok
[INFO] [stdout] test dispatch::tests::nothing_crosses_for_a_read_or_for_a_failure ... ok
[INFO] [stdout] test dispatch::tests::multi_holds_commands_and_exec_runs_them ... ok
[INFO] [stdout] test dispatch::tests::a_database_nobody_started_on_is_still_collected ... ok
[INFO] [stdout] test dispatch::tests::object_says_which_rung_of_the_ladder_a_key_is_on ... ok
[INFO] [stdout] test dispatch::tests::one_range_command_selects_by_rank_or_score_or_name ... ok
[INFO] [stdout] test dispatch::tests::object_answers_nil_for_a_key_that_is_not_there ... ok
[INFO] [stdout] test dispatch::tests::only_a_bare_star_asks_for_every_setting_and_nothing_else_globs ... ok
[INFO] [stdout] test dispatch::tests::only_a_real_change_gives_the_document_a_new_number ... ok
[INFO] [stdout] test dispatch::tests::pfdebug_has_its_own_complaints ... ok
[INFO] [stdout] test dispatch::tests::places_go_in_as_scores_and_come_back_as_positions ... ok
[INFO] [stdout] test dispatch::tests::popping_takes_a_member_off_the_set_and_hands_it_back ... ok
[INFO] [stdout] test dispatch::tests::params_counts_the_words_before_it_pairs_them_up ... ok
[INFO] [stdout] test dispatch::tests::publishing_to_nobody_answers_zero ... ok
[INFO] [stdout] test dispatch::tests::obfuscation_numbers_a_field_by_its_place_in_the_schema ... ok
[INFO] [stdout] test dispatch::tests::pubsub_reports_channels_patterns_and_shard_channels_apart ... ok
[INFO] [stdout] test dispatch::tests::pubsub_says_no_two_different_ways ... ok
[INFO] [stdout] test dispatch::tests::quit_answers_first_and_closes_after ... ok
[INFO] [stdout] test dispatch::tests::querylabels_says_which_names_are_worn_and_what_they_are_set_to ... ok
[INFO] [stdout] test dispatch::tests::redis_call_refuses_what_it_cannot_run_and_pcall_hands_it_back ... ok
[INFO] [stdout] test dispatch::tests::renamenx_refuses_a_taken_name_including_the_one_it_already_has ... ok
[INFO] [stdout] test dispatch::tests::register_function_turns_away_every_call_it_cannot_make_sense_of ... ok
[INFO] [stdout] test dispatch::tests::replicaof_on_an_embedded_server_says_it_is_not_available ... ok
[INFO] [stdout] test dispatch::tests::requirepass_reads_back_what_was_written_and_an_empty_one_clears_it ... ok
[INFO] [stdout] test dispatch::tests::reduce_is_refused_and_not_ignored ... ok
[INFO] [stdout] test dispatch::tests::reserve_complains_about_its_options_in_the_order_it_looks_for_them ... ok
[INFO] [stdout] test dispatch::tests::reserve_reads_its_numbers_the_way_string2ll_does ... ok
[INFO] [stdout] test dispatch::tests::reset_clears_the_name_and_the_switches_and_keeps_the_library ... ok
[INFO] [stdout] test dispatch::tests::reset_gives_the_password_back_to_the_server_to_ask_for_again ... ok
[INFO] [stdout] test dispatch::tests::reset_lets_go_of_every_subscription ... ok
[INFO] [stdout] test dispatch::tests::renaming_a_set_does_not_touch_a_member ... ok
[INFO] [stdout] test dispatch::tests::resp3_writes_a_multi_key_read_as_a_map_of_four ... ok
[INFO] [stdout] test dispatch::tests::resp3_writes_the_label_surface_as_sets_and_maps ... ok
[INFO] [stdout] test dispatch::tests::restore_asking_gets_into_an_importing_slot_on_its_own ... ok
[INFO] [stdout] test dispatch::tests::resp3_writes_a_read_value_as_a_double ... ok
[INFO] [stdout] test dispatch::tests::restore_can_tell_a_bad_footer_from_bad_bytes ... ok
[INFO] [stdout] test dispatch::tests::restore_checks_the_three_numbers_a_client_can_get_wrong ... ok
[INFO] [stdout] test dispatch::tests::restore_refuses_a_key_that_is_there_unless_it_is_told_to_replace ... ok
[INFO] [stdout] test dispatch::tests::restore_asks_about_the_key_before_it_looks_at_the_bytes ... ok
[INFO] [stdout] test dispatch::tests::resp3_writes_a_sample_as_a_double_and_the_info_as_a_map ... ok
[INFO] [stdout] test dispatch::tests::restore_takes_idletime_or_freq_and_not_both ... ok
[INFO] [stdout] test dispatch::tests::samples_land_where_they_are_put_and_the_newest_comes_back ... ok
[INFO] [stdout] test dispatch::tests::role_says_master_with_nothing_following_it ... ok
[INFO] [stdout] test dispatch::tests::select_and_swapdb_are_not_cluster_commands ... ok
[INFO] [stdout] test dispatch::tests::save_writes_a_file_that_carries_the_dataset ... ok
[INFO] [stdout] test dispatch::tests::select_moves_the_connection_and_the_databases_stay_apart ... ok
[INFO] [stdout] test dispatch::tests::select_is_queued_and_applied_when_exec_runs_it ... ok
[INFO] [stdout] test dispatch::tests::shutdown_save_writes_the_file_and_shutdown_on_its_own_does_not ... ok
[INFO] [stdout] test dispatch::tests::shutdown_abort_never_has_anything_to_abort ... ok
[INFO] [stdout] test dispatch::tests::shutdown_writes_nothing_and_sets_the_flag ... ok
[INFO] [stdout] test dispatch::tests::sintercard_counts_without_building_and_stops_at_a_limit ... ok
[INFO] [stdout] test dispatch::tests::smembers_answers_a_set_on_resp3_and_an_array_on_resp2 ... ok
[INFO] [stdout] test dispatch::tests::shutdown_takes_the_flags_redis_takes ... ok
[INFO] [stdout] test dispatch::tests::sort_reads_a_key_per_element_for_by_and_for_get ... ok
[INFO] [stdout] test dispatch::tests::sort_ro_does_not_know_the_word_store ... ok
[INFO] [stdout] test dispatch::tests::sort_store_writes_a_list_and_answers_its_length ... ok
[INFO] [stdout] test dispatch::tests::sort_refuses_what_it_cannot_sort ... ok
[INFO] [stdout] test dispatch::tests::sort_takes_its_options_in_any_order_and_the_last_one_wins ... ok
[INFO] [stdout] test dispatch::tests::swapdb_says_which_index_it_could_not_read ... ok
[INFO] [stdout] test dispatch::tests::sunioncard_and_sdiffcard_count_without_building ... ok
[INFO] [stdout] test dispatch::tests::swapdb_swaps_what_two_connections_would_see ... ok
[INFO] [stdout] test dispatch::tests::swapdb_swaps_every_stripe_of_a_wide_database ... ok
[INFO] [stdout] test dispatch::tests::tag_values_come_back_as_they_are_stored_and_sorted_by_their_bytes ... ok
[INFO] [stdout] test dispatch::tests::tag_values_are_asked_for_by_the_attribute_and_not_the_identifier ... ok
[INFO] [stdout] test dispatch::tests::taking_the_limit_away_stops_the_counting_and_putting_it_back_starts_again ... ok
[INFO] [stdout] test dispatch::tests::the_algebra_answers_a_set_on_resp3_and_an_array_on_resp2 ... ok
[INFO] [stdout] test dispatch::tests::the_algebra_answers_what_the_sets_share_and_do_not ... ok
[INFO] [stdout] test dispatch::tests::the_algebra_answers_wrongtype_before_it_writes_anything ... ok
[INFO] [stdout] test dispatch::tests::the_algebra_counts_its_keys_and_says_so_when_the_count_is_wrong ... ok
[INFO] [stdout] test dispatch::tests::the_algebra_stores_answer_a_count_and_delete_an_empty_destination ... ok
[INFO] [stdout] test dispatch::tests::the_array_group_answers_the_same_however_many_stripes_there_are ... ok
[INFO] [stdout] test dispatch::tests::the_backup_settings_behave_the_way_the_reference_does ... ok
[INFO] [stdout] test dispatch::tests::the_bitmap_group_answers_the_same_however_many_stripes_there_are ... ok
[INFO] [stdout] test dispatch::tests::the_bloom_family_answers_in_resp3_spelling_too ... ok
[INFO] [stdout] test dispatch::tests::the_bytes_of_a_sketch_are_the_ones_a_real_server_writes ... ok
[INFO] [stdout] test dispatch::tests::the_command_counter_counts_every_command_including_the_bad_ones ... ok
[INFO] [stdout] test dispatch::tests::the_command_field_is_lower_case_however_the_client_spelled_it ... ok
[INFO] [stdout] test dispatch::tests::the_conditions_are_a_set_and_not_a_keyword ... ok
[INFO] [stdout] test dispatch::tests::the_count_a_subscribe_answers_covers_channels_and_patterns ... ok
[INFO] [stdout] test dispatch::tests::the_count_after_return_counts_words ... ok
[INFO] [stdout] test dispatch::tests::the_cuckoo_family_answers_in_resp3_spelling_too ... ok
[INFO] [stdout] test dispatch::tests::the_debug_forms_answer_four_different_shapes ... ok
[INFO] [stdout] test dispatch::tests::the_debug_gates_turn_the_things_they_name_off_and_on_again ... ok
[INFO] [stdout] test dispatch::tests::the_eight_combinations_write_what_a_real_server_writes ... ok
[INFO] [stdout] test dispatch::tests::the_eviction_policy_reads_back_what_was_written_to_it ... ok
[INFO] [stdout] test dispatch::tests::the_active_sweep_reclaims_keys_no_client_comes_back_for ... ok
[INFO] [stdout] test dispatch::tests::the_expiry_rules_are_redis_own ... ok
[INFO] [stdout] test dispatch::tests::the_expiry_commands_refuse_what_a_real_server_refuses ... ok
[INFO] [stdout] test dispatch::tests::the_field_ttl_family_leaves_nothing_half_written_on_a_bad_argument ... ok
[INFO] [stdout] test dispatch::tests::the_fields_are_read_from_the_session_database ... ok
[INFO] [stdout] test dispatch::tests::the_file_name_reads_back_and_cannot_be_written ... ok
[INFO] [stdout] test dispatch::tests::the_flag_word_spells_out_the_bits_it_carries ... ok
[INFO] [stdout] test dispatch::tests::the_first_vadd_decides_how_wide_the_set_is ... ok
[INFO] [stdout] test dispatch::tests::the_four_commands_that_do_not_need_the_password_get_through ... ok
[INFO] [stdout] test dispatch::tests::the_four_conditions_decide_whether_the_deadline_moves ... ok
[INFO] [stdout] test dispatch::tests::the_gates_on_geoadd_are_the_ones_zadd_has ... ok
[INFO] [stdout] test dispatch::tests::the_four_conditions_reach_the_store_the_way_they_were_written ... ok
[INFO] [stdout] test dispatch::tests::the_graph_and_vector_groups_answer_the_same_however_many_stripes_there_are ... ok
[INFO] [stdout] test dispatch::tests::the_geo_group_answers_the_same_however_many_stripes_there_are ... ok
[INFO] [stdout] test dispatch::tests::the_help_names_the_subcommands_that_answer ... ok
[INFO] [stdout] test dispatch::tests::the_hash_group_answers_the_same_however_many_stripes_there_are ... ok
[INFO] [stdout] test dispatch::tests::the_hyperloglog_group_answers_the_same_however_many_stripes_there_are ... ok
[INFO] [stdout] test dispatch::tests::the_index_is_found_before_the_arguments_are_read ... ok
[INFO] [stdout] test dispatch::tests::the_info_is_a_map_and_a_missing_key_is_an_error ... ok
[INFO] [stdout] test dispatch::tests::the_helpers_on_the_redis_table_answer_the_way_they_are_documented ... ok
[INFO] [stdout] test dispatch::tests::the_inspecting_subcommands_refuse_what_they_cannot_describe ... ok
[INFO] [stdout] test dispatch::tests::the_internal_login_wants_the_cluster_secret ... ok
[INFO] [stdout] test dispatch::tests::the_json_commands_that_answer_a_size_disagree_about_every_failure ... ok
[INFO] [stdout] test dispatch::tests::the_json_array_writes_agree_on_the_errors_and_not_on_the_indexes ... ok
[INFO] [stdout] test dispatch::tests::the_json_commands_that_do_not_answer_text ... ok
[INFO] [stdout] test dispatch::tests::the_json_group_answers_the_same_however_many_stripes_there_are ... ok
[INFO] [stdout] test dispatch::tests::the_kept_set_is_what_query_and_list_answer_from ... ok
[INFO] [stdout] test dispatch::tests::the_json_number_family_answers_json_text_and_keeps_its_integers ... ok
[INFO] [stdout] test dispatch::tests::the_key_a_read_writes_afterwards_is_not_counted ... ok
[INFO] [stdout] test dispatch::tests::the_keyspace_group_reads_database_zero_whatever_database_it_ran_on ... ok
[INFO] [stdout] test dispatch::tests::the_keyspace_group_answers_the_same_however_many_stripes_there_are ... ok
[INFO] [stdout] test dispatch::tests::the_keyspace_sees_a_vector_set_key_like_any_other ... ok
[INFO] [stdout] test dispatch::tests::the_last_items_walk_back_from_the_cursor_and_report_the_holes ... ok
[INFO] [stdout] test dispatch::tests::the_last_three_hash_commands_say_wrongtype_and_write_nothing ... ok
[INFO] [stdout] test dispatch::tests::the_last_three_hash_commands_word_their_mistakes_their_own_way ... ok
[INFO] [stdout] test dispatch::tests::the_length_is_the_high_water_mark_and_the_count_is_the_population ... ok
[INFO] [stdout] test dispatch::tests::the_link_to_the_master_writes_through_the_read_only_refusal ... ok
[INFO] [stdout] test dispatch::tests::the_list_group_answers_the_same_however_many_stripes_there_are ... ok
[INFO] [stdout] test dispatch::tests::the_maintenance_turn_does_not_write_a_shared_cursor ... ok
[INFO] [stdout] test dispatch::tests::the_memory_limit_reads_back_in_bytes_whatever_the_unit_was ... ok
[INFO] [stdout] test dispatch::tests::the_keyspace_sees_a_graph_key_like_any_other ... ok
[INFO] [stdout] test dispatch::tests::the_migration_settings_read_and_write_like_the_reference ... ok
[INFO] [stdout] test dispatch::tests::the_notification_setting_reads_back_in_the_servers_own_spelling ... ok
[INFO] [stdout] test dispatch::tests::the_newer_commands_reply_in_the_shapes_a_real_server_sends ... ok
[INFO] [stdout] test dispatch::tests::the_object_subcommands_follow_the_policy ... ok
[INFO] [stdout] test dispatch::tests::the_older_range_spellings_name_their_high_end_first ... ok
[INFO] [stdout] test dispatch::tests::the_option_combinations_are_the_ones_a_real_server_accepts ... ok
[INFO] [stdout] test dispatch::tests::the_one_way_arms_of_the_protocol_say_nothing_back ... ok
[INFO] [stdout] test dispatch::tests::the_options_are_a_keyword_scan_and_not_a_grammar ... ok
[INFO] [stdout] test dispatch::tests::the_parked_count_says_what_the_waiter_list_says ... ok
[INFO] [stdout] test dispatch::tests::the_persistence_section_is_in_a_bare_info_and_not_in_another_one ... ok
[INFO] [stdout] test dispatch::tests::the_probabilistic_groups_answer_the_same_however_many_stripes_there_are ... ok
[INFO] [stdout] test dispatch::tests::the_persistence_section_counts_the_saves_that_were_asked_for ... ok
[INFO] [stdout] test dispatch::tests::the_quantile_family_answers_what_the_module_answers ... ok
[INFO] [stdout] test dispatch::tests::the_protocol_the_client_asked_for_is_the_one_a_table_answers_in ... ok
[INFO] [stdout] test dispatch::tests::the_same_answers_come_out_in_resp3_spelling ... ok
[INFO] [stdout] test dispatch::tests::the_scan_is_one_database_and_the_following_is_all_of_them ... ok
[INFO] [stdout] test dispatch::tests::the_script_cache_and_the_library_set_answer_for_being_empty ... ok
[INFO] [stdout] test dispatch::tests::the_script_cache_holds_what_was_loaded_into_it ... ok
[INFO] [stdout] test dispatch::tests::the_second_exec_of_a_shape_does_not_grow_the_buffer ... ok
[INFO] [stdout] test dispatch::tests::the_set_group_answers_the_same_however_many_stripes_there_are ... ok
[INFO] [stdout] test dispatch::tests::the_slot_migration_protocol_is_shut_to_a_client ... ok
[INFO] [stdout] test dispatch::tests::the_slot_ranges_of_a_sync_are_checked_in_full ... ok
[INFO] [stdout] test dispatch::tests::the_sort_command_answers_the_same_however_many_stripes_there_are ... ok
[INFO] [stdout] test dispatch::tests::the_sorted_set_group_answers_the_same_however_many_stripes_there_are ... ok
[INFO] [stdout] test dispatch::tests::the_sorted_set_pops_that_wait_answer_like_the_ones_they_wrap ... ok
[INFO] [stdout] test dispatch::tests::the_steps_a_search_runs_depend_on_what_was_asked_for ... ok
[INFO] [stdout] test dispatch::tests::the_storage_limit_reads_back_and_minus_one_is_no_limit ... ok
[INFO] [stdout] test dispatch::tests::the_stream_group_answers_the_same_however_many_stripes_there_are ... ok
[INFO] [stdout] test dispatch::tests::the_stream_opens_with_a_select_and_says_it_once ... ok
[INFO] [stdout] test dispatch::tests::the_string_group_answers_the_same_however_many_stripes_there_are ... ok
[INFO] [stdout] test dispatch::tests::the_subscribe_gate_does_not_reach_inside_exec ... ok
[INFO] [stdout] test dispatch::tests::the_suggestion_errors_are_the_lines_the_module_sends ... ok
[INFO] [stdout] test dispatch::tests::the_sweep_stops_when_debug_turns_it_off ... ok
[INFO] [stdout] test dispatch::tests::the_sweep_the_loop_calls_runs_at_most_once_a_millisecond ... ok
[INFO] [stdout] test dispatch::tests::the_third_protocol_answers_a_map_of_five ... ok
[INFO] [stdout] test dispatch::tests::the_thread_count_is_the_same_number_wherever_it_is_asked_for ... ok
[INFO] [stdout] test dispatch::tests::the_threads_section_says_where_the_work_landed ... ok
[INFO] [stdout] test dispatch::tests::the_three_algebra_commands_combine_scores_and_order_the_answer_once ... ok
[INFO] [stdout] test dispatch::tests::the_three_eviction_numbers_read_back_too ... ok
[INFO] [stdout] test dispatch::tests::the_three_removals_share_their_window_with_the_reads ... ok
[INFO] [stdout] test dispatch::tests::the_time_series_group_answers_the_same_however_many_stripes_there_are ... ok
[INFO] [stdout] test dispatch::tests::the_trimming_delays_are_checked_against_one_another ... ok
[INFO] [stdout] test dispatch::tests::the_two_counters_count_the_reads_and_nothing_else ... ok
[INFO] [stdout] test dispatch::tests::the_two_counts_read_their_two_kinds_of_bound ... ok
[INFO] [stdout] test dispatch::tests::the_two_draws_disagree_about_the_reply_type_and_they_are_right_to ... ok
[INFO] [stdout] test dispatch::tests::the_two_infinities_will_not_be_added_together ... ok
[INFO] [stdout] test dispatch::tests::the_two_json_errors_that_carry_no_prefix ... ok
[INFO] [stdout] test dispatch::tests::the_two_lines_with_a_code_word_are_the_arity_and_the_unknown_one ... ok
[INFO] [stdout] test dispatch::tests::the_two_ways_of_dropping_an_index_disagree_about_the_documents ... ok
[INFO] [stdout] test dispatch::tests::the_whole_digest_folds_in_the_names_and_the_database_numbers ... ok
[INFO] [stdout] test dispatch::tests::the_window_is_ten_rows_and_a_million_wide_at_most ... ok
[INFO] [stdout] test dispatch::tests::the_words_come_before_the_query_and_the_query_before_the_pipeline ... ok
[INFO] [stdout] test dispatch::tests::the_words_of_a_profile_are_read_the_way_every_other_word_is ... ok
[INFO] [stdout] test dispatch::tests::the_wrong_command_at_the_wrong_type_says_so_both_ways ... ok
[INFO] [stdout] test dispatch::tests::the_x_pushes_refuse_to_bring_a_list_back_to_life ... ok
[INFO] [stdout] test dispatch::tests::the_zadd_options_gate_what_gets_written ... ok
[INFO] [stdout] test dispatch::tests::time_is_two_bulk_strings_and_moves ... ok
[INFO] [stdout] test dispatch::tests::touch_counts_the_way_exists_counts ... ok
[INFO] [stdout] test dispatch::tests::trimming_reads_its_options_the_way_redis_does ... ok
[INFO] [stdout] test dispatch::tests::two_connections_can_watch_the_same_key ... ok
[INFO] [stdout] test dispatch::tests::two_names_for_one_setting_move_together ... ok
[INFO] [stdout] test dispatch::tests::two_slots_in_one_command_is_a_cross_slot ... ok
[INFO] [stdout] test dispatch::tests::two_vector_clauses_answer_two_distances ... ok
[INFO] [stdout] test dispatch::tests::type_is_a_simple_string_and_says_none_for_a_key_that_is_not_there ... ok
[INFO] [stdout] test dispatch::tests::unsubscribe_answers_for_names_it_was_not_holding_too ... ok
[INFO] [stdout] test dispatch::tests::vemb_gives_back_the_vector_and_vsim_gives_back_a_similarity ... ok
[INFO] [stdout] test dispatch::tests::vinfo_says_partition_first ... ok
[INFO] [stdout] test dispatch::tests::vlinks_reports_one_layer_of_partition_neighbours ... ok
[INFO] [stdout] test dispatch::tests::vrandmember_has_the_two_shapes_srandmember_has ... ok
[INFO] [stdout] test dispatch::tests::vrange_says_which_end_it_could_not_read ... ok
[INFO] [stdout] test dispatch::tests::vrange_walks_the_names_and_not_the_vectors ... ok
[INFO] [stdout] test dispatch::tests::vrem_takes_the_attribute_with_it ... ok
[INFO] [stdout] test dispatch::tests::vsim_filter_reads_the_attributes ... ok
[INFO] [stdout] test dispatch::tests::wait_answers_zero_replicas_without_waiting ... ok
[INFO] [stdout] test dispatch::tests::waitaof_answers_two_zeroes_and_refuses_a_local_wait ... ok
[INFO] [stdout] test dispatch::tests::watching_the_same_key_twice_is_one_watch ... ok
[INFO] [stdout] test dispatch::tests::what_a_thread_marked_is_taken_by_the_maintenance_turn ... ok
[INFO] [stdout] test dispatch::tests::what_two_threads_counted_is_added_up_when_info_asks ... ok
[INFO] [stdout] test dispatch::tests::withscores_nests_on_resp3_and_flattens_on_resp2 ... ok
[INFO] [stdout] test dispatch::tests::writing_a_field_clears_the_deadline_that_was_on_it ... ok
[INFO] [stdout] test dispatch::tests::xackdel_reports_what_the_group_was_holding ... ok
[INFO] [stdout] test dispatch::tests::xadd_ids_only_ever_go_up ... ok
[INFO] [stdout] test dispatch::tests::xautoclaim_reports_what_it_dropped ... ok
[INFO] [stdout] test dispatch::tests::xclaim_reads_ids_until_one_will_not_parse ... ok
[INFO] [stdout] test dispatch::tests::xdelex_answers_one_integer_an_id ... ok
[INFO] [stdout] test dispatch::tests::xgroup_has_an_arity_per_subcommand ... ok
[INFO] [stdout] test dispatch::tests::xinfo_reports_the_stream_the_groups_and_the_consumers ... ok
[INFO] [stdout] test dispatch::tests::xnack_releases_an_entry_for_the_next_claim ... ok
[INFO] [stdout] test dispatch::tests::xpending_takes_the_consumer_only_when_the_count_comes_out_right ... ok
[INFO] [stdout] test dispatch::tests::xrange_looks_the_key_up_before_it_reads_the_count ... ok
[INFO] [stdout] test dispatch::tests::xread_answers_a_map_on_resp3_and_the_fields_stay_flat ... ok
[INFO] [stdout] test dispatch::tests::xread_with_no_block_writes_the_null_itself ... ok
[INFO] [stdout] test dispatch::tests::xreadgroup_hands_out_and_xack_takes_back ... ok
[INFO] [stdout] test dispatch::tests::xsetid_will_not_go_below_what_is_there ... ok
[INFO] [stdout] test dispatch::tests::zadd_incr_answers_a_score_or_nothing_at_all ... ok
[INFO] [stdout] test dispatch::tests::zadd_says_its_mistakes_the_way_redis_says_them ... ok
[INFO] [stdout] test dispatch::vfilter::tests::a_bad_expression_is_an_error_and_not_a_crash ... ok
[INFO] [stdout] test dispatch::vfilter::tests::a_field_that_is_not_there_matches_nothing ... ok
[INFO] [stdout] test dispatch::vfilter::tests::a_number_is_read_however_it_was_spelled ... ok
[INFO] [stdout] test dispatch::vfilter::tests::an_escape_is_compared_by_what_it_stands_for ... ok
[INFO] [stdout] test dispatch::vfilter::tests::an_expression_reads_the_way_it_looks ... ok
[INFO] [stdout] test dispatch::vfilter::tests::the_signature_carries_only_what_every_match_needs ... ok
[INFO] [stdout] test dispatch::vfilter::tests::the_types_do_not_coerce ... ok
[INFO] [stdout] test dispatch::tests::the_running_total_and_the_walk_agree_on_a_mixed_keyspace ... ok
[INFO] [stdout] test engine::tests::a_bit_write_that_left_the_value_alone_says_nothing ... ok
[INFO] [stdout] test engine::tests::a_bitfield_that_wrote_the_same_values_back_says_nothing ... ok
[INFO] [stdout] test engine::tests::a_blpop_on_a_list_with_something_in_it_never_waits ... ok
[INFO] [stdout] test engine::tests::a_client_that_goes_away_while_it_waits_takes_its_waiter_with_it ... ok
[INFO] [stdout] test engine::tests::a_client_that_waited_long_enough_gets_a_null_array ... ok
[INFO] [stdout] test engine::tests::a_command_split_across_reads_resumes_rather_than_restarts ... ok
[INFO] [stdout] test engine::tests::a_command_split_across_reads_survives_compaction ... ok
[INFO] [stdout] test engine::tests::a_connection_counts_the_bytes_and_the_commands_that_went_over_it ... ok
[INFO] [stdout] test engine::tests::a_connection_reports_the_socket_it_was_opened_on ... ok
[INFO] [stdout] test engine::tests::a_deadline_that_passed_is_news_before_the_miss_it_causes ... ok
[INFO] [stdout] test engine::tests::a_deadline_that_passed_is_news_when_a_reader_finds_it ... ok
[INFO] [stdout] test engine::tests::a_connection_that_went_away_is_off_the_list ... ok
[INFO] [stdout] test dispatch::tests::rewriting_the_same_keys_does_not_grow_the_server ... ok
[INFO] [stdout] test engine::tests::a_deadline_that_passed_is_news_with_nobody_reading ... ok
[INFO] [stdout] test engine::tests::a_decoder_that_came_back_mid_command_starts_the_next_one_clean ... ok
[INFO] [stdout] test engine::tests::a_geo_store_that_found_nothing_takes_the_destination_with_it ... ok
[INFO] [stdout] test engine::tests::a_field_deadline_already_past_reads_as_a_removal ... ok
[INFO] [stdout] test engine::tests::a_held_connection_names_the_command_it_is_waiting_to_run ... ok
[INFO] [stdout] test dispatch::tests::a_memory_limit_moves_values_to_the_file_instead_of_dropping_keys ... ok
[INFO] [stdout] test engine::tests::a_hangup_while_parked_gives_back_the_slot_and_the_decoders ... ok
[INFO] [stdout] test engine::tests::a_hangup_with_commands_in_flight_waits_for_them ... ok
[INFO] [stdout] test engine::tests::a_key_holding_a_newline_skips_the_per_field_channel ... ok
[INFO] [stdout] test engine::tests::a_key_that_lands_on_another_database_is_new_over_there ... ok
[INFO] [stdout] test engine::tests::a_held_connection_that_hangs_up_lets_go_of_its_slot ... ok
[INFO] [stdout] test engine::tests::a_module_read_keeps_the_miss_a_later_argument_spoiled ... ok
[INFO] [stdout] test engine::tests::a_key_that_was_not_there_before_says_so ... ok
[INFO] [stdout] test engine::tests::a_kill_spares_the_caller_unless_it_is_told_not_to ... ok
[INFO] [stdout] test engine::tests::a_module_read_says_it_the_way_a_core_read_does ... ok
[INFO] [stdout] test engine::tests::a_monitor_is_refused_the_keyspace_at_queue_time ... ok
[INFO] [stdout] test engine::tests::a_monitor_is_fed_a_command_another_connection_ran ... ok
[INFO] [stdout] test engine::tests::a_monitor_is_reported_as_one_in_client_list ... ok
[INFO] [stdout] test engine::tests::a_monitor_runs_through_a_pause ... ok
[INFO] [stdout] test engine::tests::a_monitor_may_not_touch_the_keyspace ... ok
[INFO] [stdout] test engine::tests::a_monitor_that_closes_stops_being_one ... ok
[INFO] [stdout] test engine::tests::a_move_onto_a_member_already_there_says_only_the_removal ... ok
[INFO] [stdout] test engine::tests::a_parked_client_is_answered_by_another_connections_push ... ok
[INFO] [stdout] test engine::tests::a_pattern_subscriber_is_told_the_pattern_and_the_channel ... ok
[INFO] [stdout] test engine::tests::a_pipelined_batch_comes_back_in_order_and_in_one_write ... ok
[INFO] [stdout] test engine::tests::a_protocol_error_is_written_and_closes_the_connection ... ok
[INFO] [stdout] test engine::tests::a_published_message_lands_on_the_subscriber ... ok
[INFO] [stdout] test engine::tests::a_password_is_not_echoed_to_a_monitor ... ok
[INFO] [stdout] test engine::tests::a_read_that_found_nothing_says_which_key_it_was ... ok
[INFO] [stdout] test engine::tests::a_read_stops_missing_where_it_stops_looking ... ok
[INFO] [stdout] test engine::tests::a_rename_says_what_it_replaced_after_saying_what_it_did ... ok
[INFO] [stdout] test engine::tests::a_score_that_did_not_move_says_nothing ... ok
[INFO] [stdout] test engine::tests::a_reply_the_socket_would_not_take_is_offered_again ... ok
[INFO] [stdout] test engine::tests::a_script_is_reported_in_front_of_its_own_effects ... ok
[INFO] [stdout] test engine::tests::a_shard_channel_and_a_pattern_do_not_hear_each_other ... ok
[INFO] [stdout] test engine::tests::a_shorter_pause_does_not_shorten_the_one_already_running ... ok
[INFO] [stdout] test engine::tests::a_select_is_reported_on_the_database_it_moved_to ... ok
[INFO] [stdout] test engine::tests::a_slot_that_last_spoke_resp3_answers_the_next_client_in_resp2 ... ok
[INFO] [stdout] test engine::tests::a_store_form_says_it_only_for_its_sources ... ok
[INFO] [stdout] test engine::tests::a_stream_write_says_what_the_trim_behind_it_took ... ok
[INFO] [stdout] test engine::tests::a_store_form_says_what_it_replaced_before_saying_what_it_did ... ok
[INFO] [stdout] test engine::tests::a_subscriber_that_goes_away_leaves_the_registry ... ok
[INFO] [stdout] test engine::tests::a_transaction_is_reported_at_exec_and_in_order ... ok
[INFO] [stdout] test engine::tests::a_transaction_publishes_between_its_commands_and_not_after_them ... ok
[INFO] [stdout] test engine::tests::a_thread_counts_the_clients_it_blocked_and_nobody_else_s ... ok
[INFO] [stdout] test engine::tests::a_waiter_is_only_woken_on_the_database_it_blocked_on ... ok
[INFO] [stdout] test engine::tests::a_waiter_is_served_between_two_pipelined_pushes ... ok
[INFO] [stdout] test engine::tests::a_waiter_that_timed_out_does_not_eat_a_later_push ... ok
[INFO] [stdout] test engine::tests::a_waiter_belongs_to_the_thread_that_parked_it ... ok
[INFO] [stdout] test engine::tests::a_waiter_woken_by_another_waiter ... ok
[INFO] [stdout] test engine::tests::a_write_pause_holds_the_writes_and_lets_the_reads_through ... ok
[INFO] [stdout] test engine::tests::a_write_pause_holds_an_exec_only_when_the_transaction_writes ... ok
[INFO] [stdout] test engine::tests::a_write_pause_on_top_of_an_all_pause_still_holds_the_reads ... ok
[INFO] [stdout] test engine::tests::a_write_reaches_a_keyspace_subscriber ... ok
[INFO] [stdout] test engine::tests::a_write_says_nothing_until_the_setting_turns_it_on ... ok
[INFO] [stdout] test engine::tests::a_write_that_changes_part_of_a_value_has_not_replaced_it ... ok
[INFO] [stdout] test engine::tests::a_write_with_a_deadline_on_it_says_two_things ... ok
[INFO] [stdout] test engine::tests::a_write_under_a_deadline_already_gone_says_the_write_first ... ok
[INFO] [stdout] test engine::tests::an_administrative_command_is_not_reported ... ok
[INFO] [stdout] test engine::tests::acknowledging_an_entry_that_is_already_gone_says_nothing ... ok
[INFO] [stdout] test engine::tests::an_all_pause_holds_every_command_and_cannot_be_called_off ... ok
[INFO] [stdout] test engine::tests::an_argument_is_quoted_the_way_a_real_server_quotes_it ... ok
[INFO] [stdout] test engine::tests::an_argument_that_did_not_parse_takes_the_miss_back ... ok
[INFO] [stdout] test engine::tests::an_event_with_no_fields_stays_off_the_subkey_channels ... ok
[INFO] [stdout] test engine::tests::clearing_a_deadline_that_was_never_set_says_nothing ... ok
[INFO] [stdout] test engine::tests::client_kill_closes_the_connection_it_names_and_answers_a_count ... ok
[INFO] [stdout] test engine::tests::client_list_keeps_the_order_the_connections_were_opened_in ... ok
[INFO] [stdout] test engine::tests::client_list_reports_every_connection_and_not_just_the_one_asking ... ok
[INFO] [stdout] test engine::tests::client_reply_off_stays_off_until_it_is_turned_back_on ... ok
[INFO] [stdout] test engine::tests::client_ids_are_the_server_s_to_hand_out ... ok
[INFO] [stdout] test engine::tests::client_reply_skip_covers_the_command_after_it_and_nothing_else ... ok
[INFO] [stdout] test engine::tests::commands_that_arrived_before_a_protocol_error_are_still_answered ... ok
[INFO] [stdout] test engine::tests::emptying_a_hash_says_the_key_went_with_the_last_field ... ok
[INFO] [stdout] test engine::tests::every_blocking_command_times_out_with_the_same_null_array ... ok
[INFO] [stdout] test engine::tests::monitor_sent_twice_answers_nothing_the_second_time ... ok
[INFO] [stdout] test engine::tests::only_a_command_that_ran_is_reported ... ok
[INFO] [stdout] test engine::tests::only_a_list_arriving_under_a_named_key_wakes_a_waiter ... ok
[INFO] [stdout] test engine::tests::only_the_classes_that_were_asked_for_are_published ... ok
[INFO] [stdout] test engine::tests::only_the_shape_of_a_write_that_reads_says_it ... ok
[INFO] [stdout] test engine::tests::quit_is_answered_and_then_the_connection_goes ... ok
[INFO] [stdout] test engine::tests::replacing_a_value_says_what_went_and_whether_the_kind_changed ... ok
[INFO] [stdout] test engine::tests::reset_takes_a_connection_out_of_monitor_mode ... ok
[INFO] [stdout] test engine::tests::resp2_takes_almost_nothing_from_a_subscriber ... ok
[INFO] [stdout] test engine::tests::resp3_delivers_a_message_as_a_push ... ok
[INFO] [stdout] test engine::tests::taking_the_last_of_a_collection_says_the_key_went_with_it ... ok
[INFO] [stdout] test engine::tests::the_batch_goes_through_the_reactors_two_walks ... ok
[INFO] [stdout] test engine::tests::the_buffers_and_the_decoder_pool_stop_growing ... ok
[INFO] [stdout] test engine::tests::the_keys_a_sort_pattern_names_say_it_as_they_are_read ... ok
[INFO] [stdout] test engine::tests::the_geo_commands_say_what_the_sorted_set_under_them_did ... ok
[INFO] [stdout] test engine::tests::the_news_of_a_new_key_comes_before_the_write_that_made_it ... ok
[INFO] [stdout] test engine::tests::the_old_kill_takes_one_address_and_will_take_the_caller ... ok
[INFO] [stdout] test engine::tests::the_quiet_module_commands_stay_quiet ... ok
[INFO] [stdout] test engine::tests::the_sketch_commands_say_what_a_mass_add_says ... ok
[INFO] [stdout] test engine::tests::the_stream_reads_say_it_for_the_keys_behind_the_keyword ... ok
[INFO] [stdout] test engine::tests::the_module_merges_stop_at_the_first_empty_source ... ok
[INFO] [stdout] test engine::tests::two_connections_are_two_sessions_over_one_server ... ok
[INFO] [stdout] test engine::tests::the_subkey_channels_carry_the_fields_an_event_touched ... ok
[INFO] [stdout] test engine::tests::two_parked_clients_are_served_in_the_order_they_arrived ... ok
[INFO] [stdout] test engine::tests::two_monitors_are_fed_the_same_bytes ... ok
[INFO] [stdout] test engine::tests::unpause_lets_go_of_a_write_pause_at_once ... ok
[INFO] [stdout] test engine::tests::what_a_client_pipelined_behind_a_block_waits_for_the_block ... ok
[INFO] [stdout] test engine::tests::a_key_a_limit_took_says_it_was_evicted ... ok
[INFO] [stdout] test engine::tests::what_a_client_pipelined_behind_quit_is_never_run ... ok
[INFO] [stdout] test engine::tests::writing_over_a_destination_is_not_a_key_arriving ... ok
[INFO] [stdout] test error::tests::it_carries_into_the_typed_api_as_an_invalid_argument ... ok
[INFO] [stdout] test error::tests::a_newline_in_the_offending_byte_does_not_end_the_line ... ok
[INFO] [stdout] test error::tests::the_messages_are_the_ones_redis_sends ... ok
[INFO] [stdout] test frame::tests::a_nan_decodes_even_though_it_never_equals_itself ... ok
[INFO] [stdout] test frame::tests::a_deeply_nested_reply_is_refused_rather_than_overflowing_the_stack ... ok
[INFO] [stdout] test frame::tests::an_unknown_type_byte_is_named ... ok
[INFO] [stdout] test frame::tests::every_prefix_of_a_reply_is_incomplete ... ok
[INFO] [stdout] test frame::tests::an_enormous_element_count_does_not_reserve_anything ... ok
[INFO] [stdout] test frame::tests::everything_the_encoder_writes_reads_back ... ok
[INFO] [stdout] test frame::tests::pipelined_replies_come_out_one_at_a_time ... ok
[INFO] [stdout] test frame::tests::the_resp3_types_decode ... ok
[INFO] [stdout] test frame::tests::the_streamed_forms_say_so_rather_than_being_mis_parsed ... ok
[INFO] [stdout] test frame::tests::the_resp2_types_decode ... ok
[INFO] [stdout] test front::tests::a_closed_slot_is_handed_out_again_with_its_buffers ... ok
[INFO] [stdout] test engine::tests::two_threads_write_into_one_server ... ok
[INFO] [stdout] test front::tests::a_protocol_error_stops_the_framing_and_closes_the_connection ... ok
[INFO] [stdout] test front::tests::the_buffers_are_reported_as_they_move_and_only_once ... ok
[INFO] [stdout] test front::tests::a_command_split_across_reads_is_framed_once_it_is_whole ... ok
[INFO] [stdout] test front::tests::a_pipelined_read_frames_every_command_in_it ... ok
[INFO] [stdout] test proto::tests::hello_takes_two_and_three_and_nothing_else ... ok
[INFO] [stdout] test reply::tests::a_big_number_is_a_bulk_string_on_resp2 ... ok
[INFO] [stdout] test reply::tests::a_blob_error_keeps_its_newlines_on_resp3_and_loses_them_on_resp2 ... ok
[INFO] [stdout] test proto::tests::the_limits_are_the_redis_numbers ... ok
[INFO] [stdout] test reply::tests::a_bulk_string_carries_its_length_and_anything_in_it ... ok
[INFO] [stdout] test reply::tests::a_double_is_a_bulk_string_on_resp2 ... ok
[INFO] [stdout] test reply::tests::a_map_becomes_a_flat_array_on_resp2 ... ok
[INFO] [stdout] test proto::tests::a_connection_starts_at_resp2 ... ok
[INFO] [stdout] test reply::tests::a_boolean_is_an_integer_on_resp2 ... ok
[INFO] [stdout] test reply::tests::a_number_as_a_string_gets_the_right_length ... ok
[INFO] [stdout] test reply::tests::a_set_and_a_push_become_arrays_on_resp2 ... ok
[INFO] [stdout] test reply::tests::a_partial_write_leaves_the_rest_behind ... ok
[INFO] [stdout] test reply::tests::a_verbatim_string_loses_its_format_on_resp2 ... ok
[INFO] [stdout] test reply::tests::an_array_can_be_headed_after_its_elements_are_written ... ok
[INFO] [stdout] test reply::tests::hello_switches_the_protocol_for_everything_after_it ... ok
[INFO] [stdout] test reply::tests::the_three_types_both_protocols_share_are_written_the_same_way ... ok
[INFO] [stdout] test request::tests::a_bulk_past_the_limit_is_refused ... ok
[INFO] [stdout] test request::tests::a_carriage_return_with_no_newline_after_it_is_a_protocol_error ... ok
[INFO] [stdout] test request::tests::a_command_arriving_one_byte_at_a_time_decodes_once_at_the_end ... ok
[INFO] [stdout] test request::tests::a_line_that_never_ends_is_refused_rather_than_buffered_forever ... ok
[INFO] [stdout] test request::tests::a_multibulk_command_comes_out_as_its_arguments ... ok
[INFO] [stdout] test request::tests::a_partly_arrived_command_remembers_where_it_got_to ... ok
[INFO] [stdout] test reply::tests::resp2_has_two_nulls_and_resp3_has_one ... ok
[INFO] [stdout] test request::tests::a_reset_forgets_a_half_read_command ... ok
[INFO] [stdout] test reply::tests::the_predicted_sizes_are_the_sizes_actually_written ... ok
[INFO] [stdout] test request::tests::a_value_can_hold_anything_including_crlf ... ok
[INFO] [stdout] test request::tests::an_empty_command_is_consumed_and_has_no_arguments ... ok
[INFO] [stdout] test request::tests::an_inline_command_is_split_on_whitespace ... ok
[INFO] [stdout] test request::tests::an_enormous_count_is_refused_rather_than_reserved ... ok
[INFO] [stdout] test request::tests::an_unclosed_or_misplaced_quote_is_an_error ... ok
[INFO] [stdout] test request::tests::arguments_do_not_survive_into_the_next_command ... ok
[INFO] [stdout] test request::tests::commands_come_out_one_at_a_time_from_one_buffer ... ok
[INFO] [stdout] test request::tests::lengths_that_are_not_lengths_are_refused ... ok
[INFO] [stdout] test request::tests::the_wrong_type_byte_where_an_argument_belongs_names_the_byte ... ok
[INFO] [stdout] test tests::a_connection_reads_commands_and_writes_replies ... ok
[INFO] [stdout] test tests::the_same_replies_come_out_in_resp3_spelling ... ok
[INFO] [stdout] test request::tests::inline_quotes_and_escapes_follow_redis ... ok
[INFO] [stdout] test request::tests::an_empty_argument_is_an_argument ... ok
[INFO] [stdout] test dispatch::tests::a_storage_limit_of_zero_restores_redis_behaviour_exactly ... ok
[INFO] [stdout] test engine::tests::a_pipelining_client_does_not_grow_the_read_buffer ... ok
[INFO] [stdout] test dispatch::tests::an_allkeys_policy_makes_room_instead_of_refusing ... ok
[INFO] [stdout] test dispatch::tests::a_full_file_goes_back_to_evicting ... ok
[INFO] [stdout] test dispatch::tests::churning_sorted_sets_does_not_grow_the_server ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1127 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 14.07s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests yo_resp
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test src/lib.rs - (line 15) ... ok
[INFO] [stdout] test src/lib.rs - (line 91) ... ok
[INFO] [stdout] test src/engine.rs - engine (line 60) ... ok
[INFO] [stdout] test src/lib.rs - (line 37) ... ok
[INFO] [stdout] test src/lib.rs - (line 68) ... ok
[INFO] [stdout] test src/dispatch/mod.rs - dispatch (line 17) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stdout] all doctests ran in 1.18s; merged doctests compilation took 1.12s
[INFO] running `Command { std: "docker" "inspect" "e9feec304ff2c8ad1ec94e3ca3033125029df7a3c5ec928c0c93e02a3878ad36", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e9feec304ff2c8ad1ec94e3ca3033125029df7a3c5ec928c0c93e02a3878ad36", kill_on_drop: false }`
[INFO] [stdout] e9feec304ff2c8ad1ec94e3ca3033125029df7a3c5ec928c0c93e02a3878ad36
