dart-sdk/tests/language_2/local_function3_test.dart
Jaime Wren 3e13e9783d Migrate Dart 2.0 test block 128
Change-Id: I3621006cbd2db4075f1ea55f5e34ecee688a2e18
Reviewed-on: https://dart-review.googlesource.com/13380
Commit-Queue: Jaime Wren <jwren@google.com>
Reviewed-by: Janice Collins <jcollins@google.com>
Reviewed-by: Jaime Wren <jwren@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
2017-10-12 17:35:02 +00:00

40 lines
993 B
Dart

// 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.
// Dart test program testing closures.
import "package:expect/expect.dart";
class LocalFunction3Test {
static testExceptions() {
var f = (int n) {
return n + 1;
};
Expect.equals(true, f is Object);
bool exception_caught = false;
try {
f.xyz(0); //# 01: compile-time error
} on NoSuchMethodError {
exception_caught = true;
}
Expect.equals(true, exception_caught);
exception_caught = false;
String f_string;
try {
f_string = f.toString();
} on NoSuchMethodError {
exception_caught = true;
}
Expect.equals(false, exception_caught);
Expect.equals(true, f_string.startsWith("Closure"));
}
static testMain() {
testExceptions();
}
}
main() {
LocalFunction3Test.testMain();
}