Home | History | Annotate | Download | only in base
      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 
     36