def create_app(): app = Flask(__name__, **static_options) if _flask_serve_static: app.add_url_rule(rule='/', view_func=lambda: redirect('index.html', 302)) app.config.from_object('webapps.configs.server') # Overrides the config with any environment variables that might # be set update_config(app, 'SERVER', environment) configure_logging(app, environment) app.register_blueprint(mws) crontab.run_scheduler(app) return app
def test_run_scheduler_starts_expire_sessions_job(self, expire_sessions_mock, scheduler_cls_mock): scheduler_mock = mock.MagicMock() scheduler_cls_mock.return_value = scheduler_mock run_scheduler(mock.sentinel.app) self.assertTrue(scheduler_mock.add_interval_job.called) args = scheduler_mock.add_interval_job.call_args self.assertEqual(len(args[0]), 1) self.assertEqual(len(args[1]), 1) func = args[0][0] secs = args[1]['seconds'] func() expire_sessions_mock.assert_called_with(mock.sentinel.app) self.assertEqual(secs, EXPIRE_SESSION_EVERY)