@@ -29,7 +29,10 @@ def __init__(
2929 """Initialize the instance."""
3030 self .filename = filename
3131 self .unique_id_field = unique_id_field
32- assert id_labeler is not None or unique_id_field != ""
32+ if id_labeler is None and unique_id_field == "" :
33+ raise ValueError (
34+ "Either id_labeler must be provided or unique_id_field must be set"
35+ )
3336 self .id_labeler = id_labeler
3437 self .entrytype_setter = entrytype_setter
3538 self .field_mapper = field_mapper
@@ -48,23 +51,22 @@ def _set_ids(self, records_list: list) -> None:
4851 else :
4952 self .id_labeler (records_list ) # type: ignore
5053
51- assert all (
52- Fields .ID in record_dict for record_dict in records_list
53- ), "ID not set in all records"
54+ if not all (Fields .ID in record_dict for record_dict in records_list ):
55+ raise ValueError ("ID not set in all records" )
5456 unique_ids = {record_dict [Fields .ID ] for record_dict in records_list }
5557 non_unique_ids = [
5658 id
5759 for id in unique_ids
5860 if sum (1 for r in records_list if r [Fields .ID ] == id ) > 1
5961 ]
60- assert not non_unique_ids , f"ID is not unique in records: { non_unique_ids } "
62+ if non_unique_ids :
63+ raise ValueError (f"ID is not unique in records: { non_unique_ids } " )
6164
6265 def _set_entrytypes (self , records_dict : dict ) -> None :
6366 for r_dict_val in records_dict .values ():
6467 self .entrytype_setter (r_dict_val )
65- assert all (
66- Fields .ENTRYTYPE in r for r in records_dict .values ()
67- ), "ENTRYTYPE not set in all records"
68+ if not all (Fields .ENTRYTYPE in r for r in records_dict .values ()):
69+ raise ValueError ("ENTRYTYPE not set in all records" )
6870
6971 for r in records_dict .values ():
7072 if r [Fields .ENTRYTYPE ] in ENTRYTYPES .get_all ():
0 commit comments