changeset 2233:a6c5b87890ae

fix effect and fader tests
author drewp@bigasterisk.com
date Wed, 24 May 2023 13:14:30 -0700
parents 94d0e596ca39
children e8401b82e6bc
files light9/effect/effecteval_test.py light9/effect/sequencer/eval_faders_test.py
diffstat 2 files changed, 22 insertions(+), 27 deletions(-) [+]
line wrap: on
line diff
--- a/light9/effect/effecteval_test.py	Wed May 24 12:17:34 2023 -0700
+++ b/light9/effect/effecteval_test.py	Wed May 24 13:14:30 2023 -0700
@@ -1,38 +1,31 @@
-import time
-import unittest
-
-from freezegun import freeze_time
-from light9.effect.effecteval import EffectEval
-from light9.effect.settings import BareEffectSettings, DeviceSettings, EffectSettings
-from light9.effect.simple_outputs import SimpleOutputs
-from rdflib import Namespace
-
-from light9.collector.collector import Collector
-from light9.collector.output import Output
-from light9.collector.weblisteners import WebListeners
+from light9.effect.effecteval import EffectEval2
+from light9.effect.settings import DeviceSettings, EffectSettings
 from light9.mock_syncedgraph import MockSyncedGraph
 from light9.namespaces import DEV, L9
-from light9.newtypes import (ClientSessionType, ClientType, DeviceAttr, DeviceUri, EffectAttr, EffectClass, HexColor, UnixTime)
+from light9.newtypes import (DeviceAttr, DeviceUri, EffectAttr, EffectUri, HexColor)
 
 PREFIX = '''
     @prefix : <http://light9.bigasterisk.com/> .
     @prefix dev: <http://light9.bigasterisk.com/device/> .
+    @prefix effect: <http://light9.bigasterisk.com/effect/> .
+
 '''
 
-THEATER = '''
-
-    :effectClass1 a :EffectClass .
-#add light to here
+THEATER = PREFIX + '''
+    :effect1
+        a :Effect;
+        :effectFunction effect:scale;
+        :input [ :effectAttr :strength ];
+        :setting [ :device dev:light1; :deviceAttr :color; :value "#ff0000" ] .
 '''
-effectClass1 = EffectClass(L9['effectClass1'])
+effect1 = EffectUri(L9['effect1'])
 
 
 class TestEffectEval:
 
     def test_scalesColors(self):
         g = MockSyncedGraph(THEATER)
-        so = SimpleOutputs(g)
-        ee = EffectEval(g, effectClass1, so)
-        s = BareEffectSettings(s={EffectAttr(L9['strength']): 0.5})
-        ds,report = ee.outputFromEffect(s, songTime=0, noteTime=0)
-        assert ds == DeviceSettings(g, [(DeviceUri(L9['light1']), DeviceAttr(L9['color']), HexColor('#888888'))])
+        ee = EffectEval2(g, effect1)
+        s = EffectSettings(g, [(effect1, EffectAttr(L9['strength']), 0.5)])
+        ds = ee.compute(s)
+        assert ds == DeviceSettings(g, [(DeviceUri(DEV['light1']), DeviceAttr(L9['color']), HexColor('#7f0000'))])
--- a/light9/effect/sequencer/eval_faders_test.py	Wed May 24 12:17:34 2023 -0700
+++ b/light9/effect/sequencer/eval_faders_test.py	Wed May 24 13:14:30 2023 -0700
@@ -42,12 +42,14 @@
             effect:effect1_set1
                 :device :light1;
                 :deviceAttr :brightness;
-                :scaledValue 0.5 .
+                :value 0.5 .
             :fade1
                 a :Fader;
-                :effectClass effect:effect1;
-                :effectAttr :strength;
+                :effect effect:effect1;
+                :setting :fs1;
                 :value 0.6 .
+            :fs1 
+                :effectAttr :strength .
 
         '''
 
@@ -58,6 +60,6 @@
         g = MockSyncedGraph(NOTE_GRAPH)
         sender = mock.MagicMock()
 
-        f = FaderEval(g, sender)
+        f = FaderEval(g)
         devSettings = f.computeOutput()
         assert devSettings == DeviceSettings(g, [(L9['light1'], L9['brightness'], 0.3)])
\ No newline at end of file