Upstream version 11.40.271.0
[platform/framework/web/crosswalk.git] / src / build / android / pylib / base / test_run.py
1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
4
5
6 class TestRun(object):
7   """An execution of a particular test on a particular device.
8
9   This is expected to handle all logic that is specific to the combination of
10   environment and test type.
11
12   Examples include:
13     - local gtests
14     - local instrumentation tests
15   """
16
17   def __init__(self, env, test_instance):
18     self._env = env
19     self._test_instance = test_instance
20
21   def TestPackage(self):
22     raise NotImplementedError
23
24   def SetUp(self):
25     raise NotImplementedError
26
27   def RunTest(self):
28     raise NotImplementedError
29
30   def TearDown(self):
31     raise NotImplementedError
32
33   def __enter__(self):
34     self.SetUp()
35     return self
36
37   def __exit__(self, exc_type, exc_val, exc_tb):
38     self.TearDown()
39