Esempio n. 1
0
        public void RemoveZone_ZoneNotInZonesCollectionAndZoneProgramOutOfSync()
        {
            //arrange
            TestHelpers.InitializeZoneScaffolder();

            var zones = new BetterList <Zone>();

            FadeCandyController.Instance.Initialize();
            var leftWing  = ZoneScaffolder.Instance.AddFadeCandyZone(zones, "LeftWing", PixelType.FadeCandyWS2812Pixel, 6, 1);
            var rightWing = ZoneScaffolder.Instance.AddFadeCandyZone(zones, "RightWing", PixelType.FadeCandyWS2811Pixel, 21, 2);

            var programSet = new ProgramSet("Stepper", zones.ToList(), false, null, "StepperSet");

            //act
            programSet.RemoveZone(rightWing);

            //assert
            var listToValidate = new List <IStepper>();

            listToValidate.AddRange(((ITestProgramSet)programSet).ZoneProgramsTest.Cast <IStepper>());
            listToValidate.Add((IStepper)rightWing.ZoneProgram);

            TestHelpers.ValidateSteppersOutOfSync(listToValidate.ToList(), 100);             //validate the the removed program is out of sync
            Assert.That(leftWing.ZoneProgram.State == ProgramState.Started, Is.True);
            Assert.That(programSet.Zones.Contains(rightWing), Is.False);

            //cleanup
            programSet.Dispose();
            leftWing.Dispose();
            rightWing.Dispose();
        }
Esempio n. 2
0
        public void ProgramSetConstructor_NoSync_ZonesInit_ProgramsInit()
        {
            //arrange
            TestHelpers.InitializeZoneScaffolder();

            var zones = new BetterList <Zone>();

            FadeCandyController.Instance.Initialize();
            var leftWing  = ZoneScaffolder.Instance.AddFadeCandyZone(zones, "LeftWing", PixelType.FadeCandyWS2812Pixel, 6, 1);
            var rightWing = ZoneScaffolder.Instance.AddFadeCandyZone(zones, "RightWing", PixelType.FadeCandyWS2811Pixel, 21, 2);

            //act
            var programSet = new ProgramSet("Stepper", zones.ToList(), false, null, "StepperSet");

            //assert
            TestHelpers.ValidateSteppersRunning(((ITestProgramSet)programSet).ZoneProgramsTest.Cast <IStepper>(), 100);
            Assert.That(leftWing.Running, Is.True);
            Assert.That(rightWing.Running, Is.True);
            Assert.That(leftWing.ZoneProgram.State == ProgramState.Started, Is.True);
            Assert.That(rightWing.ZoneProgram.State == ProgramState.Started, Is.True);

            //cleanup
            programSet.Dispose();
            leftWing.Dispose();
            rightWing.Dispose();
        }