# run this with py.test import run_local import os, shutil import py.test from light9 import dmxclient, Patch, Submaster from light9.namespaces import L9 def testCreateArgs(): py.test.raises(TypeError, Submaster.Submaster) assert Submaster.Submaster("newname", leveldict={}) assert Submaster.Submaster(sub=L9['sub/newname']) assert Submaster.Submaster(name="newname", sub=L9["sub/newname"]) py.test.raises(ValueError, Submaster.Submaster(name="newname", sub=L9["other/newname"])) # old code might try to pass leveldict positionally py.test.raises(Exception, Submaster.Submaster("newname", {})) def testLevels(): levels = {'1' : .5, '2' : 1} s = Submaster.Submaster("newname", leveldict=levels) assert s.get_levels() == levels s.set_level('3', .5, save=False) assert s.get_levels()['3'] == .5 assert s.get_dmx_list()[:3] == [.5, 1, .5] #s = Submaster.Submasters().get_sub_by_name("t1") #assert s.get_dmx_list() == [0]