tests: add q1 hull1 failure example
This commit is contained in:
parent
9a09dfffa9
commit
9c466dd813
|
|
@ -0,0 +1,81 @@
|
|||
// Game: Quake
|
||||
// Format: Valve
|
||||
// entity 0
|
||||
{
|
||||
"classname" "worldspawn"
|
||||
"wad" ""
|
||||
// brush 0
|
||||
{
|
||||
( -1824 -144 288 ) ( -1824 -144 144 ) ( -1824 48 288 ) 128_blue_3 [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1
|
||||
( -1792 -352 288 ) ( -1792 -352 144 ) ( -1824 -352 288 ) 128_blue_3 [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1
|
||||
( -1824 48 144 ) ( -1824 -144 144 ) ( -1792 48 144 ) 128_grey_3 [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1
|
||||
( -1824 -144 376 ) ( -1824 48 376 ) ( -1792 -144 376 ) 128_blue_3 [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1
|
||||
( -1824 208 288 ) ( -1824 208 144 ) ( -1792 208 288 ) 128_blue_3 [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1
|
||||
( -1792 48 288 ) ( -1792 48 144 ) ( -1792 -144 288 ) 128_blue_3 [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1
|
||||
}
|
||||
// brush 1
|
||||
{
|
||||
( -1828.2702719561466 -128 288 ) ( -1828.2702685843988 32 160 ) ( -1828.2702685843988 32 288 ) grey_1 [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1
|
||||
( -1823.7632822077753 -128 160 ) ( -1828.2702719561466 -128 288 ) ( -1823.7632822077794 -128 288 ) grey_1 [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1
|
||||
( -1823.7632788360274 32 160 ) ( -1828.2702719561466 -128 160 ) ( -1823.7632822077753 -128 160 ) grey_1 [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1
|
||||
( -1823.763278836028 32 288 ) ( -1828.2702719561466 -128 288 ) ( -1828.2702685843988 32 288 ) grey_1 [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1
|
||||
( -1823.7632788360274 32 160 ) ( -1828.2702685843988 32 288 ) ( -1828.2702685843988 32 160 ) grey_1 [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1
|
||||
( -1823.7632788360274 32 160 ) ( -1823.7632822077794 -128 288 ) ( -1823.763278836028 32 288 ) grey_1 [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1
|
||||
}
|
||||
// brush 2
|
||||
{
|
||||
( -2386 -144 288 ) ( -2386 -144 144 ) ( -2386 48 288 ) 128_blue_3 [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1
|
||||
( -1792 -352 288 ) ( -1792 -352 144 ) ( -1824 -352 288 ) 128_blue_3 [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1
|
||||
( -1824 48 374 ) ( -1824 -144 374 ) ( -1792 48 374 ) 128_grey_3 [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1
|
||||
( -1824 -144 376 ) ( -1824 48 376 ) ( -1792 -144 376 ) 128_blue_3 [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1
|
||||
( -1824 208 288 ) ( -1824 208 144 ) ( -1792 208 288 ) 128_blue_3 [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1
|
||||
( -1824 -144 288 ) ( -1824 48 288 ) ( -1824 -144 144 ) 128_blue_3 [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1
|
||||
}
|
||||
// brush 3
|
||||
{
|
||||
( -2386 -144 58 ) ( -2386 -144 -86 ) ( -2386 48 58 ) 128_blue_3 [ 0 1 0 0 ] [ 0 0 -1 26 ] 0 1 1
|
||||
( -1792 -352 58 ) ( -1792 -352 -86 ) ( -1824 -352 58 ) 128_blue_3 [ 1 0 0 0 ] [ 0 0 -1 26 ] 0 1 1
|
||||
( -1824 48 144 ) ( -1824 -144 144 ) ( -1792 48 144 ) 128_grey_3 [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1
|
||||
( -1824 -144 146 ) ( -1824 48 146 ) ( -1792 -144 146 ) 128_blue_3 [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1
|
||||
( -1824 208 58 ) ( -1824 208 -86 ) ( -1792 208 58 ) 128_blue_3 [ 1 0 0 0 ] [ 0 0 -1 26 ] 0 1 1
|
||||
( -1824 -144 58 ) ( -1824 48 58 ) ( -1824 -144 -86 ) 128_blue_3 [ 0 1 0 0 ] [ 0 0 -1 26 ] 0 1 1
|
||||
}
|
||||
// brush 4
|
||||
{
|
||||
( -2386 -144 288 ) ( -2386 -144 144 ) ( -2386 48 288 ) 128_blue_3 [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1
|
||||
( -1792 -352 288 ) ( -1792 -352 144 ) ( -1824 -352 288 ) 128_blue_3 [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1
|
||||
( -1824 48 144 ) ( -1824 -144 144 ) ( -1792 48 144 ) 128_grey_3 [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1
|
||||
( -1824 -144 376 ) ( -1824 48 376 ) ( -1792 -144 376 ) 128_blue_3 [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1
|
||||
( -1824 208 288 ) ( -1824 208 144 ) ( -1792 208 288 ) 128_blue_3 [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1
|
||||
( -2376 -144 288 ) ( -2376 48 288 ) ( -2376 -144 144 ) 128_blue_3 [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1
|
||||
}
|
||||
// brush 5
|
||||
{
|
||||
( -2386 -144 288 ) ( -2386 -144 144 ) ( -2386 48 288 ) 128_blue_3 [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1
|
||||
( -1792 204 288 ) ( -1792 204 144 ) ( -1824 204 288 ) 128_blue_3 [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1
|
||||
( -1824 48 146 ) ( -1824 -144 146 ) ( -1792 48 146 ) 128_grey_3 [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1
|
||||
( -1824 48 374 ) ( -1792 48 374 ) ( -1824 -144 374 ) 128_grey_3 [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1
|
||||
( -1824 208 288 ) ( -1824 208 144 ) ( -1792 208 288 ) 128_blue_3 [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1
|
||||
( -1824 -144 288 ) ( -1824 48 288 ) ( -1824 -144 144 ) 128_blue_3 [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1
|
||||
}
|
||||
// brush 6
|
||||
{
|
||||
( -2386 -704 288 ) ( -2386 -704 144 ) ( -2386 -512 288 ) 128_blue_3 [ 0 1 0 48 ] [ 0 0 -1 0 ] 0 1 1
|
||||
( -1792 -356 288 ) ( -1792 -356 144 ) ( -1824 -356 288 ) 128_blue_3 [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1
|
||||
( -1824 -512 146 ) ( -1824 -704 146 ) ( -1792 -512 146 ) 128_grey_3 [ 1 0 0 0 ] [ 0 -1 0 -48 ] 0 1 1
|
||||
( -1824 -512 374 ) ( -1792 -512 374 ) ( -1824 -704 374 ) 128_grey_3 [ 1 0 0 0 ] [ 0 -1 0 -48 ] 0 1 1
|
||||
( -1824 -352 288 ) ( -1824 -352 144 ) ( -1792 -352 288 ) 128_blue_3 [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1
|
||||
( -1824 -704 288 ) ( -1824 -512 288 ) ( -1824 -704 144 ) 128_blue_3 [ 0 1 0 48 ] [ 0 0 -1 0 ] 0 1 1
|
||||
}
|
||||
}
|
||||
// entity 1
|
||||
{
|
||||
"classname" "info_player_start"
|
||||
"angles" "0 0 0"
|
||||
"origin" "-2256 -64 264"
|
||||
}
|
||||
// entity 2
|
||||
{
|
||||
"classname" "air_bubbles"
|
||||
"origin" "-2164 126 260"
|
||||
}
|
||||
|
|
@ -1782,3 +1782,23 @@ TEST_CASE("h2_skip_only")
|
|||
CHECK(bsp.loadversion == &bspver_h2);
|
||||
CHECK(0 == bsp.dfaces.size());
|
||||
}
|
||||
|
||||
TEST_CASE("q1_hull1_fail" * doctest::may_fail())
|
||||
{
|
||||
INFO("weird example of a phantom clip brush in hull1");
|
||||
const auto [bsp, bspx, prt] = LoadTestmap("q1_hull1_fail.map");
|
||||
|
||||
{
|
||||
INFO("contents at info_player_start");
|
||||
CHECK(CONTENTS_EMPTY == BSP_FindContentsAtPoint(&bsp, 1, &bsp.dmodels[0], qvec3d{-2256, -64, 264}));
|
||||
}
|
||||
{
|
||||
INFO("contents at air_bubbles");
|
||||
CHECK(CONTENTS_EMPTY == BSP_FindContentsAtPoint(&bsp, 1, &bsp.dmodels[0], qvec3d{-2164, 126, 260}));
|
||||
}
|
||||
{
|
||||
INFO("contents in void");
|
||||
CHECK(CONTENTS_SOLID == BSP_FindContentsAtPoint(&bsp, 0, &bsp.dmodels[0], qvec3d{0, 0, 0}));
|
||||
CHECK(CONTENTS_SOLID == BSP_FindContentsAtPoint(&bsp, 1, &bsp.dmodels[0], qvec3d{0, 0, 0}));
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue