[INFO] crate ddo 0.2.3 is already in cache [INFO] testing ddo-0.2.3 against beta-2020-07-24 for beta-1.46-1 [INFO] extracting crate ddo 0.2.3 into /workspace/builds/worker-7/source [INFO] validating manifest of crates.io crate ddo 0.2.3 on toolchain beta-2020-07-24 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-07-24" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking crates.io crate ddo 0.2.3 [INFO] finished tweaking crates.io crate ddo 0.2.3 [INFO] tweaked toml for crates.io crate ddo 0.2.3 written to /workspace/builds/worker-7/source/Cargo.toml [INFO] crate crates.io crate ddo 0.2.3 already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-07-24" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-07-24" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b4a385ba0f91091fbd2ba54bc64e768448ccd554bf3a4878cbe988c0b645dd98 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "b4a385ba0f91091fbd2ba54bc64e768448ccd554bf3a4878cbe988c0b645dd98", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b4a385ba0f91091fbd2ba54bc64e768448ccd554bf3a4878cbe988c0b645dd98", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b4a385ba0f91091fbd2ba54bc64e768448ccd554bf3a4878cbe988c0b645dd98", kill_on_drop: false }` [INFO] [stdout] b4a385ba0f91091fbd2ba54bc64e768448ccd554bf3a4878cbe988c0b645dd98 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-07-24" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 8e1222dcab82f38b4025c34a9223899e1640603b116bff2fbac7a0806a5cd1bc [INFO] running `Command { std: "docker" "start" "-a" "8e1222dcab82f38b4025c34a9223899e1640603b116bff2fbac7a0806a5cd1bc", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v1.0.0 [INFO] [stderr] Compiling cfg-if v0.1.10 [INFO] [stderr] Compiling maybe-uninit v2.0.0 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling libc v0.2.71 [INFO] [stderr] Compiling scopeguard v1.1.0 [INFO] [stderr] Compiling smallvec v1.4.0 [INFO] [stderr] Compiling compare v0.1.0 [INFO] [stderr] Compiling bitset-fixed v0.1.0 [INFO] [stderr] Compiling metrohash v1.0.6 [INFO] [stderr] Compiling lock_api v0.3.4 [INFO] [stderr] Compiling binary-heap-plus v0.2.0 [INFO] [stderr] Compiling crossbeam-utils v0.7.2 [INFO] [stderr] Compiling memoffset v0.5.4 [INFO] [stderr] Compiling crossbeam-epoch v0.8.2 [INFO] [stderr] Compiling parking_lot_core v0.7.2 [INFO] [stderr] Compiling num_cpus v1.13.0 [INFO] [stderr] Compiling parking_lot v0.10.2 [INFO] [stderr] Compiling crossbeam-queue v0.2.3 [INFO] [stderr] Compiling crossbeam-channel v0.4.2 [INFO] [stderr] Compiling crossbeam-deque v0.7.3 [INFO] [stderr] Compiling crossbeam v0.7.3 [INFO] [stderr] Compiling ddo v0.2.3 (/opt/rustwide/workdir) [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 10.99s [INFO] running `Command { std: "docker" "inspect" "8e1222dcab82f38b4025c34a9223899e1640603b116bff2fbac7a0806a5cd1bc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8e1222dcab82f38b4025c34a9223899e1640603b116bff2fbac7a0806a5cd1bc", kill_on_drop: false }` [INFO] [stdout] 8e1222dcab82f38b4025c34a9223899e1640603b116bff2fbac7a0806a5cd1bc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-07-24" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5fccfe2215a6dd7c70f6425dc98e168191cb11475de4a5a3c24b835019f77197 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "5fccfe2215a6dd7c70f6425dc98e168191cb11475de4a5a3c24b835019f77197", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.18 [INFO] [stderr] Compiling version_check v0.9.2 [INFO] [stderr] Compiling unicode-xid v0.2.1 [INFO] [stderr] Compiling syn v1.0.33 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Compiling memchr v2.3.3 [INFO] [stderr] Compiling unicode-width v0.1.7 [INFO] [stderr] Compiling unicode-segmentation v1.6.0 [INFO] [stderr] Compiling ansi_term v0.11.0 [INFO] [stderr] Compiling strsim v0.8.0 [INFO] [stderr] Compiling vec_map v0.8.2 [INFO] [stderr] Compiling regex-syntax v0.6.18 [INFO] [stderr] Compiling mock-it v0.3.0 [INFO] [stderr] Compiling thread_local v1.0.1 [INFO] [stderr] Compiling textwrap v0.11.0 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling clap v2.33.1 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.3 [INFO] [stderr] Compiling proc-macro-error v1.0.3 [INFO] [stderr] Compiling heck v0.3.1 [INFO] [stderr] Compiling aho-corasick v0.7.13 [INFO] [stderr] Compiling quote v1.0.7 [INFO] [stderr] Compiling regex v1.3.9 [INFO] [stderr] Compiling syn-mid v0.5.0 [INFO] [stderr] Compiling structopt-derive v0.4.8 [INFO] [stderr] Compiling structopt v0.3.15 [INFO] [stderr] Compiling ddo v0.2.3 (/opt/rustwide/workdir) [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 1m 29s [INFO] running `Command { std: "docker" "inspect" "5fccfe2215a6dd7c70f6425dc98e168191cb11475de4a5a3c24b835019f77197", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5fccfe2215a6dd7c70f6425dc98e168191cb11475de4a5a3c24b835019f77197", kill_on_drop: false }` [INFO] [stdout] 5fccfe2215a6dd7c70f6425dc98e168191cb11475de4a5a3c24b835019f77197 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-07-24" "test" "--frozen", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 0d141af518b35b05481807a5b00128233b3178f6909ef5ea9c2ea133f76719d7 [INFO] running `Command { std: "docker" "start" "-a" "0d141af518b35b05481807a5b00128233b3178f6909ef5ea9c2ea133f76719d7", kill_on_drop: false }` [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.14s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/ddo-be655634f2848942 [INFO] [stdout] [INFO] [stdout] running 385 tests [INFO] [stdout] test abstraction::dp::test_problem_defaults::by_default_all_vars_return_all_possible_variables ... ok [INFO] [stdout] test abstraction::dp::test_problem_defaults::the_default_rough_upper_bound_is_infinity ... ok [INFO] [stdout] test common::test_domain::from_range_inclusive_single_value ... ok [INFO] [stdout] test common::test_domain::from_varset_non_empty ... ok [INFO] [stdout] test common::test_domain::from_varset_empty ... ok [INFO] [stdout] test common::test_domain::from_slice_non_empty ... ok [INFO] [stdout] test common::test_domain::from_range_empty_positive ... ok [INFO] [stdout] test common::test_domain::from_range_inclusive_empty_going_negative ... ok [INFO] [stdout] test common::test_frontier_node::frontier_nodes_are_equal_iff_they_have_equal_state_different_path ... ok [INFO] [stdout] test common::test_frontier_node::frontier_nodes_are_equal_iff_they_have_equal_state_different_ub ... ok [INFO] [stdout] test common::test_frontier_node::frontier_nodes_are_equal_iff_they_have_equal_state_different_value ... ok [INFO] [stdout] test common::test_domain::from_vector_non_empty ... ok [INFO] [stdout] test common::test_matrix::it_can_be_accessed_and_mutated_with_2d_position ... ok [INFO] [stdout] test common::test_frontier_node::frontier_nodes_are_equal_iff_they_have_equal_state_everything_equal ... ok [INFO] [stdout] test abstraction::dp::test_problem_defaults::by_default_all_vars_impact_all_states ... ok [INFO] [stdout] test common::test_domain::from_vector_empty ... ok [INFO] [stdout] test common::test_domain::from_bitset_non_empty ... ok [INFO] [stdout] test common::test_domain::from_range_inclusive_non_empty ... ok [INFO] [stdout] test common::test_domain::from_bitset_empty ... ok [INFO] [stdout] test common::test_domain::from_range_empty_going_negative ... ok [INFO] [stdout] test common::test_frontier_node::frontier_nodes_are_equal_iff_they_have_equal_state_not_equal ... ok [INFO] [stdout] test common::test_domain::from_slice_empty ... ok [INFO] [stdout] test common::test_domain::from_range_non_empty ... ok [INFO] [stdout] test common::test_matrix::it_is_initialized_with_default_elem ... ok [INFO] [stdout] test common::test_matrix::it_is_initialized_with_given_elem ... ok [INFO] [stdout] test common::test_var::test_var_id ... ok [INFO] [stdout] test common::test_partial_assignment::empty_pa_has_no_decision ... ok [INFO] [stdout] test common::test_varset::add_adds_the_variable ... ok [INFO] [stdout] test common::test_partial_assignment::fragment_extension_adds_one_or_more_decisions ... ok [INFO] [stdout] test common::test_solution::a_solution_can_iterate_over_the_decisions_of_some_partial_assignment ... ok [INFO] [stdout] test common::test_partial_assignment::iterating_a_fragment_extension_starts_with_the_extended_info_then_climbs_up ... ok [INFO] [stdout] test common::test_partial_assignment::iterating_a_single_extension_starts_with_the_extended_info_then_climbs_up ... ok [INFO] [stdout] test common::test_varset::all_contains_all_variables ... ok [INFO] [stdout] test common::test_varset::len_indicates_the_size_of_the_set ... ok [INFO] [stdout] test common::test_varset::is_empty_means_len_zero ... ok [INFO] [stdout] test common::test_partial_assignment::single_extension_adds_one_decision ... ok [INFO] [stdout] test common::test_varset::iter_lets_you_iterate_over_all_variables_in_the_set ... ok [INFO] [stdout] test common::test_varset::empty_contains_no_variable ... ok [INFO] [stdout] test common::tests_bitset_iter::bsiter_next_normal_case ... ok [INFO] [stdout] test common::tests_bitset_iter::bsiter_collect ... ok [INFO] [stdout] test common::tests_bitset_iter::bsiter_mutiple_words ... ok [INFO] [stdout] test common::test_varset::add_has_no_effect_when_var_is_already_present ... ok [INFO] [stdout] test common::test_partial_assignment::iterating_over_an_empty_partial_assignment_yields_no_decision ... ok [INFO] [stdout] test implementation::frontier::test_no_dup_frontier::by_default_it_is_empty ... ok [INFO] [stdout] test implementation::frontier::test_no_dup_frontier::when_i_clear_a_non_empty_frontier_it_becomes_empty ... ok [INFO] [stdout] test implementation::frontier::test_no_dup_frontier::when_i_clear_an_empty_frontier_it_remains_empty ... ok [INFO] [stdout] test implementation::frontier::test_no_dup_frontier::when_i_pop_a_node_it_is_always_the_one_with_the_largest_ub_then_lp ... ok [INFO] [stdout] test implementation::frontier::test_no_dup_frontier::when_i_pop_a_node_off_the_frontier_for_which_multiple_copies_have_been_added_then_i_retrieve_the_one_with_longest_path ... ok [INFO] [stdout] test implementation::frontier::test_no_dup_frontier::when_i_pop_a_node_off_the_frontier_then_the_length_decreases ... ok [INFO] [stdout] test implementation::frontier::test_no_dup_frontier::when_i_push_a_non_existing_node_onto_the_frontier_then_the_length_increases ... ok [INFO] [stdout] test implementation::frontier::test_no_dup_frontier::when_i_push_an_existing_node_onto_the_frontier_then_the_length_does_not_increases ... ok [INFO] [stdout] test implementation::frontier::test_no_dup_frontier::when_i_try_to_pop_a_node_off_an_empty_frontier_i_get_none ... ok [INFO] [stdout] test common::tests_lexbitset::same_size_equal ... ok [INFO] [stdout] test common::test_varset_iter::vsiter_mutiple_words ... ok [INFO] [stdout] test common::test_varset::remove_drops_the_variable ... ok [INFO] [stdout] test common::tests_bitset_iter::bsiter_no_items ... ok [INFO] [stdout] test implementation::frontier::test_simple_frontier::by_default_it_is_empty ... ok [INFO] [stdout] test implementation::frontier::test_no_dup_frontier::when_the_size_is_zero_then_it_is_empty ... ok [INFO] [stdout] test common::tests_lexbitset::same_size_less_than ... ok [INFO] [stdout] test implementation::frontier::test_simple_frontier::when_i_clear_a_non_empty_frontier_it_becomes_empty ... ok [INFO] [stdout] test implementation::frontier::test_simple_frontier::when_i_clear_an_empty_frontier_it_remains_empty ... ok [INFO] [stdout] test common::tests_lexbitset::same_size_greater_than ... ok [INFO] [stdout] test implementation::frontier::test_simple_frontier::when_i_pop_a_node_it_is_always_the_one_with_the_largest_ub_then_lp ... ok [INFO] [stdout] test implementation::frontier::test_simple_frontier::when_i_try_to_pop_a_node_off_an_empty_frontier_i_get_none ... ok [INFO] [stdout] test implementation::frontier::test_simple_frontier::when_the_size_is_greater_than_zero_it_is_not_empty ... ok [INFO] [stdout] test implementation::frontier::test_simple_frontier::when_i_pop_a_node_off_the_frontier_then_the_length_decreases ... ok [INFO] [stdout] test implementation::frontier::test_simple_frontier::when_the_size_is_zero_then_it_is_empty ... ok [INFO] [stdout] test implementation::frontier::test_simple_frontier::when_i_push_a_node_onto_the_frontier_then_the_length_increases ... ok [INFO] [stdout] test implementation::heuristics::test_adapters::test_times ... ok [INFO] [stdout] test implementation::heuristics::test_decreasing::example ... ok [INFO] [stdout] test implementation::heuristics::test_fixedwidth::all ... ok [INFO] [stdout] test common::test_varset_iter::vsiter_next_normal_case ... ok [INFO] [stdout] test implementation::heuristics::test_fixedwidth::empty ... ok [INFO] [stdout] test implementation::heuristics::test_fixedwidth::non_empty ... ok [INFO] [stdout] test implementation::heuristics::test_maxub::eq_self ... ok [INFO] [stdout] test implementation::heuristics::test_load_var_from_pa::some_vars_assigned ... ok [INFO] [stdout] test implementation::frontier::test_no_dup_frontier::when_the_size_is_greater_than_zero_it_is_not_empty ... ok [INFO] [stdout] test implementation::heuristics::test_load_var_from_pa::all_vars_assigned ... ok [INFO] [stdout] test common::test_varset::remove_has_no_effect_when_variable_already_absent ... ok [INFO] [stdout] test implementation::heuristics::test_maxub::eq_because_all_match ... ok [INFO] [stdout] test implementation::heuristics::test_maxub::lt_because_lplen ... ok [INFO] [stdout] test implementation::heuristics::test_maxub::gt_because_lplen ... ok [INFO] [stdout] test implementation::heuristics::test_minlp::eq_if_all_match_but_state ... ok [INFO] [stdout] test implementation::heuristics::test_maxub::example ... ok [INFO] [stdout] test implementation::heuristics::test_maxub::lt_because_ub ... ok [INFO] [stdout] test implementation::heuristics::test_minlp::example ... ok [INFO] [stdout] test implementation::heuristics::test_nbunassigned::all ... ok [INFO] [stdout] test implementation::heuristics::test_nbunassigned::empty ... ok [INFO] [stdout] test implementation::heuristics::test_nbunassigned::non_empty ... ok [INFO] [stdout] test implementation::mdd::config::tests::compare_is_a_pass_through_to_node_selection_heuristic ... ok [INFO] [stdout] test implementation::mdd::config::tests::domain_is_pass_though_for_problem ... ok [INFO] [stdout] test implementation::mdd::config::tests::estimate_ub_is_a_pass_through_for_relaxation ... ok [INFO] [stdout] test implementation::heuristics::test_adapters::test_div_by ... ok [INFO] [stdout] test implementation::heuristics::test_maxub::gt_because_ub ... ok [INFO] [stdout] test implementation::heuristics::test_minlp::lt_because_of_lplen ... ok [INFO] [stdout] test common::test_varset::varset_are_lex_ordered ... ok [INFO] [stdout] test implementation::heuristics::test_minlp::gt_because_of_lplen ... ok [INFO] [stdout] test implementation::heuristics::test_naturalorder::example ... ok [INFO] [stdout] test implementation::heuristics::test_minlp::eq_self ... ok [INFO] [stdout] test implementation::heuristics::test_load_var_from_pa::at_root ... ok [INFO] [stdout] test implementation::mdd::config::tests::relax_edge_is_a_pass_through_for_relaxation ... ok [INFO] [stdout] test implementation::mdd::config::tests::max_width_is_pass_through_for_heuristic ... ok [INFO] [stdout] test implementation::mdd::config::tests::load_vars_is_pass_through_for_heuristic ... ok [INFO] [stdout] test common::tests_lexbitset::different_sizes_considered_padded_with_zeroes ... ok [INFO] [stdout] test implementation::mdd::config::tests::it_can_build_a_plain_config ... ok [INFO] [stdout] test implementation::mdd::config::tests::merge_nodes_is_a_pass_through_for_relaxation_nonempty ... ok [INFO] [stdout] test implementation::mdd::config::tests::transition_cost_is_pass_though_for_problem ... ok [INFO] [stdout] test implementation::mdd::config::tests::it_can_build_a_deep_mdd ... ok [INFO] [stdout] test implementation::mdd::config::tests::it_can_build_a_flat_mdd ... ok [INFO] [stdout] test implementation::mdd::config::tests::merge_states_is_a_pass_through_for_relaxation_empty ... ok [INFO] [stdout] test implementation::mdd::config::tests::it_can_build_a_pooled_mdd ... ok [INFO] [stdout] test implementation::mdd::config::tests::transition_is_pass_though_for_problem ... ok [INFO] [stdout] test implementation::mdd::deep::mdd::test_deepmdd::a_relaxed_mdd_is_exact_as_long_as_no_merge_occurs ... ok [INFO] [stdout] test implementation::mdd::config::tests::root_node_uses_problem_initial_state_value_and_relaxation_estimate_on_root_state ... ok [INFO] [stdout] test implementation::mdd::config::tests::select_var_is_a_pass_through_to_heuristic ... ok [INFO] [stdout] test implementation::mdd::deep::mdd::test_deepmdd::an_exact_mdd_must_be_exact ... ok [INFO] [stdout] test implementation::mdd::deep::mdd::test_deepmdd::a_restricted_mdd_is_not_exact_when_a_restriction_occured ... ok [INFO] [stdout] test implementation::mdd::deep::mdd::test_deepmdd::exact_completely_unrolls_the_mdd_no_matter_its_width ... ok [INFO] [stdout] test implementation::mdd::deep::mdd::test_deepmdd::exact_skips_node_with_an_ub_less_than_best_known_lb ... ok [INFO] [stdout] test implementation::mdd::deep::mdd::test_deepmdd::by_default_the_mdd_type_is_exact ... ok [INFO] [stdout] test implementation::mdd::deep::mdd::test_deepmdd::mdd_type_changes_depending_on_the_requested_type_of_mdd ... ok [INFO] [stdout] test implementation::mdd::deep::mdd::test_deepmdd::a_relaxed_mdd_is_not_exact_when_a_merge_occured ... ok [INFO] [stdout] test implementation::mdd::deep::mdd::test_deepmdd::a_restricted_mdd_is_exact_as_long_as_no_restriction_occurs ... ok [INFO] [stdout] test implementation::mdd::deep::mdd::test_deepmdd::relaxed_skips_node_with_an_ub_less_than_best_known_lb ... ok [INFO] [stdout] test implementation::mdd::deep::mdd::test_deepmdd::relaxed_populates_the_cutset_and_will_not_squash_first_layer ... ok [INFO] [stdout] test implementation::mdd::deep::mdd::test_deepmdd::restricted_drops_the_less_interesting_nodes ... ok [INFO] [stdout] test implementation::mdd::deep::mdd::test_deepmdd::restricted_skips_node_with_an_ub_less_than_best_known_lb ... ok [INFO] [stdout] test implementation::mdd::deep::mdd::test_deepmdd::when_the_problem_is_infeasible_the_best_value_is_min_infinity ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::a_new_graph_has_one_empty_layer ... ok [INFO] [stdout] test implementation::mdd::deep::mdd::test_deepmdd::when_the_problem_is_infeasible_there_is_no_solution ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::add_edge_just_adds_an_edge_with_given_information ... ok [INFO] [stdout] test implementation::mdd::deep::mdd::test_deepmdd::root_remembers_the_pa_from_the_frontier_node ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::a_new_graph_is_empty ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::add_node_adds_a_new_node_when_it_does_not_exists ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::add_layer_clears_state_map ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::add_layer_adds_a_new_layer_starting_at_end_of_previous_one ... ok [INFO] [stdout] test implementation::mdd::deep::mdd::test_deepmdd::relaxed_merges_the_less_interesting_nodes ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::add_node_performs_no_inter_layer_reduction ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::add_root_increases_the_width_of_first_layer ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::best_solution ... ok [INFO] [stdout] test common::test_varset_iter::vsiter_no_items ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::add_node_returns_existing_node_when_one_with_same_state_belongs_to_current_layer ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::add_root_does_not_override_previous_root ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::add_root_increases_the_nodes_count ... ok [INFO] [stdout] test implementation::mdd::deep::mdd::test_deepmdd::relaxed_computes_local_bounds ... ok [INFO] [stdout] test common::test_varset_iter::vsiter_collect ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::add_root_creates_a_new_exact_disconnected_node ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::add_root_insert_root_state_in_state_map ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::graph_is_exact_as_long_as_it_has_not_been_restricted ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::current_layer_returns_current_layer ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::branch_will_make_target_node_inexact_if_one_of_the_parents_is_inexact ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::best_terminal ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::clear_resets_the_graph_state_as_if_it_were_fresh ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::default_graph_is_empty ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::default_graph_has_one_empty_layer ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::graph_is_exact_as_long_as_it_has_not_been_relaxed ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::branch_reuses_target_node_and_adds_an_edge ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::branch_will_keep_the_best_parent_and_value_if_it_needs_to_be_updated ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::node_has_no_exact_best_path_when_it_is_relaxed ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::nb_edges_counts_the_number_of_edges_in_a_graph ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::layer_nodes_returns_a_slice_with_the_appropriate_nodes ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::has_exact_best_path_can_be_called_for_non_terminal_node ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::none_has_a_trivial_exact_best_path ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::longest_path ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::node_has_no_exact_best_path_when_longest_path_crosses_relaxed_node ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::relax_last_layer_will_bring_about_one_node ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::branch_creates_target_node_and_adds_an_edge ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::node_has_exact_best_path_when_it_is_not_exact_but_its_longest_path_is_exact ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::relax_last_layer_enforces_the_given_max_width ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::relax_last_layer_uses_node_selection_heuristic_to_rank_nodes_and_renames_others ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::parents_returns_an_iterator_over_the_parent_nodes ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::nb_node_counts_the_number_of_nodes_in_a_graph ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::relax_last_relaxes_the_weight_of_all_redirected_edges ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::relax_last_layer_can_produce_lesser_max_width_when_merged_state_already_exists ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::relax_last_remembers_the_state_of_merged_node_even_if_it_corresponds_to_that_of_one_that_was_deleted ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::relax_last_layer_will_bring_about_one_node_unless_merged_state_is_already_known ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::relax_last_remembers_the_last_exact_layer_if_needed ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::relax_last_makes_the_graph_inexact ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::relax_last_redirects_the_edges_of_deleted_nodes_to_the_merged_node ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::relax_last_remembers_the_state_of_merged_node ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::node_has_exact_best_path_when_it_is_exact ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::restrict_last_layer_uses_node_selection_heuristic_to_rank_nodes_and_renames_others ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::relax_last_updates_best_parent_and_value_if_merged_node_already_exists ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::remember_lel_has_no_effect_when_lel_is_present ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::restrict_last_makes_the_graph_inexact ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::restrict_last_remembers_the_last_exact_layer_if_needed ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::relax_last_will_not_update_best_parent_and_value_when_there_is_no_improvement ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::remember_lel_remembers_the_last_exact_layer ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::relax_last_updates_best_parent_and_value_relaxed_edge_improve_value ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::relax_last_layer_forgets_the_state_of_deleted_nodes ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::restrict_last_layer_will_not_bring_about_new_nodes ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::root_returns_the_first_node ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::sort_ensures_that_state_map_is_coherent_with_new_position ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::test_relax_last_layer_when_width_is_one ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::test_delete_edges ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::restrict_last_deletes_the_edges_of_deleted_nodes_and_renames_others ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::restrict_last_layer_enforces_the_given_width ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_layerdata::when_start_and_end_are_the_same_the_layer_is_empty ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::when_branch_reuses_target_node_it_updates_inbound_edge_list ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_node_data::is_feasible_iff_marked_so ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_layerdata::width_equals_the_number_of_nodes_in_the_layer ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_node_data::is_relaxed_iff_marked_exact_and_not_relaxed ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_node_data::is_relaxed_iff_node_was_relaxed ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_node_data::state_yields_a_plain_reference_to_the_state ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_node_data::new_can_create_a_new_relaxed_node ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_node_data::state_ref_yields_an_arc_reference_to_the_state ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_node_data::new_can_create_a_new_exact_node ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::test_add_node ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::restrict_last_layer_forgets_the_state_of_deleted_nodes ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::sort_ensures_that_nodes_id_are_coherent_with_their_position ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::sort_does_not_change_the_graph_for_the_outer_world ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::sort_ensures_that_end_of_an_edge_is_coherent_with_its_node ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_flat_deep::a_relaxed_mdd_is_exact_as_long_as_no_merge_occurs ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_flat_deep::a_restricted_mdd_is_not_exact_when_a_restriction_occured ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_node_data::value_returns_the_longest_path_from_the_root ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_node_data::when_created_a_node_is_disconnected_from_graph ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_flat_deep::exact_skips_node_with_an_ub_less_than_best_known_lb ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_flat_deep::a_relaxed_mdd_is_not_exact_when_a_merge_occured ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_flat_deep::an_exact_mdd_must_be_exact ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_flat_deep::by_default_the_mdd_type_is_exact ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_flat_deep::relaxed_merges_the_less_interesting_nodes ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_flat_deep::relaxed_populates_the_cutset_and_will_not_squash_first_layer ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_flat_deep::restricted_skips_node_with_an_ub_less_than_best_known_lb ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_flat_deep::restricted_drops_the_less_interesting_nodes ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_flat_deep::relaxed_skips_node_with_an_ub_less_than_best_known_lb ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_flat_deep::when_the_problem_is_infeasible_the_best_value_is_min_infinity ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_pooled_deep::a_restricted_mdd_is_not_exact_when_a_restriction_occured ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_flat_deep::when_the_problem_is_infeasible_there_is_no_solution ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_pooled_deep::by_default_the_mdd_type_is_exact ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_pooled_deep::an_exact_mdd_must_be_exact ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_pooled_deep::a_relaxed_mdd_is_exact_as_long_as_no_merge_occurs ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_pooled_deep::a_restricted_mdd_is_exact_as_long_as_no_restriction_occurs ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_flat_deep::a_restricted_mdd_is_exact_as_long_as_no_restriction_occurs ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_flat_deep::mdd_type_changes_depending_on_the_requested_type_of_mdd ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_flat_deep::exact_completely_unrolls_the_mdd_no_matter_its_width ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_pooled_deep::relaxed_skips_node_with_an_ub_less_than_best_known_lb ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_pooled_deep::restricted_drops_the_less_interesting_nodes ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_pooled_deep::when_the_problem_is_infeasible_the_best_value_is_min_infinity ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_pooled_deep::when_the_problem_is_infeasible_there_is_no_solution ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_pooled_deep::exact_skips_node_with_an_ub_less_than_best_known_lb ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_pooled_deep::restricted_skips_node_with_an_ub_less_than_best_known_lb ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_pooled_deep::a_relaxed_mdd_is_not_exact_when_a_merge_occured ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_pooled_deep::exact_completely_unrolls_the_mdd_no_matter_its_width ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_flatmdd::an_exact_mdd_must_be_exact ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_flatmdd::by_default_the_mdd_type_is_exact ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_flatmdd::a_relaxed_mdd_is_not_exact_when_a_merge_occured ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_flatmdd::a_relaxed_mdd_is_exact_as_long_as_no_merge_occurs ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_flatmdd::exact_completely_unrolls_the_mdd_no_matter_its_width ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_flatmdd::a_restricted_mdd_is_not_exact_when_a_restriction_occured ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_flatmdd::a_restricted_mdd_is_exact_as_long_as_no_restriction_occurs ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_flatmdd::exact_skips_node_with_an_ub_less_than_best_known_lb ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_flatmdd::relaxed_merges_the_less_interesting_nodes ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_flatmdd::mdd_type_changes_depending_on_the_requested_type_of_mdd ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_flatmdd::relaxed_skips_node_with_an_ub_less_than_best_known_lb ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_flatmdd::restricted_skips_node_with_an_ub_less_than_best_known_lb ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_flatmdd::relaxed_populates_the_cutset_and_will_not_squash_first_layer ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_flatmdd::restricted_drops_the_less_interesting_nodes ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_flatmdd::when_the_problem_is_infeasible_the_best_value_is_min_infinity ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_pooled_deep::mdd_type_changes_depending_on_the_requested_type_of_mdd ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_flatmdd::when_the_problem_is_infeasible_there_is_no_solution ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::branch_updates_existing_node_to_remember_last_decision_and_path_if_it_improves_value ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_pooled_deep::relaxed_merges_the_less_interesting_nodes ... ok [INFO] [stdout] test implementation::mdd::hybrid::test_hybrid_pooled_deep::relaxed_populates_the_cutset_and_will_not_squash_first_layer ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::branch_inserts_a_node_with_given_state_when_none_exists ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::branch_wont_update_existing_node_to_remember_last_decision_and_path_if_it_doesnt_improve_value ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::relax_last_layer_enforces_the_given_max_width ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::relax_last_layer_uses_node_selection_heuristic_to_rank_nodes_and_renames_others ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::relax_last_relaxes_the_weight_of_all_redirected_best_edges ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::relax_last_layer_can_produce_lesser_max_width_when_merged_state_already_exists ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::relax_last_remembers_the_state_of_merged_node ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::relax_last_updates_best_parent_and_value_if_merged_node_already_exists ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::relax_last_updates_best_parent_and_value_relaxed_edge_improve_value ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::relax_last_will_not_update_best_parent_and_value_when_there_is_no_improvement ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::relax_last_remembers_the_state_of_merged_node_even_if_it_corresponds_to_that_of_one_that_was_deleted ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::relax_last_layer_forgets_the_state_of_deleted_nodes ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::relax_last_layer_will_bring_about_one_node ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::remember_lel_remembers_the_last_exact_layer ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::relax_last_layer_will_bring_about_one_node_unless_merged_state_is_already_known ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::restrict_last_layer_enforces_the_max_width ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::remember_lel_has_no_effect_when_lel_is_present ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::restrict_last_remembers_the_last_exact_layer_if_needed ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::restrict_last_makes_the_graph_inexact ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::restrict_last_wont_panic_if_layer_is_not_broad_enough ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::test_relax_last_layer_when_width_is_one ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_pooledmdd::a_relaxed_mdd_is_not_exact_when_a_merge_occured ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_pooledmdd::a_relaxed_mdd_is_exact_as_long_as_no_merge_occurs ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_pooledmdd::a_relaxed_mdd_populates_frontier_cutset ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::relax_last_makes_the_graph_inexact ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_pooledmdd::a_restricted_mdd_is_not_exact_when_a_restriction_occured ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::restrict_last_layer_forgets_the_state_of_deleted_nodes ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_pooledmdd::a_restricted_mdd_is_exact_as_long_as_no_restriction_occurs ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::restrict_last_layer_will_not_bring_about_new_nodes ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::restrict_last_layer_uses_node_selection_heuristic_to_rank_nodes ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_pooledmdd::an_exact_mdd_must_be_exact ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_pooledmdd::exact_skips_node_with_an_ub_less_than_best_known_lb ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_pooledmdd::by_default_the_mdd_type_is_exact ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_pooledmdd::restricted_drops_the_less_interesting_nodes ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_pooledmdd::mdd_type_changes_depending_on_the_requested_type_of_mdd ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::relax_last_remembers_the_last_exact_layer_if_needed ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_pooledmdd::relaxed_skips_node_with_an_ub_less_than_best_known_lb ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_pooledmdd::restricted_skips_node_with_an_ub_less_than_best_known_lb ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::branch_wont_update_existing_node_to_remember_last_decision_and_path_if_it_doesnt_improve_value ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_pooledmdd::when_the_problem_is_infeasible_there_is_no_solution ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_pooledmdd::when_the_problem_is_infeasible_the_best_value_is_min_infinity ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::relax_last_layer_enforces_the_given_max_width ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::relax_last_layer_forgets_the_state_of_deleted_nodes ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::relax_last_layer_uses_node_selection_heuristic_to_rank_nodes ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_pooledmdd::exact_completely_unrolls_the_mdd_no_matter_its_width ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::relax_last_layer_will_bring_about_one_node ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::relax_last_layer_will_bring_about_one_node_unless_merged_state_is_already_known ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::relax_last_layer_can_produce_lesser_max_width_when_merged_state_already_exists ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_pooledmdd::relaxed_merges_the_less_interesting_nodes ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::branch_inserts_a_node_with_given_state_when_none_exists ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::branch_updates_existing_node_to_remember_last_decision_and_path_if_it_improves_value ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::relax_last_makes_the_graph_inexact ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::relax_last_relaxes_the_weight_of_all_redirected_best_edges ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::relax_last_populates_the_cutset ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::relax_last_remembers_the_state_of_merged_node_even_if_it_corresponds_to_that_of_one_that_was_deleted ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::relax_last_updates_best_parent_and_value_if_merged_node_already_exists ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::restrict_last_layer_forgets_the_state_of_deleted_nodes ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::relax_last_updates_best_parent_and_value_relaxed_edge_improve_value ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::relax_last_will_not_update_best_parent_and_value_when_there_is_no_improvement ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::relax_last_remembers_the_state_of_merged_node ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::restrict_last_layer_enforces_the_max_width ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::restrict_last_layer_will_not_bring_about_new_nodes ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::restrict_last_makes_the_graph_inexact ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::restrict_last_will_not_populate_cutset ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::restrict_last_wont_panic_if_layer_is_not_broad_enough ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::test_relax_last_layer_when_width_is_one ... ok [INFO] [stdout] test implementation::mdd::shallow::utils::test_node::merging_exact_and_inexact_makes_the_result_inexact ... ok [INFO] [stdout] test implementation::mdd::shallow::utils::test_node::merging_exact_and_relaxed_clears_relaxed_flag_if_best_not_relaxed ... ok [INFO] [stdout] test implementation::mdd::shallow::utils::test_node::merging_exact_and_relaxed_not_relaxed_if_best_not_relaxed ... ok [INFO] [stdout] test implementation::mdd::shallow::utils::test_node::merging_exact_and_relaxed_yields_relaxed_if_best_has_relaxed_flag ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::restrict_last_layer_uses_node_selection_heuristic_to_rank_nodes ... ok [INFO] [stdout] test implementation::mdd::shallow::utils::test_node::merging_two_exact_nodes_has_no_effect_when_second_has_equal_value ... ok [INFO] [stdout] test implementation::mdd::shallow::utils::test_node::selectable_node_is_exact_iff_flags_is_exact_and_not_relaxed ... ok [INFO] [stdout] test implementation::mdd::shallow::utils::test_node::selectable_node_yields_a_ref_to_this_state ... ok [INFO] [stdout] test implementation::mdd::shallow::utils::test_node::merging_two_exact_nodes_has_no_effect_when_second_has_lower_value ... ok [INFO] [stdout] test implementation::mdd::shallow::utils::test_node::merging_two_nodes_updates_best_edge_and_value_when_second_has_higher_value ... ok [INFO] [stdout] test implementation::mdd::shallow::utils::test_node::node_has_exact_best_iff_relaxed_flag_is_not_set ... ok [INFO] [stdout] test implementation::mdd::shallow::utils::test_node::test_from_frontier_node ... ok [INFO] [stdout] test implementation::mdd::shallow::utils::test_node::test_into_frontier_node_no_path ... ok [INFO] [stdout] test implementation::mdd::utils::test_node_flags::at_creation_time_feasible_flag_is_never_set ... ok [INFO] [stdout] test implementation::mdd::utils::test_node_flags::add_turns_one_or_more_flags_on ... ok [INFO] [stdout] test implementation::mdd::shallow::utils::test_node::test_into_frontier_with_path ... ok [INFO] [stdout] test implementation::mdd::utils::test_node_flags::by_default_only_the_exact_flag_is_on ... ok [INFO] [stdout] test implementation::mdd::utils::test_node_flags::is_exact_iff_marked_so_and_not_relaxed ... ok [INFO] [stdout] test implementation::mdd::utils::test_node_flags::is_feasible_iff_marked_so ... ok [INFO] [stdout] test implementation::mdd::utils::test_node_flags::new_can_be_relaxed_or_not ... ok [INFO] [stdout] test implementation::mdd::utils::test_node_flags::remove_turns_one_or_more_flags_off ... ok [INFO] [stdout] test implementation::mdd::utils::test_node_flags::set_turns_one_or_more_flags_on_or_off ... ok [INFO] [stdout] test implementation::mdd::utils::test_node_flags::test_checks_the_value_of_more_than_one_flag ... ok [INFO] [stdout] test implementation::mdd::utils::test_node_flags::test_yields_the_value_of_the_flag ... ok [INFO] [stdout] test implementation::solver::parallel::test_solver::by_default_it_uses_all_hw_threads ... ok [INFO] [stdout] test implementation::solver::parallel::test_solver::by_default_verbosity_is_zero ... ok [INFO] [stdout] test implementation::solver::parallel::test_solver::empty_fringe_before_solving ... ok [INFO] [stdout] test implementation::mdd::shallow::utils::test_node::selectable_node_yields_the_nodes_value ... ok [INFO] [stdout] test implementation::mdd::shallow::utils::test_node::set_exact_changes_the_value_of_exact_flag ... ok [INFO] [stdout] test implementation::mdd::utils::test_node_flags::is_relaxed_iff_created_or_marked_relaxed ... ok [INFO] [stdout] test implementation::solver::parallel::test_solver::default_best_lb_is_neg_infinity ... ok [INFO] [stdout] test implementation::solver::parallel::test_solver::num_threads_and_verbosity_can_be_customized ... ok [INFO] [stdout] test implementation::solver::parallel::test_solver::no_solution_before_solving ... ok [INFO] [stdout] test implementation::solver::parallel::test_solver::num_threads_can_be_customized ... ok [INFO] [stdout] test implementation::solver::parallel::test_solver::verbosity_can_be_customized ... ok [INFO] [stdout] test implementation::solver::sequential::test_solver::default_best_lb_is_neg_infinity ... ok [INFO] [stdout] test implementation::solver::sequential::test_solver::default_best_ub_is_pos_infinity ... ok [INFO] [stdout] test implementation::solver::sequential::test_solver::by_default_verbosity_is_zero ... ok [INFO] [stdout] test implementation::solver::parallel::test_solver::set_primal_overwrites_best_value_and_sol_if_it_improves ... ok [INFO] [stdout] test implementation::solver::sequential::test_solver::maximizes_yields_the_optimum ... ok [INFO] [stdout] test implementation::solver::sequential::test_solver::no_solution_before_solving ... ok [INFO] [stdout] test implementation::solver::sequential::test_solver::empty_fringe_before_solving ... ok [INFO] [stdout] test implementation::solver::sequential::test_solver::maximizes_yields_the_optimum_2 ... ok [INFO] [stdout] test implementation::heuristics::test_adapters::test_div_by_panics_when_div_by_zero ... ok [INFO] [stdout] test implementation::solver::parallel::test_solver::maximizes_yields_the_optimum ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::relax_last_panics_if_layer_is_not_broad_enough ... ok [INFO] [stdout] test implementation::solver::sequential::test_solver::verbosity_can_be_customized ... ok [INFO] [stdout] test implementation::solver::sequential::test_solver::set_primal_overwrites_best_value_and_sol_if_it_improves ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::relax_last_panics_if_width_is_0 ... ok [INFO] [stdout] test implementation::solver::parallel::test_solver::maximizes_yields_the_optimum_2 ... ok [INFO] [stdout] test common::test_varset::contains_panic_when_over_the_max_number_of_vars ... ok [INFO] [stdout] test implementation::mdd::deep::mddgraph::test_graph::restrict_last_panics_if_layer_is_not_broad_enough ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::relax_last_panics_if_layer_is_not_broad_enough ... ok [INFO] [stdout] test implementation::mdd::shallow::flat::test_private::relax_last_panics_if_width_is_0 ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::relax_last_panics_if_width_is_0 ... ok [INFO] [stdout] test implementation::mdd::shallow::pooled::test_private::relax_last_panics_if_layer_is_not_broad_enough ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 385 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Doc-tests ddo [INFO] [stdout] [INFO] [stdout] running 27 tests [INFO] [stdout] test src/common.rs - common::BitSetIter (line 524) ... ok [INFO] [stdout] test src/common.rs - common::LexBitSet (line 599) ... ok [INFO] [stdout] test src/common.rs - common::Variable::id (line 60) ... ok [INFO] [stdout] test src/implementation/heuristics.rs - implementation::heuristics::Decreasing (line 84) ... ok [INFO] [stdout] test src/common.rs - common::VarSet (line 436) ... ok [INFO] [stdout] test src/common.rs - common::Domain (line 84) ... ok [INFO] [stdout] test src/implementation/heuristics.rs - implementation::heuristics::FixedWidth (line 139) ... ok [INFO] [stdout] test src/implementation/heuristics.rs - implementation::heuristics::MaxUB (line 330) ... ok [INFO] [stdout] test src/common.rs - common::VarSetIter (line 497) ... ok [INFO] [stdout] test src/common.rs - common::PartialAssignment::iter (line 333) ... ok [INFO] [stdout] test src/common.rs - common::Matrix (line 679) ... ok [INFO] [stdout] test src/common.rs - common::Solution (line 237) ... ok [INFO] [stdout] test src/common.rs - common::PartialAssignment (line 272) ... ok [INFO] [stdout] test src/implementation/heuristics.rs - implementation::heuristics::DivBy (line 242) ... ok [INFO] [stdout] test src/implementation/heuristics.rs - implementation::heuristics::NbUnassignedWitdh (line 175) ... ok [INFO] [stdout] test src/lib.rs - (line 100) ... ok [INFO] [stdout] test src/implementation/heuristics.rs - implementation::heuristics::NaturalOrder (line 39) ... ok [INFO] [stdout] test src/implementation/heuristics.rs - implementation::heuristics::Times (line 206) ... ok [INFO] [stdout] test src/lib.rs - (line 53) ... ok [INFO] [stdout] test src/implementation/mdd/config.rs - implementation::mdd::config::mdd_builder (line 44) ... ok [INFO] [stdout] test src/implementation/mdd/shallow/pooled.rs - implementation::mdd::shallow::pooled::PooledMDD (line 53) ... ok [INFO] [stdout] test src/implementation/mdd/deep/mddgraph.rs - implementation::mdd::deep::mddgraph::LayerData (line 217) ... ok [INFO] [stdout] test src/implementation/mdd/config.rs - implementation::mdd::config::ConfigurationBuilder (line 164) ... ok [INFO] [stdout] test src/implementation/mdd/config.rs - implementation::mdd::config::config_builder (line 96) ... ok [INFO] [stdout] test src/implementation/mdd/shallow/flat.rs - implementation::mdd::shallow::flat::FlatMDD (line 67) ... ok [INFO] [stdout] test src/implementation/solver/sequential.rs - implementation::solver::sequential::SequentialSolver (line 34) ... ok [INFO] [stdout] test src/lib.rs - (line 130) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 27 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "0d141af518b35b05481807a5b00128233b3178f6909ef5ea9c2ea133f76719d7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0d141af518b35b05481807a5b00128233b3178f6909ef5ea9c2ea133f76719d7", kill_on_drop: false }` [INFO] [stdout] 0d141af518b35b05481807a5b00128233b3178f6909ef5ea9c2ea133f76719d7