blob: 2fdf90f5358b215195a55ce09fbcb9e68413a476 [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.
import "package:expect/expect.dart";
// Dart test for testing out of range exceptions on arrays.
class RangeErrorTest {
static testRead() {
testListRead([], 0);
testListRead([], -1);
testListRead([], 1);
var list = [1];
testListRead(list, -1);
testListRead(list, 1);
list = new List(1);
testListRead(list, -1);
testListRead(list, 1);
list = new List();
testListRead(list, -1);
testListRead(list, 0);
testListRead(list, 1);
}
static testWrite() {
testListWrite([], 0);
testListWrite([], -1);
testListWrite([], 1);
var list = [1];
testListWrite(list, -1);
testListWrite(list, 1);
list = new List(1);
testListWrite(list, -1);
testListWrite(list, 1);
list = new List();
testListWrite(list, -1);
testListWrite(list, 0);
testListWrite(list, 1);
}
static testMain() {
testRead();
testWrite();
}
static testListRead(list, index) {
var exception = null;
try {
var e = list[index];
} on RangeError catch (e) {
exception = e;
}
Expect.equals(true, exception != null);
}
static testListWrite(list, index) {
var exception = null;
try {
list[index] = null;
} on RangeError catch (e) {
exception = e;
}
Expect.equals(true, exception != null);
}
}
main() {
RangeErrorTest.testMain();
}