def test_settings(): yaml = """ settings: a: 1 b: banana c: - embedded - list """.strip() fn = _c(yaml) app = declare_app(fn)
def test_template_searchpaths(): yaml = """ template_searchpaths: - /foo - /blah """.strip() fn = _c(yaml) app = declare_app(fn) assert '/foo' in app.template_env.loader.loaders[0].searchpath assert '/blah' in app.template_env.loader.loaders[0].searchpath
def test_urls(): yaml = """ urls: - url: /foo endpoint: foo view: os.path """.strip() fn = _c(yaml) app = declare_app(fn) assert app assert 'foo' in app.map._rules_by_endpoint assert app.map._rules_by_endpoint['foo'][0].rule == '/foo'
def collect(self): raw = yaml.load(self.fspath.open()) tests = [] app_factory = raw.get('__app_factory__') if app_factory is None: app_file = raw.get('__app_file__') or 'app.yml' app_file = _find_app_file(app_file, self.fspath) app_factory = lambda: declare_app(app_file) else: app_factory = import_string(app_factory) for name, value in raw.items(): if not name.lower().startswith('test'): continue tests.append(UsecaseTestItem(name, parent=self, sequence=value, app_factory=app_factory)) return tests
def test_appliance(): yaml = """ appliances: - import: glashammer.utils.appliance._JustForTestingAppliance mountpoint_path: /pages """.strip() fn = _c(yaml) app = declare_app(fn) c = Client(app) i, s, h = c.open('/') assert '404' in s i, s, h = c.open('/pages/') print i, s, h assert '200' in s assert 'hello' in ''.join(i)
def test_shared(): yaml = """ shared: - name: foo path: /blah - name: moo path: /gah """.strip() fn = _c(yaml) app = declare_app(fn) print app.shared_export_map assert '/_shared/foo' in app.shared_export_map assert app.shared_export_map['/_shared/foo'] == '/blah' assert '/_shared/moo' in app.shared_export_map assert app.shared_export_map['/_shared/moo'] == '/gah'
def test_empty(): app = declare_app(_c('')) assert app
def test_instance_dir(): yaml = '' fn = _c(yaml) app = declare_app(fn) assert app.instance_dir == '/tmp/instance'
# -*- coding: utf-8 -*- from glashammer.application import declare_app from glashammer.utils import run_very_simple, sibpath application = declare_app(sibpath(__file__, "app.yaml")) if __name__ == "__main__": run_very_simple(application)