blob: 911a35da7cd5c6166514209d4db6c081a848116d [file] [log] [blame]
# Copyright 2018 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
"""Definition of CrOS suite exceptions in skylab."""
class DroneEnvironmentError(Exception):
"""Raised on incorrect setup of the drone executing skylab_suite."""
class InValidPropertyError(Exception):
"""Raised if a suite's property is not valid."""
class SwarmingCallError(Exception):
"""Raised if a swarming call fails."""
class NoAvailableDUTsError(Exception):
"""Raised if there's no available DUTs for provision suite."""
def __init__(self, board, pool, available_num, required_num):
self.board = board
self.pool = pool
self.available_num = available_num
self.required_num = required_num
super(NoAvailableDUTsError, self).__init__(
board, pool, available_num, required_num)
def __str__(self):
return ('The available number of DUTs for board %s and pool %s is %d, '
'which is less than %d, the required number.' % (
self.board, self.pool, self.available_num,
self.required_num))