add map test

This commit is contained in:
Sem van der Hoeven
2020-05-15 19:34:43 +02:00
parent 4402bc65ae
commit 8cf834b9ea
2 changed files with 67 additions and 3 deletions

View File

@@ -2,6 +2,7 @@ package netwerkprog.game.client;
public class Map {
private char[][] map;
private int tileWidth = 16;
public Map(int size) {
this(size,size);
@@ -11,8 +12,30 @@ public class Map {
this.map = new char[height][width];
}
public char get(int x, int y) {
return this.map[y][x];
public void setTileWidth(int tileWidth) {
this.tileWidth = tileWidth;
}
public int getTileWidth() {
return tileWidth;
}
public char[][] get() {
return this.map;
}
/**
* gets the char at the specified position
* @param row the row of the element
* @param col the column of the element
* @return Character.MIN_VALUE if the element does not exist, the specified element otherwise.
*/
public char get(int row, int col) {
return (row < this.map.length && col < this.map[0].length) ? this.map[row][col] : Character.MIN_VALUE;
}
public Map(char[][] map) {
this.map = map;
}
/**

View File

@@ -1,4 +1,45 @@
package PACKAGE_NAME;
import netwerkprog.game.client.Map;
import org.junit.Assert;
import org.junit.Test;
public class MapTest {
@Test
public void testNull() {
Map map = new Map(null);
Assert.assertEquals(-1,map.getHeight());
Assert.assertEquals(-1,map.getWidth());
}
@Test
public void testWidthAndHeight() {
char[][] arr = new char[][] {
{'#','#','#','#'},
{'#','#','#','#'},
{'#','#','#','#'}
};
Map map = new Map(arr);
Assert.assertEquals(4,map.getWidth());
Assert.assertEquals(3,map.getHeight());
}
@Test
public void testGetElement() {
char[][] arr = new char[][] {
{'#','#','#','#'},
{'#','#','#','#'},
{'#','#','_','#'}
};
Map map = new Map(arr);
Assert.assertEquals('#',map.get(1,1));
Assert.assertEquals('_',map.get(2,2));
Assert.assertEquals(Character.MIN_VALUE,map.get(1,8));
Assert.assertEquals(Character.MIN_VALUE,map.get(4,2));
Assert.assertEquals(Character.MIN_VALUE,map.get(4,8));
}
}