Skip to content

Console Output

Skipping 440 KB.. Full Log
mtests/unit/config/config_test.py::ConfigTest::test_invalid_list_of_strings_format PASSED [ 70%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_isolation_option PASSED [ 70%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_linked_service_is_undefined PASSED [ 70%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load PASSED           [ 70%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_bind_mount_relative_path PASSED [ 70%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_bind_mount_relative_path_with_tilde PASSED [ 70%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_build_labels_dict PASSED [ 70%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_build_labels_list PASSED [ 70%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_config_custom_resource_names PASSED [ 70%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_config_dockerfile_without_build_raises_error_v1 PASSED [ 71%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_config_invalid_service_names PASSED [ 71%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_config_invalid_service_names_v2 PASSED [ 71%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_config_link_local_ips_network PASSED [ 71%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_config_service_labels PASSED [ 71%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_config_volume_and_network_labels PASSED [ 71%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_configs PASSED   [ 71%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_configs_multi_file PASSED [ 71%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_dockerfile_without_context PASSED [ 71%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_errors_on_uppercase_with_no_image PASSED [ 71%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_invalid_service_definition PASSED [ 71%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_mixed_extends_resolution PASSED [ 72%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_secrets PASSED   [ 72%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_secrets_multi_file PASSED [ 72%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_service_with_name_version PASSED [ 72%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_sorts_in_dependency_order PASSED [ 72%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_when_not_dict PASSED [ 72%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_when_not_dict_v2 PASSED [ 72%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_throws_error_with_invalid_network_fields PASSED [ 72%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_v2 PASSED        [ 72%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_with_buildargs PASSED [ 72%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_with_empty_build_args PASSED [ 72%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_with_extensions PASSED [ 72%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_with_invalid_field_name PASSED [ 73%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_with_invalid_field_name_v1 PASSED [ 73%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_base PASSED [ 73%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_base_v2 PASSED [ 73%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_override PASSED [ 73%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_empty_override_v2 PASSED [ 73%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_extends_in_override_file PASSED [ 73%]

02:57:05 tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_and_invalid_override PASSED [ 73%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_mismatched_networks_format PASSED [ 73%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_mismatched_networks_format_inverse_order PASSED [ 73%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v1 PASSED [ 73%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v2 PASSED [ 74%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_load_with_multiple_files_v3_2 PASSED [ 74%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_load_yaml_with_bom PASSED [ 74%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_load_yaml_with_yaml_error PASSED [ 74%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_logs_warning_for_boolean_in_environment PASSED [ 74%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_blkio_config PASSED [ 74%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_configs_override PASSED [ 74%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_credential_spec PASSED [ 74%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_depends_on_mixed_syntax PASSED [ 74%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_depends_on_no_override PASSED [ 74%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_deploy PASSED   [ 74%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_deploy_override PASSED [ 75%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_device_cgroup_rules PASSED [ 75%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_different_configs PASSED [ 75%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_different_secrets PASSED [ 75%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_extra_hosts PASSED [ 75%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_config PASSED [ 75%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_override_disables PASSED [ 75%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_healthcheck_override_enables PASSED [ 75%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_isolation PASSED [ 75%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v1 PASSED [ 75%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2 PASSED [ 75%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_base PASSED [ 75%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_base_driver PASSED [ 76%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_drivers PASSED [ 76%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_override PASSED [ 76%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_no_override_options PASSED [ 76%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_logging_v2_override_driver PASSED [ 76%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_mixed_ports PASSED [ 76%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_pid PASSED      [ 76%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_scale PASSED    [ 76%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_secrets_override PASSED [ 76%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_from_files_with_extends_in_base PASSED [ 76%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_from_files_with_extends_in_override PASSED [ 76%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous PASSED [ 77%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous_2 PASSED [ 77%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_heterogeneous_volumes PASSED [ 77%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_service_dicts_ports_sorting PASSED [ 77%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_merge_storage_opt PASSED [ 77%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_named_volume_config_empty PASSED [ 77%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_named_volume_invalid_type_list PASSED [ 77%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_named_volume_numeric_driver_opt PASSED [ 77%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_networks_invalid_type_list PASSED [ 77%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_normalize_dns_options PASSED [ 77%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_oom_score_adj_option PASSED [ 77%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_runtime_option PASSED [ 78%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_service_volume_invalid_config PASSED [ 78%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_swappiness_option PASSED [ 78%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_tmpfs_option PASSED   [ 78%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_undeclared_volume_v1 PASSED [ 78%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_undeclared_volume_v2 PASSED [ 78%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_unsupported_version PASSED [ 78%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_v1_file_version PASSED [ 78%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_v1_file_with_version_is_invalid PASSED [ 78%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_valid_config_oneof_string_or_list PASSED [ 78%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_valid_config_which_allows_two_type_definitions PASSED [ 78%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_valid_versions PASSED [ 79%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_validate_extra_hosts_invalid PASSED [ 79%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_validate_extra_hosts_invalid_list PASSED [ 79%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_version_1_is_invalid PASSED [ 79%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_volume_invalid_driver_opt PASSED [ 79%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_volume_mode_override PASSED [ 79%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_volumes_long_syntax PASSED [ 79%]

02:57:06 tests/unit/config/config_test.py::ConfigTest::test_wrong_version_type PASSED [ 79%]

02:57:06 tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_container PASSED [ 79%]

02:57:06 tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_container_v1 PASSED [ 79%]

02:57:06 tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_plus_networks_is_invalid PASSED [ 79%]

02:57:06 tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service PASSED [ 79%]

02:57:06 tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service_nonexistent PASSED [ 80%]

02:57:06 tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_service_v1 PASSED [ 80%]

02:57:06 tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_standard PASSED [ 80%]

02:57:06 tests/unit/config/config_test.py::NetworkModeTest::test_network_mode_standard_v1 PASSED [ 80%]

02:57:06 tests/unit/config/config_test.py::PortsTest::test_config_invalid_expose_format_validation PASSED [ 80%]

02:57:06 tests/unit/config/config_test.py::PortsTest::test_config_invalid_expose_type_validation PASSED [ 80%]

02:57:06 tests/unit/config/config_test.py::PortsTest::test_config_invalid_ports_format_validation PASSED [ 80%]

02:57:06 tests/unit/config/config_test.py::PortsTest::test_config_invalid_ports_type_validation PASSED [ 80%]

02:57:06 tests/unit/config/config_test.py::PortsTest::test_config_non_unique_expose_validation PASSED [ 80%]

02:57:06 tests/unit/config/config_test.py::PortsTest::test_config_non_unique_ports_validation PASSED [ 80%]

02:57:06 tests/unit/config/config_test.py::PortsTest::test_config_valid_expose_format_validation PASSED [ 80%]

02:57:06 tests/unit/config/config_test.py::PortsTest::test_config_valid_ports_format_validation PASSED [ 81%]

02:57:06 tests/unit/config/config_test.py::SubnetTest::test_config_invalid_subnet_format_validation PASSED [ 81%]

02:57:06 tests/unit/config/config_test.py::SubnetTest::test_config_invalid_subnet_type_validation PASSED [ 81%]

02:57:06 tests/unit/config/config_test.py::SubnetTest::test_config_valid_subnet_format_validation PASSED [ 81%]

02:57:06 tests/unit/config/config_test.py::InterpolationTest::test_compatibility_mode_load PASSED [ 81%]

02:57:06 tests/unit/config/config_test.py::InterpolationTest::test_compatibility_mode_warnings PASSED [ 81%]

02:57:06 tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_file PASSED [ 81%]

02:57:06 tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_variable PASSED [ 81%]

02:57:06 tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_environment_variable_with_defaults PASSED [ 81%]

02:57:06 tests/unit/config/config_test.py::InterpolationTest::test_config_file_with_options_environment_file PASSED [ 81%]

02:57:06 tests/unit/config/config_test.py::InterpolationTest::test_interpolation_configs_section PASSED [ 81%]

02:57:06 tests/unit/config/config_test.py::InterpolationTest::test_interpolation_secrets_section PASSED [ 82%]

02:57:06 tests/unit/config/config_test.py::InterpolationTest::test_invalid_interpolation PASSED [ 82%]

02:57:06 tests/unit/config/config_test.py::InterpolationTest::test_unset_variable_produces_warning PASSED [ 82%]

02:57:06 tests/unit/config/config_test.py::VolumeConfigTest::test_absolute_posix_path_does_not_expand PASSED [ 82%]

02:57:06 tests/unit/config/config_test.py::VolumeConfigTest::test_absolute_windows_path_does_not_expand PASSED [ 82%]

02:57:06 tests/unit/config/config_test.py::VolumeConfigTest::test_home_directory_with_driver_does_not_expand PASSED [ 82%]

02:57:06 tests/unit/config/config_test.py::VolumeConfigTest::test_name_does_not_expand PASSED [ 82%]

02:57:06 tests/unit/config/config_test.py::VolumeConfigTest::test_no_binding PASSED [ 82%]

02:57:06 tests/unit/config/config_test.py::VolumeConfigTest::test_relative_path_does_expand_posix PASSED [ 82%]

02:57:06 tests/unit/config/config_test.py::VolumeConfigTest::test_relative_path_does_expand_windows SKIPPED [ 82%]

02:57:06 tests/unit/config/config_test.py::VolumeConfigTest::test_volume_binding_with_environment_variable PASSED [ 82%]

02:57:06 tests/unit/config/config_test.py::VolumeConfigTest::test_volume_binding_with_home PASSED [ 82%]

02:57:06 tests/unit/config/config_test.py::VolumeConfigTest::test_volume_path_with_non_ascii_directory PASSED [ 83%]

02:57:06 tests/unit/config/config_test.py::VolumeConfigTest::test_volumes_order_is_preserved PASSED [ 83%]

02:57:06 tests/unit/config/config_test.py::MergeVolumesTest::test_add_explicit_path PASSED [ 83%]

02:57:06 tests/unit/config/config_test.py::MergeVolumesTest::test_empty PASSED    [ 83%]

02:57:06 tests/unit/config/config_test.py::MergeVolumesTest::test_no_base PASSED  [ 83%]

02:57:06 tests/unit/config/config_test.py::MergeVolumesTest::test_no_override PASSED [ 83%]

02:57:06 tests/unit/config/config_test.py::MergeVolumesTest::test_override_explicit_path PASSED [ 83%]

02:57:06 tests/unit/config/config_test.py::MergeVolumesTest::test_remove_explicit_path PASSED [ 83%]

02:57:06 tests/unit/config/config_test.py::MergeDevicesTest::test_add_explicit_path PASSED [ 83%]

02:57:06 tests/unit/config/config_test.py::MergeDevicesTest::test_empty PASSED    [ 83%]

02:57:06 tests/unit/config/config_test.py::MergeDevicesTest::test_no_base PASSED  [ 83%]

02:57:06 tests/unit/config/config_test.py::MergeDevicesTest::test_no_override PASSED [ 84%]

02:57:06 tests/unit/config/config_test.py::MergeDevicesTest::test_override_explicit_path PASSED [ 84%]

02:57:06 tests/unit/config/config_test.py::MergeDevicesTest::test_remove_explicit_path PASSED [ 84%]

02:57:06 tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_no_override PASSED [ 84%]

02:57:06 tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_override_with_other PASSED [ 84%]

02:57:06 tests/unit/config/config_test.py::BuildOrImageMergeTest::test_merge_build_or_image_override_with_same PASSED [ 84%]

02:57:06 tests/unit/config/config_test.py::MergePortsTest::test_add_item PASSED   [ 84%]

02:57:06 tests/unit/config/config_test.py::MergePortsTest::test_duplicate_port_mappings PASSED [ 84%]

02:57:06 tests/unit/config/config_test.py::MergePortsTest::test_empty PASSED      [ 84%]

02:57:06 tests/unit/config/config_test.py::MergePortsTest::test_no_base PASSED    [ 84%]

02:57:06 tests/unit/config/config_test.py::MergePortsTest::test_no_override PASSED [ 84%]

02:57:06 tests/unit/config/config_test.py::MergeNetworksTest::test_add_item PASSED [ 85%]

02:57:06 tests/unit/config/config_test.py::MergeNetworksTest::test_all_properties PASSED [ 85%]

02:57:06 tests/unit/config/config_test.py::MergeNetworksTest::test_empty PASSED   [ 85%]

02:57:06 tests/unit/config/config_test.py::MergeNetworksTest::test_network_has_none_value PASSED [ 85%]

02:57:06 tests/unit/config/config_test.py::MergeNetworksTest::test_no_base PASSED [ 85%]

02:57:06 tests/unit/config/config_test.py::MergeNetworksTest::test_no_network_name_overrides PASSED [ 85%]

02:57:06 tests/unit/config/config_test.py::MergeNetworksTest::test_no_network_overrides PASSED [ 85%]

02:57:06 tests/unit/config/config_test.py::MergeNetworksTest::test_no_override PASSED [ 85%]

02:57:06 tests/unit/config/config_test.py::MergeStringsOrListsTest::test_add_list PASSED [ 85%]

02:57:06 tests/unit/config/config_test.py::MergeStringsOrListsTest::test_add_string PASSED [ 85%]

02:57:06 tests/unit/config/config_test.py::MergeStringsOrListsTest::test_no_base PASSED [ 85%]

02:57:06 tests/unit/config/config_test.py::MergeStringsOrListsTest::test_no_override PASSED [ 86%]

02:57:06 tests/unit/config/config_test.py::MergeLabelsTest::test_add_explicit_value PASSED [ 86%]

02:57:06 tests/unit/config/config_test.py::MergeLabelsTest::test_empty PASSED     [ 86%]

02:57:06 tests/unit/config/config_test.py::MergeLabelsTest::test_no_base PASSED   [ 86%]

02:57:06 tests/unit/config/config_test.py::MergeLabelsTest::test_no_override PASSED [ 86%]

02:57:06 tests/unit/config/config_test.py::MergeLabelsTest::test_override_explicit_value PASSED [ 86%]

02:57:06 tests/unit/config/config_test.py::MergeLabelsTest::test_remove_explicit_value PASSED [ 86%]

02:57:06 tests/unit/config/config_test.py::MergeBuildTest::test_empty_base PASSED [ 86%]

02:57:06 tests/unit/config/config_test.py::MergeBuildTest::test_empty_override PASSED [ 86%]

02:57:06 tests/unit/config/config_test.py::MergeBuildTest::test_full PASSED       [ 86%]

02:57:06 tests/unit/config/config_test.py::MemoryOptionsTest::test_memswap_can_be_a_string PASSED [ 86%]

02:57:06 tests/unit/config/config_test.py::MemoryOptionsTest::test_validation_fails_with_just_memswap_limit PASSED [ 86%]

02:57:06 tests/unit/config/config_test.py::MemoryOptionsTest::test_validation_with_correct_memswap_values PASSED [ 87%]

02:57:06 tests/unit/config/config_test.py::EnvTest::test_environment_overrides_env_file PASSED [ 87%]

02:57:06 tests/unit/config/config_test.py::EnvTest::test_parse_environment_as_dict PASSED [ 87%]

02:57:06 tests/unit/config/config_test.py::EnvTest::test_parse_environment_as_list PASSED [ 87%]

02:57:06 tests/unit/config/config_test.py::EnvTest::test_parse_environment_empty PASSED [ 87%]

02:57:06 tests/unit/config/config_test.py::EnvTest::test_parse_environment_invalid PASSED [ 87%]

02:57:06 tests/unit/config/config_test.py::EnvTest::test_resolve_build_args PASSED [ 87%]

02:57:06 tests/unit/config/config_test.py::EnvTest::test_resolve_environment PASSED [ 87%]

02:57:06 tests/unit/config/config_test.py::EnvTest::test_resolve_environment_from_env_file PASSED [ 87%]

02:57:06 tests/unit/config/config_test.py::EnvTest::test_resolve_environment_from_env_file_with_empty_values PASSED [ 87%]

02:57:06 tests/unit/config/config_test.py::EnvTest::test_resolve_environment_nonexistent_file PASSED [ 87%]

02:57:06 tests/unit/config/config_test.py::EnvTest::test_resolve_environment_with_multiple_env_files PASSED [ 88%]

02:57:06 tests/unit/config/config_test.py::EnvTest::test_resolve_path PASSED      [ 88%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_circular PASSED      [ 88%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_invalid_config PASSED [ 88%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_valid_config PASSED [ 88%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_extended_service_with_verbose_and_shorthand_way PASSED [ 88%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_extends PASSED       [ 88%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_extends_file_defaults_to_self PASSED [ 88%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_empty_dictionary PASSED [ 88%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_invalid_key PASSED [ 88%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_missing_service_key PASSED [ 88%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_no_file_key_no_filename_set PASSED [ 89%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_sub_property_key PASSED [ 89%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_extends_validation_valid_config PASSED [ 89%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_extends_with_defined_version_passes PASSED [ 89%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_extends_with_depends_on PASSED [ 89%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_extends_with_environment_and_env_files PASSED [ 89%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_extends_with_healthcheck PASSED [ 89%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_extends_with_mixed_versions_is_error PASSED [ 89%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_extends_with_ports PASSED [ 89%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_extends_with_security_opt PASSED [ 89%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_invalid_links_in_extended_service PASSED [ 89%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_invalid_net_in_extended_service PASSED [ 89%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_invalid_volumes_from_in_extended_service PASSED [ 90%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_load_config_runs_interpolation_in_extended_service PASSED [ 90%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_load_throws_error_when_base_service_does_not_exist PASSED [ 90%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_merging_env_labels_ulimits PASSED [ 90%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_nested PASSED        [ 90%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_parent_build_path_dne PASSED [ 90%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_partial_service_config_in_extends_is_still_valid PASSED [ 90%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_self_referencing_file PASSED [ 90%]

02:57:06 tests/unit/config/config_test.py::ExtendsTest::test_volume_path PASSED   [ 90%]

02:57:06 tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_absolute PASSED [ 90%]

02:57:06 tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_normal PASSED [ 90%]

02:57:06 tests/unit/config/config_test.py::ExpandPathTest::test_expand_path_with_tilde PASSED [ 91%]

02:57:06 tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_root_mount PASSED [ 91%]

02:57:06 tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_windows_path PASSED [ 91%]

02:57:06 tests/unit/config/config_test.py::VolumePathTest::test_split_path_mapping_with_windows_path_in_container PASSED [ 91%]

02:57:06 tests/unit/config/config_test.py::BuildPathTest::test_absolute_path PASSED [ 91%]

02:57:06 tests/unit/config/config_test.py::BuildPathTest::test_from_file PASSED   [ 91%]

02:57:06 tests/unit/config/config_test.py::BuildPathTest::test_from_file_override_dir PASSED [ 91%]

02:57:06 tests/unit/config/config_test.py::BuildPathTest::test_invalid_url_in_build_path PASSED [ 91%]

02:57:06 tests/unit/config/config_test.py::BuildPathTest::test_nonexistent_path PASSED [ 91%]

02:57:06 tests/unit/config/config_test.py::BuildPathTest::test_relative_path PASSED [ 91%]

02:57:06 tests/unit/config/config_test.py::BuildPathTest::test_valid_url_in_build_path PASSED [ 91%]

02:57:06 tests/unit/config/config_test.py::HealthcheckTest::test_disable PASSED   [ 92%]

02:57:06 tests/unit/config/config_test.py::HealthcheckTest::test_disable_with_other_config_is_invalid PASSED [ 92%]

02:57:06 tests/unit/config/config_test.py::HealthcheckTest::test_healthcheck PASSED [ 92%]

02:57:06 tests/unit/config/config_test.py::HealthcheckTest::test_healthcheck_with_invalid_test PASSED [ 92%]

02:57:06 tests/unit/config/config_test.py::GetDefaultConfigFilesTestCase::test_get_config_path_default_file_in_basedir PASSED [ 92%]

02:57:06 tests/unit/config/config_test.py::GetDefaultConfigFilesTestCase::test_get_config_path_default_file_in_parent_dir PASSED [ 92%]

02:57:06 tests/unit/config/config_test.py::SerializeTest::test_denormalize_depends_on_v2_1 PASSED [ 92%]

02:57:06 tests/unit/config/config_test.py::SerializeTest::test_denormalize_depends_on_v3 PASSED [ 92%]

02:57:06 tests/unit/config/config_test.py::SerializeTest::test_denormalize_healthcheck PASSED [ 92%]

02:57:06 tests/unit/config/config_test.py::SerializeTest::test_denormalize_image_has_digest PASSED [ 92%]

02:57:06 tests/unit/config/config_test.py::SerializeTest::test_denormalize_image_no_digest PASSED [ 92%]

02:57:06 tests/unit/config/config_test.py::SerializeTest::test_serialize_bool_string PASSED [ 93%]

02:57:07 tests/unit/config/config_test.py::SerializeTest::test_serialize_configs PASSED [ 93%]

02:57:07 tests/unit/config/config_test.py::SerializeTest::test_serialize_escape_dollar_sign PASSED [ 93%]

02:57:07 tests/unit/config/config_test.py::SerializeTest::test_serialize_escape_dont_interpolate PASSED [ 93%]

02:57:07 tests/unit/config/config_test.py::SerializeTest::test_serialize_external_false PASSED [ 93%]

02:57:07 tests/unit/config/config_test.py::SerializeTest::test_serialize_ports PASSED [ 93%]

02:57:07 tests/unit/config/config_test.py::SerializeTest::test_serialize_ports_with_ext_ip PASSED [ 93%]

02:57:07 tests/unit/config/config_test.py::SerializeTest::test_serialize_secrets PASSED [ 93%]

02:57:07 tests/unit/config/config_test.py::SerializeTest::test_serialize_time PASSED [ 93%]

02:57:07 tests/unit/config/config_test.py::SerializeTest::test_serialize_unicode_values PASSED [ 93%]

02:57:07 tests/unit/config/environment_test.py::EnvironmentTest::test_env_vars_from_file_bom PASSED [ 93%]

02:57:07 tests/unit/config/environment_test.py::EnvironmentTest::test_env_vars_from_file_whitespace PASSED [ 93%]

02:57:07 tests/unit/config/environment_test.py::EnvironmentTest::test_get_boolean PASSED [ 94%]

02:57:07 tests/unit/config/environment_test.py::EnvironmentTest::test_get_simple PASSED [ 94%]

02:57:07 tests/unit/config/environment_test.py::EnvironmentTest::test_get_undefined PASSED [ 94%]

02:57:07 tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_services PASSED [ 94%]

02:57:07 tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_volumes PASSED [ 94%]

02:57:07 tests/unit/config/interpolation_test.py::test_interpolate_environment_variables_in_secrets PASSED [ 94%]

02:57:07 tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_v2 PASSED [ 94%]

02:57:07 tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_v3 PASSED [ 94%]

02:57:07 tests/unit/config/interpolation_test.py::test_interpolate_environment_services_convert_types_invalid PASSED [ 94%]

02:57:07 tests/unit/config/interpolation_test.py::test_interpolate_environment_network_convert_types PASSED [ 94%]

02:57:07 tests/unit/config/interpolation_test.py::test_interpolate_environment_external_resource_convert_types PASSED [ 94%]

02:57:07 tests/unit/config/interpolation_test.py::test_interpolate_service_name_uses_dot PASSED [ 95%]

02:57:07 tests/unit/config/interpolation_test.py::test_escaped_interpolation PASSED [ 95%]

02:57:07 tests/unit/config/interpolation_test.py::test_invalid_interpolation PASSED [ 95%]

02:57:07 tests/unit/config/interpolation_test.py::test_interpolate_missing_no_default PASSED [ 95%]

02:57:07 tests/unit/config/interpolation_test.py::test_interpolate_with_value PASSED [ 95%]

02:57:07 tests/unit/config/interpolation_test.py::test_interpolate_missing_with_default PASSED [ 95%]

02:57:07 tests/unit/config/interpolation_test.py::test_interpolate_with_empty_and_default_value PASSED [ 95%]

02:57:07 tests/unit/config/interpolation_test.py::test_interpolate_mandatory_values PASSED [ 95%]

02:57:07 tests/unit/config/interpolation_test.py::test_interpolate_mandatory_no_err_msg PASSED [ 95%]

02:57:07 tests/unit/config/interpolation_test.py::test_interpolate_mixed_separators PASSED [ 95%]

02:57:07 tests/unit/config/interpolation_test.py::test_unbraced_separators PASSED [ 95%]

02:57:07 tests/unit/config/interpolation_test.py::test_interpolate_unicode_values PASSED [ 96%]

02:57:07 tests/unit/config/interpolation_test.py::test_interpolate_no_fallthrough PASSED [ 96%]

02:57:07 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_1 PASSED [ 96%]

02:57:07 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_2 PASSED [ 96%]

02:57:07 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_3 PASSED [ 96%]

02:57:07 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_4 PASSED [ 96%]

02:57:07 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_5 PASSED [ 96%]

02:57:07 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_6 PASSED [ 96%]

02:57:07 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_7 PASSED [ 96%]

02:57:07 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports PASSED [ 96%]

02:57:07 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports_2 PASSED [ 96%]

02:57:07 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_circular_imports_3 PASSED [ 96%]

02:57:07 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_self_imports PASSED [ 97%]

02:57:07 tests/unit/config/sort_services_test.py::TestSortService::test_sort_service_dicts_depends_on_self PASSED [ 97%]

02:57:07 tests/unit/config/types_test.py::test_parse_extra_hosts_list PASSED      [ 97%]

02:57:07 tests/unit/config/types_test.py::test_parse_extra_hosts_dict PASSED      [ 97%]

02:57:07 tests/unit/config/types_test.py::TestServicePort::test_parse_dict PASSED [ 97%]

02:57:07 tests/unit/config/types_test.py::TestServicePort::test_parse_simple_target_port PASSED [ 97%]

02:57:07 tests/unit/config/types_test.py::TestServicePort::test_parse_complete_port_definition PASSED [ 97%]

02:57:07 tests/unit/config/types_test.py::TestServicePort::test_parse_ext_ip_no_published_port PASSED [ 97%]

02:57:07 tests/unit/config/types_test.py::TestServicePort::test_repr_published_port_0 PASSED [ 97%]

02:57:07 tests/unit/config/types_test.py::TestServicePort::test_parse_port_range PASSED [ 97%]

02:57:07 tests/unit/config/types_test.py::TestServicePort::test_parse_port_publish_range PASSED [ 97%]

02:57:07 tests/unit/config/types_test.py::TestServicePort::test_parse_invalid_port PASSED [ 98%]

02:57:07 tests/unit/config/types_test.py::TestServicePort::test_parse_invalid_publish_range PASSED [ 98%]

02:57:07 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_only_one_path PASSED [ 98%]

02:57:07 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_internal_and_external PASSED [ 98%]

02:57:07 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_with_mode PASSED [ 98%]

02:57:07 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_spec_too_many_parts PASSED [ 98%]

02:57:07 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_absolute_path_normalized PASSED [ 98%]

02:57:07 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_absolute_path_native PASSED [ 98%]

02:57:07 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_internal_path_normalized PASSED [ 98%]

02:57:07 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_internal_path_native PASSED [ 98%]

02:57:07 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_just_drives_normalized PASSED [ 98%]

02:57:07 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_just_drives_native PASSED [ 99%]

02:57:07 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_mixed_notations_normalized PASSED [ 99%]

02:57:07 tests/unit/config/types_test.py::TestVolumeSpec::test_parse_volume_windows_mixed_notations_native PASSED [ 99%]

02:57:07 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_from_service PASSED [ 99%]

02:57:07 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_from_container PASSED [ 99%]

02:57:07 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v1_invalid PASSED [ 99%]

02:57:07 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_service PASSED [ 99%]

02:57:07 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_service_with_mode PASSED [ 99%]

02:57:07 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_container PASSED [ 99%]

02:57:07 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_from_container_with_mode PASSED [ 99%]

02:57:07 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_invalid_type PASSED [ 99%]

02:57:10 tests/unit/config/types_test.py::TestVolumesFromSpec::test_parse_v2_invalid PASSED [100%]Sending interrupt signal to process
02:57:10 Terminated
02:57:10 script returned exit code 143