# HG changeset patch
# User drewp@bigasterisk.com
# Date 2023-05-24 20:14:30
# Node ID a6c5b87890ae40c9b6dfc435d36c70522c1a5c36
# Parent 94d0e596ca396801c4bee6fc4bdbe21074313ce5
fix effect and fader tests
diff --git a/light9/effect/effecteval_test.py b/light9/effect/effecteval_test.py
--- a/light9/effect/effecteval_test.py
+++ b/light9/effect/effecteval_test.py
@@ -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 : .
@prefix dev: .
+ @prefix 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'))])
diff --git a/light9/effect/sequencer/eval_faders_test.py b/light9/effect/sequencer/eval_faders_test.py
--- a/light9/effect/sequencer/eval_faders_test.py
+++ b/light9/effect/sequencer/eval_faders_test.py
@@ -42,12 +42,14 @@ NOTE_GRAPH = PREFIXES + '''
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 @@ class TestFaderEval:
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