blob: a0ecc9102009f1c124e4bb171554d8d793b5c0ae [file] [log] [blame]
// Copyright (c) 2017, 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.
/// @assertion abstract int indexOf(E element, [int start = 0])
/// Searches the list from index [start] to the end of the list. The first time
/// an object [o] is encountered so that [o == element], the index of [o] is
/// returned.
/// @description Checks that [start] can be out of bounds.
/// @author iarkh@unipro.ru
import "dart:collection";
import "../../../Utils/expect.dart";
main() {
UnmodifiableListView a =
new UnmodifiableListView([42, 0, -1, 42, -1, 6031769, 0]);
Expect.equals(-1, a.indexOf(777, -1));
Expect.equals(0, a.indexOf(42, -1));
Expect.equals(-1, a.indexOf(null, -1));
Expect.equals(2, a.indexOf(-1, -1));
Expect.equals(-1, a.indexOf(777, 7));
Expect.equals(-1, a.indexOf(42, 7));
Expect.equals(-1, a.indexOf(null, 7));
Expect.equals(-1, a.indexOf(-1, 7));
Expect.equals(-1, a.indexOf(42, 6031769));
Expect.equals(-1, a.indexOf(777, 6031769));
Expect.equals(-1, a.indexOf(null, 6031769));
Expect.equals(-1, a.indexOf(0, 6031769));
Expect.equals(0, a.indexOf(42, -6031769));
Expect.equals(-1, a.indexOf(777, -6031769));
Expect.equals(-1, a.indexOf(null, -6031769));
Expect.equals(1, a.indexOf(0, -6031769));
}