dc baseline#2038
Open
ajaits wants to merge 9 commits into
Open
Google Cloud Build / data-pull-request-py (datcom-ci)
failed
May 25, 2026 in 5m 25s
Summary
Build Information
| Trigger | data-pull-request-py |
| Build | 16dbb8ed-7d73-4f3b-8381-690d66403ed5 |
| Start | 2026-05-25T03:37:24-07:00 |
| Duration | 5m23.147s |
| Status | FAILURE |
Steps
| Step | Status | Duration |
|---|---|---|
| python_install | SUCCESS | 3m27.696s |
| python_test | FAILURE | 1m24.66s |
| python_format_check | CANCELLED | 1m25.97s |
Details
starting build "16dbb8ed-7d73-4f3b-8381-690d66403ed5"
FETCHSOURCE
From https://github.com/datacommonsorg/data
* branch 41a0a611f9f3e512617771d5bb2f8ee8cba1e9f7 -> FETCH_HEAD
Updating files: 19% (968/5074)
Updating files: 20% (1015/5074)
Updating files: 21% (1066/5074)
Updating files: 22% (1117/5074)
Updating files: 23% (1168/5074)
Updating files: 24% (1218/5074)
Updating files: 25% (1269/5074)
Updating files: 26% (1320/5074)
Updating files: 27% (1370/5074)
Updating files: 28% (1421/5074)
Updating files: 29% (1472/5074)
Updating files: 30% (1523/5074)
Updating files: 31% (1573/5074)
Updating files: 32% (1624/5074)
Updating files: 33% (1675/5074)
Updating files: 34% (1726/5074)
Updating files: 35% (1776/5074)
Updating files: 36% (1827/5074)
Updating files: 37% (1878/5074)
Updating files: 38% (1929/5074)
Updating files: 39% (1979/5074)
Updating files: 40% (2030/5074)
Updating files: 41% (2081/5074)
Updating files: 42% (2132/5074)
Updating files: 43% (2182/5074)
Updating files: 43% (2193/5074)
Updating files: 44% (2233/5074)
Updating files: 45% (2284/5074)
Updating files: 46% (2335/5074)
Updating files: 47% (2385/5074)
Updating files: 48% (2436/5074)
Updating files: 49% (2487/5074)
Updating files: 50% (2537/5074)
Updating files: 51% (2588/5074)
Updating files: 52% (2639/5074)
Updating files: 53% (2690/5074)
Updating files: 54% (2740/5074)
Updating files: 55% (2791/5074)
Updating files: 56% (2842/5074)
Updating files: 57% (2893/5074)
Updating files: 58% (2943/5074)
Updating files: 59% (2994/5074)
Updating files: 60% (3045/5074)
Updating files: 61% (3096/5074)
Updating files: 62% (3146/5074)
Updating files: 63% (3197/5074)
Updating files: 64% (3248/5074)
Updating files: 65% (3299/5074)
Updating files: 66% (3349/5074)
Updating files: 67% (3400/5074)
Updating files: 68% (3451/5074)
Updating files: 69% (3502/5074)
Updating files: 70% (3552/5074)
Updating files: 71% (3603/5074)
Updating files: 72% (3654/5074)
Updating files: 73% (3705/5074)
Updating files: 74% (3755/5074)
Updating files: 75% (3806/5074)
Updating files: 76% (3857/5074)
Updating files: 77% (3907/5074)
Updating files: 78% (3958/5074)
Updating files: 79% (4009/5074)
Updating files: 80% (4060/5074)
Updating files: 81% (4110/5074)
Updating files: 82% (4161/5074)
Updating files: 83% (4212/5074)
Updating files: 84% (4263/5074)
Updating files: 85% (4313/5074)
Updating files: 86% (4364/5074)
Updating files: 87% (4415/5074)
Updating files: 88% (4466/5074)
Updating files: 89% (4516/5074)
Updating files: 90% (4567/5074)
Updating files: 91% (4618/5074)
Updating files: 92% (4669/5074)
Updating files: 93% (4719/5074)
Updating files: 94% (4770/5074)
Updating files: 95% (4821/5074)
Updating files: 96% (4872/5074)
Updating files: 97% (4922/5074)
Updating files: 98% (4973/5074)
Updating files: 99% (5024/5074)
Updating files: 100% (5074/5074)
Updating files: 100% (5074/5074), done.
HEAD is now at 41a0a61 scripts for baseline metrics
GitCommit:
41a0a611f9f3e512617771d5bb2f8ee8cba1e9f7
BUILD
Starting Step #0 - "python_install"
Step #0 - "python_install": Pulling image: python:3.12.8
Step #0 - "python_install": 3.12.8: Pulling from library/python
Step #0 - "python_install": a492eee5e559: Pulling fs layer
Step #0 - "python_install": 32b550be6cb6: Pulling fs layer
Step #0 - "python_install": 35af2a7690f2: Pulling fs layer
Step #0 - "python_install": 7576b00d9bb1: Pulling fs layer
Step #0 - "python_install": a57a7d4db735: Pulling fs layer
Step #0 - "python_install": a113cc029c60: Pulling fs layer
Step #0 - "python_install": dc93fee02728: Pulling fs layer
Step #0 - "python_install": dc93fee02728: Waiting
Step #0 - "python_install": a57a7d4db735: Verifying Checksum
Step #0 - "python_install": a57a7d4db735: Download complete
Step #0 - "python_install": a113cc029c60: Verifying Checksum
Step #0 - "python_install": a113cc029c60: Download complete
Step #0 - "python_install": dc93fee02728: Verifying Checksum
Step #0 - "python_install": dc93fee02728: Download complete
Step #0 - "python_install": 32b550be6cb6: Verifying Checksum
Step #0 - "python_install": 32b550be6cb6: Download complete
Step #0 - "python_install": a492eee5e559: Verifying Checksum
Step #0 - "python_install": a492eee5e559: Download complete
Step #0 - "python_install": 35af2a7690f2: Verifying Checksum
Step #0 - "python_install": 35af2a7690f2: Download complete
Step #0 - "python_install": 7576b00d9bb1: Verifying Checksum
Step #0 - "python_install": 7576b00d9bb1: Download complete
Step #0 - "python_install": a492eee5e559: Pull complete
Step #0 - "python_install": 32b550be6cb6: Pull complete
Step #0 - "python_install": 35af2a7690f2: Pull complete
Step #0 - "python_install": 7576b00d9bb1: Pull complete
Step #0 - "python_install": a57a7d4db735: Pull complete
Step #0 - "python_install": a113cc029c60: Pull complete
Step #0 - "python_install": dc93fee02728: Pull complete
Step #0 - "python_install": Digest: sha256:e74938514dc67ad3eade8798aa929f5dd569e463758c83243636d4e1b54aa559
Step #0 - "python_install": Status: Downloaded newer image for python:3.12.8
Step #0 - "python_install": docker.io/library/python:3.12.8
Step #0 - "python_install": ### Installing Python requirements
Step #0 - "python_install": Installing Python requirements
Step #0 - "python_install":
Step #0 - "python_install": [notice] A new release of pip is available: 24.3.1 -> 26.1.1
Step #0 - "python_install": [notice] To update, run: pip install --upgrade pip
Finished Step #0 - "python_install"
Starting Step #2 - "python_format_check"
Starting Step #1 - "python_test"
Step #2 - "python_format_check": Already have image (with digest): python:3.12.8
Step #1 - "python_test": Already have image (with digest): python:3.12.8
Step #2 - "python_format_check": ### Testing lint
Step #1 - "python_test": ### Running all tests
Step #1 - "python_test": Installing Python requirements
Step #2 - "python_format_check": Installing Python requirements
Step #1 - "python_test":
Step #1 - "python_test": [notice] A new release of pip is available: 24.3.1 -> 26.1.1
Step #1 - "python_test": [notice] To update, run: pip install --upgrade pip
Step #2 - "python_format_check":
Step #2 - "python_format_check": [notice] A new release of pip is available: 24.3.1 -> 26.1.1
Step #2 - "python_format_check": [notice] To update, run: pip install --upgrade pip
Step #1 - "python_test": #### Testing Python code in util/
Step #2 - "python_format_check": #### Testing Python lint
Step #1 - "python_test": test_aggregate_dict (aggregation_util_test.AggregationUtilTest.test_aggregate_dict) ... ok
Step #1 - "python_test": test_aggregate_value (aggregation_util_test.AggregationUtilTest.test_aggregate_value) ... ok
Step #1 - "python_test": test_config_map_with_override (config_map_test.TestConfigMap.test_config_map_with_override) ... ok
Step #1 - "python_test": test_load_config_file (config_map_test.TestConfigMap.test_load_config_file)
Step #1 - "python_test": Test loading of config dictionary from a file. ... ok
Step #1 - "python_test": test_set_config (config_map_test.TestConfigMap.test_set_config) ... ok
Step #1 - "python_test": test_update_config (config_map_test.TestConfigMap.test_update_config) ... ok
Step #1 - "python_test": test_add_counter_decrement (counters_test.TestCounters.test_add_counter_decrement) ... ok
Step #1 - "python_test": test_add_counter_default_increment (counters_test.TestCounters.test_add_counter_default_increment) ... ok
Step #1 - "python_test": test_add_counter_increment (counters_test.TestCounters.test_add_counter_increment) ... ok
Step #1 - "python_test": test_add_counters (counters_test.TestCounters.test_add_counters) ... ok
Step #1 - "python_test": test_counter_dict_is_shared (counters_test.TestCounters.test_counter_dict_is_shared)
Step #1 - "python_test": Verify counter dict is shared across counters. ... ok
Step #1 - "python_test": test_debug_counters_are_correctly_updated (counters_test.TestCounters.test_debug_counters_are_correctly_updated)
Step #1 - "python_test": Verify counters with debug string suffixes. ... ok
Step #1 - "python_test": test_debug_counters_are_not_created_when_debug_is_false (counters_test.TestCounters.test_debug_counters_are_not_created_when_debug_is_false) ... ok
Step #1 - "python_test": test_get_counters_string (counters_test.TestCounters.test_get_counters_string) ... ok
Step #1 - "python_test": test_get_non_existent_counter (counters_test.TestCounters.test_get_non_existent_counter) ... ok
Step #1 - "python_test": test_max_counter (counters_test.TestCounters.test_max_counter) ... ok
Step #1 - "python_test": test_min_counter (counters_test.TestCounters.test_min_counter) ... ok
Step #1 - "python_test": test_prefix (counters_test.TestCounters.test_prefix) ... ok
Step #1 - "python_test": test_processing_rate (counters_test.TestCounters.test_processing_rate) ... ok
Step #1 - "python_test": test_set_counter_overwrites_value (counters_test.TestCounters.test_set_counter_overwrites_value)
Step #1 - "python_test": Verify set_counter overrides current value. ... ok
Step #1 - "python_test": test_show_counters_produces_correct_output (counters_test.TestCounters.test_show_counters_produces_correct_output) ... ok
Step #1 - "python_test": test_convert_v1_to_v2_coordinate_request (dc_api_wrapper_test.TestDCAPIWrapper.test_convert_v1_to_v2_coordinate_request)
Step #1 - "python_test": Test coordinate request conversion from v1 to v2. ... ok
Step #1 - "python_test": test_convert_v2_to_v1_coordinate_response (dc_api_wrapper_test.TestDCAPIWrapper.test_convert_v2_to_v1_coordinate_response)
Step #1 - "python_test": Test coordinate response conversion from v2 to v1. ... ok
Step #1 - "python_test": test_dc_api_batched_wrapper (dc_api_wrapper_test.TestDCAPIWrapper.test_dc_api_batched_wrapper)
Step #1 - "python_test": Test DC API wrapper for batched calls. ... ok
Step #1 - "python_test": test_dc_api_get_node_property (dc_api_wrapper_test.TestDCAPIWrapper.test_dc_api_get_node_property)
Step #1 - "python_test": Test API wrapper to get a single property for a node. ... ok
Step #1 - "python_test": test_dc_api_get_node_property_multi_v2 (dc_api_wrapper_test.TestDCAPIWrapper.test_dc_api_get_node_property_multi_v2)
Step #1 - "python_test": Test API wrapper to get multiple properties for a node. ... ok
Step #1 - "python_test": test_dc_api_is_defined_dcid (dc_api_wrapper_test.TestDCAPIWrapper.test_dc_api_is_defined_dcid)
Step #1 - "python_test": Test API wrapper for defined DCIDs. ... ok
Step #1 - "python_test": test_dc_api_resolve_latlng (dc_api_wrapper_test.TestDCAPIWrapper.test_dc_api_resolve_latlng)
Step #1 - "python_test": Test API wrapper for latlng resolution. ... ok
Step #1 - "python_test": test_dc_api_resolve_latlng_v1_compat_shape (dc_api_wrapper_test.TestDCAPIWrapper.test_dc_api_resolve_latlng_v1_compat_shape)
Step #1 - "python_test": Test latlng resolution supports v1 compatibility response shape. ... ok
Step #1 - "python_test": test_dc_api_resolve_placeid (dc_api_wrapper_test.TestDCAPIWrapper.test_dc_api_resolve_placeid)
Step #1 - "python_test": Test API wrapper to resolve entity using a placeid. ... ok
Step #1 - "python_test": test_dc_api_wrapper (dc_api_wrapper_test.TestDCAPIWrapper.test_dc_api_wrapper)
Step #1 - "python_test": Test the wrapper for DC API. ... ok
Step #1 - "python_test": test_dc_api_wrapper_attempts_no_extra_retries (dc_api_wrapper_test.TestDCAPIWrapper.test_dc_api_wrapper_attempts_no_extra_retries)
Step #1 - "python_test": Test wrapper doesn't retry beyond the max attempts. ... ok
Step #1 - "python_test": test_dc_api_wrapper_does_not_retry_http_400 (dc_api_wrapper_test.TestDCAPIWrapper.test_dc_api_wrapper_does_not_retry_http_400)
Step #1 - "python_test": Test wrapper does not retry non-transient HTTP errors. ... ERROR:absl:Got status: 400, not retrying.
Step #1 - "python_test": ok
Step #1 - "python_test": test_dc_api_wrapper_keyerror_returns_none_without_retry (dc_api_wrapper_test.TestDCAPIWrapper.test_dc_api_wrapper_keyerror_returns_none_without_retry)
Step #1 - "python_test": Test wrapper returns None and does not retry for KeyError. ... ERROR:absl:Got exception for api: <Mock id='140334522948576'>, 'missing-dcid'
Step #1 - "python_test": ok
Step #1 - "python_test": test_dc_api_wrapper_non_positive_retries_defaults_to_one_attempt (dc_api_wrapper_test.TestDCAPIWrapper.test_dc_api_wrapper_non_positive_retries_defaults_to_one_attempt)
Step #1 - "python_test": Test non-positive retries are treated as one attempt. ... ok
Step #1 - "python_test": test_dc_api_wrapper_non_retryable_exception_has_note (dc_api_wrapper_test.TestDCAPIWrapper.test_dc_api_wrapper_non_retryable_exception_has_note)
Step #1 - "python_test": Test non-retryable exceptions bubble once with added context note. ... ok
Step #1 - "python_test": test_dc_api_wrapper_retries_http_429 (dc_api_wrapper_test.TestDCAPIWrapper.test_dc_api_wrapper_retries_http_429)
Step #1 - "python_test": Test wrapper retries HTTP 429 and succeeds. ... ok
Step #1 - "python_test": test_dc_api_wrapper_retries_http_503_until_exhausted (dc_api_wrapper_test.TestDCAPIWrapper.test_dc_api_wrapper_retries_http_503_until_exhausted)
Step #1 - "python_test": Test wrapper retries HTTP 503 until max attempts are exhausted. ... ok
Step #1 - "python_test": test_dc_api_wrapper_stops_after_success (dc_api_wrapper_test.TestDCAPIWrapper.test_dc_api_wrapper_stops_after_success)
Step #1 - "python_test": Test wrapper stops retrying after a successful response. ... ok
Step #1 - "python_test": test_dc_get_node_property_values (dc_api_wrapper_test.TestDCAPIWrapper.test_dc_get_node_property_values)
Step #1 - "python_test": Test API wrapper to get all property:values for a node. ... ok
Step #1 - "python_test": test_non_v2_config_rejected (dc_api_wrapper_test.TestDCAPIWrapper.test_non_v2_config_rejected)
Step #1 - "python_test": Test wrapper rejects non-V2 dc_api_version values. ... ok
Step #1 - "python_test": test_download_and_unzip_file (download_util_script_test.DownloadFileTest.test_download_and_unzip_file) ... ok
Step #1 - "python_test": test_download_failure (download_util_script_test.DownloadFileTest.test_download_failure) ... WARNING:absl:Direct HEAD request failed for 'http://example.com/error' (cannot get Last-Modified): 404 Client Error: Not Found for url: http://example.com/error
Step #1 - "python_test": ERROR:absl:Processing failed: File system error for 'http://example.com/error'. Error: 404 Client Error: Not Found for url: http://example.com/error
Step #1 - "python_test": ok
Step #1 - "python_test": test_download_file_without_extension (download_util_script_test.DownloadFileTest.test_download_file_without_extension) ... ok
Step #1 - "python_test": test_download_invalid_url (download_util_script_test.DownloadFileTest.test_download_invalid_url) ... ERROR:absl:Invalid URL format or missing scheme for 'invalid_url'. Please ensure URL starts with 'http://' or 'https://'.
Step #1 - "python_test": ok
Step #1 - "python_test": test_download_txt_file (download_util_script_test.DownloadFileTest.test_download_txt_file) ... ok
Step #1 - "python_test": test_download_file (download_util_test.TestCounters.test_download_file) ... ok
Step #1 - "python_test": test_prefilled_url (download_util_test.TestCounters.test_prefilled_url) ... ok
Step #1 - "python_test": test_request_url (download_util_test.TestCounters.test_request_url) ... ok
Step #1 - "python_test": test_read_write (file_util_test.FileIOTest.test_read_write) ... ok
Step #1 - "python_test": test_file_get_estimate_num_rows (file_util_test.FileUtilsTest.test_file_get_estimate_num_rows) ... ok
Step #1 - "python_test": test_file_get_matching (file_util_test.FileUtilsTest.test_file_get_matching) ... ok
Step #1 - "python_test": test_file_load_csv_dict (file_util_test.FileUtilsTest.test_file_load_csv_dict) ... ok
Step #1 - "python_test": test_file_type (file_util_test.FileUtilsTest.test_file_type) ... ok
Step #1 - "python_test": test_file_write_load_py_dict (file_util_test.FileUtilsTest.test_file_write_load_py_dict) ... ok
Step #1 - "python_test": test_aa2 (latlng2place_mapsapi_test.Latlng2PlaceMapsAPITest.test_aa2) ... ok
Step #1 - "python_test": test_country (latlng2place_mapsapi_test.Latlng2PlaceMapsAPITest.test_country) ... ok
Step #1 - "python_test": test_main (latlng_recon_geojson_test.LatlngReconGeojsonTest.test_main) ... ok
Step #1 - "python_test": test_basic (latlng_recon_service_test.LatlngReconServiceTest.test_basic) ... ok
Step #1 - "python_test": test_filter (latlng_recon_service_test.LatlngReconServiceTest.test_filter) ... ok
Step #1 - "python_test": test_dict_list_to_mcf_str (mcf_dict_util_test.TestMCFDict.test_dict_list_to_mcf_str) ... ok
Step #1 - "python_test": test_drop_nodes (mcf_dict_util_test.TestMCFDict.test_drop_nodes) ... ok
Step #1 - "python_test": test_get_dcid_node (mcf_dict_util_test.TestMCFDict.test_get_dcid_node) ... ok
Step #1 - "python_test": test_mcf_dict_rename_namespace (mcf_dict_util_test.TestMCFDict.test_mcf_dict_rename_namespace) ... ok
Step #1 - "python_test": test_mcf_dict_rename_prop (mcf_dict_util_test.TestMCFDict.test_mcf_dict_rename_prop) ... ok
Step #1 - "python_test": test_mcf_dict_rename_prop_value (mcf_dict_util_test.TestMCFDict.test_mcf_dict_rename_prop_value) ... ok
Step #1 - "python_test": test_mcf_to_dict_list (mcf_dict_util_test.TestMCFDict.test_mcf_to_dict_list) ... ok
Step #1 - "python_test": test_node_list_check_existence_dc (mcf_dict_util_test.TestMCFDict.test_node_list_check_existence_dc) ... ok
Step #1 - "python_test": test_node_list_check_existence_node_list (mcf_dict_util_test.TestMCFDict.test_node_list_check_existence_node_list) ... ok
Step #1 - "python_test": test_example_usage (mcf_template_filler_test.MCFTemplateFillerTest.test_example_usage) ... ok
Step #1 - "python_test": test_pop_and_2_obs_with_all_pv (mcf_template_filler_test.MCFTemplateFillerTest.test_pop_and_2_obs_with_all_pv)
Step #1 - "python_test": Use separate templates for Pop Obs, and use Obs template repeatedly. ... ok
Step #1 - "python_test": test_pop_with_missing_req_pv (mcf_template_filler_test.MCFTemplateFillerTest.test_pop_with_missing_req_pv) ... ok
Step #1 - "python_test": test_require_node_name (mcf_template_filler_test.MCFTemplateFillerTest.test_require_node_name) ... ok
Step #1 - "python_test": test_unified_pop_obs_with_missing_optional_pv (mcf_template_filler_test.MCFTemplateFillerTest.test_unified_pop_obs_with_missing_optional_pv) ... ok
Step #1 - "python_test": test_place_id_resolution_by_name (state_division_to_dcid_test.PlaceMapTest.test_place_id_resolution_by_name) ... ok
Step #1 - "python_test": test_boolean_naming (statvar_dcid_generator_test.TestStatVarDcidGenerator.test_boolean_naming) ... ok
Step #1 - "python_test": test_double_underscore (statvar_dcid_generator_test.TestStatVarDcidGenerator.test_double_underscore) ... ok
Step #1 - "python_test": test_ignore_props (statvar_dcid_generator_test.TestStatVarDcidGenerator.test_ignore_props) ... ok
Step #1 - "python_test": test_legacy_mapping (statvar_dcid_generator_test.TestStatVarDcidGenerator.test_legacy_mapping) ... ok
Step #1 - "python_test": test_measured_property (statvar_dcid_generator_test.TestStatVarDcidGenerator.test_measured_property) ... ok
Step #1 - "python_test": test_measurement_constraint_removal (statvar_dcid_generator_test.TestStatVarDcidGenerator.test_measurement_constraint_removal) ... ok
Step #1 - "python_test": test_measurement_denominator (statvar_dcid_generator_test.TestStatVarDcidGenerator.test_measurement_denominator) ... ok
Step #1 - "python_test": test_measurement_qualifier (statvar_dcid_generator_test.TestStatVarDcidGenerator.test_measurement_qualifier) ... ok
Step #1 - "python_test": test_naics_name_generation (statvar_dcid_generator_test.TestStatVarDcidGenerator.test_naics_name_generation) ... ok
Step #1 - "python_test": test_namespace_removal (statvar_dcid_generator_test.TestStatVarDcidGenerator.test_namespace_removal) ... ok
Step #1 - "python_test": test_prepend_append_replace (statvar_dcid_generator_test.TestStatVarDcidGenerator.test_prepend_append_replace) ... ok
Step #1 - "python_test": test_quantity_name_generation (statvar_dcid_generator_test.TestStatVarDcidGenerator.test_quantity_name_generation) ... ok
Step #1 - "python_test": test_quantity_range_name_generation (statvar_dcid_generator_test.TestStatVarDcidGenerator.test_quantity_range_name_generation) ... ok
Step #1 - "python_test": test_soc_map (statvar_dcid_generator_test.TestStatVarDcidGenerator.test_soc_map) ... ok
Step #1 - "python_test": test_soc_name_generation (statvar_dcid_generator_test.TestStatVarDcidGenerator.test_soc_name_generation) ... ok
Step #1 - "python_test": test_sorted_constraints (statvar_dcid_generator_test.TestStatVarDcidGenerator.test_sorted_constraints) ... ok
Step #1 - "python_test": test_stat_type (statvar_dcid_generator_test.TestStatVarDcidGenerator.test_stat_type) ... ok
Step #1 - "python_test": test_timer_start (timer_test.TimerTest.test_timer_start) ... ok
Step #1 - "python_test": test_timer_stop (timer_test.TimerTest.test_timer_stop) ... ok
Step #1 - "python_test": test_timer_time (timer_test.TimerTest.test_timer_time) ... ok
Step #1 - "python_test": test_xml_with_different_data_types (xml_to_json_test.XMLToJsonConverterTest.test_xml_with_different_data_types) ... ok
Step #1 - "python_test":
Step #1 - "python_test": ----------------------------------------------------------------------
Step #1 - "python_test": Ran 96 tests in 6.996s
Step #1 - "python_test":
Step #1 - "python_test": OK
Step #1 - "python_test": #### Testing Python code in tools/
Step #1 - "python_test": /workspace/tools/statvar_importer/place/place_name_matcher.py:14: SyntaxWarning: invalid escape sequence '\`'
Step #1 - "python_test": """Script to lookup places by names.
Step #1 - "python_test": test_diff_analysis (import_differ.import_differ_test.TestImportDiffer.test_diff_analysis) ... ok
Step #1 - "python_test": test_empty_differ_file_runs_validation (import_validation.import_validation_test.ImportValidationTest.test_empty_differ_file_runs_validation)
Step #1 - "python_test": Tests that a differ file with only headers (empty DataFrame) still runs ... ok
Step #1 - "python_test": test_failed_run (import_validation.import_validation_test.ImportValidationTest.test_failed_run)
Step #1 - "python_test": Tests a failed run of the script. ... ok
Step #1 - "python_test": test_missing_differ_file_does_not_throw_exception (import_validation.import_validation_test.ImportValidationTest.test_missing_differ_file_does_not_throw_exception)
Step #1 - "python_test": Tests that a missing differ file does not cause the runner to throw an ... ok
Step #1 - "python_test": test_missing_required_file_fails (import_validation.import_validation_test.ImportValidationTest.test_missing_required_file_fails)
Step #1 - "python_test": Tests that the script fails when a required data file is missing. ... ok
Step #1 - "python_test": test_sql_validator_fails (import_validation.import_validation_test.ImportValidationTest.test_sql_validator_fails)
Step #1 - "python_test": Tests that the SQL_VALIDATOR works in a run. ... ok
Step #1 - "python_test": test_successful_run (import_validation.import_validation_test.ImportValidationTest.test_successful_run)
Step #1 - "python_test": Tests a successful run of the script. ... ok
Step #1 - "python_test": test_variables_filtering (import_validation.import_validation_test.ImportValidationTest.test_variables_filtering)
Step #1 - "python_test": Tests that the runner correctly applies the 'variables' filter. ... ok
Step #1 - "python_test": test_generate_csv_report (import_validation.report_generator_test.TestReportGenerator.test_generate_csv_report) ... ok
Step #1 - "python_test": test_generate_json_report (import_validation.report_generator_test.TestReportGenerator.test_generate_json_report) ... ok
Step #1 - "python_test": test_generate_summary_report_placeholder (import_validation.report_generator_test.TestReportGenerator.test_generate_summary_report_placeholder) ... ok
Step #1 - "python_test": test_init_raises_error_if_required_file_is_missing (import_validation.runner_test.TestValidationRunner.test_init_raises_error_if_required_file_is_missing)
Step #1 - "python_test": Tests that the constructor raises a ValueError if a required file is missing. ... ok
Step #1 - "python_test": test_runner_applies_filters_correctly (import_validation.runner_test.TestValidationRunner.test_runner_applies_filters_correctly) ... WARNING:absl:
Step #1 - "python_test": ok
Step #1 - "python_test": test_runner_calls_correct_validator_function (import_validation.runner_test.TestValidationRunner.test_runner_calls_correct_validator_function) ... WARNING:absl:
Step #1 - "python_test": ok
Step #1 - "python_test": test_runner_deleted_records_percent (import_validation.runner_test.TestValidationRunner.test_runner_deleted_records_percent) ... WARNING:absl:
Step #1 - "python_test": ok
Step #1 - "python_test": test_runner_handles_failed_validation (import_validation.runner_test.TestValidationRunner.test_runner_handles_failed_validation) ... WARNING:absl:It failed
Step #1 - "python_test": ok
Step #1 - "python_test": test_runner_handles_unknown_validation (import_validation.runner_test.TestValidationRunner.test_runner_handles_unknown_validation) ... ok
Step #1 - "python_test": test_runner_uses_custom_name (import_validation.runner_test.TestValidationRunner.test_runner_uses_custom_name) ... WARNING:absl:
Step #1 - "python_test": ok
Step #1 - "python_test": test_runner_writes_correct_output (import_validation.runner_test.TestValidationRunner.test_runner_writes_correct_output) ... WARNING:absl:Too many deletions, found 100
Step #1 - "python_test": ok
Step #1 - "python_test": test_filter_with_dcids (import_validation.util_test.TestFilterDataFrame.test_filter_with_dcids)
Step #1 - "python_test": Tests filtering by a list of exact StatVar DCIDs. ... ok
Step #1 - "python_test": test_filter_with_multiple_substrings_match (import_validation.util_test.TestFilterDataFrame.test_filter_with_multiple_substrings_match)
Step #1 - "python_test": Tests that all substrings must match for a row to be included. ... ok
Step #1 - "python_test": test_filter_with_non_matching_dcid (import_validation.util_test.TestFilterDataFrame.test_filter_with_non_matching_dcid)
Step #1 - "python_test": Tests that a non-matching DCID returns an empty DataFrame. ... ok
Step #1 - "python_test": test_filter_with_non_matching_regex (import_validation.util_test.TestFilterDataFrame.test_filter_with_non_matching_regex)
Step #1 - "python_test": Tests that a non-matching regex returns an empty DataFrame. ... ok
Step #1 - "python_test": test_filter_with_non_matching_substring (import_validation.util_test.TestFilterDataFrame.test_filter_with_non_matching_substring)
Step #1 - "python_test": Tests that a non-matching substring returns an empty DataFrame. ... ok
Step #1 - "python_test": test_filter_with_regex (import_validation.util_test.TestFilterDataFrame.test_filter_with_regex)
Step #1 - "python_test": Tests filtering by a regex pattern. ... ok
Step #1 - "python_test": test_filter_with_single_substring_match (import_validation.util_test.TestFilterDataFrame.test_filter_with_single_substring_match)
Step #1 - "python_test": Tests filtering by a single matching substring. ... ok
Step #1 - "python_test": test_filter_with_substring_existence (import_validation.util_test.TestFilterDataFrame.test_filter_with_substring_existence)
Step #1 - "python_test": Tests filtering for the existence of a substring. ... ok
Step #1 - "python_test": test_multiple_filter_types_are_unioned (import_validation.util_test.TestFilterDataFrame.test_multiple_filter_types_are_unioned)
Step #1 - "python_test": Tests that results from different filter types are combined (union). ... ok
Step #1 - "python_test": test_no_filters (import_validation.util_test.TestFilterDataFrame.test_no_filters)
Step #1 - "python_test": Tests that providing no filters returns the original DataFrame. ... ok
Step #1 - "python_test": test_both_missing_files_raise (import_validation.validation_config_test.ValidationConfigTest.test_both_missing_files_raise) ... ok
Step #1 - "python_test": test_definitions_are_deep_merged (import_validation.validation_config_test.ValidationConfigTest.test_definitions_are_deep_merged) ... ok
Step #1 - "python_test": test_rule_list_params_are_replaced (import_validation.validation_config_test.ValidationConfigTest.test_rule_list_params_are_replaced)
Step #1 - "python_test": Lists should follow OmegaConf default: override list replaces base. ... ok
Step #1 - "python_test": test_rules_are_deep_merged_by_rule_id (import_validation.validation_config_test.ValidationConfigTest.test_rules_are_deep_merged_by_rule_id) ... ok
Step #1 - "python_test": test_generate_goldens (import_validation.validator_goldens_test.TestValidatorGoldens.test_generate_goldens) ... ok
Step #1 - "python_test": test_generate_goldens_all_props (import_validation.validator_goldens_test.TestValidatorGoldens.test_generate_goldens_all_props) ... ok
Step #1 - "python_test": test_generate_goldens_all_props_mixed_schema (import_validation.validator_goldens_test.TestValidatorGoldens.test_generate_goldens_all_props_mixed_schema) ... ok
Step #1 - "python_test": test_generate_goldens_with_sampling (import_validation.validator_goldens_test.TestValidatorGoldens.test_generate_goldens_with_sampling) ... ok
Step #1 - "python_test": test_get_validator_goldens_config (import_validation.validator_goldens_test.TestValidatorGoldens.test_get_validator_goldens_config) ... ok
Step #1 - "python_test": test_validate_goldens (import_validation.validator_goldens_test.TestValidatorGoldens.test_validate_goldens) ... ok
Step #1 - "python_test": test_validator_compare_nodes (import_validation.validator_goldens_test.TestValidatorGoldens.test_validator_compare_nodes) ... ERROR:absl:Missing 1 among 2 goldens in 2 input nodes.
Step #1 - "python_test": ok
Step #1 - "python_test": test_validator_compare_nodes_multiple_sets (import_validation.validator_goldens_test.TestValidatorGoldens.test_validator_compare_nodes_multiple_sets) ... ok
Step #1 - "python_test": test_added_records_count_fails_on_inconsistent_counts (import_validation.validator_test.TestAddedRecordsCountValidation.test_added_records_count_fails_on_inconsistent_counts) ... ok
Step #1 - "python_test": test_added_records_count_fails_on_missing_column (import_validation.validator_test.TestAddedRecordsCountValidation.test_added_records_count_fails_on_missing_column) ... ok
Step #1 - "python_test": test_added_records_count_passes_on_consistent_counts (import_validation.validator_test.TestAddedRecordsCountValidation.test_added_records_count_passes_on_consistent_counts) ... ok
Step #1 - "python_test": test_added_records_count_passes_on_empty_dataframe (import_validation.validator_test.TestAddedRecordsCountValidation.test_added_records_count_passes_on_empty_dataframe) ... ok
Step #1 - "python_test": test_deleted_records_count_fails_on_missing_column (i
...
[Logs truncated due to log size limitations. For full logs, see https://console.cloud.google.com/cloud-build/builds/16dbb8ed-7d73-4f3b-8381-690d66403ed5?project=879489846695.]
...
s:USCEstablishment', 'measuredProperty': 'dcs:payroll', 'measurementQualifier': 'dcs:Quarterly', 'observationDate': '{@Number}-03', 'value': '{Number}', 'MultiplyFactor': '1', 'unit': '', 'statType': 'dcs:marginOfError', '#input': '/workspace/tools/statvar_importer/test_data/us_census_EC1200A1-2022-09-15_input.csv:1:13', 'naics': 'dcs:NAICS/2012', 'NaicsCode': '2012', '#Regex': '(?P<NaicsCode>^[0-9]+)', 'Year': '{@Number}', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Relative standard error of number of employees (%) (EMP_S)', '#input': '/workspace/tools/statvar_importer/test_data/us_census_EC1200A1-2022-09-15_input.csv:1:14', 'naics': 'dcs:NAICS/2012', 'NaicsCode': '2012', '#Regex': '(?P<NaicsCode>^[0-9]+)', 'observationDate': '{@Number}', 'Year': '{@Number}', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:Ignoring node without a dcid: OrderedDict({'# comment1': '# Auto generated using command: "python3 -m unittest discover -v -s tools/ -p *_test.py" on 2026-05-25 10:42:20.396327'})
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': '\ufeff"Label (Grouping)"', 'Key': 'us_census_B01001_input.csv', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', 'populationType': 'dcs:Person', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:49', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:', 'Key': 'Total:', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:1', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:', 'Key': 'Male:', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:2', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!Under 5 years', 'Key': 'Under 5 years', 'age': '[- 5 Years]', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:3', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!5 to 9 years', 'Key': '5 to 9 years', 'age': '[5 9 Years]', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:4', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!10 to 14 years', 'Key': '10 to 14 years', 'age': '[10 14 Years]', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:5', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!15 to 17 years', 'Key': '15 to 17 years', 'age': '[15 17 Years]', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:6', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!18 and 19 years', 'Key': '18 and 19 years', 'age': '[18 19 Years]', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:7', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!20 years', 'Key': '20 years', 'age': 'dcs:20Years', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:8', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!21 years', 'Key': '21 years', 'age': 'dcs:21Years', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:9', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!22 to 24 years', 'Key': '22 to 24 years', 'age': '[22 24 Years]', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:10', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!25 to 29 years', 'Key': '25 to 29 years', 'age': '[25 29 Years]', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:11', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!30 to 34 years', 'Key': '30 to 34 years', 'age': '[30 34 Years]', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:12', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!35 to 39 years', 'Key': '35 to 39 years', 'age': '[35 39 Years]', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:13', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!40 to 44 years', 'Key': '40 to 44 years', 'age': '[40 44 Years]', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:14', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!45 to 49 years', 'Key': '45 to 49 years', 'age': '[45 49 Years]', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:15', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!50 to 54 years', 'Key': '50 to 54 years', 'age': '[50 54 Years]', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:16', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!55 to 59 years', 'Key': '55 to 59 years', 'age': '[55 59 Years]', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:17', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!60 and 61 years', 'Key': '60 and 61 years', 'age': '[60 61 Years]', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:18', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!62 to 64 years', 'Key': '62 to 64 years', 'age': '[62 64 Years]', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:19', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!65 and 66 years', 'Key': '65 and 66 years', 'age': '[65 66 Years]', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:20', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!67 to 69 years', 'Key': '67 to 69 years', 'age': '[67 69 Years]', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:21', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!70 to 74 years', 'Key': '70 to 74 years', 'age': '[70 74 Years]', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:22', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!75 to 79 years', 'Key': '75 to 79 years', 'age': '[75 79 Years]', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:23', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!80 to 84 years', 'Key': '80 to 84 years', 'age': '[80 84 Years]', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:24', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Male:!!85 years and over', 'Key': '85 years and over', 'age': '[85 - Years]', 'gender': 'dcs:Male', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:25', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:', 'Key': 'Female:', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:26', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!Under 5 years', 'Key': 'Under 5 years', 'age': '[- 5 Years]', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:27', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!5 to 9 years', 'Key': '5 to 9 years', 'age': '[5 9 Years]', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:28', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!10 to 14 years', 'Key': '10 to 14 years', 'age': '[10 14 Years]', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:29', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!15 to 17 years', 'Key': '15 to 17 years', 'age': '[15 17 Years]', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:30', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!18 and 19 years', 'Key': '18 and 19 years', 'age': '[18 19 Years]', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:31', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!20 years', 'Key': '20 years', 'age': 'dcs:20Years', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:32', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!21 years', 'Key': '21 years', 'age': 'dcs:21Years', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:33', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!22 to 24 years', 'Key': '22 to 24 years', 'age': '[22 24 Years]', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:34', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!25 to 29 years', 'Key': '25 to 29 years', 'age': '[25 29 Years]', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:35', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!30 to 34 years', 'Key': '30 to 34 years', 'age': '[30 34 Years]', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:36', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!35 to 39 years', 'Key': '35 to 39 years', 'age': '[35 39 Years]', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:37', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!40 to 44 years', 'Key': '40 to 44 years', 'age': '[40 44 Years]', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:38', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!45 to 49 years', 'Key': '45 to 49 years', 'age': '[45 49 Years]', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:39', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!50 to 54 years', 'Key': '50 to 54 years', 'age': '[50 54 Years]', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:40', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!55 to 59 years', 'Key': '55 to 59 years', 'age': '[55 59 Years]', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:41', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!60 and 61 years', 'Key': '60 and 61 years', 'age': '[60 61 Years]', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:42', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!62 to 64 years', 'Key': '62 to 64 years', 'age': '[62 64 Years]', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:43', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!65 and 66 years', 'Key': '65 and 66 years', 'age': '[65 66 Years]', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:44', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!67 to 69 years', 'Key': '67 to 69 years', 'age': '[67 69 Years]', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:45', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!70 to 74 years', 'Key': '70 to 74 years', 'age': '[70 74 Years]', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:46', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!75 to 79 years', 'Key': '75 to 79 years', 'age': '[75 79 Years]', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:47', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!80 to 84 years', 'Key': '80 to 84 years', 'age': '[80 84 Years]', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:48', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:No place in SVObs {'Data': 'Total:!!Female:!!85 years and over', 'Key': '85 years and over', 'age': '[85 - Years]', 'gender': 'dcs:Female', 'populationType': 'dcs:Person', 'value': '{Number}', 'observationDate': '2020', 'measurementMethod': 'dcs:CensusACS5yrSurvey', '#input': '/workspace/tools/statvar_importer/test_data/us_census_B01001_input.csv:1:49', 'typeOf': 'dcs:StatVarObservation'}
Step #1 - "python_test": WARNING:absl:Ignoring node without a dcid: OrderedDict({'# comment1': '# Auto generated using command: "python3 -m unittest discover -v -s tools/ -p *_test.py" on 2026-05-25 10:42:30.815988'})
Step #1 - "python_test": ok
Step #1 - "python_test": test_already_capitalized (statvar_importer.utils_test.TestCapitalizeFirstChar.test_already_capitalized) ... ok
Step #1 - "python_test": test_empty_string (statvar_importer.utils_test.TestCapitalizeFirstChar.test_empty_string) ... ok
Step #1 - "python_test": test_hello (statvar_importer.utils_test.TestCapitalizeFirstChar.test_hello) ... ok
Step #1 - "python_test": test_integer_input (statvar_importer.utils_test.TestCapitalizeFirstChar.test_integer_input) ... ok
Step #1 - "python_test": test_none_input (statvar_importer.utils_test.TestCapitalizeFirstChar.test_none_input) ... ok
Step #1 - "python_test": test_numeric_first_char (statvar_importer.utils_test.TestCapitalizeFirstChar.test_numeric_first_char) ... ok
Step #1 - "python_test": test_single_char (statvar_importer.utils_test.TestCapitalizeFirstChar.test_single_char) ... ok
Step #1 - "python_test": test_space_first_char (statvar_importer.utils_test.TestCapitalizeFirstChar.test_space_first_char) ... ok
Step #1 - "python_test": test_convert_xls_to_csv (statvar_importer.utils_test.TestConvertXlsToCsv.test_convert_xls_to_csv) ... ok
Step #1 - "python_test": test_convert_xls_to_csv_no_xls (statvar_importer.utils_test.TestConvertXlsToCsv.test_convert_xls_to_csv_no_xls) ... ok
Step #1 - "python_test": test_empty_files (statvar_importer.utils_test.TestConvertXlsToCsv.test_empty_files) ... ok
Step #1 - "python_test": test_download_fails (statvar_importer.utils_test.TestDownloadCsvFromUrl.test_download_fails) ... ok
Step #1 - "python_test": test_empty_urls (statvar_importer.utils_test.TestDownloadCsvFromUrl.test_empty_urls) ... ok
Step #1 - "python_test": test_multiple_urls (statvar_importer.utils_test.TestDownloadCsvFromUrl.test_multiple_urls) ... ok
Step #1 - "python_test": test_single_url (statvar_importer.utils_test.TestDownloadCsvFromUrl.test_single_url) ... ok
Step #1 - "python_test": test_single_url_with_filename (statvar_importer.utils_test.TestDownloadCsvFromUrl.test_single_url_with_filename) ... ok
Step #1 - "python_test": test_filename_and_suffixed_exist (statvar_importer.utils_test.TestGetFilenameForUrl.test_filename_and_suffixed_exist) ... ok
Step #1 - "python_test": test_filename_exists (statvar_importer.utils_test.TestGetFilenameForUrl.test_filename_exists) ... ok
Step #1 - "python_test": test_no_existing_files (statvar_importer.utils_test.TestGetFilenameForUrl.test_no_existing_files) ... ok
Step #1 - "python_test": test_url_with_multiple_dots (statvar_importer.utils_test.TestGetFilenameForUrl.test_url_with_multiple_dots) ... ok
Step #1 - "python_test": test_url_with_multiple_dots_and_exists (statvar_importer.utils_test.TestGetFilenameForUrl.test_url_with_multiple_dots_and_exists) ... ok
Step #1 - "python_test": test_url_with_no_extension (statvar_importer.utils_test.TestGetFilenameForUrl.test_url_with_no_extension) ... ok
Step #1 - "python_test": test_url_with_no_extension_and_exists (statvar_importer.utils_test.TestGetFilenameForUrl.test_url_with_no_extension_and_exists) ... ok
Step #1 - "python_test": test_url_with_query_params (statvar_importer.utils_test.TestGetFilenameForUrl.test_url_with_query_params) ... ok
Step #1 - "python_test": test_extra_hyphen (statvar_importer.utils_test.TestGetObservationDateFormat.test_extra_hyphen) ... ok
Step #1 - "python_test": test_slashes (statvar_importer.utils_test.TestGetObservationDateFormat.test_slashes) ... ok
Step #1 - "python_test": test_year (statvar_importer.utils_test.TestGetObservationDateFormat.test_year) ... ok
Step #1 - "python_test": test_year_month (statvar_importer.utils_test.TestGetObservationDateFormat.test_year_month) ... ok
Step #1 - "python_test": test_year_month_day (statvar_importer.utils_test.TestGetObservationDateFormat.test_year_month_day) ... ok
Step #1 - "python_test": test_extra_hyphen (statvar_importer.utils_test.TestGetObservationPeriodForDate.test_extra_hyphen) ... ok
Step #1 - "python_test": test_invalid_date (statvar_importer.utils_test.TestGetObservationPeriodForDate.test_invalid_date) ... ok
Step #1 - "python_test": test_slashes (statvar_importer.utils_test.TestGetObservationPeriodForDate.test_slashes) ... ok
Step #1 - "python_test": test_year (statvar_importer.utils_test.TestGetObservationPeriodForDate.test_year) ... ok
Step #1 - "python_test": test_year_month (statvar_importer.utils_test.TestGetObservationPeriodForDate.test_year_month) ... ok
Step #1 - "python_test": test_year_month_day (statvar_importer.utils_test.TestGetObservationPeriodForDate.test_year_month_day) ... ok
Step #1 - "python_test": test_dcid_prefix (statvar_importer.utils_test.TestIsPlaceDcid.test_dcid_prefix) ... ok
Step #1 - "python_test": test_dcs_prefix (statvar_importer.utils_test.TestIsPlaceDcid.test_dcs_prefix) ... ok
Step #1 - "python_test": test_empty_string (statvar_importer.utils_test.TestIsPlaceDcid.test_empty_string) ... ok
Step #1 - "python_test": test_no_prefix_valid (statvar_importer.utils_test.TestIsPlaceDcid.test_no_prefix_valid) ... ok
Step #1 - "python_test": test_no_slash (statvar_importer.utils_test.TestIsPlaceDcid.test_no_slash) ... ok
Step #1 - "python_test": test_none (statvar_importer.utils_test.TestIsPlaceDcid.test_none) ... ok
Step #1 - "python_test": test_special_chars_no_prefix (statvar_importer.utils_test.TestIsPlaceDcid.test_special_chars_no_prefix) ... ok
Step #1 - "python_test": test_special_chars_with_prefix (statvar_importer.utils_test.TestIsPlaceDcid.test_special_chars_with_prefix) ... ok
Step #1 - "python_test": test_download_and_convert (statvar_importer.utils_test.TestPrepareInputData.test_download_and_convert) ... ok
Step #1 - "python_test": test_local_csv_found (statvar_importer.utils_test.TestPrepareInputData.test_local_csv_found) ... ok
Step #1 - "python_test": test_no_input_data (statvar_importer.utils_test.TestPrepareInputData.test_no_input_data) ... ok
Step #1 - "python_test": test_sharding_enabled (statvar_importer.utils_test.TestPrepareInputData.test_sharding_enabled) ... ok
Step #1 - "python_test": test_empty_props (statvar_importer.utils_test.TestPvsHasAnyProp.test_empty_props) ... ok
Step #1 - "python_test": test_empty_pvs (statvar_importer.utils_test.TestPvsHasAnyProp.test_empty_pvs) ... ok
Step #1 - "python_test": test_none_props (statvar_importer.utils_test.TestPvsHasAnyProp.test_none_props) ... ok
Step #1 - "python_test": test_none_pvs (statvar_importer.utils_test.TestPvsHasAnyProp.test_none_pvs) ... ok
Step #1 - "python_test": test_one_of_props_exists (statvar_importer.utils_test.TestPvsHasAnyProp.test_one_of_props_exists) ... ok
Step #1 - "python_test": test_prop_does_not_exist (statvar_importer.utils_test.TestPvsHasAnyProp.test_prop_does_not_exist) ... ok
Step #1 - "python_test": test_prop_exists (statvar_importer.utils_test.TestPvsHasAnyProp.test_prop_exists) ... ok
Step #1 - "python_test": test_prop_is_none (statvar_importer.utils_test.TestPvsHasAnyProp.test_prop_is_none) ... ok
Step #1 - "python_test": test_empty_files (statvar_importer.utils_test.TestShardCsvData.test_empty_files) ... ok
Step #1 - "python_test": test_shard_csv_data (statvar_importer.utils_test.TestShardCsvData.test_shard_csv_data) ... ok
Step #1 - "python_test": test_float (statvar_importer.utils_test.TestStrFromNumber.test_float) ... ok
Step #1 - "python_test": test_float_with_decimal (statvar_importer.utils_test.TestStrFromNumber.test_float_with_decimal) ... ok
Step #1 - "python_test": test_integer (statvar_importer.utils_test.TestStrFromNumber.test_integer) ... ok
Step #1 - "python_test": test_precision (statvar_importer.utils_test.TestStrFromNumber.test_precision) ... ok
Step #1 - "python_test": test_rounding (statvar_importer.utils_test.TestStrFromNumber.test_rounding) ... ok
Step #1 - "python_test": test_trailing_zeros (statvar_importer.utils_test.TestStrFromNumber.test_trailing_zeros) ... ok
Step #1 - "python_test":
Step #1 - "python_test": ======================================================================
Step #1 - "python_test": FAIL: test_diff_mcf_files (statvar_importer.mcf_diff_test.TestMCFDiff.test_diff_mcf_files)
Step #1 - "python_test": ----------------------------------------------------------------------
Step #1 - "python_test": Traceback (most recent call last):
Step #1 - "python_test": File "/workspace/tools/statvar_importer/mcf_diff_test.py", line 158, in test_diff_mcf_files
Step #1 - "python_test": self.assertEqual(counters.get_counter('PVs-matched'), 9)
Step #1 - "python_test": AssertionError: 0 != 9
Step #1 - "python_test":
Step #1 - "python_test": ----------------------------------------------------------------------
Step #1 - "python_test": Ran 310 tests in 57.359s
Step #1 - "python_test":
Step #1 - "python_test": FAILED (failures=1, skipped=2)
Finished Step #1 - "python_test"
ERROR
ERROR: build step 1 "python:3.12.8" failed: step exited with non-zero status: 1
Loading