56 lines
1.3 KiB
Smalltalk
56 lines
1.3 KiB
Smalltalk
"
|
|
I am the parent class of all WebDriver exceptions.
|
|
"
|
|
Class {
|
|
#name : #WDException,
|
|
#superclass : #Exception,
|
|
#instVars : [
|
|
'stacktrace',
|
|
'data'
|
|
],
|
|
#category : #WebDriver
|
|
}
|
|
|
|
{ #category : #'as yet unclassified' }
|
|
WDException class >> raise: errDict [
|
|
"Initializes and populates the appropriate exception class."
|
|
| error message stacktrace data |
|
|
error := errDict at: #error.
|
|
message := errDict at: #message.
|
|
stacktrace := errDict at: #stacktrace.
|
|
data := errDict at: #data ifAbsent: nil.
|
|
(error = 'element click intercepted')
|
|
ifTrue: [ ^ WDElementClickIntercepted new data: data; stacktrace: stacktrace; signal: message ].
|
|
(error = 'element not interactable')
|
|
ifTrue: [ ^ WDElementNotInteractable new data: data; stacktrace: stacktrace; signal: message ].
|
|
(error = 'insecure certificate')
|
|
ifTrue: [ ^ WDInsecureCertificate new data: data; stacktrace: stacktrace; signal: message ].
|
|
(error = 'invalid selector')
|
|
ifTrue: [ ^ WDInvalidSelector new data: data; stacktrace: stacktrace; signal: message ].
|
|
|
|
]
|
|
|
|
{ #category : #accessing }
|
|
WDException >> data [
|
|
|
|
^ data
|
|
]
|
|
|
|
{ #category : #accessing }
|
|
WDException >> data: anObject [
|
|
|
|
data := anObject
|
|
]
|
|
|
|
{ #category : #accessing }
|
|
WDException >> stacktrace [
|
|
|
|
^ stacktrace
|
|
]
|
|
|
|
{ #category : #accessing }
|
|
WDException >> stacktrace: anObject [
|
|
|
|
stacktrace := anObject
|
|
]
|