blob: 0872cead17a95c68d4e99b139bef1c9cee059326 [file] [log] [blame]
// Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
class NullPointerExceptionTest {
static void testNullPointerExceptionVariable() {
int variable;
bool exceptionCaught = false;
bool wrongExceptionCaught = false;
try {
variable++;
} on NullPointerException catch (ex) {
exceptionCaught = true;
} on Exception catch (ex) {
wrongExceptionCaught = true;
}
Expect.equals(true, exceptionCaught);
Expect.equals(true, !wrongExceptionCaught);
}
static int helperFunction(int parameter) {
return parameter++;
}
static void testNullPointerExceptionFunctionCall() {
int variable;
bool exceptionCaught = false;
bool wrongExceptionCaught = false;
try {
variable = helperFunction(variable);
} on NullPointerException catch (ex) {
exceptionCaught = true;
} on Exception catch (ex) {
wrongExceptionCaught = true;
}
Expect.equals(true, exceptionCaught);
Expect.equals(true, !wrongExceptionCaught);
}
static void testMain() {
testNullPointerExceptionVariable();
testNullPointerExceptionFunctionCall();
}
}
main() {
NullPointerExceptionTest.testMain();
}