[INFO] cloning repository https://github.com/Swiftaff/rust_ray_tracer_challenge [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Swiftaff/rust_ray_tracer_challenge" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSwiftaff%2Frust_ray_tracer_challenge", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSwiftaff%2Frust_ray_tracer_challenge'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] fe6dd26a57cc5574dbcde434449bb35047c1d25a [INFO] testing Swiftaff/rust_ray_tracer_challenge against 1.60.0 for beta-1.61-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSwiftaff%2Frust_ray_tracer_challenge" "/workspace/builds/worker-21/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-21/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Swiftaff/rust_ray_tracer_challenge on toolchain 1.60.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Swiftaff/rust_ray_tracer_challenge [INFO] finished tweaking git repo https://github.com/Swiftaff/rust_ray_tracer_challenge [INFO] tweaked toml for git repo https://github.com/Swiftaff/rust_ray_tracer_challenge written to /workspace/builds/worker-21/source/Cargo.toml [INFO] crate git repo https://github.com/Swiftaff/rust_ray_tracer_challenge already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded libssh2-sys v0.2.16 [INFO] [stderr] Downloaded git2 v0.13.2 [INFO] [stderr] Downloaded last-git-commit v0.2.0 [INFO] [stderr] Downloaded libgit2-sys v0.12.3+1.0.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-21/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-21/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0d38384a40eefaa8c8c17803e0ac217bbb0d65362ca77c7f67325cca2efa69a9 [INFO] running `Command { std: "docker" "start" "-a" "0d38384a40eefaa8c8c17803e0ac217bbb0d65362ca77c7f67325cca2efa69a9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0d38384a40eefaa8c8c17803e0ac217bbb0d65362ca77c7f67325cca2efa69a9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0d38384a40eefaa8c8c17803e0ac217bbb0d65362ca77c7f67325cca2efa69a9", kill_on_drop: false }` [INFO] [stdout] 0d38384a40eefaa8c8c17803e0ac217bbb0d65362ca77c7f67325cca2efa69a9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-21/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-21/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] da3f6b97464af2e2cc97157d499c22bee9a61ef6cd6abb466c599fb92bb3a631 [INFO] running `Command { std: "docker" "start" "-a" "da3f6b97464af2e2cc97157d499c22bee9a61ef6cd6abb466c599fb92bb3a631", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling libc v0.2.67 [INFO] [stderr] Compiling pkg-config v0.3.17 [INFO] [stderr] Compiling adler32 v1.0.4 [INFO] [stderr] Compiling rayon-core v1.7.0 [INFO] [stderr] Compiling smallvec v1.3.0 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Compiling crc32fast v1.2.0 [INFO] [stderr] Compiling lzw v0.10.0 [INFO] [stderr] Compiling color_quant v1.0.1 [INFO] [stderr] Compiling scoped_threadpool v0.1.9 [INFO] [stderr] Compiling bytemuck v1.2.0 [INFO] [stderr] Compiling read_input v0.8.4 [INFO] [stderr] Compiling crossbeam-utils v0.7.2 [INFO] [stderr] Compiling memoffset v0.5.4 [INFO] [stderr] Compiling num-traits v0.2.11 [INFO] [stderr] Compiling crossbeam-epoch v0.8.2 [INFO] [stderr] Compiling num-integer v0.1.42 [INFO] [stderr] Compiling num-rational v0.2.4 [INFO] [stderr] Compiling num-iter v0.1.40 [INFO] [stderr] Compiling deflate v0.8.4 [INFO] [stderr] Compiling miniz_oxide v0.3.6 [INFO] [stderr] Compiling inflate v0.4.5 [INFO] [stderr] Compiling gif v0.10.3 [INFO] [stderr] Compiling unicode-normalization v0.1.12 [INFO] [stderr] Compiling tiff v0.4.0 [INFO] [stderr] Compiling png v0.16.2 [INFO] [stderr] Compiling idna v0.2.0 [INFO] [stderr] Compiling jobserver v0.1.21 [INFO] [stderr] Compiling getrandom v0.1.14 [INFO] [stderr] Compiling num_cpus v1.13.0 [INFO] [stderr] Compiling time v0.1.42 [INFO] [stderr] Compiling rand_core v0.5.1 [INFO] [stderr] Compiling cc v1.0.50 [INFO] [stderr] Compiling crossbeam-queue v0.2.1 [INFO] [stderr] Compiling rand_chacha v0.2.2 [INFO] [stderr] Compiling url v2.1.1 [INFO] [stderr] Compiling crossbeam-deque v0.7.3 [INFO] [stderr] Compiling rand v0.7.3 [INFO] [stderr] Compiling chrono v0.4.11 [INFO] [stderr] Compiling openssl-sys v0.9.55 [INFO] [stderr] Compiling libz-sys v1.0.25 [INFO] [stderr] Compiling libssh2-sys v0.2.16 [INFO] [stderr] Compiling libgit2-sys v0.12.3+1.0.0 [INFO] [stderr] Compiling rayon v1.3.0 [INFO] [stderr] Compiling uuid v0.8.1 [INFO] [stderr] Compiling jpeg-decoder v0.1.18 [INFO] [stderr] Compiling image v0.23.3 [INFO] [stderr] Compiling git2 v0.13.2 [INFO] [stderr] Compiling last-git-commit v0.2.0 [INFO] [stderr] Compiling rust_ray_tracer_challenge v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `crate::patterns` [INFO] [stdout] --> src/worlds.rs:172:9 [INFO] [stdout] | [INFO] [stdout] 172 | use crate::patterns; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::planes` [INFO] [stdout] --> src/worlds.rs:173:9 [INFO] [stdout] | [INFO] [stdout] 173 | use crate::planes; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 14.33s [INFO] running `Command { std: "docker" "inspect" "da3f6b97464af2e2cc97157d499c22bee9a61ef6cd6abb466c599fb92bb3a631", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "da3f6b97464af2e2cc97157d499c22bee9a61ef6cd6abb466c599fb92bb3a631", kill_on_drop: false }` [INFO] [stdout] da3f6b97464af2e2cc97157d499c22bee9a61ef6cd6abb466c599fb92bb3a631 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-21/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-21/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6d095f9adb3c900ff9886795ce4a76684b9d67d89b64052b1f5c362188670d75 [INFO] running `Command { std: "docker" "start" "-a" "6d095f9adb3c900ff9886795ce4a76684b9d67d89b64052b1f5c362188670d75", kill_on_drop: false }` [INFO] [stderr] Compiling serde v1.0.106 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling proc-macro2 v1.0.10 [INFO] [stderr] Compiling ryu v1.0.3 [INFO] [stderr] Compiling memchr v2.3.3 [INFO] [stderr] Compiling syn v1.0.17 [INFO] [stderr] Compiling itoa v0.4.5 [INFO] [stderr] Compiling regex-syntax v0.6.17 [INFO] [stderr] Compiling oorandom v11.1.0 [INFO] [stderr] Compiling walkdir v2.3.1 [INFO] [stderr] Compiling regex-automata v0.1.9 [INFO] [stderr] Compiling clap v2.33.0 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling plotters v0.2.12 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling csv-core v0.1.10 [INFO] [stderr] Compiling cast v0.2.3 [INFO] [stderr] Compiling quote v1.0.3 [INFO] [stderr] Compiling regex v1.3.7 [INFO] [stderr] Compiling criterion-plot v0.4.1 [INFO] [stderr] Compiling bstr v0.2.12 [INFO] [stderr] Compiling serde_json v1.0.51 [INFO] [stderr] Compiling csv v1.1.3 [INFO] [stderr] Compiling tinytemplate v1.0.3 [INFO] [stderr] Compiling serde_derive v1.0.106 [INFO] [stderr] Compiling criterion v0.3.1 [INFO] [stderr] Compiling rust_ray_tracer_challenge v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 20.41s [INFO] running `Command { std: "docker" "inspect" "6d095f9adb3c900ff9886795ce4a76684b9d67d89b64052b1f5c362188670d75", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6d095f9adb3c900ff9886795ce4a76684b9d67d89b64052b1f5c362188670d75", kill_on_drop: false }` [INFO] [stdout] 6d095f9adb3c900ff9886795ce4a76684b9d67d89b64052b1f5c362188670d75 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-21/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-21/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] b6b0bf830f7762e697ffe7007ba00c8926be9e8824615a0d0fc0288ce7943284 [INFO] running `Command { std: "docker" "start" "-a" "b6b0bf830f7762e697ffe7007ba00c8926be9e8824615a0d0fc0288ce7943284", kill_on_drop: false }` [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.06s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/rust_ray_tracer_challenge-33460c08048d2403) [INFO] [stdout] [INFO] [stdout] running 52 tests [INFO] [stdout] test tuples::tests::test_color_is_rgb ... ok [INFO] [stdout] test tuples::tests::test_colors_multiply ... ok [INFO] [stdout] test tuples::tests::test_colors_scalar_multiply ... ok [INFO] [stdout] test tuples::tests::test_colors_add ... ok [INFO] [stdout] test tuples::tests::test_colors_subtract ... ok [INFO] [stdout] test tuples::tests::test_cross_product_point_point_error ... ok [INFO] [stdout] test tuples::tests::test_cross_product_point_vector_error ... ok [INFO] [stdout] test tuples::tests::test_cross_product_vector_point_error ... ok [INFO] [stdout] test tuples::tests::test_cross_product_vector_vector ... ok [INFO] [stdout] test tuples::tests::test_cross_product_vector_vector_reversed ... ok [INFO] [stdout] test tuples::tests::test_dividing_point_by_scalar ... ok [INFO] [stdout] test tuples::tests::test_dividing_vector_by_scalar ... ok [INFO] [stdout] test tuples::tests::test_dot_product_point_point_error ... ok [INFO] [stdout] test tuples::tests::test_dot_product_point_vector_error ... ok [INFO] [stdout] test tuples::tests::test_dot_product_two_vectors ... ok [INFO] [stdout] test tuples::tests::test_dot_product_vector_point_error ... ok [INFO] [stdout] test tuples::tests::test_environment_has_gravity_wind ... ok [INFO] [stdout] test tuples::tests::test_get_magnitude_of_vector001 ... ok [INFO] [stdout] test tuples::tests::test_get_magnitude_of_vector010 ... ok [INFO] [stdout] test tuples::tests::test_get_magnitude_of_vector100 ... ok [INFO] [stdout] test tuples::tests::test_get_magnitude_of_vector123 ... ok [INFO] [stdout] test tuples::tests::test_get_magnitude_of_vector_neg123 ... ok [INFO] [stdout] test tuples::tests::test_multiply_point_by_fraction ... ok [INFO] [stdout] test tuples::tests::test_multiply_point_by_scalar ... ok [INFO] [stdout] test tuples::tests::test_multiply_vector_by_fraction ... ok [INFO] [stdout] test tuples::tests::test_multiply_vector_by_scalar ... ok [INFO] [stdout] test tuples::tests::test_negate_vector_is_equal_to_error ... ok [INFO] [stdout] test tuples::tests::test_negate_vector_is_equal_to_neg_vector ... ok [INFO] [stdout] test tuples::tests::test_point_is_a_tuple_w1 ... ok [INFO] [stdout] test tuples::tests::test_point_is_a_tuplew1 ... ok [INFO] [stdout] test tuples::tests::test_projectile_has_position_velocity ... ok [INFO] [stdout] test tuples::tests::test_reflect_vector_45degrees ... ok [INFO] [stdout] test tuples::tests::test_reflect_vector_slanted_surface ... ok [INFO] [stdout] test tuples::tests::test_tick_creates_projectile ... ok [INFO] [stdout] test tuples::tests::test_tuple_add_point_vector_is_equal_to_point ... ok [INFO] [stdout] test tuples::tests::test_tuple_add_vector_point_is_equal_to_point ... ok [INFO] [stdout] test tuples::tests::test_tuple_add_vector_vector_is_equal_to_vector ... ok [INFO] [stdout] test tuples::tests::test_tuple_subtract_point_point_is_equal_to_vector ... ok [INFO] [stdout] test tuples::tests::test_tuple_subtract_vector_point_is_equal_to_error ... ok [INFO] [stdout] test tuples::tests::test_tuple_subtract_point_vector_is_equal_to_point ... ok [INFO] [stdout] test tuples::tests::test_tuple_subtract_vector_vector_is_equal_to_vector ... ok [INFO] [stdout] test tuples::tests::test_tuples_are_equal ... ok [INFO] [stdout] test tuples::tests::test_tuples_are_equal_less_than_epsilon ... ok [INFO] [stdout] test tuples::tests::test_tuples_are_not_equal ... ok [INFO] [stdout] test tuples::tests::test_tuples_are_not_equal_more_than_epsilon ... ok [INFO] [stdout] test tuples::tests::test_vector_is_a_tuple_w0 ... ok [INFO] [stdout] test tuples::tests::test_vector_is_a_tuplew0 ... ok [INFO] [stdout] test tuples::tests::test_vector_normalize100 ... ok [INFO] [stdout] test tuples::tests::test_vector_normalize123 ... ok [INFO] [stdout] test tuples::tests::test_vector_normalize_point_is_error ... ok [INFO] [stdout] test tuples::tests::test_vector_normalize_vec_mag_is_equal_to1 ... ok [INFO] [stdout] test tuples::tests::test_tuple_add_point_point_is_equal_to_error ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 52 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/rust_ray_tracer_challenge-f670fc6d93e2ee00) [INFO] [stdout] [INFO] [stdout] running 217 tests [INFO] [stdout] test camera::tests::test_constructing_a_camera ... ok [INFO] [stdout] test camera::tests::test_pixel_size_horizontal_canvas ... ok [INFO] [stdout] test camera::tests::test_pixel_size_vertical_canvas ... ok [INFO] [stdout] test camera::tests::test_constructing_ray_through_center_of_canvas ... ok [INFO] [stdout] test camera::tests::test_constructing_ray_through_corner_of_canvas ... ok [INFO] [stdout] test camera::tests::test_constructing_ray_when_camera_is_transformed ... ok [INFO] [stdout] test canvas::tests::test_pixel_canvas ... ok [INFO] [stdout] test canvas::tests::test_pixel_write ... ok [INFO] [stdout] test canvas::tests::test_ppm_get_header ... ok [INFO] [stdout] test canvas::tests::test_ppm_get_tail ... ok [INFO] [stdout] test canvas::tests::test_str_from_color_get ... ok [INFO] [stdout] test canvas::tests::test_str_from_canvas_data_get ... ok [INFO] [stdout] test canvas::tests::test_str_remove_trailing_space ... ok [INFO] [stdout] test canvas::tests::test_str_from_canvas_data_get_long_lines_splitting ... ok [INFO] [stdout] test canvas::tests::test_str_remove_trailing_space_no_effect ... ok [INFO] [stdout] test intersections::tests::test_aggregating_intersections ... ok [INFO] [stdout] test intersections::tests::test_hit_all_intersections_negative_t ... ok [INFO] [stdout] test intersections::tests::test_hit_all_intersections_positive_t ... ok [INFO] [stdout] test intersections::tests::test_hit_always_lowest_nonnegative ... ok [INFO] [stdout] test intersections::tests::test_hit_intersection_inside ... ok [INFO] [stdout] test intersections::tests::test_hit_should_offset_the_point ... ok [INFO] [stdout] test intersections::tests::test_hit_intersection_outside ... ok [INFO] [stdout] test intersections::tests::test_hit_some_intersections_negative_t ... ok [INFO] [stdout] test intersections::tests::test_finding_n1_and_n2_at_various_intersections ... ok [INFO] [stdout] test intersections::tests::test_prepare_computations ... ok [INFO] [stdout] test intersections::tests::test_intersection_has_t_and_object ... ok [INFO] [stdout] test intersections::tests::test_precomputing_the_reflection_vector ... ok [INFO] [stdout] test intersections::tests::test_schlick_approximation_under_total_internal_reflection ... ok [INFO] [stdout] test lights::tests::test_light_point_has_position_intensity ... ok [INFO] [stdout] test intersections::tests::test_schlick_approximation_with_a_small_angle_and_n2_greater_than_n1 ... ok [INFO] [stdout] test materials::tests::test_default_material ... ok [INFO] [stdout] test lights::tests::test_lighting_with_surface_in_shadow ... ok [INFO] [stdout] test intersections::tests::test_the_under_point_is_offset_below_the_surface ... ok [INFO] [stdout] test intersections::tests::test_schlick_approximation_with_a_perpendicular_viewing_angle ... ok [INFO] [stdout] test materials::tests::test_lighting_eye_in_path_reflection_vector ... ok [INFO] [stdout] test materials::tests::test_lighting_eye_opposite_surface_light_offset_45deg ... ok [INFO] [stdout] test materials::tests::test_lighting_surface_eye_light ... ok [INFO] [stdout] test materials::tests::test_lighting_light_behind_surface ... ok [INFO] [stdout] test materials::tests::test_lighting_surface_eye_light_eye_offset_45deg ... ok [INFO] [stdout] test materials::tests::test_refelectivity_for_default_material ... ok [INFO] [stdout] test materials::tests::test_transparency_and_refractive_index_for_default_material ... ok [INFO] [stdout] test matrices::tests::test_matrices_are_equal_m2 ... ok [INFO] [stdout] test matrices::tests::test_matrices_are_equal_m3 ... ok [INFO] [stdout] test matrices::tests::test_matrices_are_equal_m4 ... ok [INFO] [stdout] test matrices::tests::test_matrices_are_not_equal_m2 ... ok [INFO] [stdout] test matrices::tests::test_matrices_are_not_equal_m4 ... ok [INFO] [stdout] test matrices::tests::test_matrix2 ... ok [INFO] [stdout] test matrices::tests::test_matrices_are_not_equal_m3 ... ok [INFO] [stdout] test matrices::tests::test_matrix2_determinant ... ok [INFO] [stdout] test matrices::tests::test_matrix3 ... ok [INFO] [stdout] test matrices::tests::test_matrix3_determinant ... ok [INFO] [stdout] test matrices::tests::test_matrix3_minor ... ok [INFO] [stdout] test matrices::tests::test_matrix3_cofactor ... ok [INFO] [stdout] test matrices::tests::test_matrix3_submatrix2 ... ok [INFO] [stdout] test matrices::tests::test_matrix4 ... ok [INFO] [stdout] test matrices::tests::test_matrix4_determinant ... ok [INFO] [stdout] test materials::tests::test_lighting_with_a_pattern_applied ... ok [INFO] [stdout] test matrices::tests::test_matrix4_is_invertible_not ... ok [INFO] [stdout] test matrices::tests::test_matrix4_inverse ... ok [INFO] [stdout] test matrices::tests::test_matrix4_multiply ... ok [INFO] [stdout] test matrices::tests::test_matrix4_is_invertible ... ok [INFO] [stdout] test matrices::tests::test_matrix4_inverse_third ... ok [INFO] [stdout] test matrices::tests::test_matrix4_inverse_again ... ok [INFO] [stdout] test matrices::tests::test_matrix4_multiply_identity ... ok [INFO] [stdout] test matrices::tests::test_matrix4_submatrix3 ... ok [INFO] [stdout] test matrices::tests::test_matrix4_transpose_identity ... ok [INFO] [stdout] test matrices::tests::test_matrix4_tuple_multiply ... ok [INFO] [stdout] test patterns::tests::test_a_gradient_linearly_interpolates_between_colors ... ok [INFO] [stdout] test matrices::tests::test_matrix4_transpose ... ok [INFO] [stdout] test matrices::tests::test_matrix4_multiply_by_inverse ... ok [INFO] [stdout] test patterns::tests::test_a_stripe_pattern_is_constant_in_y ... ok [INFO] [stdout] test patterns::tests::test_a_stripe_pattern_is_constant_in_z ... ok [INFO] [stdout] test patterns::tests::test_assigning_a_pattern_transformation ... ok [INFO] [stdout] test patterns::tests::test_checkers_should_repeat_in_x ... ok [INFO] [stdout] test patterns::tests::test_creating_a_stripe_pattern ... ok [INFO] [stdout] test patterns::tests::test_a_pattern_with_an_object_transformation ... ok [INFO] [stdout] test patterns::tests::test_stripes_with_a_pattern_transformation ... ok [INFO] [stdout] test rays::tests::test_point_from_distance ... ok [INFO] [stdout] test rays::tests::test_ray ... ok [INFO] [stdout] test rays::tests::test_translate_ray ... ok [INFO] [stdout] test planes::tests::test_intersect_with_a_coplanar_ray ... ok [INFO] [stdout] test patterns::tests::test_a_ring_should_extend_in_both_x_and_z ... ok [INFO] [stdout] test patterns::tests::test_a_stripe_pattern_alternates_in_x ... ok [INFO] [stdout] test rays::tests::test_scaling_ray ... ok [INFO] [stdout] test patterns::tests::test_the_default_pattern_transformation ... ok [INFO] [stdout] test patterns::tests::test_stripes_with_both_an_object_and_a_pattern_transformation ... ok [INFO] [stdout] test planes::tests::test_a_plane_is_a_shape ... ok [INFO] [stdout] test patterns::tests::test_stripes_with_an_object_transformation ... ok [INFO] [stdout] test planes::tests::test_intersect_ray_parallel_to_plane ... ok [INFO] [stdout] test transformations::tests::test_inverse_scaling ... ok [INFO] [stdout] test patterns::tests::test_a_pattern_with_both_an_object_and_a_pattern_transformation ... ok [INFO] [stdout] test shapes::tests::test_assign_material_to_shape ... ok [INFO] [stdout] test spheres::tests::test_ray_intersects_sphere_at_two_points ... ok [INFO] [stdout] test planes::tests::test_ray_intersects_plane_from_below ... ok [INFO] [stdout] test shapes::tests::test_shapes_default_transformation ... ok [INFO] [stdout] test transformations::tests::test_reflection ... ok [INFO] [stdout] test transformations::tests::test_matrix_multiply ... ok [INFO] [stdout] test planes::tests::test_ray_intersects_plane_from_above ... ok [INFO] [stdout] test patterns::tests::test_a_pattern_with_a_pattern_transformation ... ok [INFO] [stdout] test shapes::tests::test_computing_the_normal_on_a_transformed_shape ... ok [INFO] [stdout] test transformations::tests::test_rotating_point_x_axis ... ok [INFO] [stdout] test spheres::tests::test_sphere_normal_at_point_y_axis ... ok [INFO] [stdout] test transformations::tests::test_rotating_point_y_axis ... ok [INFO] [stdout] test transformations::tests::test_rotating_point_z_axis ... ok [INFO] [stdout] test transformations::tests::test_matrix_multiply_inverse_translation ... ok [INFO] [stdout] test transformations::tests::test_rotating_point_x_axis_opposite ... ok [INFO] [stdout] test transformations::tests::test_scaling_point ... ok [INFO] [stdout] test transformations::tests::test_shearing_y_x ... ok [INFO] [stdout] test spheres::tests::test_intersect_sets_object_on_intersection ... ok [INFO] [stdout] test transformations::tests::test_translation_not_affect_vectors ... ok [INFO] [stdout] test transformations::tests::test_scaling_vector ... ok [INFO] [stdout] test transformations::tests::test_shearing_x_z ... ok [INFO] [stdout] test transformations::tests::test_view_transformation_matrix_default ... ok [INFO] [stdout] test transformations::tests::test_shearing_y_z ... ok [INFO] [stdout] test transformations::tests::test_shearing_z_x ... ok [INFO] [stdout] test tuples::tests::test_cross_product_vector_point_error ... ok [INFO] [stdout] test transformations::tests::test_shearing_z_y ... ok [INFO] [stdout] test tuples::tests::test_cross_product_vector_vector_reversed ... ok [INFO] [stdout] test spheres::tests::test_sphere_normal_at_point_x_axis ... ok [INFO] [stdout] test tuples::tests::test_cross_product_vector_vector ... ok [INFO] [stdout] test tuples::tests::test_dividing_point_by_scalar ... ok [INFO] [stdout] test transformations::tests::test_transformations ... ok [INFO] [stdout] test transformations::tests::test_shearing_x_y ... ok [INFO] [stdout] test tuples::tests::test_dividing_vector_by_scalar ... ok [INFO] [stdout] test tuples::tests::test_dot_product_point_point_error ... ok [INFO] [stdout] test transformations::tests::test_view_transformation_arbitrary ... ok [INFO] [stdout] test tuples::tests::test_dot_product_point_vector_error ... ok [INFO] [stdout] test tuples::tests::test_dot_product_two_vectors ... ok [INFO] [stdout] test tuples::tests::test_dot_product_vector_point_error ... ok [INFO] [stdout] test shapes::tests::test_intersecting_a_translated_shape_with_a_ray ... ok [INFO] [stdout] test shapes::tests::test_intersecting_a_scaled_shape_with_a_ray ... ok [INFO] [stdout] test spheres::tests::test_sphere_is_behind_ray ... ok [INFO] [stdout] test tuples::tests::test_tuple_add_point_point_is_equal_to_error ... ok [INFO] [stdout] test spheres::tests::test_a_sphere_is_a_shape ... ok [INFO] [stdout] test tuples::tests::test_tuple_add_vector_point_is_equal_to_point ... ok [INFO] [stdout] test transformations::tests::test_view_transformation_moves_world ... ok [INFO] [stdout] test tuples::tests::test_tuple_subtract_point_point_is_equal_to_vector ... ok [INFO] [stdout] test tuples::tests::test_colors_add ... ok [INFO] [stdout] test tuples::tests::test_tuple_subtract_point_vector_is_equal_to_point ... ok [INFO] [stdout] test tuples::tests::test_colors_multiply ... ok [INFO] [stdout] test tuples::tests::test_color_is_rgb ... ok [INFO] [stdout] test tuples::tests::test_colors_scalar_multiply ... ok [INFO] [stdout] test tuples::tests::test_colors_subtract ... ok [INFO] [stdout] test tuples::tests::test_cross_product_point_point_error ... ok [INFO] [stdout] test tuples::tests::test_cross_product_point_vector_error ... ok [INFO] [stdout] test tuples::tests::test_environment_has_gravity_wind ... ok [INFO] [stdout] test tuples::tests::test_tuple_add_vector_vector_is_equal_to_vector ... ok [INFO] [stdout] test tuples::tests::test_get_magnitude_of_vector001 ... ok [INFO] [stdout] test tuples::tests::test_tuples_are_equal ... ok [INFO] [stdout] test tuples::tests::test_get_magnitude_of_vector010 ... ok [INFO] [stdout] test tuples::tests::test_get_magnitude_of_vector100 ... ok [INFO] [stdout] test tuples::tests::test_get_magnitude_of_vector123 ... ok [INFO] [stdout] test tuples::tests::test_get_magnitude_of_vector_neg123 ... ok [INFO] [stdout] test tuples::tests::test_multiply_point_by_fraction ... ok [INFO] [stdout] test transformations::tests::test_view_transformation_matrix_looking_in_positive_z_direction ... ok [INFO] [stdout] test tuples::tests::test_multiply_vector_by_scalar ... ok [INFO] [stdout] test tuples::tests::test_negate_vector_is_equal_to_error ... ok [INFO] [stdout] test tuples::tests::test_negate_vector_is_equal_to_neg_vector ... ok [INFO] [stdout] test tuples::tests::test_point_is_a_tuple_w1 ... ok [INFO] [stdout] test tuples::tests::test_point_is_a_tuplew1 ... ok [INFO] [stdout] test tuples::tests::test_projectile_has_position_velocity ... ok [INFO] [stdout] test tuples::tests::test_reflect_vector_45degrees ... ok [INFO] [stdout] test tuples::tests::test_reflect_vector_slanted_surface ... ok [INFO] [stdout] test tuples::tests::test_tick_creates_projectile ... ok [INFO] [stdout] test tuples::tests::test_tuple_add_point_vector_is_equal_to_point ... ok [INFO] [stdout] test tuples::tests::test_tuple_subtract_vector_point_is_equal_to_error ... ok [INFO] [stdout] test tuples::tests::test_tuple_subtract_vector_vector_is_equal_to_vector ... ok [INFO] [stdout] test tuples::tests::test_multiply_point_by_scalar ... ok [INFO] [stdout] test tuples::tests::test_multiply_vector_by_fraction ... ok [INFO] [stdout] test spheres::tests::test_intersect_scaled_sphere_with_ray ... ok [INFO] [stdout] test spheres::tests::test_ray_misses_sphere ... ok [INFO] [stdout] test shapes::tests::test_shapes_have_unique_ids ... ok [INFO] [stdout] test spheres::tests::test_sphere_normal_at_nonaxial_point ... ok [INFO] [stdout] test spheres::tests::test_sphere_normal_at_point_z_axis ... ok [INFO] [stdout] test spheres::tests::test_ray_originates_inside_sphere ... ok [INFO] [stdout] test spheres::tests::test_ray_intersects_sphere_at_two_identical_points_tangent ... ok [INFO] [stdout] test spheres::tests::test_sphere_normal_is_normalized_vector ... ok [INFO] [stdout] test spheres::tests::test_spheres_have_unique_ids ... ok [INFO] [stdout] test spheres::tests::test_a_helper_for_producing_a_sphere_with_a_glassy_material ... ok [INFO] [stdout] test spheres::tests::test_intersect_translated_sphere_with_ray ... ok [INFO] [stdout] test shapes::tests::test_computing_the_normal_on_a_translated_shape ... ok [INFO] [stdout] test spheres::tests::test_normal_on_translated_sphere ... ok [INFO] [stdout] test tuples::tests::test_tuples_are_equal_less_than_epsilon ... ok [INFO] [stdout] test tuples::tests::test_tuples_are_not_equal ... ok [INFO] [stdout] test tuples::tests::test_vector_is_a_tuple_w0 ... ok [INFO] [stdout] test tuples::tests::test_tuples_are_not_equal_more_than_epsilon ... ok [INFO] [stdout] test tuples::tests::test_vector_is_a_tuplew0 ... ok [INFO] [stdout] test tuples::tests::test_vector_normalize100 ... ok [INFO] [stdout] test tuples::tests::test_vector_normalize123 ... ok [INFO] [stdout] test tuples::tests::test_vector_normalize_point_is_error ... ok [INFO] [stdout] test tuples::tests::test_vector_normalize_vec_mag_is_equal_to1 ... ok [INFO] [stdout] test worlds::tests::test_shadow_when_something_between_point_and_light ... ok [INFO] [stdout] test spheres::tests::test_normal_on_transformed_sphere ... ok [INFO] [stdout] test worlds::tests::test_shade_hit_with_a_transparent_material ... ok [INFO] [stdout] test worlds::tests::test_shade_hit_with_a_reflective_transparent_material ... ok [INFO] [stdout] test worlds::tests::test_creating_a_world ... ok [INFO] [stdout] test worlds::tests::test_no_shadow_when_nothing_between_point_and_light ... ok [INFO] [stdout] test worlds::tests::test_color_ray_hits ... ok [INFO] [stdout] test worlds::tests::test_shading_intersection_from_inside ... ok [INFO] [stdout] test worlds::tests::test_reflected_color_for_nonreflective_material ... ok [INFO] [stdout] test worlds::tests::test_no_shadow_when_object_behind_point ... ok [INFO] [stdout] test worlds::tests::test_shading_intersection ... ok [INFO] [stdout] test worlds::tests::test_color_with_intersection_behind_ray ... ok [INFO] [stdout] test worlds::tests::test_refracted_color_under_total_internal_reflection ... ok [INFO] [stdout] test worlds::tests::test_color_at_with_mutually_reflective_surfaces ... ok [INFO] [stdout] test worlds::tests::test_no_shadow_when_object_behind_light ... ok [INFO] [stdout] test worlds::tests::test_default_world ... ok [INFO] [stdout] test worlds::tests::test_intersect_world_with_ray ... ok [INFO] [stdout] test worlds::tests::test_refracted_color_with_refracted_ray ... ok [INFO] [stdout] test worlds::tests::test_shading_intersection_in_shadow ... ok [INFO] [stdout] test worlds::tests::test_refracted_color_with_an_opaque_surface ... ok [INFO] [stdout] test worlds::tests::test_color_ray_misses ... ok [INFO] [stdout] test worlds::tests::test_reflected_color_for_reflective_material ... ok [INFO] [stdout] test worlds::tests::test_reflected_color_at_maximum_recursive_depth ... ok [INFO] [stdout] test worlds::tests::test_refracted_color_at_maximum_recursive_depth ... ok [INFO] [stdout] test worlds::tests::test_shade_hit_with_reflective_material ... ok [INFO] [stdout] test camera::tests::test_rendering_world_with_camera ... ok [INFO] [stderr] Doc-tests rust_ray_tracer_challenge [INFO] [stdout] [INFO] [stdout] test result: ok. 217 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "b6b0bf830f7762e697ffe7007ba00c8926be9e8824615a0d0fc0288ce7943284", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b6b0bf830f7762e697ffe7007ba00c8926be9e8824615a0d0fc0288ce7943284", kill_on_drop: false }` [INFO] [stdout] b6b0bf830f7762e697ffe7007ba00c8926be9e8824615a0d0fc0288ce7943284