1# -*- coding: utf-8 -*- 2''' 3Runs MultiprocessTest with all warnings including traceback... 4''' 5# 6# https://stackoverflow.com/questions/22373927/get-traceback-of-warnings 7import traceback 8import warnings 9import sys 10 11 12def warn_with_traceback(message, category, filename, lineno, file=None, line=None): 13 log = file if hasattr(file, 'write') else sys.stderr 14 if 'music21' in filename: 15 # do not give stack trace for matplotlib PendingDeprecation, etc. 16 traceback.print_stack(file=log) 17 log.write(warnings.formatwarning(message, category, filename, lineno, line)) 18 19 20if __name__ == '__main__': 21 warnings.showwarning = warn_with_traceback 22 warnings.simplefilter("always") 23 from music21.test import multiprocessTest 24 multiprocessTest.mainPoolRunner() 25