star-uvm

Spatial structuring of unstructured volumetric meshes
git clone git://git.meso-star.fr/star-uvm.git
Log | Files | Refs | README | LICENSE

commit e19142f5be1bd3648345f49f352aa72eba47573b
parent a5c9569f03edf67d648f848cd1a6170f29116bc8
Author: Vincent Forest <vincent.forest@meso-star.com>
Date:   Mon, 14 Dec 2020 14:39:14 +0100

Test the suvm_volume_get_primitive[s_count] functions

Diffstat:
Msrc/test_suvm_volume.c | 15++++++++++++++-
1 file changed, 14 insertions(+), 1 deletion(-)

diff --git a/src/test_suvm_volume.c b/src/test_suvm_volume.c @@ -143,6 +143,8 @@ test_tetrahedral_mesh_creation(struct suvm_device* dev) struct mesh msh = MESH_NULL; struct suvm_tetrahedral_mesh_args args = SUVM_TETRAHEDRAL_MESH_ARGS_NULL; struct suvm_volume* vol = NULL; + struct suvm_primitive prim = SUVM_PRIMITIVE_NULL; + size_t nprims; args.ntetrahedra = box_ntetras; args.nvertices = box_nverts; @@ -221,6 +223,18 @@ test_tetrahedral_mesh_creation(struct suvm_device* dev) args.vertex_data.alignment = 32; msh.vertex_data_alignment = 32; CHK(suvm_tetrahedral_mesh_create(dev, &args, &vol) == RES_OK); + + CHK(suvm_volume_get_primitives_count(NULL, &nprims) == RES_BAD_ARG); + CHK(suvm_volume_get_primitives_count(vol, NULL) == RES_BAD_ARG); + CHK(suvm_volume_get_primitives_count(vol, &nprims) == RES_OK); + CHK(nprims == msh.ntetrahedra); + + CHK(suvm_volume_get_primitive(NULL, 0, &prim) == RES_BAD_ARG); + CHK(suvm_volume_get_primitive(vol, nprims, &prim) == RES_BAD_ARG); + CHK(suvm_volume_get_primitive(vol, 0, NULL) == RES_BAD_ARG); + CHK(suvm_volume_get_primitive(vol, 0, &prim) == RES_OK); + CHK(!SUVM_PRIMITIVE_NONE(&prim)); + CHK(suvm_volume_ref_put(vol) == RES_OK); } @@ -557,7 +571,6 @@ test_volume_at_cube(struct suvm_device* dev) CHK(darray_prim_size_get(&prims) == 10); check_prims_intersect_aabb(&prims, vol, low, upp, &msh); - CHK(suvm_volume_ref_put(vol) == RES_OK); darray_prim_release(&prims); }