обновление теста anvil chunk
В качестве тестового региона взят искусственно созданный (mcedit). В него добавлен один полный (16х16х16) фрагмент чанка. Для отслеживания корректного порядка чтения блоков, по углам чанка расставлены блоки-маркеры.
This commit is contained in:
@@ -6,6 +6,7 @@ import mc.core.world.block.BlockType;
|
||||
import mc.core.world.chunk.Chunk;
|
||||
import mc.core.world.chunk.ChunkSection;
|
||||
import org.junit.jupiter.api.BeforeAll;
|
||||
import org.junit.jupiter.api.Disabled;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import java.io.IOException;
|
||||
@@ -33,6 +34,7 @@ class RegionTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
@Disabled
|
||||
void getChunk() {
|
||||
for (int cZ = 0; cZ < 32; cZ++) {
|
||||
for (int cX = 0; cX < 32; cX++) {
|
||||
@@ -57,4 +59,34 @@ class RegionTest {
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
void getChunkSection() {
|
||||
final Chunk chunk = region.getChunk(0, 0);
|
||||
assertNotNull(chunk);
|
||||
final ChunkSection chunkSection = chunk.getChunkSection(0);
|
||||
assertNotNull(chunkSection);
|
||||
|
||||
for (int y = 0; y < 16; y++) {
|
||||
for (int x = 0; x < 16; x++) {
|
||||
for (int z = 0; z < 16; z++) {
|
||||
Block block = chunkSection.getBlock(x, y, z);
|
||||
if (x == 0 && z == 0) {
|
||||
assertEquals(BlockType.STONE, block.getBlockType(), String.format("coords: %d %d %d", x, y, z));
|
||||
} else if (x == 15 && z == 0) {
|
||||
assertEquals(BlockType.WATER, block.getBlockType(), String.format("coords: %d %d %d", x, y, z));
|
||||
} else if (x == 15 && z == 15) {
|
||||
assertEquals(BlockType.LAVA, block.getBlockType(), String.format("coords: %d %d %d", x, y, z));
|
||||
} else if (x == 0 && z == 15) {
|
||||
assertEquals(BlockType.SAND, block.getBlockType(), String.format("coords: %d %d %d", x, y, z));
|
||||
} else if (y == 0){
|
||||
assertEquals(BlockType.BEDROCK, block.getBlockType(), String.format("coords: %d %d %d", x, y, z));
|
||||
} else if (y <= 14) {
|
||||
assertEquals(BlockType.DIRT, block.getBlockType(), String.format("coords: %d %d %d", x, y, z));
|
||||
} else {
|
||||
assertEquals(BlockType.GRASS, block.getBlockType(), String.format("coords: %d %d %d", x, y, z));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user