Let the Unit testing begin

Could use some more test cases on the make test, though
This commit is contained in:
NuclearW 2012-07-06 22:37:34 -04:00
parent dce7d8fdd3
commit 646bb32965
3 changed files with 44 additions and 3 deletions

View File

@ -128,6 +128,12 @@
<type>jar</type>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit-dep</artifactId>
<version>4.10</version>
<scope>test</scope>
</dependency>
</dependencies>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

View File

@ -164,15 +164,15 @@ public class PrimitiveExChunkletStore implements ChunkletStore, Externalizable {
* - z = 1111 = 15
* => Chunklet coordinates (5, 15)
*/
private static byte makeAddressByte(int x, int z) {
protected static byte makeAddressByte(int x, int z) {
return (byte) ((x << 4) + z);
}
private static int addressByteX(byte address) {
protected static int addressByteX(byte address) {
return (address & 0xF0) >>> 4;
}
private static int addressByteZ(byte address) {
protected static int addressByteZ(byte address) {
return address & 0x0F;
}
}

View File

@ -0,0 +1,35 @@
package com.gmail.nossr50.util.blockmeta;
import static org.junit.Assert.assertEquals;
import org.junit.Before;
import org.junit.Test;
public class PrimitiveExChunkletStoreTest {
byte addresses[][] = new byte[16][16];
@Before
public void populateAddresses() {
for(int x = 0; x < 16; x++) {
for(int z = 0; z < 16; z++) {
addresses[x][z] = PrimitiveExChunkletStore.makeAddressByte(x, z);
}
}
}
@Test
public void addressMakeTest() {
assertEquals(addresses[0][0], 0);
assertEquals(addresses[15][15], -1);
}
@Test
public void addressReverseTest() {
for(int x = 0; x < 16; x++) {
for(int z = 0; z < 16; z++) {
assertEquals(x, PrimitiveExChunkletStore.addressByteX(addresses[x][z]));
assertEquals(z, PrimitiveExChunkletStore.addressByteZ(addresses[x][z]));
}
}
}
}