1 /*******************************/
2 /* GENERATED FILE, DO NOT EDIT */
3 /*******************************/
7 /*******************************/
8 /* GENERATED FILE, DO NOT EDIT */
9 /*******************************/
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") {
22 shmurtz_t obj1, obj2, obj;
25 obj1 = xbt_new0(s_shmurtz_t,1);
26 obj2 = xbt_new0(s_shmurtz_t,1);
31 xbt_test_add0("Basic usage");
32 xbt_test_log3("%p %p %ld\n",obj1,&(obj1->setB),
33 (long)((char *)&(obj1->setB) - (char *)obj1));
35 setA = xbt_swag_new(xbt_swag_offset(*obj1,setA));
36 setB = xbt_swag_new(xbt_swag_offset(*obj1,setB));
38 xbt_swag_insert(obj1, setA);
39 xbt_swag_insert(obj1, setB);
40 xbt_swag_insert(obj2, setA);
41 xbt_swag_insert(obj2, setB);
43 xbt_swag_remove(obj1, setB);
44 /* xbt_swag_remove(obj2, setB);*/
46 xbt_test_add0("Traverse set A");
47 xbt_swag_foreach(obj,setA) {
48 xbt_test_log1("Saw: %s",obj->name);
51 xbt_test_add0("Traverse set B");
52 xbt_swag_foreach(obj,setB) {
53 xbt_test_log1("Saw: %s",obj->name);
56 xbt_test_add0("Ensure set content and length");
57 xbt_test_assert( xbt_swag_belongs(obj1,setA));
58 xbt_test_assert( xbt_swag_belongs(obj2,setA));
60 xbt_test_assert(! xbt_swag_belongs(obj1,setB));
61 xbt_test_assert( xbt_swag_belongs(obj2,setB));
63 xbt_test_assert(xbt_swag_size(setA) == 2);
64 xbt_test_assert(xbt_swag_size(setB) == 1);
70 /*******************************/
71 /* GENERATED FILE, DO NOT EDIT */
72 /*******************************/