Exemple #1
0
        private void Setup()
        {
            _controller = new TestController();
            _controller.SetTime(TimeSpan.Parse("12:00"));

            var testRollerShutterFactory = new TestRollerShutterFactory(_controller.TimerService, _controller.SchedulerService, new SettingsService(new BackupService(), new StorageService()));

            _weatherStation = new TestWeatherStation();
            _weatherStation.OutdoorTemperature = 20;

            _rollerShutter = testRollerShutterFactory.CreateTestRollerShutter();
            _controller.ComponentService.AddComponent(_rollerShutter);

            _automation = new RollerShutterAutomation(
                AutomationIdGenerator.EmptyId,
                _controller.NotificationService,
                _controller.SchedulerService,
                _controller.DateTimeService,
                _controller.DaylightService,
                _weatherStation,
                _controller.ComponentService,
                new SettingsService(new BackupService(), new StorageService()), new ResourceService(new BackupService(), new StorageService(), new SettingsService(new BackupService(), new StorageService())));

            _automation.WithRollerShutters(_rollerShutter);
        }
Exemple #2
0
        public void TestRollerShutter()
        {
            var timerService         = new TestTimerService();
            var rollerShutterFactory = new TestRollerShutterFactory(timerService, new SchedulerService(timerService, new DateTimeService()), new SettingsService(new BackupService(), new StorageService()));

            TestRollerShutter rollerShutter = rollerShutterFactory.CreateTestRollerShutter();

            rollerShutter.GetState().Equals(RollerShutterStateId.Off).ShouldBeEquivalentTo(true);
            rollerShutter.Endpoint.StopCalledCount.ShouldBeEquivalentTo(1);

            rollerShutter.SetState(RollerShutterStateId.MovingUp);
            rollerShutter.GetState().Equals(RollerShutterStateId.MovingUp).ShouldBeEquivalentTo(true);
            rollerShutter.Endpoint.StartMoveUpCalledCount.ShouldBeEquivalentTo(1);

            rollerShutter.SetState(RollerShutterStateId.MovingDown);
            rollerShutter.GetState().Equals(RollerShutterStateId.MovingDown).ShouldBeEquivalentTo(true);
            rollerShutter.Endpoint.StartMoveDownCalledCount.ShouldBeEquivalentTo(1);

            rollerShutter.SetState(RollerShutterStateId.Off);
            rollerShutter.GetState().Equals(RollerShutterStateId.Off).ShouldBeEquivalentTo(true);
            rollerShutter.Endpoint.StopCalledCount.ShouldBeEquivalentTo(2);

            rollerShutter.Endpoint.StartMoveUpCalledCount.ShouldBeEquivalentTo(1);
            rollerShutter.Endpoint.StartMoveDownCalledCount.ShouldBeEquivalentTo(1);
        }
Exemple #3
0
        private void Setup()
        {
            _controller = new TestController();
            _controller.SetTime(TimeSpan.Parse("12:00"));

            var testRollerShutterFactory = new TestRollerShutterFactory(_controller.Timer);

            _weatherStation = new TestWeatherStation();
            _weatherStation.SetTemperature(20);
            _daylightService = new TestDaylightService();

            _rollerShutter = testRollerShutterFactory.CreateTestRollerShutter();
            _controller.ServiceLocator.RegisterService(typeof(TestWeatherStation), _weatherStation);
            _controller.AddComponent(_rollerShutter);

            _automation = new RollerShutterAutomation(
                AutomationIdFactory.EmptyId,
                _controller.ServiceLocator.GetService <ISchedulerService>(),
                _controller.ServiceLocator.GetService <IDateTimeService>(),
                _daylightService,
                _weatherStation,
                _controller);

            _automation.WithRollerShutters(_rollerShutter);
        }
Exemple #4
0
        private void Setup()
        {
            _controller = new TestController();
            _controller.SetTime(TimeSpan.Parse("12:00"));
            _weatherStation = new TestWeatherStation(new DeviceId("Test.WeatherStation"), _controller.Timer, _controller.Logger);

            _rollerShutter = new TestRollerShutter(new ActuatorId("Test.RollerShutter"), _controller.Logger);
            _controller.AddDevice(_weatherStation);
            _controller.AddActuator(_rollerShutter);

            _automation = new RollerShutterAutomation(AutomationIdFactory.EmptyId, _controller.Timer,
                                                      _weatherStation, _controller.HttpApiController, _controller, _controller.Logger);

            _automation.WithRollerShutters(_rollerShutter);
        }
        public void TestRollerShutter()
        {
            var rollerShutterFactory        = new TestRollerShutterFactory(new TestHomeAutomationTimer());
            TestRollerShutter rollerShutter = rollerShutterFactory.CreateTestRollerShutter();

            rollerShutter.GetState().Equals(RollerShutterStateId.Off).ShouldBeEquivalentTo(true);
            rollerShutter.Endpoint.StopCalledCount.ShouldBeEquivalentTo(1);

            rollerShutter.SetState(RollerShutterStateId.MovingUp);
            rollerShutter.GetState().Equals(RollerShutterStateId.MovingUp).ShouldBeEquivalentTo(true);
            rollerShutter.Endpoint.StartMoveUpCalledCount.ShouldBeEquivalentTo(1);

            rollerShutter.SetState(RollerShutterStateId.MovingDown);
            rollerShutter.GetState().Equals(RollerShutterStateId.MovingDown).ShouldBeEquivalentTo(true);
            rollerShutter.Endpoint.StartMoveDownCalledCount.ShouldBeEquivalentTo(1);

            rollerShutter.SetState(RollerShutterStateId.Off);
            rollerShutter.GetState().Equals(RollerShutterStateId.Off).ShouldBeEquivalentTo(true);
            rollerShutter.Endpoint.StopCalledCount.ShouldBeEquivalentTo(2);

            rollerShutter.Endpoint.StartMoveUpCalledCount.ShouldBeEquivalentTo(1);
            rollerShutter.Endpoint.StartMoveDownCalledCount.ShouldBeEquivalentTo(1);
        }
        private void Setup()
        {
            _controller = new TestController();
            _controller.SetTime(TimeSpan.Parse("12:00"));

            var testRollerShutterFactory = new TestRollerShutterFactory(_controller.Timer);

            _weatherStation = new TestWeatherStation(new DeviceId("Test.WeatherStation"), _controller.Timer);
            _weatherStation.SetTemperature(20);
            _daylightService = new TestDaylightService();

            _rollerShutter = testRollerShutterFactory.CreateTestRollerShutter();
            _controller.RegisterService(_weatherStation);
            _controller.AddComponent(_rollerShutter);

            _automation = new RollerShutterAutomation(
                AutomationIdFactory.EmptyId,
                _controller.Timer,
                _daylightService,
                _weatherStation,
                _controller);

            _automation.WithRollerShutters(_rollerShutter);
        }