commit c983b6ba8fd3370db9a455aa33f9b0fbf9526b7c
parent 8cce1bcbc3b1d8c524dd5df1ad37457a5ae929e5
Author: Christophe Coustet <christophe.coustet@meso-star.com>
Date: Tue, 13 Feb 2018 10:35:12 +0100
Add descriptor-related API tests.
Diffstat:
1 file changed, 34 insertions(+), 0 deletions(-)
diff --git a/src/test_senc_descriptor.c b/src/test_senc_descriptor.c
@@ -31,6 +31,10 @@ main(int argc, char** argv)
struct senc_enclosure* enc = NULL;
struct context ctx;
unsigned count;
+ unsigned indices[3];
+ double coord[3];
+ unsigned mediums[2];
+ unsigned enclosures[2];
(void) argc, (void) argv;
CHK(mem_init_proxy_allocator(&allocator, &mem_default_allocator) == RES_OK);
@@ -85,6 +89,36 @@ main(int argc, char** argv)
CHK(senc_descriptor_get_global_triangle_count(desc, &count) == RES_OK);
CHK(count == box_ntriangles);
+ CHK(senc_descriptor_get_global_indices(NULL, 0, indices) == RES_BAD_ARG);
+ CHK(senc_descriptor_get_global_indices(NULL, box_ntriangles, indices) == RES_BAD_ARG);
+ CHK(senc_descriptor_get_global_indices(desc, 0, NULL) == RES_BAD_ARG);
+ CHK(senc_descriptor_get_global_indices(desc, 0, indices) == RES_OK);
+ CHK(indices[0] == box_indices[0]
+ && indices[1] == box_indices[1]
+ && indices[2] == box_indices[2]);
+
+ CHK(senc_descriptor_get_global_vertices(NULL, 0, coord) == RES_BAD_ARG);
+ CHK(senc_descriptor_get_global_vertices(NULL, box_nvertices, coord) == RES_BAD_ARG);
+ CHK(senc_descriptor_get_global_vertices(desc, 0, NULL) == RES_BAD_ARG);
+ CHK(senc_descriptor_get_global_vertices(desc, 0, coord) == RES_OK);
+ CHK(coord[0] == box_vertices[0]
+ && coord[1] == box_vertices[1]
+ && coord[2] == box_vertices[2]);
+
+ CHK(senc_descriptor_get_global_mediums(NULL, 0, mediums) == RES_BAD_ARG);
+ CHK(senc_descriptor_get_global_mediums(NULL, box_nvertices, mediums) == RES_BAD_ARG);
+ CHK(senc_descriptor_get_global_mediums(desc, 0, NULL) == RES_BAD_ARG);
+ CHK(senc_descriptor_get_global_mediums(desc, 0, mediums) == RES_OK);
+ CHK(mediums[0] == ctx.front_medium
+ && mediums[1] == ctx.back_medium);
+
+ CHK(senc_descriptor_get_global_enclosures(NULL, 0, enclosures) == RES_BAD_ARG);
+ CHK(senc_descriptor_get_global_enclosures(NULL, box_nvertices, enclosures) == RES_BAD_ARG);
+ CHK(senc_descriptor_get_global_enclosures(desc, 0, NULL) == RES_BAD_ARG);
+ CHK(senc_descriptor_get_global_enclosures(desc, 0, enclosures) == RES_OK);
+ CHK(enclosures[0] == 0
+ && enclosures[1] == 1);
+
/* Add valid duplicate geometry */
CHK(senc_descriptor_ref_put(desc) == RES_OK);
desc = NULL;