blob: 4b896613dc36f380b0c3baa21cf0f736eb9e4153 [file] [log] [blame]
Justin Klaassende05df42016-11-22 15:38:08 -08001# Copyright 2015 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
6class BaseError(Exception):
7 """Base error for all test runner errors."""
8
9 def __init__(self, message, is_infra_error=False):
10 super(BaseError, self).__init__(message)
11 self._is_infra_error = is_infra_error
12
Justin Klaassen2091a4f2017-01-23 07:38:46 -080013 def __eq__(self, other):
14 return (self.message == other.message
15 and self.is_infra_error == other.is_infra_error)
16
17 def __ne__(self, other):
18 return not self == other
19
Justin Klaassende05df42016-11-22 15:38:08 -080020 @property
21 def is_infra_error(self):
22 """Property to indicate if error was caused by an infrastructure issue."""
23 return self._is_infra_error
24