Gridarta Editor
EnterMapTest.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.gui.map.mapactions;
21 
22 import java.awt.Point;
24 import net.sf.gridarta.utils.Size2D;
25 import org.junit.Assert;
26 import org.junit.Test;
27 
31 @SuppressWarnings("JavaDoc")
32 public class EnterMapTest {
33 
34  @Test
36  Assert.assertEquals(new Point(1, 4), EnterMap.calculateNewCursorLocation(new Point(2, 0), new Size2D(5, 5), Direction.NORTH_WEST));
37  Assert.assertEquals(new Point(2, 4), EnterMap.calculateNewCursorLocation(new Point(2, 0), new Size2D(5, 5), Direction.NORTH));
38  Assert.assertEquals(new Point(3, 4), EnterMap.calculateNewCursorLocation(new Point(2, 0), new Size2D(5, 5), Direction.NORTH_EAST));
39 
40  Assert.assertEquals(new Point(0, 1), EnterMap.calculateNewCursorLocation(new Point(4, 2), new Size2D(5, 5), Direction.NORTH_EAST));
41  Assert.assertEquals(new Point(0, 2), EnterMap.calculateNewCursorLocation(new Point(4, 2), new Size2D(5, 5), Direction.EAST));
42  Assert.assertEquals(new Point(0, 3), EnterMap.calculateNewCursorLocation(new Point(4, 2), new Size2D(5, 5), Direction.SOUTH_EAST));
43 
44  Assert.assertEquals(new Point(3, 0), EnterMap.calculateNewCursorLocation(new Point(2, 4), new Size2D(5, 5), Direction.SOUTH_EAST));
45  Assert.assertEquals(new Point(2, 0), EnterMap.calculateNewCursorLocation(new Point(2, 4), new Size2D(5, 5), Direction.SOUTH));
46  Assert.assertEquals(new Point(1, 0), EnterMap.calculateNewCursorLocation(new Point(2, 4), new Size2D(5, 5), Direction.SOUTH_WEST));
47 
48  Assert.assertEquals(new Point(4, 3), EnterMap.calculateNewCursorLocation(new Point(0, 2), new Size2D(5, 5), Direction.SOUTH_WEST));
49  Assert.assertEquals(new Point(4, 2), EnterMap.calculateNewCursorLocation(new Point(0, 2), new Size2D(5, 5), Direction.WEST));
50  Assert.assertEquals(new Point(4, 1), EnterMap.calculateNewCursorLocation(new Point(0, 2), new Size2D(5, 5), Direction.NORTH_WEST));
51  }
52 
53  @Test
55  Assert.assertEquals(new Point(4, 1), EnterMap.calculateNewCursorLocation(new Point(0, 0), new Size2D(5, 5), Direction.SOUTH_WEST));
56  Assert.assertEquals(new Point(4, 0), EnterMap.calculateNewCursorLocation(new Point(0, 0), new Size2D(5, 5), Direction.WEST));
57  Assert.assertEquals(new Point(4, 4), EnterMap.calculateNewCursorLocation(new Point(0, 0), new Size2D(5, 5), Direction.NORTH_WEST));
58  Assert.assertEquals(new Point(0, 4), EnterMap.calculateNewCursorLocation(new Point(0, 0), new Size2D(5, 5), Direction.NORTH));
59  Assert.assertEquals(new Point(1, 4), EnterMap.calculateNewCursorLocation(new Point(0, 0), new Size2D(5, 5), Direction.NORTH_EAST));
60 
61  Assert.assertEquals(new Point(3, 4), EnterMap.calculateNewCursorLocation(new Point(4, 0), new Size2D(5, 5), Direction.NORTH_WEST));
62  Assert.assertEquals(new Point(4, 4), EnterMap.calculateNewCursorLocation(new Point(4, 0), new Size2D(5, 5), Direction.NORTH));
63  Assert.assertEquals(new Point(0, 4), EnterMap.calculateNewCursorLocation(new Point(4, 0), new Size2D(5, 5), Direction.NORTH_EAST));
64  Assert.assertEquals(new Point(0, 0), EnterMap.calculateNewCursorLocation(new Point(4, 0), new Size2D(5, 5), Direction.EAST));
65  Assert.assertEquals(new Point(0, 1), EnterMap.calculateNewCursorLocation(new Point(4, 0), new Size2D(5, 5), Direction.SOUTH_EAST));
66 
67  Assert.assertEquals(new Point(0, 3), EnterMap.calculateNewCursorLocation(new Point(4, 4), new Size2D(5, 5), Direction.NORTH_EAST));
68  Assert.assertEquals(new Point(0, 4), EnterMap.calculateNewCursorLocation(new Point(4, 4), new Size2D(5, 5), Direction.EAST));
69  Assert.assertEquals(new Point(0, 0), EnterMap.calculateNewCursorLocation(new Point(4, 4), new Size2D(5, 5), Direction.SOUTH_EAST));
70  Assert.assertEquals(new Point(4, 0), EnterMap.calculateNewCursorLocation(new Point(4, 4), new Size2D(5, 5), Direction.SOUTH));
71  Assert.assertEquals(new Point(3, 0), EnterMap.calculateNewCursorLocation(new Point(4, 4), new Size2D(5, 5), Direction.SOUTH_WEST));
72 
73  Assert.assertEquals(new Point(1, 0), EnterMap.calculateNewCursorLocation(new Point(0, 4), new Size2D(5, 5), Direction.SOUTH_EAST));
74  Assert.assertEquals(new Point(0, 0), EnterMap.calculateNewCursorLocation(new Point(0, 4), new Size2D(5, 5), Direction.SOUTH));
75  Assert.assertEquals(new Point(4, 0), EnterMap.calculateNewCursorLocation(new Point(0, 4), new Size2D(5, 5), Direction.SOUTH_WEST));
76  Assert.assertEquals(new Point(4, 4), EnterMap.calculateNewCursorLocation(new Point(0, 4), new Size2D(5, 5), Direction.WEST));
77  Assert.assertEquals(new Point(4, 3), EnterMap.calculateNewCursorLocation(new Point(0, 4), new Size2D(5, 5), Direction.NORTH_WEST));
78  }
79 
80 }
net.sf.gridarta.model.direction.Direction
A direction.
Definition: Direction.java:28
net.sf.gridarta
Base package of all Gridarta classes.
net.sf.gridarta.gui.map.mapactions.EnterMapTest.calculateNewCursorLocation_onSide_returnsNewCoordinate
void calculateNewCursorLocation_onSide_returnsNewCoordinate()
Definition: EnterMapTest.java:35
net.sf.gridarta.model.direction.Direction.SOUTH
SOUTH
South.
Definition: Direction.java:43
net.sf
net.sf.gridarta.model.direction.Direction.SOUTH_WEST
SOUTH_WEST
South west.
Definition: Direction.java:63
net.sf.gridarta.gui.map.mapactions.EnterMap
Helper class for entering maps.
Definition: EnterMap.java:52
net.sf.gridarta.model.direction.Direction.NORTH
NORTH
North.
Definition: Direction.java:33
net.sf.gridarta.model.direction.Direction.NORTH_WEST
NORTH_WEST
North west.
Definition: Direction.java:68
net
net.sf.gridarta.model.direction.Direction.SOUTH_EAST
SOUTH_EAST
South east.
Definition: Direction.java:58
net.sf.gridarta.gui.map.mapactions.EnterMap.calculateNewCursorLocation
static Point calculateNewCursorLocation(@NotNull final Point oldCursorLocation, @NotNull final Size2D mapSize, @NotNull final Direction direction)
Calculate the map cursor location for the new viewport.
Definition: EnterMap.java:266
net.sf.gridarta.gui.map.mapactions.EnterMapTest
Regression tests for EnterMap.
Definition: EnterMapTest.java:32
net.sf.gridarta.gui.map.mapactions.EnterMapTest.calculateNewCursorLocation_inCorner_returnsNewCoordinate
void calculateNewCursorLocation_inCorner_returnsNewCoordinate()
Definition: EnterMapTest.java:54
net.sf.gridarta.model
net.sf.gridarta.model.direction.Direction.EAST
EAST
East.
Definition: Direction.java:38
net.sf.gridarta.model.direction.Direction.NORTH_EAST
NORTH_EAST
North east.
Definition: Direction.java:53
net.sf.gridarta.model.direction.Direction.WEST
WEST
West.
Definition: Direction.java:48
net.sf.gridarta.utils.Size2D
The class Size2D represents a 2d rectangular area.
Definition: Size2D.java:30
net.sf.gridarta.utils
Definition: ActionBuilderUtils.java:20
net.sf.gridarta.model.direction
Definition: Direction.java:20