#!/usr/bin/env python
import os
import sys

import test_runner

_WPR_DIR = os.path.dirname(os.path.abspath(__file__))

if __name__ == '__main__':
  runner = test_runner.TestRunner()
  runner.AddDirectory(_WPR_DIR)
  sys.exit(runner.Main())
