def setup(self): conf = AppConfig(minimal=True) conf.use_dotted_templatenames = True conf.renderers.append('mako') conf.package = FakePackage() self.conf = conf self.app = conf.make_wsgi_app()
def configure_app(): app_cfg = AppConfig(minimal=True) app_cfg.renderers = ['genshi'] app_cfg.default_renderer = 'genshi' app_cfg.use_dotted_templatenames = True app_cfg.package = FakeAppPackage() app_cfg.use_toscawidgets2 = True app_cfg['tw2.enabled'] = True app_cfg.sa_auth.authmetadata = TestAuthMetadata() app_cfg['beaker.session.secret'] = 'SECRET' app_cfg.auth_backend = 'sqlalchemy' app_cfg.sa_auth.cookie_secret = 'SECRET' app_cfg.package.model = FakeSQLAModel() app_cfg.use_sqlalchemy = True app_cfg['sqlalchemy.url'] = 'sqlite://' app_cfg.use_transaction_manager = True app_cfg['tm.enabled'] = True app_cfg.model = app_cfg.package.model app_cfg.DBSession = app_cfg.package.model.DBSession plug(app_cfg, 'calendarevents', event_types=[FakeEventType()], global_models=False, plug_bootstrap=False, form_instance=calendar_form) # This is to reset @cached_properties so they get reconfigured for new backend return app_cfg
def setup(self): conf = AppConfig(minimal=True) conf.use_dotted_templatenames = True conf.renderers.append('kajiki') conf.package = FakePackage() self.conf = conf self.app = TestApp(conf.make_wsgi_app()) self.render = tg.config['render_functions']['kajiki']
def configure_app(using, create_form=True): # Simulate starting configuration process from scratch milestones._reset_all() app_cfg = AppConfig(minimal=True) app_cfg.renderers = ['kajiki'] app_cfg.default_renderer = 'kajiki' app_cfg.use_dotted_templatenames = True app_cfg.package = FakeAppPackage() app_cfg.use_toscawidgets2 = True app_cfg['tw2.enabled'] = True app_cfg.sa_auth.authmetadata = TestAuthMetadata() app_cfg['beaker.session.secret'] = app_cfg['session.secret'] = 'SECRET' app_cfg['mail.debugmailer'] = 'dummy' if using == 'sqlalchemy': app_cfg.auth_backend = 'sqlalchemy' app_cfg.package.model = FakeSQLAModel() app_cfg.use_sqlalchemy = True app_cfg['sqlalchemy.url'] = 'sqlite://' app_cfg.use_transaction_manager = True app_cfg['tm.enabled'] = True elif using == 'ming': app_cfg.auth_backend = 'ming' app_cfg.package.model = FakeMingModel() app_cfg.use_ming = True app_cfg['ming.url'] = 'mim:///testresetpassword' else: raise ValueError('Unsupported backend') # Reset the Sprox provider on every change of configuration. from resetpassword import model as resetpassword_model resetpassword_model.provider._provider = None app_cfg.model = app_cfg.package.model app_cfg.DBSession = app_cfg.package.model.DBSession # CUSTOM resetpassword options app_cfg['resetpassword.email_sender'] = '*****@*****.**' plug(app_cfg, 'tgext.mailer', plug_bootstrap=True, debugmailer='dummy') plug( app_cfg, 'resetpassword', plug_bootstrap=False, reset_password_form_instance=resetpassword_form if create_form else None, new_password_form_instance=newpassword_form if create_form else None, ) return app_cfg
def test_jinja_lookup_nonexisting_template(): conf = AppConfig(minimal=True) conf.use_dotted_templatenames = True conf.renderers.append('jinja') conf.package = FakePackage() app = conf.make_wsgi_app() from jinja2 import TemplateNotFound try: render_jinja = tg.config['render_functions']['jinja'] render_jinja('tg.this_template_does_not_exists', {'app_globals': tg.config['tg.app_globals']}) assert False except TemplateNotFound: pass
def test_jinja_lookup_nonexisting_template(): conf = AppConfig(minimal=True) conf.use_dotted_templatenames = True conf.renderers.append('jinja') conf.package = FakePackage() app = conf.make_wsgi_app() from jinja2 import TemplateNotFound try: render_jinja = tg.config['render_functions']['jinja'] render_jinja('tg.this_template_does_not_exists', {'app_globals':tg.config['tg.app_globals']}) assert False except TemplateNotFound: pass
def configure_app(using): # Simulate starting configuration process from scratch milestones._reset_all() app_cfg = AppConfig(minimal=True) app_cfg.renderers = ['kajiki'] app_cfg.default_renderer = 'kajiki' app_cfg.use_dotted_templatenames = True app_cfg.package = FakeAppPackage() app_cfg.use_toscawidgets2 = True app_cfg['tw2.enabled'] = True app_cfg.sa_auth.authmetadata = TestAuthMetadata() app_cfg['beaker.session.secret'] = app_cfg['session.secret'] = 'SECRET' app_cfg.auth_backend = 'ming' app_cfg['mail.debugmailer'] = "dummy" if using == 'sqlalchemy': app_cfg.package.model = FakeSQLAModel() app_cfg.use_sqlalchemy = True app_cfg['sqlalchemy.url'] = 'sqlite://' app_cfg.use_transaction_manager = True app_cfg['tm.enabled'] = True app_cfg.SQLASession = app_cfg.package.model.DBSession elif using == 'ming': app_cfg.package.model = FakeMingModel() app_cfg.use_ming = True app_cfg['ming.url'] = 'mim:///mailtemapltes' app_cfg.MingSession = app_cfg.package.model.DBSession else: raise ValueError('Unsupported backend') app_cfg.model = app_cfg.package.model app_cfg.DBSession = app_cfg.package.model.DBSession # Guarantee that the same form is used between multiple # configurations of TGApps. Otherwise the validated # form would be different from the displayed one. plug(app_cfg, 'tgext.mailer', plug_bootstrap=True, debugmailer='dummy') plug(app_cfg, 'tgext.asyncjob', plug_bootstrap=True, app_globals=app_cfg['app_globals']) # it is important that tgext.mailer and tgext.asyncjob are plugged # before mailtemplates or not plugged at all as mailtemplates plugs them plug(app_cfg, 'mailtemplates', plug_bootstrap=True, default_language='EN') return app_cfg
def configure_app(using): # Simulate starting configuration process from scratch milestones._reset_all() app_cfg = AppConfig(minimal=True) app_cfg.renderers = ['kajiki'] app_cfg.default_renderer = 'kajiki' app_cfg.use_dotted_templatenames = True app_cfg.package = FakeAppPackage() app_cfg.use_toscawidgets2 = True app_cfg.sa_auth.authmetadata = TestAuthMetadata() app_cfg['beaker.session.secret'] = app_cfg['session.secret'] = 'SECRET' app_cfg.auth_backend = 'ming' app_cfg['mail.debugmailer'] = 'dummy' if using == 'sqlalchemy': app_cfg.package.model = FakeSQLAModel() app_cfg.use_sqlalchemy = True app_cfg['sqlalchemy.url'] = 'sqlite://' app_cfg.use_transaction_manager = True elif using == 'ming': app_cfg.package.model = FakeMingModel() app_cfg.use_ming = True app_cfg['ming.url'] = 'mim:///testregistration' else: raise ValueError('Unsupported backend') app_cfg.model = app_cfg.package.model app_cfg.DBSession = app_cfg.package.model.DBSession # CUSTOM registration options app_cfg['registration.email_sender'] = '*****@*****.**' from registration.lib import send_email, get_form # Guarantee that the same form is used between multiple # configurations of TGApps. Otherwise the validated # form would be different from the displayed one. plug_args = {} if '_pluggable_registration_config' in config: plug_args['form_instance'] = get_form() plug(app_cfg, 'tgext.mailer', plug_bootstrap=True, debugmailer='dummy') plug(app_cfg, 'registration', plug_bootstrap=False, **plug_args) return app_cfg
def setUp(self): self.root_controller = self.controller_factory() conf = AppConfig(minimal=True, root_controller=self.root_controller) conf.package = FakePackage() conf.model = conf.package.model conf.use_dotted_templatenames = True conf.renderers = ['json', 'jinja', 'mako'] conf.default_renderer = 'jinja' conf.use_sqlalchemy = True conf.paths = {'controllers': 'tests', 'templates': ['tests']} conf.disable_request_extensions = False conf.prefer_toscawidgets2 = True conf.use_transaction_manager = True conf['sqlalchemy.url'] = 'sqlite:///:memory:' self.app = TestApp(conf.make_wsgi_app()) metadata.create_all()
def setUp(self): self.root_controller = self.controller_factory() conf = AppConfig(minimal=True, root_controller=self.root_controller) conf.package = FakePackage() conf.model = conf.package.model conf.use_dotted_templatenames = True conf.renderers = ['json', 'jinja', 'mako'] conf.default_renderer = 'jinja' conf.use_sqlalchemy = True conf.paths = {'controllers':'tests', 'templates':['tests']} conf.disable_request_extensions = False conf.prefer_toscawidgets2 = True conf.use_transaction_manager = True conf['sqlalchemy.url'] = 'sqlite:///:memory:' self.app = TestApp(conf.make_wsgi_app()) metadata.create_all()
def configure_app(using): # Simulate starting configuration process from scratch milestones._reset_all() app_cfg = AppConfig(minimal=True) app_cfg.renderers = ['kajiki'] app_cfg.default_renderer = 'kajiki' app_cfg.use_dotted_templatenames = True app_cfg.package = FakeAppPackage() app_cfg.use_toscawidgets2 = True app_cfg['beaker.session.secret'] = app_cfg['session.secret'] = 'SECRET' app_cfg['mail.debugmailer'] = "dummy" if using == 'sqlalchemy': app_cfg.auth_backend = 'sqlalchemy' app_cfg.package.model = FakeSQLAModel() app_cfg.use_sqlalchemy = True app_cfg['sqlalchemy.url'] = 'sqlite://' app_cfg.use_transaction_manager = True app_cfg.SQLASession = app_cfg.package.model.DBSession elif using == 'ming': app_cfg.auth_backend = 'ming' app_cfg.package.model = FakeMingModel() app_cfg.use_ming = True app_cfg['ming.url'] = 'mim:///userprofile' app_cfg.MingSession = app_cfg.package.model.DBSession else: raise ValueError('Unsupported backend') app_cfg.model = app_cfg.package.model app_cfg.DBSession = app_cfg.package.model.DBSession app_cfg.sa_auth.authmetadata = TestAuthMetadata() # Guarantee that the same form is used between multiple # configurations of TGApps. Otherwise the validated # form would be different from the displayed one. app_cfg['userprofile.email_sender'] = '[email protected]' plug(app_cfg, 'userprofile', plug_bootstrap=True) return app_cfg