Doctest per gli oggetti creati dinamicamente
-
21-08-2019 - |
Domanda
Qual è il modo migliore per testare il codice come questo (quello qui sotto, ovviamente, viene a mancare, mentre oggetto viene creato nel blocco diverso ogni volta):
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
Soluzione
Credo che si desidera utilizzare i puntini di sospensione, in questo modo:
>>> get_session('Mmusc20090126', False, True) #doctest: +ELLIPSIS
<sqlalchemy.orm.session.Session object at 0x...>
qui per ulteriori informazioni.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow