device-automation-bus / dab-compliance-suite

Compliance Testing Suite for DAB.
https://getdab.org/
3 stars 10 forks source link

is_setting_supported in enforcement_manager.py does the opposite of w… #51

Closed hjourdain-ryvr closed 3 months ago

hjourdain-ryvr commented 3 months ago

…hat it should do for type List

In enforcement_manager.py, is_setting_supported is supposed to give the list of the settings which are supported on the platform, by checking the result of system/settings/list. If an item is a boolean and set to false, it's not supported. If an item is a List and is empty, it's not supported either. If the list has values, then it is supported. However, with the existing code, an empty list for a setting will return True (supported) and a non-empty list will return False (not supported)! Changing the comparison for the len() should fix it.

bgy36ww commented 3 months ago

Oh, the other pull request fixes this as well! Can you check if that works?

hjourdain-ryvr commented 3 months ago

@bgy36ww The other PR might, but it will conflict with the proper handling of audioVolume, which is the only “dict” existing in the spec, with a very specific way described in the spec to “disable” it (min=max).I tried to craft my 2 patches to be as consistent as possible with the current DAB specification.