1 //#include "../test/helpers.h"
5 one_group_from_two(struct strgrp *ctx,
6 const char *const k1, void *v1,
7 const char *const k2, void *v2) {
8 const struct strgrp_grp *grp1, *grp2;
9 struct strgrp_grp_iter *iter;
10 const struct strgrp_item *item;
13 grp1 = strgrp_add(ctx, k1, v1);
15 grp2 = strgrp_add(ctx, k2, v2);
18 iter = strgrp_grp_iter_new(grp1);
19 item = strgrp_grp_iter_next(iter);
21 ok1(streq(k1, strgrp_item_key(item)));
22 ok1(v1 == strgrp_item_value(item));
23 item = strgrp_grp_iter_next(iter);
25 ok1(streq(k2, strgrp_item_key(item)));
26 ok1(v2 == strgrp_item_value(item));
27 ok1(!strgrp_grp_iter_next(iter));
28 strgrp_grp_iter_free(iter);
34 two_groups_from_two(struct strgrp *ctx,
35 const char *const k1, void *v1,
36 const char *const k2, void *v2) {
37 const struct strgrp_grp *grp1, *grp2;
38 struct strgrp_grp_iter *iter;
39 const struct strgrp_item *item;
42 grp1 = strgrp_add(ctx, k1, v1);
44 grp2 = strgrp_add(ctx, k2, v2);
48 iter = strgrp_grp_iter_new(grp1);
49 item = strgrp_grp_iter_next(iter);
51 ok1(streq(k1, strgrp_item_key(item)));
52 ok1(v1 == strgrp_item_value(item));
53 ok1(!strgrp_grp_iter_next(iter));
54 strgrp_grp_iter_free(iter);
57 iter = strgrp_grp_iter_new(grp2);
58 item = strgrp_grp_iter_next(iter);
60 ok1(streq(k2, strgrp_item_key(item)));
61 ok1(v2 == strgrp_item_value(item));
62 ok1(!strgrp_grp_iter_next(iter));
63 strgrp_grp_iter_free(iter);