def validate( zone_infos: ZoneInfoMap, zone_policies: ZonePolicyMap, zone: str, year: int, start_year: int, until_year: int, validate_buffer_size: bool, validate_test_data: bool, viewing_months: int, validate_dst_offset: bool, debug_validator: bool, debug_specifier: bool, in_place_transitions: bool, optimize_candidates: bool, ) -> None: # Set the default to set both --validate_buffer_size and # --validate_test_data if neither flags are given explicitly. if not validate_buffer_size and not validate_test_data: validate_buffer_size = True validate_test_data = True validator = Validator(zone_infos=zone_infos, zone_policies=zone_policies, viewing_months=viewing_months, validate_dst_offset=validate_dst_offset, debug_validator=debug_validator, debug_specifier=debug_specifier, zone_name=zone, year=year, start_year=start_year, until_year=until_year, in_place_transitions=in_place_transitions, optimize_candidates=optimize_candidates) if validate_buffer_size: logging.info('======== Validating transition buffer sizes') validator.validate_buffer_size() if validate_test_data: logging.info('======== Validating test data') validator.validate_test_data()