def add_fixtures(self): from pysite.models import DbSession from pprint import pprint sess = DbSession() transaction.begin() try: # Add in this sequence for g in self.__class__.FIXT_GROUPS: data = self.fixtures[g] print("***", g) for it in data: it['owner'] = UNIT_TESTER_UID pprint(it) if g == 'roles': usrmanager.add_role(it) elif g == 'principals': usrmanager.add_principal(it) elif g == 'vmail_domains': vmailmanager.add_domain(it) elif g == 'vmail_mailboxes': vmailmanager.add_mailbox(it) elif g == 'vmail_aliases': vmailmanager.add_alias(it) else: raise Exception("Unknown fixture group: '{0}'".format( g)) transaction.commit() except Exception as e: transaction.abort() raise e