20 package net.sf.gridarta.var.crossfire.model.gameobject;
22 import java.util.Iterator;
26 import org.jetbrains.annotations.NotNull;
27 import org.junit.Assert;
28 import org.junit.Test;
48 check(gameObjectContainer, 123);
52 check(gameObjectContainer, 123);
56 check(gameObjectContainer, 123);
70 check(gameObjectContainer, 123);
74 check(gameObjectContainer, 123, 0);
78 check(gameObjectContainer, 123, 0, 321);
92 check(gameObjectContainer, 1);
96 check(gameObjectContainer, 1, 0);
101 check(gameObjectContainer, 1, 0, 0);
105 check(gameObjectContainer, 1, 3, 0, 0);
109 check(gameObjectContainer, 1, 0, 3, 0, 0);
123 check(gameObjectContainer, 1);
128 check(gameObjectContainer, 1, 2);
132 check(gameObjectContainer, 1, 0, 2);
136 check(gameObjectContainer, 1, 0, 3, 2);
140 check(gameObjectContainer, 1, 0, 0, 3, 2);
152 check(container1, 1, 0, 0, 0);
154 check(container1, 1, 0, 0, 0);
156 check(container1, 1, 0, 0, 0);
167 container1.
moveDown(
get(container1, 0));
168 check(container1, 1, 0, 0, 0);
169 container1.
moveDown(
get(container1, 1));
170 check(container1, 1, 0, 0, 0);
171 container1.
moveDown(
get(container1, 3));
172 check(container1, 1, 0, 0, 0);
183 container1.
moveUp(
get(container1, 0));
184 check(container1, 1, 0, 0, 0);
185 container1.
moveUp(
get(container1, 1));
186 check(container1, 1, 0, 0, 0);
187 container1.
moveUp(
get(container1, 3));
188 check(container1, 1, 0, 0, 0);
199 container1.
moveTop(
get(container1, 0));
200 check(container1, 1, 0, 0, 0);
201 container1.
moveTop(
get(container1, 1));
202 check(container1, 1, 0, 0, 0);
203 container1.
moveTop(
get(container1, 3));
204 check(container1, 1, 0, 0, 0);
215 container1.
remove(
get(container1, 0));
216 check(container1, 1, 0, 0);
217 container1.
remove(
get(container1, 2));
218 check(container1, 1, 0);
219 container1.
remove(
get(container1, 0));
220 check(container1, 1);
221 container1.
remove(
get(container1, 0));
234 check(container1, 1, 0, 0, 0);
236 check(container1, 1, 3, 0, 0);
238 check(container1, 1, 3, 0, 0);
249 final Iterator<GameObject>
it = container1.
iterator();
252 check(container1, 1, 0, 0, 0, 0);
255 check(container1, 1, 0, 0, 0);
259 check(container1, 1, 0, 0);
270 final Iterator<GameObject>
it = container1.
reverse().iterator();
273 check(container1, 1, 0, 0, 0, 0);
276 check(container1, 1, 0, 0, 0);
280 check(container1, 1, 0, 0);
283 check(container1, 1, 0);
286 check(container1, 1);
287 Assert.assertFalse(
it.hasNext());
300 for (
final int elevation : elevations) {
301 gameObject.
addLast(gameObjectCreator.newGameObject(elevation));
313 private static GameObject get(@NotNull
final Iterable<GameObject> gameObjects,
final int index) {
315 for (
final GameObject gameObject : gameObjects) {
322 Assert.fail(
"index " + index +
" not found");
323 throw new AssertionError();
331 private static void check(@NotNull
final Iterable<GameObject> gameObjects,
final int... elevation) {
333 for (
final GameObject gameObject : gameObjects) {
335 final int expectedElevation = i < elevation.length ? elevation[i] : 0;
336 Assert.assertEquals(gameObject.getBestName(), expectedElevation, thisElevation);