+static void test_bus_gvariant_get_size(void) {
+ assert(bus_gvariant_get_size("") == 0);
+ assert(bus_gvariant_get_size("()") == 0);
+ assert(bus_gvariant_get_size("y") == 1);
+ assert(bus_gvariant_get_size("u") == 4);
+ assert(bus_gvariant_get_size("b") == 1);
+ assert(bus_gvariant_get_size("n") == 2);
+ assert(bus_gvariant_get_size("q") == 2);
+ assert(bus_gvariant_get_size("i") == 4);
+ assert(bus_gvariant_get_size("t") == 8);
+ assert(bus_gvariant_get_size("d") == 8);
+ assert(bus_gvariant_get_size("s") < 0);
+ assert(bus_gvariant_get_size("o") < 0);
+ assert(bus_gvariant_get_size("g") < 0);
+ assert(bus_gvariant_get_size("h") == 4);
+ assert(bus_gvariant_get_size("ay") < 0);
+ assert(bus_gvariant_get_size("v") < 0);
+ assert(bus_gvariant_get_size("(u)") == 4);
+ assert(bus_gvariant_get_size("(uuuuy)") == 20);
+ assert(bus_gvariant_get_size("(uusuuy)") < 0);
+ assert(bus_gvariant_get_size("a{ss}") < 0);
+ assert(bus_gvariant_get_size("((u)yyy(b(iiii)))") == 28);
+ assert(bus_gvariant_get_size("((u)yyy(b(iiivi)))") < 0);
+ assert(bus_gvariant_get_size("((b)(t))") == 16);
+ assert(bus_gvariant_get_size("((b)(b)(t))") == 16);
+ assert(bus_gvariant_get_size("(bt)") == 16);
+ assert(bus_gvariant_get_size("((t)(b))") == 16);
+ assert(bus_gvariant_get_size("(tb)") == 16);
+ assert(bus_gvariant_get_size("((b)(b))") == 2);
+ assert(bus_gvariant_get_size("((t)(t))") == 16);
+}
+