RedHatQE / pylero

Python wrapper for the Polarion WSDL API
https://redhatqe.github.io/pylero/
MIT License
38 stars 25 forks source link

Fixing issue #160 #164

Open emesika opened 9 months ago

emesika commented 9 months ago

code :

if parse_type[0].startswith("ns"): cls._cls_suds_map[local_name]["cls"] = globals()[parse_type[1]] cls._cls_suds_map[local_name]["enum_id"] = getattr(cft, "enum_id", None) cls._cls_suds_map[local_name]["is_custom"] = True cls._cls_suds_map[local_name]["control"] = cls._wi_type

Error :

File "/home/emesika/.local/lib/python3.9/site-packages/pylero/work_item.py", line 1464, in get_custom_fields print(f"Global = {globals()[parse_type[1]]}") KeyError: 'duration'

Happens on :

local name = sprint_estimate parse_type = duration

should skip non existing parse_type[1] in globals() :

if parse_type[0].startswith("ns"): if parse_type[1] not in globals(): continue cls._cls_suds_map[local_name]["cls"] = globals()[parse_type[1]] cls._cls_suds_map[local_name]["enum_id"] = getattr(cft, "enum_id", None) cls._cls_suds_map[local_name]["is_custom"] = True cls._cls_suds_map[local_name]["control"] = cls._wi_type

leelavg commented 7 months ago

Unfortunately the fix seems like a workaround, maybe the original assumption that all nsX types are object but not native polarion types is blurred in recent releases and duration is the first case we hit due to that 🤔

leelavg commented 7 months ago

to the projects that I've access I don't see a custom field with duration as ns object, if possible could you pls ping me internally and reach a conclusion. thanks.

waynesun09 commented 5 months ago

@emesika any info about what Leela asked in the comment?