public void ShouldTurnOnLightWhenOffButtonPressed()
        {
            var light      = Substitute.For <ILight>();
            var dateTime   = Substitute.For <IDateTime>();
            var controller = new BetterSmartHomeController(dateTime, light);

            controller.Tick(new Trigger(TriggerType.OffButtonPressed));

            light.Received(1).Set(false);
        }
        public void ShouldTurnOnLightWhenMotionIsDetectedAtNight(DateTime date)
        {
            var light    = Substitute.For <ILight>();
            var dateTime = Substitute.For <IDateTime>();

            dateTime.Now.Returns(date);

            var controller = new BetterSmartHomeController(dateTime, light);

            controller.Tick(new Trigger(TriggerType.MotionDetected));

            light.Received(1).Set(true);
        }