From 51b6ece5b76aec0e607b677ff78505bc2b19401d Mon Sep 17 00:00:00 2001 From: Aoran Zeng Date: Wed, 20 Aug 2025 16:37:54 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=8B=E8=AF=95=20map?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- test/xy.c | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/test/xy.c b/test/xy.c index 98ebc1b..cebba95 100644 --- a/test/xy.c +++ b/test/xy.c @@ -13,11 +13,17 @@ #include "xy.h" void -print_str (void *str) +print_str_for_seq (void *str) { print ((char *) str); } +void +print_str_for_map (const char *key, void *value) +{ + println (xy_strcat (4, " ", key, " => ", (char *) value)); +} + int main (int argc, char const *argv[]) @@ -144,11 +150,23 @@ main (int argc, char const *argv[]) xy_seq_push (seq, "World"); assert_str ("Hello", xy_seq_at (seq, 1)); assert_str ("World", xy_seq_at (seq, 2)); - xy_seq_each (seq, print_str); + xy_seq_each (seq, print_str_for_seq); br(); xy_seq_pop (seq); assert (1 == xy_seq_len (seq)); + XyMap_t *map = xy_map_new (); + xy_map_set (map, "Hello", "World"); + xy_map_set (map, "你好", "世界"); + assert_str ("World", xy_map_get (map, "Hello")); + assert_str ("世界", xy_map_get (map, "你好")); + xy_map_set (map, "Hello", "chsrc"); + assert_str ("chsrc", xy_map_get (map, "Hello")); + assert (2 == xy_map_len (map)); + echo ("{"); + xy_map_each (map, print_str_for_map); + echo ("}"); + xy_succ ("测试完成", "xy.h 测试全部通过"); // xy_unimplemented();