Browse Source

Let's test exceptions.

pull/50/head
Rafal Kupiec 3 years ago
parent
commit
08307c5ad6
Signed by: belliash GPG Key ID: 4E829243E0CFE6B4
  1. 33
      tests/exception_handler.aer
  2. 4
      tests/exception_handler.exp

33
tests/exception_handler.aer

@ -0,0 +1,33 @@
class ExceptionHandler {
public static void printException(Exception $e) {
print('Uncaught ' + get_class($e) + ', code: ' + $e->getCode() + "\nMessage: " + htmlentities($e->getMessage()) + "\n");
}
public static void handleException(Exception $e) {
self::printException($e);
}
}
class NewException extends Exception {
}
class Program {
void main() {
callback $handler = void(Exception $e) {
ExceptionHandler::handleException($e);
};
set_exception_handler($handler);
try {
throw new NewException("Catch me once", 1);
} catch(Exception $e) {
ExceptionHandler::handleException($e);
}
throw new Exception("Catch me twice", 2);
}
}

4
tests/exception_handler.exp

@ -0,0 +1,4 @@
Uncaught NewException, code: 1
Message: Catch me once
Uncaught Exception, code: 2
Message: Catch me twice
Loading…
Cancel
Save