Source code for traitsui.testing.tester.exceptions

# (C) Copyright 2004-2023 Enthought, Inc., Austin, TX
# All rights reserved.
#
# This software is provided without warranty under the terms of the BSD
# license included in LICENSE.txt and may be redistributed only under
# the conditions described in the aforementioned license. The license
# is also available online at http://www.enthought.com/licenses/BSD.txt
#
# Thanks for using Enthought open source!

""" Custom exceptions for UITester and UIWrapper.
"""


[docs]class TesterError(Exception): """Custom exception for UITester/UIWrapper.""" pass
[docs]class Disabled(TesterError): """Raised when a simulation fails because the widget is disabled.""" pass
[docs]class InteractionNotSupported(TesterError): """Raised when an interaction is not supported by a wrapper. Parameters ---------- target_class : subclass of type The type of a UI target being operated on. interaction_class : subclass of type Any class for the interaction. supported : list of types List of supported interaction types. """ def __init__(self, target_class, interaction_class, supported): self.target_class = target_class self.interaction_class = interaction_class self.supported = supported def __str__(self): return ( "No handler is found for target {!r} with interaction {!r}. " "Supported these: {!r}".format( self.target_class, self.interaction_class, self.supported ) )
[docs]class LocationNotSupported(TesterError): """Raised when attempt to resolve a location on a UI fails because the location type is not supported. """ def __init__(self, target_class, locator_class, supported): self.target_class = target_class self.locator_class = locator_class self.supported = supported def __str__(self): return ( "Location {!r} is not supported for {!r}. " "Supported these: {!r}".format( self.locator_class, self.target_class, self.supported ) )