public void RecreateProgramSet_Works() { string programSetName = "RainbowSet"; string programName = "Rainbow"; var zoneName = "FadeCandyZone"; dynamic isv = new ISV(); isv.Speed = 50; var zlm = new ZLM(false, false, false); var zlmrpc = new ZLMRPC(zlm); zlm.AddFadeCandyZone("FadeCandyZone", PixelType.FadeCandyWS2812Pixel, 8, 1); zlm.CreateProgramSet(programSetName, programName, zlm.Zones.Select(z => z.Name), true, isv); zlm.Zones.ForEach(zone => { Assert.That(zone.ZoneProgram, Is.Not.Null); Assert.That(zone.ZoneProgram.State, Is.EqualTo(ProgramState.Started)); Assert.That(zone.ZoneProgram.GetInput("Speed").Value, Is.EqualTo(50)); }); isv.Speed = 90; //act zlmrpc.RecreateProgramSet(programSetName, programName, zoneName.Listify(), isv); //assert zlm.Zones.ForEach(zone => { Assert.That(zone.ZoneProgram.GetInput("Speed").Value, Is.EqualTo(90)); }); zlmrpc.Dispose(); }