2009-03-24 8 views
3

Quelle est la meilleure façon de tester le code comme celui-ci (celui ci-dessous ne évidemment tout objet est créé dans différents blocs à chaque fois):doctest pour dynamiquement les objets créés

def get_session(db_name, verbose, test): 
"""Returns current DB session from SQLAlchemy pool. 

>>> get_session('Mmusc20090126', False, True) 
<sqlalchemy.orm.session.Session object at 0xfb5ff0> 

""" 
if test: 
    engine = create_engine('sqlite:///:memory:', echo=verbose) 
    log_load.debug('DB in RAM.') 
else: 
    engine = create_engine('sqlite:///' + 'DB/' + db_name + '.db', echo=verbose) 
    log_load.debug('DB stored in file: %s' % 'DB/' + db_name + '.db') 

# Create TABLES: Structures, Interactions, Interactors, PDB_UniProt, UniProtSeq 
meta.create_all(engine) 

Session = sessionmaker(bind=engine) 
session = Session() 

return session 

Répondre

8

Je pense que vous voulez utiliser des points de suspension, comme ceci:

>>> get_session('Mmusc20090126', False, True) #doctest: +ELLIPSIS 
<sqlalchemy.orm.session.Session object at 0x...> 

Voir here pour plus d'informations.

+0

Merci pour la mise à jour de votre réponse, je creusais en ligne pour où je devrais mettre ce #doctest: + ELLIPSIS thingy (je pensais que l'utilisation du nez le rend différent de l'unité);) –

Questions connexes