diff --git a/src/contraqctor/qc/harp/harp_device.py b/src/contraqctor/qc/harp/harp_device.py index e16f80d..3e7a107 100644 --- a/src/contraqctor/qc/harp/harp_device.py +++ b/src/contraqctor/qc/harp/harp_device.py @@ -112,15 +112,7 @@ def test_read_dump_is_complete(self): """ Check if the read dump from an harp device is complete """ - expected_regs = self.harp_device.device_reader.device.registers.keys() ds = [stream for stream in self.harp_device] - missing_regs = [reg_name for reg_name in expected_regs if reg_name not in [r.name for r in ds]] - if len(missing_regs) > 0: - return self.fail_test( - False, - "Read dump is not complete. Some registers are missing.", - context={"missing_registers": missing_regs}, - ) def _try_get_last_read(r: HarpRegister) -> t.Optional[pd.DataFrame]: """We will assume that all data is loaded. If not we will return None @@ -130,9 +122,8 @@ def _try_get_last_read(r: HarpRegister) -> t.Optional[pd.DataFrame]: except ValueError: return None - missing_read_dump = [ - r.name for r in ds if not (r.name in expected_regs and (_try_get_last_read(r) is not None)) - ] + missing_read_dump = [r.name for r in ds if not (_try_get_last_read(r) is not None)] + return ( self.pass_test(True, "Read dump is complete") if len(missing_read_dump) == 0 diff --git a/tests/test_qc/harp/test_harp.py b/tests/test_qc/harp/test_harp.py index b54b57b..e398f3d 100644 --- a/tests/test_qc/harp/test_harp.py +++ b/tests/test_qc/harp/test_harp.py @@ -264,7 +264,11 @@ def test_read_dump_is_complete(self, mock_harp_device): result = suite.test_read_dump_is_complete() assert result.status == Status.PASSED - suite.harp_device.device_reader.device.registers["MissingReg"] = {} + no_read_df = pd.DataFrame( + {"NoReadReg": [1], "MessageType": ["WRITE"]}, + index=pd.Index([1.0], name="Seconds"), + ) + suite.harp_device._registers["NoReadReg"] = MockHarpRegister("NoReadReg", no_read_df) result = suite.test_read_dump_is_complete() assert result.status == Status.FAILED assert "missing_registers" in result.context