Rename switch to switchService to avoid AFRP name conflict
This commit is contained in:
@@ -27,7 +27,7 @@ module HomeAssistant.Controller
|
||||
, debug
|
||||
, traceEvent
|
||||
, traceValue
|
||||
, switch
|
||||
, switchService
|
||||
, Target(..)
|
||||
, lightBrightnessEvent
|
||||
, lightTemperatureEvent
|
||||
@@ -199,9 +199,8 @@ light targets Off = Service
|
||||
, serviceTarget=targets
|
||||
}
|
||||
|
||||
-- Name conflict with AFRP
|
||||
switch :: [Target] -> Bool -> Service
|
||||
switch targets b = Service
|
||||
switchService :: [Target] -> Bool -> Service
|
||||
switchService targets b = Service
|
||||
{ serviceDomain="switch"
|
||||
, serviceName= bool "turn_off" "turn_on" b
|
||||
, serviceData=Nothing
|
||||
|
||||
@@ -132,8 +132,8 @@ bedroomDrawerController :: HASS (Event Value) ()
|
||||
bedroomDrawerController = proc x -> do
|
||||
st <- drawer >>> traceEvent -< x
|
||||
case st of
|
||||
Event Open -> callService (switch [entity] True) -< ()
|
||||
Event Closed -> callService (switch [entity] False) -< ()
|
||||
Event Open -> callService (switchService [entity] True) -< ()
|
||||
Event Closed -> callService (switchService [entity] False) -< ()
|
||||
_ -> returnA -< ()
|
||||
where
|
||||
entity = EntityId "switch.bedroom_drawer_light_masse"
|
||||
|
||||
@@ -74,7 +74,7 @@ dinnerTableController = proc x -> do
|
||||
sleep -< True
|
||||
_ -> returnA -< ()
|
||||
where
|
||||
sleep = callServiceDyn (switch [EntityId "switch.adaptive_lighting_ruokapoydan_valot_sleep_mode"])
|
||||
sleep = callServiceDyn (switchService [EntityId "switch.adaptive_lighting_ruokapoydan_valot_sleep_mode"])
|
||||
|
||||
kitchenMotionController :: HASS (Event Value) ()
|
||||
kitchenMotionController = kitchenCeilingController <> dinnerTableController
|
||||
|
||||
+5
-5
@@ -62,18 +62,18 @@ drawerSpec = describe "bedroomDrawerController" $ do
|
||||
|
||||
it "turns the drawer light on when the drawer opens" $
|
||||
services (runHASS bedroomDrawerController [drawerState "on"])
|
||||
`shouldBe` [[switch [entity] True]]
|
||||
`shouldBe` [[switchService [entity] True]]
|
||||
|
||||
it "turns the drawer light off when the drawer closes" $
|
||||
services (runHASS bedroomDrawerController [drawerState "off"])
|
||||
`shouldBe` [[switch [entity] False]]
|
||||
`shouldBe` [[switchService [entity] False]]
|
||||
|
||||
it "toggles the light as the drawer opens and closes" $
|
||||
services (runHASS bedroomDrawerController
|
||||
[ drawerState "on", drawerState "off", drawerState "on" ])
|
||||
`shouldBe` [ [switch [entity] True]
|
||||
, [switch [entity] False]
|
||||
, [switch [entity] True]
|
||||
`shouldBe` [ [switchService [entity] True]
|
||||
, [switchService [entity] False]
|
||||
, [switchService [entity] True]
|
||||
]
|
||||
|
||||
it "ignores state events for other entities" $
|
||||
|
||||
+3
-3
@@ -35,12 +35,12 @@ dinnerTableSpec = describe "dinnerTableController" $ do
|
||||
|
||||
it "turns lights on when presence is occupied and light level is low" $ do
|
||||
services (runHASS dinnerTableController [testDinnerLightLevel 10, testDinnerPresence "on"])
|
||||
`shouldBe` [[switch [EntityId "switch.adaptive_lighting_ruokapoydan_valot_sleep_mode"] True], [switch [EntityId "switch.adaptive_lighting_ruokapoydan_valot_sleep_mode"] False, light [EntityId "light.kitchen_dining_large"] (On def)]]
|
||||
`shouldBe` [[switchService [EntityId "switch.adaptive_lighting_ruokapoydan_valot_sleep_mode"] True], [switchService [EntityId "switch.adaptive_lighting_ruokapoydan_valot_sleep_mode"] False, light [EntityId "light.kitchen_dining_large"] (On def)]]
|
||||
|
||||
it "turns lights off when presence is unoccupied" $ do
|
||||
services (runHASS dinnerTableController [testDinnerLightLevel 10, testDinnerPresence "off"])
|
||||
`shouldBe` [[switch [EntityId "switch.adaptive_lighting_ruokapoydan_valot_sleep_mode"] True], []]
|
||||
`shouldBe` [[switchService [EntityId "switch.adaptive_lighting_ruokapoydan_valot_sleep_mode"] True], []]
|
||||
|
||||
it "does nothing on Tick" $ do
|
||||
services (runHASS dinnerTableController [Tick])
|
||||
`shouldBe` [[switch [EntityId "switch.adaptive_lighting_ruokapoydan_valot_sleep_mode"] True]]
|
||||
`shouldBe` [[switchService [EntityId "switch.adaptive_lighting_ruokapoydan_valot_sleep_mode"] True]]
|
||||
|
||||
Reference in New Issue
Block a user