changeset 2301:4c9c2ab23831

fix fader test
author drewp@bigasterisk.com
date Tue, 30 May 2023 23:58:07 -0700
parents 92d97e17ca31
children a6b611f32cce
files light9/effect/sequencer/eval_faders_test.py
diffstat 1 files changed, 45 insertions(+), 31 deletions(-) [+]
line wrap: on
line diff
--- a/light9/effect/sequencer/eval_faders_test.py	Tue May 30 23:52:37 2023 -0700
+++ b/light9/effect/sequencer/eval_faders_test.py	Tue May 30 23:58:07 2023 -0700
@@ -1,4 +1,5 @@
 from unittest import mock
+from light9.effect.effect_function_library import EffectFunctionLibrary
 
 from light9.effect.sequencer.eval_faders import FaderEval
 from light9.effect.settings import DeviceSettings
@@ -13,43 +14,55 @@
 @prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
 @prefix dev: <http://light9.bigasterisk.com/theater/test/device/> .
 @prefix dmxA: <http://light9.bigasterisk.com/output/dmxA/> .
+@prefix func: <http://light9.bigasterisk.com/effectFunction/> .
 '''
 
 NOTE_GRAPH = PREFIXES + '''
-            :brightness
-                a :DeviceAttr;
-                rdfs:label "brightness";
-                :dataType :scalar .
+    :brightness
+        a :DeviceAttr;
+        rdfs:label "brightness";
+        :dataType :scalar .
+
+    :strength
+        a :EffectAttr;
+        rdfs:label "strength" .
 
-            :strength
-                a :EffectAttr;
-                rdfs:label "strength" .
+    :SimpleDimmer
+        a :DeviceClass;
+        rdfs:label "SimpleDimmer";
+        :deviceAttr :brightness;
+        :attr [ :outputAttr :level; :dmxOffset 0 ] .
 
-            :SimpleDimmer
-                a :DeviceClass;
-                rdfs:label "SimpleDimmer";
-                :deviceAttr :brightness;
-                :attr [ :outputAttr :level; :dmxOffset 0 ] .
+    :light1
+        a :SimpleDimmer;
+        :dmxUniverse dmxA:;
+        :dmxBase 178 .
+
 
-            :light1
-                a :SimpleDimmer;
-                :dmxUniverse dmxA:;
-                :dmxBase 178 .
+    func:scale
+        a :EffectFunction;
+        :input
+            [ :effectAttr :strength; :defaultValue 0.0 ],
+            [ :effectAttr :deviceSettings; ] .
+
 
-            effect:effect1
-                a :Effect;
-                :setting effect:effect1_set1 .
-            effect:effect1_set1
-                :device :light1;
-                :deviceAttr :brightness;
-                :value 0.5 .
-            :fade1
-                a :Fader;
-                :effect effect:effect1;
-                :setting :fs1 .
-            :fs1 
-                :value 0.6 ;
-                :effectAttr :strength .
+    effect:effect1
+        a :Effect;
+        :effectFunction func:scale;
+        :setting [:effectAttr :deviceSettings; :value [ 
+            :setting [
+              :device :light1; :deviceAttr :brightness; :value 0.5 
+            ]
+        ] ] .
+
+
+    :fade1
+        a :Fader;
+        :effect effect:effect1;
+        :setting :fs1 .
+    :fs1
+        :value 0.6 ;
+        :effectAttr :strength .
 
         '''
 
@@ -60,6 +73,7 @@
         g = MockSyncedGraph(NOTE_GRAPH)
         sender = mock.MagicMock()
 
-        f = FaderEval(g)
+        eff = EffectFunctionLibrary(g)
+        f = FaderEval(g, eff)
         devSettings = f.computeOutput()
         assert devSettings == DeviceSettings(g, [(L9['light1'], L9['brightness'], 0.3)])
\ No newline at end of file