from importlib import import_module as imp from glob import glob import os def evaluate(modules): if (os.path.basename(__file__)!="evaluator.py"): print("Der Dateiname dieses Programms ist falsch. Es muss 'evaluator.py' heissen!") return False dir_path = os.path.dirname(os.path.realpath(__file__)) if len(modules)==0: print("Es gibt keine '.py'-Dateien die mit 'challenge' beginnen im Verzeichnis "+dir_path) return False return True # Alle Challenge-Module importieren modules = [imp(c[0:-3]) for c in sorted(glob("challenge*.py"))] # Diese Datei testen if not evaluate(modules): print("Challenge 0 failed! Abbruch des Programms") exit(); print("************************") print("*** Challenge 0 OK ! ***") print("************************") # Alle anderen Tests absolvieren for (i,m) in enumerate(modules): if (not m.evaluate() ): print("Challenge %d failed :-( Abbruch des Programms\n" % (i+1)) exit() else: ok = "*** Challenge %d OK ! ***" % (i+1) ok = "*"*len(ok)+"\n"+ok+"\n"+"*"*len(ok)+"\n" print(ok)