Keysight/python-trsfile

TraceSet is interpreted incorrectly if no data is specified

Opened this issue · 1 comments

To reproduce

  • Create an empty trace set with the header containing only Header.TRS_VERSION: 2
  • Try to open the trace set

Expected

  • The trace set can be opened

Actual

[ERROR] 13:59:31 FIPy base_request_handler.py:_handle_request_exception:43 | Traceback (most recent call last):
[...]
File "<path>\trsfile\engine\trs.py", line 301, in get_traces
    parameters = self.read_parameter_data()
  File "<path>\trsfile\engine\trs.py", line 323, in read_parameter_data
    parameters['LEGACY_DATA'] = ByteArrayParameter(data)
  File "<path>\trsfile\traceparameter.py", line 23, in __init__
    raise ValueError('The value for a TraceParameter cannot be empty')

This seems to be caused by the fact that no TraceParameterDefinitionMap is present in the provided header. However, I would expect that in this case an empty definition map is created automatically if TRS_VERSION 2 is specified,