@@ -17,6 +17,7 @@ SUITE(PointLayoutTest);
1717
1818static PDALPipelinePtr gPipeline = NULL;
1919static PDALPointViewPtr gPointView = NULL;
20+ static PDALPointLayoutPtr gLayout = NULL;
2021
2122static void setupPointLayoutTest(void *arg)
2223{
@@ -43,6 +44,11 @@ static void setupPointLayoutTest(void *arg)
4344 if (PDALHasNextPointView(views))
4445 {
4546 gPointView = PDALGetNextPointView(views);
47+
48+ if (gPointView)
49+ {
50+ gLayout = PDALGetPointViewLayout(gPointView);
51+ }
4652 }
4753 }
4854
@@ -61,6 +67,7 @@ static void teardownPointLayoutTest(void *arg)
6167
6268TEST testPDALGetDimSize(void)
6369{
70+ ASSERT(gLayout);
6471 size_t size = PDALGetDimSize(NULL, NULL);
6572 ASSERT_EQ(0, size);
6673
@@ -71,18 +78,51 @@ TEST testPDALGetDimSize(void)
7178 {
7279 size = PDALGetDimSize(NULL, types[i]);
7380 ASSERT_EQ(0, size);
81+
82+ size = PDALGetDimSize(gLayout, types[i]);
83+ ASSERT(size > 0);
7484 }
7585
7686 PASS();
7787}
7888
7989TEST testPDALGetDimPackedOffset(void)
8090{
91+ ASSERT(gLayout);
92+ size_t offset = PDALGetDimPackedOffset(NULL, NULL);
93+ ASSERT_EQ(0, offset);
94+
95+ int numTypes = 3;
96+ const char *types[] = {"X", "Y", "Z"};
97+
98+ for (int i = 0; i < numTypes; ++i)
99+ {
100+ offset = PDALGetDimPackedOffset(NULL, types[i]);
101+ ASSERT_EQ(0, offset);
102+
103+ offset = PDALGetDimPackedOffset(gLayout, types[i]);
104+
105+ if (strcmp(types[i], "X") == 0)
106+ {
107+ ASSERT_EQ(0, offset);
108+ }
109+ else
110+ {
111+ ASSERT(offset > 0);
112+ }
113+ }
114+
81115 PASS();
82116}
83117
84118TEST testPDALGetPointSize(void)
85119{
120+ ASSERT(gLayout);
121+ size_t size = PDALGetPointSize(NULL);
122+ ASSERT_EQ(0, size);
123+
124+ size = PDALGetPointSize(gLayout);
125+ ASSERT(size > 0);
86126 PASS();
87127}
88128
0 commit comments