Enhance DaliGatewayCache: add capabilities management for DALI devices
Signed-off-by: Tony <tonylu@tony-cloud.com>
This commit is contained in:
@@ -40,6 +40,7 @@ int main() {
|
||||
[&](const DaliGatewayStatusUpdate&) { ++observer_updates; });
|
||||
|
||||
assert(cache.setGroupMask(7, 4, 0x0001));
|
||||
assert(cache.setCapabilities(7, 4, 0x0180, 0x07));
|
||||
assert(cache.mirrorForwardFrame(7, 0x80, 42));
|
||||
assert(status_updates == 1);
|
||||
assert(observer_updates == status_updates);
|
||||
@@ -87,6 +88,17 @@ int main() {
|
||||
assert(restored_state.groupMask == 0x0001);
|
||||
assert(restored_state.settings.minLevel == 12);
|
||||
assert(restored_state.status.stale);
|
||||
assert(restored_state.daliDeviceTypeMask == 0x0180);
|
||||
assert(restored_state.dt8ColorTypeFeatures == 0x07);
|
||||
|
||||
// Version-one records remain readable and retain their original fields.
|
||||
persisted[{8, 2}] = "1,129,9,2,111,0,0,0,4,254,0,0,0";
|
||||
assert(restored.preloadChannel(8));
|
||||
const auto migrated_state = restored.addressState(8, 2);
|
||||
assert(migrated_state.groupMaskKnown);
|
||||
assert(migrated_state.groupMask == 2);
|
||||
assert(migrated_state.settings.minLevel == 4);
|
||||
assert(!migrated_state.daliDeviceTypeMask.has_value());
|
||||
|
||||
DaliApplicationControllerConfig config;
|
||||
config.shortAddress = 3;
|
||||
|
||||
Reference in New Issue
Block a user