]> mj.ucw.cz Git - moe.git/blob - t/test.py
Better logging of exceptions
[moe.git] / t / test.py
1 #!/usr/bin/env python
2
3 import sys
4 sys.path.append('.')
5
6 import moe
7 import moe.config
8 import moe.log
9 import moe.eval
10 import moe.pipeline
11 import moe.batch
12 import os
13
14 e = moe.eval.Eval()
15
16 try:
17     overrides = moe.config.parse_overrides(sys.argv)
18     e.builtins.set("HOME", ".")
19     e.builtins.set("TASK", "sum")
20     e.builtins.set("CONTESTANT", "mj")
21     e.log.progress("### Evaluating task %s of contestant %s ###\n\n" % (e['TASK'], e['CONTESTANT']))
22     e.init(overrides)
23 except moe.MoeError, err:
24     e.log.shout("FATAL: %s\n" % err)
25     sys.exit(1)
26
27 try:
28     if len(sys.argv) > 1:
29         file = sys.argv[1]
30     else:
31         file = None
32     moe.batch.locate(e, file)
33     e.run()
34 except moe.MoeError, err:
35     e.log.shout("FATAL: %s\n" % err)
36     sys.exit(1)
37 except moe.SolutionError, err:
38     e.stat["error"] = err
39     e.log.shout("%s\n" % err)
40 except Exception:
41     moe.log.fatal_exception()
42
43 moe.log.default.progress_file.write("\nFinal status file:\n")
44 e.stat.write(file=moe.log.default.progress_file)