1 /*******************************/
2 /* GENERATED FILE, DO NOT EDIT */
3 /*******************************/
7 /*******************************/
8 /* GENERATED FILE, DO NOT EDIT */
9 /*******************************/
11 # 220 "/home/navarrop/Developments/simgrid/src/xbt/swag.c"
15 s_xbt_swag_hookup_t setA;
16 s_xbt_swag_hookup_t setB;
18 } shmurtz, s_shmurtz_t, *shmurtz_t;
21 XBT_TEST_UNIT("basic", test_swag_basic, "Basic usage")
23 shmurtz_t obj1, obj2, obj;
24 xbt_swag_t setA, setB;
26 obj1 = xbt_new0(s_shmurtz_t, 1);
27 obj2 = xbt_new0(s_shmurtz_t, 1);
32 xbt_test_add0("Basic usage");
33 xbt_test_log3("%p %p %ld\n", obj1, &(obj1->setB),
34 (long) ((char *) &(obj1->setB) - (char *) obj1));
36 setA = xbt_swag_new(xbt_swag_offset(*obj1, setA));
37 setB = xbt_swag_new(xbt_swag_offset(*obj1, setB));
39 xbt_swag_insert(obj1, setA);
40 xbt_swag_insert(obj1, setB);
41 xbt_swag_insert(obj2, setA);
42 xbt_swag_insert(obj2, setB);
44 xbt_swag_remove(obj1, setB);
45 /* xbt_swag_remove(obj2, setB); */
47 xbt_test_add0("Traverse set A");
48 xbt_swag_foreach(obj, setA) {
49 xbt_test_log1("Saw: %s", obj->name);
52 xbt_test_add0("Traverse set B");
53 xbt_swag_foreach(obj, setB) {
54 xbt_test_log1("Saw: %s", obj->name);
57 xbt_test_add0("Ensure set content and length");
58 xbt_test_assert(xbt_swag_belongs(obj1, setA));
59 xbt_test_assert(xbt_swag_belongs(obj2, setA));
61 xbt_test_assert(!xbt_swag_belongs(obj1, setB));
62 xbt_test_assert(xbt_swag_belongs(obj2, setB));
64 xbt_test_assert(xbt_swag_size(setA) == 2);
65 xbt_test_assert(xbt_swag_size(setB) == 1);
71 /*******************************/
72 /* GENERATED FILE, DO NOT EDIT */
73 /*******************************/