PostGIS  3.0.6dev-r@@SVN_REVISION@@

◆ test_flags_macros()

static void test_flags_macros ( void  )
static

Definition at line 76 of file cu_gserialized1.c.

77 {
78  uint8_t flags = 0;
79 
80  CU_ASSERT_EQUAL(0, G1FLAGS_GET_Z(flags));
81  G1FLAGS_SET_Z(flags, 1);
82  CU_ASSERT_EQUAL(1, G1FLAGS_GET_Z(flags));
83  G1FLAGS_SET_Z(flags, 0);
84  CU_ASSERT_EQUAL(0, G1FLAGS_GET_Z(flags));
85  CU_ASSERT_EQUAL(0, G1FLAGS_GET_BBOX(flags));
86 
87  CU_ASSERT_EQUAL(0, G1FLAGS_GET_M(flags));
88  G1FLAGS_SET_M(flags, 1);
89  CU_ASSERT_EQUAL(1, G1FLAGS_GET_M(flags));
90 
91  CU_ASSERT_EQUAL(0, G1FLAGS_GET_BBOX(flags));
92  G1FLAGS_SET_BBOX(flags, 1);
93  CU_ASSERT_EQUAL(1, G1FLAGS_GET_BBOX(flags));
94 
95  CU_ASSERT_EQUAL(0, G1FLAGS_GET_GEODETIC(flags));
96  G1FLAGS_SET_GEODETIC(flags, 1);
97  CU_ASSERT_EQUAL(1, G1FLAGS_GET_GEODETIC(flags));
98 
99  flags = g1flags(1, 0, 1); /* z=1, m=0, geodetic=1 */
100 
101  CU_ASSERT_EQUAL(1, G1FLAGS_GET_GEODETIC(flags));
102  CU_ASSERT_EQUAL(1, G1FLAGS_GET_Z(flags));
103  CU_ASSERT_EQUAL(0, G1FLAGS_GET_M(flags));
104  CU_ASSERT_EQUAL(2, G1FLAGS_GET_ZM(flags));
105 
106  flags = g1flags(1, 1, 1); /* z=1, m=1, geodetic=1 */
107 
108  CU_ASSERT_EQUAL(1, G1FLAGS_GET_GEODETIC(flags));
109  CU_ASSERT_EQUAL(1, G1FLAGS_GET_Z(flags));
110  CU_ASSERT_EQUAL(1, G1FLAGS_GET_M(flags));
111  CU_ASSERT_EQUAL(3, G1FLAGS_GET_ZM(flags));
112 
113  flags = g1flags(0, 1, 0); /* z=0, m=1, geodetic=0 */
114 
115  CU_ASSERT_EQUAL(0, G1FLAGS_GET_GEODETIC(flags));
116  CU_ASSERT_EQUAL(0, G1FLAGS_GET_Z(flags));
117  CU_ASSERT_EQUAL(1, G1FLAGS_GET_M(flags));
118  CU_ASSERT_EQUAL(1, G1FLAGS_GET_ZM(flags));
119 }
uint8_t g1flags(int has_z, int has_m, int is_geodetic)
Definition: gserialized1.c:77
#define G1FLAGS_SET_Z(gflags, value)
Definition: gserialized1.h:23
#define G1FLAGS_GET_M(gflags)
Definition: gserialized1.h:17
#define G1FLAGS_SET_M(gflags, value)
Definition: gserialized1.h:24
#define G1FLAGS_GET_ZM(gflags)
Definition: gserialized1.h:30
#define G1FLAGS_SET_BBOX(gflags, value)
Definition: gserialized1.h:25
#define G1FLAGS_GET_BBOX(gflags)
Definition: gserialized1.h:18
#define G1FLAGS_SET_GEODETIC(gflags, value)
Definition: gserialized1.h:26
#define G1FLAGS_GET_GEODETIC(gflags)
Definition: gserialized1.h:19
#define G1FLAGS_GET_Z(gflags)
Definition: gserialized1.h:16

References g1flags(), G1FLAGS_GET_BBOX, G1FLAGS_GET_GEODETIC, G1FLAGS_GET_M, G1FLAGS_GET_Z, G1FLAGS_GET_ZM, G1FLAGS_SET_BBOX, G1FLAGS_SET_GEODETIC, G1FLAGS_SET_M, and G1FLAGS_SET_Z.

Referenced by gserialized1_suite_setup().

Here is the call graph for this function:
Here is the caller graph for this function: