blob: 9a9ec04ffe48af97600b6a8dac4b80896e44c2a5 [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 class LinkedList<E extends LinkedListEntry>
/// A specialized double-linked list of elements that extends [LinkedListEntry]
/// This is not a generic data structure. It only accepts elements that extend
/// the [LinkedListEntry] class.
/// @description Checks that [LinkedList] accepts [LinkedListEntry] elements and
/// does not accept any other classes.
/// @author
import "dart:collection";
import "../../../Utils/expect.dart";
import "LinkedList.lib.dart";
main() {
LinkedList<MyLinkedListEntry> list = new LinkedList<MyLinkedListEntry>();
list.add(new MyLinkedListEntry(1));
Expect.throws(() { list.add(1 as dynamic); });
Expect.throws(() { list.add(new Object() as dynamic); });
Expect.throws(() { list.add("test" as dynamic); });