9using System.Collections.Generic;
28 private class ListClass :
MultiTypedList<BaseClass, A, B, C, D, E, F, G, H> { }
30 private ListClass _list;
34 _list =
new ListClass();
46 int countBefore = _list.Count;
48 _list.Insert(0,
new A());
50 int countAfter = _list.Count;
52 Assert.That(countAfter, Is.EqualTo(countBefore + 1));
54 Assert.That(_list[0], Is.TypeOf<
A>());
55 Assert.That(_list[1], Is.TypeOf<
A>());
56 Assert.That(_list[2], Is.TypeOf<
B>());
63 List<BaseClass> objs =
new List<BaseClass>();
64 foreach (var obj
in _list) {
68 Assert.That(objs[0], Is.TypeOf<
A>());
69 Assert.That(objs[1], Is.TypeOf<
B>());
70 Assert.That(objs[2], Is.TypeOf<
C>());
71 Assert.That(objs[3], Is.TypeOf<
D>());
72 Assert.That(objs[4], Is.TypeOf<
E>());
73 Assert.That(objs[5], Is.TypeOf<
F>());
74 Assert.That(objs[6], Is.TypeOf<
G>());
75 Assert.That(objs[7], Is.TypeOf<
H>());
81 Assert.That(_list.Count, Is.EqualTo(8));
83 for (
int i = 0; i < 8; i++) {
87 Assert.That(_list.Count, Is.EqualTo(0));
93 Assert.That(_list.Count, Is.EqualTo(8));
95 for (
int i = 8; i-- != 0;) {
99 Assert.That(_list.Count, Is.EqualTo(0));
106 Assert.That(_list[0], Is.TypeOf<
A>());
107 Assert.That(_list[1], Is.TypeOf<
B>());
108 Assert.That(_list[2], Is.TypeOf<
C>());
109 Assert.That(_list[3], Is.TypeOf<
D>());
110 Assert.That(_list[4], Is.TypeOf<
E>());
111 Assert.That(_list[5], Is.TypeOf<
F>());
112 Assert.That(_list[6], Is.TypeOf<
G>());
113 Assert.That(_list[7], Is.TypeOf<
H>());
125 Assert.That(_list[0], Is.TypeOf<
E>());
126 Assert.That(_list[1], Is.TypeOf<
F>());
127 Assert.That(_list[2], Is.TypeOf<
G>());
128 Assert.That(_list[3], Is.TypeOf<
H>());
138 Assert.That(_list[0], Is.TypeOf<
A>());
139 Assert.That(_list[1], Is.TypeOf<
B>());
140 Assert.That(_list[2], Is.TypeOf<
C>());
141 Assert.That(_list[3], Is.TypeOf<
D>());
142 Assert.That(_list[4], Is.TypeOf<
E>());
143 Assert.That(_list[5], Is.EqualTo(a));
144 Assert.That(_list[6], Is.TypeOf<
G>());
145 Assert.That(_list[7], Is.TypeOf<
H>());
152 }, Throws.ArgumentException);
155 private void addOneOfEach() {
Represents an ordered collection of objects of type BaseType.
void AddInvalidObjectTest()