Gridarta Editor
AutojoinListsTest.java
Go to the documentation of this file.
1 /*
2  * Gridarta MMORPG map editor for Crossfire, Daimonin and similar games.
3  * Copyright (C) 2000-2023 The Gridarta Developers.
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2 of the License, or
8  * (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License along
16  * with this program; if not, write to the Free Software Foundation, Inc.,
17  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18  */
19 
20 package net.sf.gridarta.model.autojoin;
21 
29 import org.junit.Assert;
30 import org.junit.Test;
31 
36 public class AutojoinListsTest {
37 
42  @Test
44  final AutojoinListsHelper autojoinListsHelper = new AutojoinListsHelper();
45  autojoinListsHelper.newAutojoinListsFail("autojoin list with less than 16 valid entries");
46  autojoinListsHelper.newAutojoinListsFail("autojoin list with less than 16 valid entries", "a0");
47  autojoinListsHelper.newAutojoinListsFail("autojoin list with less than 16 valid entries", "a0", "a1", "a2", "a3", "a4", "a5", "a6", "a7", "a8", "a9", "a10", "a11", "a12", "a13", "a14");
48  autojoinListsHelper.newAutojoinLists("a0", "a1", "a2", "a3", "a4", "a5", "a6", "a7", "a8", "a9", "a10", "a11", "a12", "a13", "a14", "a15");
49  autojoinListsHelper.newAutojoinListsFail("autojoin list with more than 16 valid entries", "a0", "a1", "a2", "a3", "a4", "a5", "a6", "a7", "a8", "a9", "a10", "a11", "a12", "a13", "a14", "a15", "a16");
50  }
51 
56  @Test
58  final AutojoinListsHelper autojoinListsHelper = new AutojoinListsHelper();
59  //Check disabled for now as Daimonin uses this feature:
60  //autojoinListsHelper.newAutojoinListsFail("autojoin list contains duplicate archetype 'a0'", "a0", "a1", "a2", "a3", "a4", "a5", "a6", "a7", "a8", "a9", "a10", "a11", "a12", "a13", "a14", "a0");
61  autojoinListsHelper.newAutojoinLists("a0", "a1", "a2", "a3", "a4", "a5", "a6", "a7", "a8", "a9", "a10", "a11", "a12", "a13", "a14", "a0");
62  }
63 
68  @Test
70  final AutojoinListsHelper autojoinListsHelper = new AutojoinListsHelper();
71  autojoinListsHelper.newAutojoinLists("a0", "a1", "a2", "a3", "a4", "a5", "a6", "a7", "a8", "a9", "a10", "a11", "a12", "a13", "a14", "a15");
72  autojoinListsHelper.newAutojoinListsFail("archetype 'a4' contained in more than one autojoin list", "b0", "b1", "b2", "b3", "a4", "b5", "b6", "b7", "b8", "b9", "b10", "b11", "b12", "b13", "b14", "b15");
73  autojoinListsHelper.newAutojoinListsFail("autojoin list contains duplicate archetype 'c0'", "c0|c1|c0", "c1", "c2", "c3", "c4", "c5", "c6", "c7", "c8", "c9", "c10", "c11", "c12", "c13", "c14", "c15");
74  autojoinListsHelper.newAutojoinListsFail("autojoin list is empty", "d0", "d1", "d2", "", "d4", "d5", "d6", "d7", "d8", "d9", "d10", "d11", "d12", "d13", "d14", "d15");
75  }
76 
82  @Test
84  final TestMapModelCreator mapModelCreator = new TestMapModelCreator(false);
85  final AutojoinListsHelper autojoinListsHelper = new AutojoinListsHelper(mapModelCreator);
86  autojoinListsHelper.newAutojoinLists("a0", "a1", "a2", "a3", "a4", "a5", "a6", "a7", "a8", "a9", "a10", "a11", "a12", "a13", "a14", "a15");
87  final MapModel<TestGameObject, TestMapArchObject, TestArchetype> mapModel = mapModelCreator.newMapModel(3, 2);
88  final TestMapModelHelper testMapModelHelper = mapModelCreator.newTestMapModelHelper();
89  final TestArchetype a0 = mapModelCreator.getArchetype("a0");
90  final TestArchetype a1 = mapModelCreator.getArchetype("a1");
91  final TestArchetype a6 = mapModelCreator.getArchetype("a6");
92  final TestArchetype a8 = mapModelCreator.getArchetype("a8");
93  mapModel.beginTransaction("TEST");
94  testMapModelHelper.insertArchetype(mapModel, 1, 0, a1, false);
95  testMapModelHelper.insertArchetype(mapModel, 0, 1, a8, false);
96 
97  // insert using autojoin
98  testMapModelHelper.insertArchetype(mapModel, 1, 1, a0, true);
99  TestMapModelHelper.checkMapContents(mapModel, "|a5|", "a10|a9|");
100 
101  // insert duplicate archetype is ignored
102  try {
103  testMapModelHelper.insertArchetype(mapModel, 1, 1, a0, true);
104  Assert.fail();
105  } catch (final IllegalArgumentException ignored) {
106  // ignore
107  }
108  TestMapModelHelper.checkMapContents(mapModel, "|a5|", "a10|a9|");
109 
110  // insert using autojoin
111  testMapModelHelper.insertArchetype(mapModel, 2, 1, a6, true);
112  TestMapModelHelper.checkMapContents(mapModel, "|a5|", "a10|a11|a8");
113 
114  // insert without autojoin
115  testMapModelHelper.insertArchetype(mapModel, 2, 0, a6, false);
116  TestMapModelHelper.checkMapContents(mapModel, "|a5|a6", "a10|a11|a8");
117  }
118 
124  @Test
126  final TestMapModelCreator mapModelCreator = new TestMapModelCreator(false);
127  final AutojoinListsHelper autojoinListsHelper = new AutojoinListsHelper(mapModelCreator);
128  autojoinListsHelper.newAutojoinLists("a0", "a1", "a2", "a3", "a4", "a5", "a6", "a7", "a8", "a9", "a10", "a11", "a12", "a13", "a14", "a15");
129  final MapModel<TestGameObject, TestMapArchObject, TestArchetype> mapModel = mapModelCreator.newMapModel(3, 2);
130  final TestMapModelHelper testMapModelHelper = mapModelCreator.newTestMapModelHelper();
131  final TestArchetype a4 = mapModelCreator.getArchetype("a4");
132  final TestArchetype a8 = mapModelCreator.getArchetype("a8");
133  final TestArchetype a10 = mapModelCreator.getArchetype("a10");
134  final TestArchetype a11 = mapModelCreator.getArchetype("a11");
135  mapModel.beginTransaction("TEST");
136  final TestGameObject g10 = testMapModelHelper.insertArchetype(mapModel, 1, 0, a4, false);
137  final TestGameObject g01 = testMapModelHelper.insertArchetype(mapModel, 0, 1, a10, false);
138  testMapModelHelper.insertArchetype(mapModel, 1, 1, a11, false);
139  final TestGameObject g21 = testMapModelHelper.insertArchetype(mapModel, 2, 1, a8, false);
140 
141  // remove using autojoin
142  mapModel.removeGameObject(g21, true);
143  TestMapModelHelper.checkMapContents(mapModel, "|a4|", "a10|a9|");
144 
145  // remove without autojoin
146  mapModel.removeGameObject(g10, false);
147  TestMapModelHelper.checkMapContents(mapModel, "||", "a10|a9|");
148 
149  // remove using autojoin
150  mapModel.removeGameObject(g01, true);
151  TestMapModelHelper.checkMapContents(mapModel, "||", "|a1|");
152  }
153 
160  @Test
162  final TestMapModelCreator mapModelCreator = new TestMapModelCreator(false);
163  final AutojoinListsHelper autojoinListsHelper = new AutojoinListsHelper(mapModelCreator);
164  autojoinListsHelper.newAutojoinLists("a0", "a1", "a2", "a3", "a4", "a5|b5", "a6", "a7", "a8", "a9", "a10|b10", "a11", "a12", "a13", "a14", "a15");
165  final MapModel<TestGameObject, TestMapArchObject, TestArchetype> mapModel = mapModelCreator.newMapModel(3, 2);
166  final TestMapModelHelper testMapModelHelper = mapModelCreator.newTestMapModelHelper();
167  final TestArchetype a0 = mapModelCreator.getArchetype("a0");
168  final TestArchetype a3 = mapModelCreator.getArchetype("a3");
169  final TestArchetype a8 = mapModelCreator.getArchetype("a8");
170  final TestArchetype b5 = mapModelCreator.getArchetype("b5");
171  final TestArchetype b10 = mapModelCreator.getArchetype("b10");
172  mapModel.beginTransaction("TEST");
173  testMapModelHelper.insertArchetype(mapModel, 0, 0, b5, false);
174  testMapModelHelper.insertArchetype(mapModel, 2, 0, b10, false);
175  testMapModelHelper.insertArchetype(mapModel, 0, 1, a3, false);
176  testMapModelHelper.insertArchetype(mapModel, 1, 1, a8, false);
177 
178  // insert using autojoin
179  testMapModelHelper.insertArchetype(mapModel, 1, 0, a0, true);
180  TestMapModelHelper.checkMapContents(mapModel, "b5|a6|b10", "a3|a9|");
181  }
182 
189  @Test
191  final TestMapModelCreator mapModelCreator = new TestMapModelCreator(false);
192  final AutojoinListsHelper autojoinListsHelper = new AutojoinListsHelper(mapModelCreator);
193  autojoinListsHelper.newAutojoinLists("a0", "a1", "a2", "a3", "a4", "a5|b5", "a6", "a7", "a8", "a9", "a10|b10", "a11", "a12", "a13", "a14", "a15");
194  final MapModel<TestGameObject, TestMapArchObject, TestArchetype> mapModel = mapModelCreator.newMapModel(3, 2);
195  final TestMapModelHelper testMapModelHelper = mapModelCreator.newTestMapModelHelper();
196  final TestArchetype a3 = mapModelCreator.getArchetype("a3");
197  final TestArchetype a8 = mapModelCreator.getArchetype("a8");
198  final TestArchetype b5 = mapModelCreator.getArchetype("b5");
199  final TestArchetype b10 = mapModelCreator.getArchetype("b10");
200  mapModel.beginTransaction("TEST");
201  testMapModelHelper.insertArchetype(mapModel, 0, 0, b5, false);
202  testMapModelHelper.insertArchetype(mapModel, 2, 0, b10, false);
203  testMapModelHelper.insertArchetype(mapModel, 0, 1, a3, false);
204  testMapModelHelper.insertArchetype(mapModel, 1, 1, a8, false);
205 
206  // insert using autojoin
207  testMapModelHelper.insertArchetype(mapModel, 1, 0, b10, true);
208  TestMapModelHelper.checkMapContents(mapModel, "b5|b10|b10", "a3|a8|");
209  }
210 
217  @Test
219  final TestMapModelCreator mapModelCreator = new TestMapModelCreator(false);
220  final AutojoinListsHelper autojoinListsHelper = new AutojoinListsHelper(mapModelCreator);
221  autojoinListsHelper.newAutojoinLists("a0", "a1", "a2", "a3", "a4", "a5|b5", "a6", "a7", "a8", "a9", "a10|b10", "a11", "a12", "a13", "a14", "a15");
222  final MapModel<TestGameObject, TestMapArchObject, TestArchetype> mapModel = mapModelCreator.newMapModel(3, 2);
223  final TestMapModelHelper testMapModelHelper = mapModelCreator.newTestMapModelHelper();
224  final TestArchetype a3 = mapModelCreator.getArchetype("a3");
225  final TestArchetype a8 = mapModelCreator.getArchetype("a8");
226  final TestArchetype b5 = mapModelCreator.getArchetype("b5");
227  final TestArchetype b10 = mapModelCreator.getArchetype("b10");
228  mapModel.beginTransaction("TEST");
229  testMapModelHelper.insertArchetype(mapModel, 0, 0, b5, false);
230  testMapModelHelper.insertArchetype(mapModel, 2, 0, b10, false);
231  testMapModelHelper.insertArchetype(mapModel, 0, 1, a3, false);
232  testMapModelHelper.insertArchetype(mapModel, 1, 1, a8, false);
233 
234  // insert using autojoin
235  testMapModelHelper.insertArchetype(mapModel, 1, 0, b5, true);
236  TestMapModelHelper.checkMapContents(mapModel, "b5|b5|b10", "a3|a9|");
237  }
238 
245  @Test
247  final TestMapModelCreator mapModelCreator = new TestMapModelCreator(false);
248  final AutojoinListsHelper autojoinListsHelper = new AutojoinListsHelper(mapModelCreator);
249  autojoinListsHelper.newAutojoinLists("a0", "a1", "a2", "a3", "a4", "a5|b5", "a6", "a7", "a8", "a9", "a10|b10", "a11", "a12", "a13", "a14", "a15");
250  final MapModel<TestGameObject, TestMapArchObject, TestArchetype> mapModel = mapModelCreator.newMapModel(3, 2);
251  final TestMapModelHelper testMapModelHelper = mapModelCreator.newTestMapModelHelper();
252  final TestArchetype a10 = mapModelCreator.getArchetype("a10");
253  final TestArchetype b10 = mapModelCreator.getArchetype("b10");
254  final TestArchetype a11 = mapModelCreator.getArchetype("a11");
255  mapModel.beginTransaction("TEST");
256  testMapModelHelper.insertArchetype(mapModel, 0, 0, a10, false);
257  final TestGameObject g10 = testMapModelHelper.insertArchetype(mapModel, 1, 0, b10, false);
258  testMapModelHelper.insertArchetype(mapModel, 2, 0, a10, false);
259  testMapModelHelper.insertArchetype(mapModel, 1, 1, a11, false);
260 
261  // remove using autojoin
262  mapModel.removeGameObject(g10, true);
263  TestMapModelHelper.checkMapContents(mapModel, "a8||a2", "|a11|");
264  }
265 
272  @Test
274  final TestMapModelCreator mapModelCreator = new TestMapModelCreator(false);
275  final AutojoinListsHelper autojoinListsHelper = new AutojoinListsHelper(mapModelCreator);
276  autojoinListsHelper.newAutojoinLists("a0", "a1", "a2", "a3", "a4", "a5|b5", "a6", "a7", "a8", "a9", "a10|b10", "a11", "a12", "a13", "a14", "a15");
277  final MapModel<TestGameObject, TestMapArchObject, TestArchetype> mapModel = mapModelCreator.newMapModel(3, 2);
278  final TestMapModelHelper testMapModelHelper = mapModelCreator.newTestMapModelHelper();
279  final TestArchetype b5 = mapModelCreator.getArchetype("b5");
280  final TestArchetype b10 = mapModelCreator.getArchetype("b10");
281  final TestArchetype a11 = mapModelCreator.getArchetype("a11");
282  final TestArchetype a12 = mapModelCreator.getArchetype("a12");
283  mapModel.beginTransaction("TEST");
284  testMapModelHelper.insertArchetype(mapModel, 0, 0, b10, false);
285  final TestGameObject g10 = testMapModelHelper.insertArchetype(mapModel, 1, 0, a12, false);
286  testMapModelHelper.insertArchetype(mapModel, 2, 0, b5, false);
287  testMapModelHelper.insertArchetype(mapModel, 1, 1, a11, false);
288 
289  // remove using autojoin
290  mapModel.removeGameObject(g10, true);
291  TestMapModelHelper.checkMapContents(mapModel, "b10||b5", "|a10|");
292  }
293 
300  @Test
302  final TestMapModelCreator mapModelCreator = new TestMapModelCreator(false);
303  final AutojoinListsHelper autojoinListsHelper = new AutojoinListsHelper(mapModelCreator);
304  autojoinListsHelper.newAutojoinLists("a0", "a1", "a2", "a3", "a4", "a5|b5", "a6", "a7", "a8", "a9", "a10|b10", "a11", "a12", "a13", "a14", "a15");
305  final MapModel<TestGameObject, TestMapArchObject, TestArchetype> mapModel = mapModelCreator.newMapModel(3, 2);
306  final TestMapModelHelper testMapModelHelper = mapModelCreator.newTestMapModelHelper();
307  final TestArchetype b10 = mapModelCreator.getArchetype("b10");
308  final TestArchetype a11 = mapModelCreator.getArchetype("a11");
309  mapModel.beginTransaction("TEST");
310  testMapModelHelper.insertArchetype(mapModel, 0, 0, b10, false);
311  final TestGameObject g10 = testMapModelHelper.insertArchetype(mapModel, 1, 0, b10, false);
312  testMapModelHelper.insertArchetype(mapModel, 2, 0, b10, false);
313  testMapModelHelper.insertArchetype(mapModel, 1, 1, a11, false);
314 
315  // remove using autojoin
316  mapModel.removeGameObject(g10, true);
317  TestMapModelHelper.checkMapContents(mapModel, "b10||b10", "|a11|");
318  }
319 
326  @Test
328  final TestMapModelCreator mapModelCreator = new TestMapModelCreator(false);
329  final AutojoinListsHelper autojoinListsHelper = new AutojoinListsHelper(mapModelCreator);
330  autojoinListsHelper.newAutojoinLists("a0", "a1", "a2", "a3", "a4", "a5|b5", "a6", "a7", "a8", "a9", "a10|b10", "a11", "a12", "a13", "a14", "a15");
331  final MapModel<TestGameObject, TestMapArchObject, TestArchetype> mapModel = mapModelCreator.newMapModel(3, 3);
332  final TestMapModelHelper testMapModelHelper = mapModelCreator.newTestMapModelHelper();
333  final TestArchetype a5 = mapModelCreator.getArchetype("a5");
334  final TestArchetype b5 = mapModelCreator.getArchetype("b5");
335  final TestArchetype a10 = mapModelCreator.getArchetype("a10");
336  final TestArchetype b10 = mapModelCreator.getArchetype("b10");
337  final TestArchetype a15 = mapModelCreator.getArchetype("a15");
338  mapModel.beginTransaction("TEST");
339  testMapModelHelper.insertArchetype(mapModel, 1, 0, a10, false);
340  testMapModelHelper.insertArchetype(mapModel, 0, 1, b10, false);
341  testMapModelHelper.insertArchetype(mapModel, 1, 1, a15, false);
342  testMapModelHelper.insertArchetype(mapModel, 2, 1, a5, false);
343  testMapModelHelper.insertArchetype(mapModel, 1, 2, b5, false);
344 
345  try {
346  testMapModelHelper.insertArchetype(mapModel, 1, 1, a10, true);
347  Assert.fail();
348  } catch (final IllegalArgumentException ignored) {
349  // ignore
350  }
351  try {
352  testMapModelHelper.insertArchetype(mapModel, 0, 1, b10, true);
353  Assert.fail();
354  } catch (final IllegalArgumentException ignored) {
355  // ignore
356  }
357  TestMapModelHelper.checkMapContents(mapModel, "|a10|", "b10|a15|a5", "|b5|");
358  }
359 
365  @Test
367  final TestMapModelCreator mapModelCreator = new TestMapModelCreator(false);
368  final AutojoinListsHelper autojoinListsHelper = new AutojoinListsHelper(mapModelCreator);
369  autojoinListsHelper.newAutojoinLists("a0", "a1", "a2", "a3", "a4", "a5|b5", "a6", "a7", "a8", "a9", "a10|b10", "a11", "a12", "a13", "a14", "a15");
370  final MapModel<TestGameObject, TestMapArchObject, TestArchetype> mapModel = mapModelCreator.newMapModel(3, 3);
371  final TestMapModelHelper testMapModelHelper = mapModelCreator.newTestMapModelHelper();
372  final TestArchetype a0 = mapModelCreator.getArchetype("a0");
373  final TestArchetype a5 = mapModelCreator.getArchetype("a5");
374  final TestArchetype b5 = mapModelCreator.getArchetype("b5");
375  final TestArchetype a10 = mapModelCreator.getArchetype("a10");
376  final TestArchetype b10 = mapModelCreator.getArchetype("b10");
377  mapModel.beginTransaction("TEST");
378  for (int y = 0; y < 3; y++) {
379  for (int x = 0; x < 3; x++) {
380  testMapModelHelper.insertArchetype(mapModel, x, y, a10, false);
381  }
382  }
383 
384  TestMapModelHelper.checkMapContents(mapModel, "a10|a10|a10", "a10|a10|a10", "a10|a10|a10");
385  testMapModelHelper.insertArchetype(mapModel, 1, 1, b5, true); // replace main->alt
386  TestMapModelHelper.checkMapContents(mapModel, "a10|a14|a10", "a8|b5|a2", "a10|a11|a10");
387  testMapModelHelper.insertArchetype(mapModel, 1, 1, b10, true); // replace alt->alt, different archetype
388  TestMapModelHelper.checkMapContents(mapModel, "a10|a10|a10", "a10|b10|a10", "a10|a10|a10");
389  testMapModelHelper.insertArchetype(mapModel, 1, 1, a5, true); // replace alt->main
390  TestMapModelHelper.checkMapContents(mapModel, "a10|a14|a10", "a10|a15|a10", "a10|a11|a10");
391  testMapModelHelper.insertArchetype(mapModel, 1, 1, b10, true); // replace main->alt
392  TestMapModelHelper.checkMapContents(mapModel, "a10|a10|a10", "a10|b10|a10", "a10|a10|a10");
393  try {
394  testMapModelHelper.insertArchetype(mapModel, 1, 1, b10, true); // replace alt->alt, same archetype
395  Assert.fail();
396  } catch (final IllegalArgumentException ignored) {
397  // ignore
398  }
399  TestMapModelHelper.checkMapContents(mapModel, "a10|a10|a10", "a10|b10|a10", "a10|a10|a10");
400  try {
401  testMapModelHelper.insertArchetype(mapModel, 1, 0, a0, true); // replace main->main
402  Assert.fail();
403  } catch (final IllegalArgumentException ignored) {
404  // ignore
405  }
406  TestMapModelHelper.checkMapContents(mapModel, "a10|a10|a10", "a10|b10|a10", "a10|a10|a10");
407  }
408 
409 }
net.sf.gridarta.model.archetype.TestArchetype
An Archetype implementation for testing purposes.
Definition: TestArchetype.java:30
net.sf.gridarta.model.mapmodel.MapModel
A MapModel reflects the data of a map.
Definition: MapModel.java:75
net.sf.gridarta.model.mapmodel.TestMapModelCreator.newTestMapModelHelper
TestMapModelHelper newTestMapModelHelper()
Creates a new TestMapModelHelper instance.
Definition: TestMapModelCreator.java:313
net.sf.gridarta
Base package of all Gridarta classes.
net.sf.gridarta.model.autojoin.AutojoinListsTest.testDuplicateArchetype1
void testDuplicateArchetype1()
Checks that duplicate archetypes are detected.
Definition: AutojoinListsTest.java:57
net.sf.gridarta.model.mapmodel.TestMapModelHelper
Helper class for creating MapModel instances for regression tests.
Definition: TestMapModelHelper.java:45
net.sf.gridarta.model.autojoin.AutojoinListsHelper.newAutojoinLists
void newAutojoinLists(@NotNull final String... archetypeNames)
Creates a new AutojoinLists instance.
Definition: AutojoinListsHelper.java:78
net.sf.gridarta.model.autojoin.AutojoinListsTest.testInsert1
void testInsert1()
Checks that inserting with autojoin works as expected.
Definition: AutojoinListsTest.java:83
net.sf.gridarta.model.autojoin.AutojoinListsTest
Regression tests for AutojoinLists.
Definition: AutojoinListsTest.java:36
net.sf.gridarta.model.gameobject.TestGameObject
A GameObject implementation for testing purposes.
Definition: TestGameObject.java:34
net.sf.gridarta.model.autojoin.AutojoinListsTest.testInsertReplace1
void testInsertReplace1()
Checks that replacing archetypes works as expected.
Definition: AutojoinListsTest.java:366
net.sf
net.sf.gridarta.model.mapmodel.MapModel.beginTransaction
void beginTransaction(@NotNull String name)
Starts a new transaction.
net.sf.gridarta.model.mapmodel
Definition: AboveFloorInsertionMode.java:20
net.sf.gridarta.model.mapmodel.TestMapModelCreator
Helper class for regression tests to create MapModel instances.
Definition: TestMapModelCreator.java:63
net.sf.gridarta.model.autojoin.AutojoinListsHelper
Implements AutojoinList related functions.
Definition: AutojoinListsHelper.java:36
net.sf.gridarta.model.archetype
Definition: AbstractArchetype.java:20
net.sf.gridarta.model.autojoin.AutojoinListsTest.testRemove1
void testRemove1()
Checks that removing with autojoin works as expected.
Definition: AutojoinListsTest.java:125
net.sf.gridarta.model.autojoin.AutojoinListsTest.testWrongCount
void testWrongCount()
Checks that a wrong number of archetypes is detected.
Definition: AutojoinListsTest.java:43
net.sf.gridarta.model.autojoin.AutojoinListsTest.testRemoveAlt3
void testRemoveAlt3()
Checks that removing alternative archetypes with autojoin works as expected.
Definition: AutojoinListsTest.java:301
net.sf.gridarta.model.gameobject
GameObjects are the objects based on Archetypes found on maps.
Definition: AbstractGameObject.java:20
net
net.sf.gridarta.model.mapmodel.TestMapModelCreator.newMapModel
MapModel< TestGameObject, TestMapArchObject, TestArchetype > newMapModel(final int w, final int h)
Creates a new MapModel instance.
Definition: TestMapModelCreator.java:168
net.sf.gridarta.model.autojoin.AutojoinListsTest.testInsertDuplicate1
void testInsertDuplicate1()
Checks that inserting duplicate archetypes with autojoin works as expected.
Definition: AutojoinListsTest.java:327
net.sf.gridarta.model.autojoin.AutojoinListsHelper.newAutojoinListsFail
void newAutojoinListsFail(@NotNull final String expectedException, @NotNull final String... archetypeNames)
Creates a new AutojoinLists instance and expects an error.
Definition: AutojoinListsHelper.java:97
net.sf.gridarta.model.autojoin.AutojoinListsTest.testRemoveAlt1
void testRemoveAlt1()
Checks that removing alternative archetypes with autojoin works as expected.
Definition: AutojoinListsTest.java:246
net.sf.gridarta.model.mapmodel.MapModel.removeGameObject
void removeGameObject(@NotNull G gameObject, boolean join)
Delete an existing GameObject from the map.
net.sf.gridarta.model.autojoin.AutojoinListsTest.testDuplicateArchetype2
void testDuplicateArchetype2()
Checks that duplicate archetypes are detected.
Definition: AutojoinListsTest.java:69
net.sf.gridarta.model.autojoin.IllegalAutojoinListException
Exception thrown if an AutojoinList is invalid.
Definition: IllegalAutojoinListException.java:28
net.sf.gridarta.model.autojoin.AutojoinListsTest.testInsertAlt3
void testInsertAlt3()
Checks that inserting alternative archetypes with autojoin works as expected.
Definition: AutojoinListsTest.java:218
net.sf.gridarta.model.mapmodel.TestMapModelHelper.insertArchetype
TestGameObject insertArchetype(@NotNull final MapModel< TestGameObject, TestMapArchObject, TestArchetype > mapModel, final int x, final int y, @NotNull final BaseObject< TestGameObject, TestMapArchObject, TestArchetype, ?> archetype, final boolean join)
Inserts an archetype game object into a map model.
Definition: TestMapModelHelper.java:171
net.sf.gridarta.model.mapmodel.TestMapModelCreator.getArchetype
TestArchetype getArchetype(@NotNull final String archetypeName)
Returns an archetype.
Definition: TestMapModelCreator.java:249
net.sf.gridarta.model
net.sf.gridarta.model.autojoin.AutojoinListsTest.testRemoveAlt2
void testRemoveAlt2()
Checks that removing alternative archetypes with autojoin works as expected.
Definition: AutojoinListsTest.java:273
net.sf.gridarta.model.mapmodel.TestMapModelHelper.checkMapContents
static void checkMapContents(@NotNull final MapModel< TestGameObject, TestMapArchObject, TestArchetype > mapModel, @NotNull final String... lines)
Checks for expected MapModel's contents.
Definition: TestMapModelHelper.java:230
net.sf.gridarta.model.archetype.DuplicateArchetypeException
An Exception indicating that an Archetype name is not unique.
Definition: DuplicateArchetypeException.java:29
net.sf.gridarta.model.maparchobject.TestMapArchObject
A MapArchObject implementation for testing purposes.
Definition: TestMapArchObject.java:28
net.sf.gridarta.model.maparchobject
Definition: AbstractMapArchObject.java:20
net.sf.gridarta.model.autojoin.AutojoinListsTest.testInsertAlt2
void testInsertAlt2()
Checks that inserting alternative archetypes with autojoin works as expected.
Definition: AutojoinListsTest.java:190
net.sf.gridarta.model.autojoin.AutojoinListsTest.testInsertAlt1
void testInsertAlt1()
Checks that inserting alternative archetypes with autojoin works as expected.
Definition: AutojoinListsTest.java:161