예제 #1
0
 def test_register_module(self):
     mapper = odm.Mapper('sqlite:///')
     mapper.register_module(getmodule(self))
     self.assertTrue(mapper.foo)
     self.assertRaises(AttributeError, lambda: mapper.bla)
     self.assertEqual(len(mapper.metadata.tables), 2)
     bla = mapper.metadata.tables['bla']
     self.assertTrue(bla.key, 'bla')
예제 #2
0
 async def setUpClass(cls):
     # Create the application
     cls.dbs = {}
     cls.dbname = randomname(cls.prefixdb)
     cls.init_mapper = odm.Mapper(cls.url())
     cls.green_pool = GreenPool()
     cls.mapper = await cls.green_pool.submit(
         cls.init_mapper.database_create, cls.dbname)
     cls.mapper.register_module(__name__)
     await cls.green_pool.submit(cls.mapper.table_create)
예제 #3
0
 def setup(self, environ):
     cfg = environ['pulsar.cfg']
     mapper = odm.Mapper(cfg.engine)
     #
     # Register the two alchemy models
     mapper.register(World)
     mapper.register(Fortune)
     #
     route = Router('/', mapper=mapper)
     #
     # Concurrency method
     if mapper.is_green:
         # Use pool of greenlets
         pool = GreenWSGI(route, GreenPool(cfg.thread_workers))
     else:
         # Use pool of threads
         pool = wsgi.middleware_in_executor(route)
     return wsgi.WsgiHandler((wsgi.wait_for_body_middleware, pool),
                             async=True)
예제 #4
0
 def test_getitem(self):
     mapper = odm.Mapper('sqlite:///')
     model = mapper.register(Employee)
     self.assertEqual(mapper['employee'], model)
     self.assertEqual(mapper.employee, model)
     self.assertRaises(AttributeError, lambda: mapper.foo)
예제 #5
0
 def test_register_polimorfic(self):
     mapper = odm.Mapper('sqlite:///')
     mapper.register(Employee)
     mapper.register(Engineer)
예제 #6
0
 def test_model_sandbox(self):
     mapper = odm.Mapper('sqlite:///')
     model = mapper.register(Foo)
     self.assertEqual(model, mapper.foo)
     self.assertEqual(mapper.metadata, model.metadata)
     self.assertTrue(issubclass(model, Foo))
예제 #7
0
 def test_table(self):
     mapper = odm.Mapper('sqlite:///')
     # Model = odm.model_base('custom')
     table = mapper.create_table('user', Column('name', String(80)))
     self.assertIsInstance(table, Table)