27 Item a1(1, 11), a2(2, 12), a3(3, 13);
38 EXPECT_EQ(all.First()->item, 11);
39 EXPECT_EQ(all.Last()->item, 13);
43 EXPECT_EQ(ready.
First()->item, 11);
44 EXPECT_EQ(ready.
Last()->item, 12);
47 for (
auto it = all.Begin(); it != all.End(); ++it) {
49 EXPECT_EQ(it->base, i);
50 EXPECT_EQ((*it)->base, i);
51 EXPECT_EQ(it->item, 10 + i);
52 EXPECT_EQ((*it)->item, 10 + i);
57 for (
auto it = ready.
Begin(); it != ready.
End(); ++it) {
59 EXPECT_EQ(it->base, i);
60 EXPECT_EQ((*it)->base, i);
61 EXPECT_EQ(it->item, 10 + i);
62 EXPECT_EQ((*it)->item, 10 + i);
78 Item a1(1, 11), a2(2, 12), a3(3, 13);
86 EXPECT_EQ(&a1, all.RemoveFirst());
87 EXPECT_EQ(&a2, all.RemoveFirst());
88 EXPECT_EQ(&a3, all.RemoveFirst());
94 Item a1(1, 11), a2(2, 12), a3(3, 13);
102 EXPECT_EQ(&a3, all.RemoveLast());
103 EXPECT_EQ(&a2, all.RemoveLast());
104 EXPECT_EQ(&a1, all.RemoveLast());
109 Item a1(1, 11), a2(2, 12), a3(3, 13);
117 ASSERT(all.IsInList(&a1));
118 ASSERT(all.IsInList(&a2));
119 ASSERT(all.IsInList(&a3));
121 EXPECT_EQ(&a1, all.RemoveFirst());
122 EXPECT(!all.IsInList(&a1));
123 EXPECT_EQ(&a3, all.RemoveLast());
124 EXPECT(!all.IsInList(&a3));
125 EXPECT_EQ(&a2, all.RemoveFirst());
126 EXPECT(!all.IsInList(&a2));
132 Item a1(1, 11), a2(2, 12), a3(3, 13);
140 auto it = all.Begin();
141 it = all.Erase(++it);
143 EXPECT_EQ(*it, all.Last());
145 it = all.Erase(all.Begin());
147 EXPECT_EQ(*it, all.First());
148 EXPECT_EQ(*it, all.Last());
150 it = all.Erase(all.Begin());