Coverage for functions \ flipdare \ wrapper \ backend \ compliance_wrapper.py: 72%

47 statements  

« prev     ^ index     » next       coverage.py v7.13.0, created at 2026-05-08 12:22 +1000

1#!/usr/bin/env python 

2# Copyright (c) 2026 Flipdare Pty Ltd. All rights reserved. 

3# 

4# This file is part of Flipdare's proprietary software and contains 

5# confidential and copyrighted material. Unauthorised copying, 

6# modification, distribution, or use of this file is strictly 

7# prohibited without prior written permission from Flipdare Pty Ltd. 

8# 

9# This software includes third-party components licensed under MIT, 

10# BSD, and Apache 2.0 licences. See THIRD_PARTY_NOTICES for details. 

11# 

12 

13from __future__ import annotations 

14 

15from typing import Any 

16 

17from flipdare.generated.model.backend.compliance_model import ComplianceKeys, ComplianceModel 

18from flipdare.generated.shared.model.compliance_obj_type import ComplianceObjType 

19from flipdare.wrapper._persisted_wrapper import PersistedWrapper 

20 

21_K = ComplianceKeys 

22 

23 

24class ComplianceWrapper(PersistedWrapper[ComplianceModel]): 

25 MODEL_CLASS = ComplianceModel 

26 

27 @property 

28 def obj_id(self) -> str: 

29 return self._model.obj_id 

30 

31 @obj_id.setter 

32 def obj_id(self, value: str) -> None: 

33 self.update_field(_K.OBJ_ID, value) 

34 

35 @property 

36 def obj_type(self) -> ComplianceObjType: 

37 return self._model.obj_type 

38 

39 @obj_type.setter 

40 def obj_type(self, value: ComplianceObjType) -> None: 

41 self.update_field(_K.OBJ_TYPE, value) 

42 

43 @property 

44 def deleted_by_uid(self) -> str | None: 

45 return self._model.deleted_by_uid 

46 

47 @deleted_by_uid.setter 

48 def deleted_by_uid(self, value: str | None) -> None: 

49 self.update_field(_K.DELETED_BY_UID, value) 

50 

51 @property 

52 def uid(self) -> str: 

53 return self._model.uid 

54 

55 @property 

56 def obj_model(self) -> dict[str, Any]: 

57 return self._model.obj_model 

58 

59 @obj_model.setter 

60 def obj_model(self, value: dict[str, Any]) -> None: 

61 self.update_field(_K.OBJ_MODEL, value) 

62 

63 # ------------------------------------------------------------------------- 

64 # Step tracking fields (read by StepProcessor via getattr) 

65 # ------------------------------------------------------------------------- 

66 

67 @property 

68 def processed(self) -> bool: 

69 return self._model.processed 

70 

71 @property 

72 def error_count(self) -> int: 

73 return self._model.error_count 

74 

75 @property 

76 def anonymized(self) -> bool: 

77 return self._model.anonymized 

78 

79 @property 

80 def deleted_from_search(self) -> bool: 

81 return self._model.deleted_from_search