X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=tst%2Fworld%2FChunkTest.cpp;h=c40f9da917a979abcc79d62f6c766a6bc5e5a4cb;hb=660c4216fc61c0d99987adbfea057af07b511a23;hp=6db245a2d7d5cd58182c0cef956abaa3c85745fa;hpb=46b18a88fdda816f3c2c547aba68b0a5ea7970f7;p=blank.git diff --git a/tst/world/ChunkTest.cpp b/tst/world/ChunkTest.cpp index 6db245a..c40f9da 100644 --- a/tst/world/ChunkTest.cpp +++ b/tst/world/ChunkTest.cpp @@ -305,7 +305,7 @@ void ChunkTest::testNeighbor() { for (int i = 0; i < Block::FACE_COUNT; ++i) { Block::Face face = Block::Face(i); neighbor->Position(Block::FaceNormal(face)); - chunk->SetNeighbor(*neighbor); + chunk->SetNeighbor(face, *neighbor); CPPUNIT_ASSERT_MESSAGE( "chunk did not link right neighbor", chunk->HasNeighbor(face) @@ -322,16 +322,7 @@ void ChunkTest::testNeighbor() { "chunk did not link correct neighbor", &*chunk, &neighbor->GetNeighbor(Block::Opposite(face)) ); - chunk->ClearNeighbors(); - } - - neighbor->Position({1, 1, 1}); - chunk->SetNeighbor(*neighbor); - for (int i = 0; i < Block::FACE_COUNT; ++i) { - CPPUNIT_ASSERT_MESSAGE( - "chunk linked with non-neighbor", - !chunk->HasNeighbor(Block::Face(i)) - ); + chunk->Unlink(); } } @@ -389,6 +380,8 @@ void ChunkTest::testLight() { void ChunkTest::testLightPropagation() { unique_ptr chunk(new Chunk(types)); + // this is required to make the chunk do lighting propagation at all + chunk->ScanLights(); // 0 air, 1 solid, 2 solid and emits light level of 5 chunk->SetBlock(Chunk::Pos(7, 7, 7), Block(2)); @@ -450,10 +443,6 @@ void ChunkTest::testLightPropagation() { // now block the light to the left chunk->SetBlock(Chunk::Pos(6, 7, 7), Block(1)); - CPPUNIT_ASSERT_EQUAL_MESSAGE( - "non-zero light level in solid block", - 0, chunk->GetLight(Chunk::Pos(6, 7, 7)) - ); CPPUNIT_ASSERT_EQUAL_MESSAGE( "adding obstacle affected unrelated index", 5, chunk->GetLight(Chunk::Pos(7, 7, 7))