Upstream version 11.40.271.0
[platform/framework/web/crosswalk.git] / src / build / android / pylib / base / test_instance.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 TestInstance(object):
7   """A type of test.
8
9   This is expected to handle all logic that is test-type specific but
10   independent of the environment or device.
11
12   Examples include:
13     - gtests
14     - instrumentation tests
15   """
16
17   def __init__(self):
18     pass
19
20   def TestType(self):
21     raise NotImplementedError
22
23   def SetUp(self):
24     raise NotImplementedError
25
26   def TearDown(self):
27     raise NotImplementedError
28
29   def __enter__(self):
30     self.SetUp()
31     return self
32
33   def __exit__(self, _exc_type, _exc_val, _exc_tb):
34     self.TearDown()
35