From 58f866d58291fe6fb1b5aa0db67a91a6c100386a Mon Sep 17 00:00:00 2001 From: krcook Date: Wed, 29 Jan 2025 23:23:33 +0000 Subject: [PATCH 1/2] Update types.py Update types.py changing IntType:with_divider() function such that the new divider is calculated by dividing one multiplier by the other (rather than multiplying) --- pyebus/types.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyebus/types.py b/pyebus/types.py index cfbe41a..ab59598 100644 --- a/pyebus/types.py +++ b/pyebus/types.py @@ -416,7 +416,7 @@ def _getkwargs(self): def with_divider(self, divider): """Return copy and apply `divider`.""" - divider = _try_int(divider * (self.divider or 1)) + divider = _try_int(divider / (self.divider or 1)) min_ = _try_int(self.min_ / divider) max_ = _try_int(self.max_ / divider) return IntType(min_, max_, divider=divider) From 4235b08761e78af96c2f81148773d7eaee84d649 Mon Sep 17 00:00:00 2001 From: Keven Cook Date: Thu, 30 Jan 2025 00:35:45 +0000 Subject: [PATCH 2/2] updated unit tests for change to divider --- tests/testdata/find0.decoded.txt | 18 +++++++++--------- tests/testdata/icon.txt | 4 ++-- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/tests/testdata/find0.decoded.txt b/tests/testdata/find0.decoded.txt index dfd40ef..9aefd5f 100644 --- a/tests/testdata/find0.decoded.txt +++ b/tests/testdata/find0.decoded.txt @@ -2607,11 +2607,11 @@ MsgDef('mc.4', 'CoolingRequest', read=True) r,mc.4,CoolingStartOffset,,s,D1C,2,, MsgDef('mc.4', 'CoolingStartOffset', read=True) - FieldDef(0, '', IntType(0, 25, divider=4)) + FieldDef(0, '', IntType(0, 100, divider=1)) w,mc.4,CoolingStartOffset,,m,D1C,2,, MsgDef('mc.4', 'CoolingStartOffset', write=True) - FieldDef(0, '', IntType(0, 25, divider=4)) + FieldDef(0, '', IntType(0, 100, divider=1)) r,mc.4,CoolingSupported,yesno,s,UCH,0=no;1=yes,, MsgDef('mc.4', 'CoolingSupported', read=True) @@ -2787,11 +2787,11 @@ MsgDef('mc.4', 'DWMOffToHeatingDelay', read=True) r,mc.4,EfficiencyHysteresisMin,,s,D1C,2,, MsgDef('mc.4', 'EfficiencyHysteresisMin', read=True) - FieldDef(0, '', IntType(0, 25, divider=4)) + FieldDef(0, '', IntType(0, 100, divider=1)) w,mc.4,EfficiencyHysteresisMin,,m,D1C,2,, MsgDef('mc.4', 'EfficiencyHysteresisMin', write=True) - FieldDef(0, '', IntType(0, 25, divider=4)) + FieldDef(0, '', IntType(0, 100, divider=1)) r,mc.4,errorhistory,index,m,UCH,,,,status,s,UCH,,,Status,time2,s,VTM,,,Zeit,date,s,HDA,,,Datum,error,s,UIN,,,Fehlernummer MsgDef('mc.4', 'errorhistory', read=True) @@ -3093,7 +3093,7 @@ MsgDef('mc.4', 'TempDesiredLow', write=True) r,mc.4,TempDiffInOutdoor,,s,D1C,2,, MsgDef('mc.4', 'TempDiffInOutdoor', read=True) - FieldDef(0, '', IntType(0, 25, divider=4)) + FieldDef(0, '', IntType(0, 100, divider=1)) r,mc.4,Timer.Friday,from,s,TTM,,,Slots 1-3,to,s,TTM,,,bis,from,s,TTM,,,Slot 2 von/bis,to,s,TTM,,,bis,from,s,TTM,,,Slot 3 von/bis,to,s,TTM,,,bis,daysel,s,UCH,0=selected;1=Mo-Fr;2=Sa-So;3=Mo-So,,Tage MsgDef('mc.4', 'Timer.Friday', read=True) @@ -3273,11 +3273,11 @@ MsgDef('mc.5', 'CoolingRequest', read=True) r,mc.5,CoolingStartOffset,,s,D1C,2,, MsgDef('mc.5', 'CoolingStartOffset', read=True) - FieldDef(0, '', IntType(0, 25, divider=4)) + FieldDef(0, '', IntType(0, 100, divider=1)) w,mc.5,CoolingStartOffset,,m,D1C,2,, MsgDef('mc.5', 'CoolingStartOffset', write=True) - FieldDef(0, '', IntType(0, 25, divider=4)) + FieldDef(0, '', IntType(0, 100, divider=1)) r,mc.5,CoolingSupported,yesno,s,UCH,0=no;1=yes,, MsgDef('mc.5', 'CoolingSupported', read=True) @@ -3453,7 +3453,7 @@ MsgDef('mc.5', 'DWMOffToHeatingDelay', read=True) r,mc.5,EfficiencyHysteresisMin,,s,D1C,2,, MsgDef('mc.5', 'EfficiencyHysteresisMin', read=True) - FieldDef(0, '', IntType(0, 25, divider=4)) + FieldDef(0, '', IntType(0, 100, divider=1)) r,mc.5,errorhistory,index,m,UCH,,,,status,s,UCH,,,Status,time2,s,VTM,,,Zeit,date,s,HDA,,,Datum,error,s,UIN,,,Fehlernummer MsgDef('mc.5', 'errorhistory', read=True) @@ -3747,7 +3747,7 @@ MsgDef('mc.5', 'TempDesiredLow', write=True) r,mc.5,TempDiffInOutdoor,,s,D1C,2,, MsgDef('mc.5', 'TempDiffInOutdoor', read=True) - FieldDef(0, '', IntType(0, 25, divider=4)) + FieldDef(0, '', IntType(0, 100, divider=1)) r,mc.5,Timer.Friday,from,s,TTM,,,Slots 1-3,to,s,TTM,,,bis,from,s,TTM,,,Slot 2 von/bis,to,s,TTM,,,bis,from,s,TTM,,,Slot 3 von/bis,to,s,TTM,,,bis,daysel,s,UCH,0=selected;1=Mo-Fr;2=Sa-So;3=Mo-So,,Tage MsgDef('mc.5', 'Timer.Friday', read=True) diff --git a/tests/testdata/icon.txt b/tests/testdata/icon.txt index 4bfd26e..a6a402b 100644 --- a/tests/testdata/icon.txt +++ b/tests/testdata/icon.txt @@ -88,9 +88,9 @@ mdi:timer (False, True, HourMinuteType(minres=30), None) (False, True, EnumType(('disabled', 'on', 'off', 'auto', 'eco', 'low')), None) (False, True, IntType(0, 254), 'min') (False, True, EnumType(('inactive', 'mixer', 'fixed', 'hwc', 'returnincr', 'pool')), None) - (True, True, IntType(0, 25, divider=4), None) + (True, True, IntType(0, 100, divider=1), None) (True, False, IntType(-127, 127), '%') - (True, False, IntType(0, 25, divider=4), None) + (True, False, IntType(0, 100, divider=1), None) (True, False, HexType(), None) (False, True, IntType(0, 65534), None) (False, True, HexType(), None)