Example #1
0
        //Remember to add
        //RequestConverterHelper.AddGadgetRequests();

        public static SetLightDirective SetChallenge()
        {
            var findTheYellowLight = new SetLightAnimation
            {
                Sequence =
                    Enumerable.Range(0, 40).Select(r => new AnimationSegment
                {
                    Blend = false,
                    Color = _colors[_rnd.Next(0, 2)],
                    DurationMilliseconds = 300
                }).ToList()
            };

            return(new SetLightDirective
            {
                TargetGadgets = new List <string> {
                    "setGadget"
                },
                Parameters =
                {
                    TriggerEvent = ButtonAction.Down,
                    Animations   = new List <SetLightAnimation> {
                        findTheYellowLight
                    }
                }
            });
        }
        public void SetLightDirectiveCreationWithNoGadgetsSerializesProperly()
        {
            var setLight = SetLightDirective.Create(
                SetLightParameter.Create(
                    SetLightAnimation.CreateSingle(
                        AnimationSegment.Create("0000FF", 10000)
                        )));

            Assert.True(Utility.CompareJson(setLight, "SetLightDirectiveBroadcast.json"));
        }
        public void SetLightDirectiveViaCreationSerializesProperly()
        {
            var setLight = SetLightDirective.Create(
                new[] { "gadgetId1", "gadgetId2" },
                SetLightParameter.Create(
                    TriggerEvent.None, 0,
                    SetLightAnimation.Create(1, new[] { "1" },
                                             new AnimationSegment
            {
                Blend = false,
                DurationMilliseconds = 10000,
                Color = "0000FF"
            }
                                             )));

            Assert.True(Utility.CompareJson(setLight, "SetLightDirective.json"));
        }