Skip to content

Commit 514b002

Browse files
committed
fix: add missing supports_credential_assignment flag
1 parent 901dd28 commit 514b002

2 files changed

Lines changed: 10 additions & 0 deletions

File tree

test/model/test_access_control.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,11 +52,13 @@ def test_credential_capabilities_from_dict() -> None:
5252
},
5353
"supportsAdminCode": True,
5454
"supportsAdminCodeDeactivation": False,
55+
"supportsCredentialAssignment": True,
5556
}
5657
)
5758

5859
assert capabilities.supports_admin_code
5960
assert not capabilities.supports_admin_code_deactivation
61+
assert capabilities.supports_credential_assignment
6062
assert UserCredentialType.PIN_CODE in capabilities.supported_credential_types
6163
pin_code = capabilities.supported_credential_types[UserCredentialType.PIN_CODE]
6264
assert pin_code.number_of_credential_slots == 2
@@ -119,6 +121,7 @@ async def test_access_control_support_and_capabilities(
119121
},
120122
"supportsAdminCode": True,
121123
"supportsAdminCodeDeactivation": True,
124+
"supportsCredentialAssignment": True,
122125
}
123126
},
124127
)
@@ -157,6 +160,7 @@ async def test_access_control_support_and_capabilities(
157160
)
158161
assert credential_capabilities.supports_admin_code
159162
assert credential_capabilities.supports_admin_code_deactivation
163+
assert credential_capabilities.supports_credential_assignment
160164
assert (
161165
credential_capabilities.supported_credential_types[
162166
UserCredentialType.PIN_CODE

zwave_js_server/model/access_control.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,7 @@ class CredentialCapabilitiesDataType(TypedDict, total=False):
154154
supportedCredentialTypes: dict[str, UserCredentialCapabilityDataType]
155155
supportsAdminCode: bool
156156
supportsAdminCodeDeactivation: bool
157+
supportsCredentialAssignment: bool
157158

158159

159160
@dataclass
@@ -165,6 +166,7 @@ class CredentialCapabilities:
165166
)
166167
supports_admin_code: bool = False
167168
supports_admin_code_deactivation: bool = False
169+
supports_credential_assignment: bool = False
168170

169171
@classmethod
170172
def from_dict(cls, data: CredentialCapabilitiesDataType) -> CredentialCapabilities:
@@ -183,6 +185,9 @@ def from_dict(cls, data: CredentialCapabilitiesDataType) -> CredentialCapabiliti
183185
supports_admin_code_deactivation=data.get(
184186
"supportsAdminCodeDeactivation", False
185187
),
188+
supports_credential_assignment=data.get(
189+
"supportsCredentialAssignment", False
190+
),
186191
)
187192

188193
def to_dict(self) -> CredentialCapabilitiesDataType:
@@ -194,6 +199,7 @@ def to_dict(self) -> CredentialCapabilitiesDataType:
194199
},
195200
"supportsAdminCode": self.supports_admin_code,
196201
"supportsAdminCodeDeactivation": self.supports_admin_code_deactivation,
202+
"supportsCredentialAssignment": self.supports_credential_assignment,
197203
}
198204

199205

0 commit comments

Comments
 (0)