]> granicus.if.org Git - postgis/commitdiff
Add more test for FLAGS_GET_ and FLAGS_SET_
authorSandro Santilli <strk@keybit.net>
Thu, 26 Jan 2012 12:34:32 +0000 (12:34 +0000)
committerSandro Santilli <strk@keybit.net>
Thu, 26 Jan 2012 12:34:32 +0000 (12:34 +0000)
git-svn-id: http://svn.osgeo.org/postgis/trunk@8927 b70326c6-7e19-0410-871a-916f4a2858ee

liblwgeom/cunit/cu_libgeom.c

index 0658921ca2d60fbffdc5d2e6a8c275b933d6602c..4c1d958b854f00c58a1ad1187ba5c13800e5119e 100644 (file)
@@ -81,17 +81,37 @@ static void test_flags_macros(void)
        CU_ASSERT_EQUAL(0, FLAGS_GET_BBOX(flags));
        FLAGS_SET_BBOX(flags, 1);
        CU_ASSERT_EQUAL(1, FLAGS_GET_BBOX(flags));
+       CU_ASSERT_EQUAL(0, FLAGS_GET_READONLY(flags));
+
+       FLAGS_SET_READONLY(flags, 1);
+       CU_ASSERT_EQUAL(1, FLAGS_GET_READONLY(flags));
+       FLAGS_SET_READONLY(flags, 0);
+       CU_ASSERT_EQUAL(0, FLAGS_GET_READONLY(flags));
 
        CU_ASSERT_EQUAL(0, FLAGS_GET_GEODETIC(flags));
        FLAGS_SET_GEODETIC(flags, 1);
        CU_ASSERT_EQUAL(1, FLAGS_GET_GEODETIC(flags));
 
-       flags = 0;
        flags = gflags(1, 0, 1); /* z=1, m=0, geodetic=1 */
 
        CU_ASSERT_EQUAL(1, FLAGS_GET_GEODETIC(flags));
        CU_ASSERT_EQUAL(1, FLAGS_GET_Z(flags));
        CU_ASSERT_EQUAL(0, FLAGS_GET_M(flags));
+       CU_ASSERT_EQUAL(2, FLAGS_GET_ZM(flags));
+
+       flags = gflags(1, 1, 1); /* z=1, m=1, geodetic=1 */
+
+       CU_ASSERT_EQUAL(1, FLAGS_GET_GEODETIC(flags));
+       CU_ASSERT_EQUAL(1, FLAGS_GET_Z(flags));
+       CU_ASSERT_EQUAL(1, FLAGS_GET_M(flags));
+       CU_ASSERT_EQUAL(3, FLAGS_GET_ZM(flags));
+
+       flags = gflags(0, 1, 0); /* z=0, m=1, geodetic=0 */
+
+       CU_ASSERT_EQUAL(0, FLAGS_GET_GEODETIC(flags));
+       CU_ASSERT_EQUAL(0, FLAGS_GET_Z(flags));
+       CU_ASSERT_EQUAL(1, FLAGS_GET_M(flags));
+       CU_ASSERT_EQUAL(1, FLAGS_GET_ZM(flags));
 }
 
 static void test_serialized_srid(void)