From ea1947ffcc606d757357398b24e74a3f4ecefa07 Mon Sep 17 00:00:00 2001 From: neonloop Date: Wed, 20 Oct 2021 14:54:27 +0000 Subject: Initial commit from steward-fu release --- 3rdparty/dict/dict-test.c | 88 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100644 3rdparty/dict/dict-test.c (limited to '3rdparty/dict/dict-test.c') diff --git a/3rdparty/dict/dict-test.c b/3rdparty/dict/dict-test.c new file mode 100644 index 0000000..80cf847 --- /dev/null +++ b/3rdparty/dict/dict-test.c @@ -0,0 +1,88 @@ +/* ******************************************** */ +/* File Name: dict-test.c */ +/* Author: (C) 2008-2009 - Juan José Ponteprino */ +/* Description: Dictionary API Headers */ +/* License: This code is licenced as LGPL */ +/* ******************************************** */ + +#include +#include +#include +#include + +int main( int argc, char * argv[] ) +{ + DICT_T * main_dict = NULL; + char * val1 = "hello world"; + char * val2 = "goodbye world"; + char * val3 = "works!"; + + DICT_Init(); + + main_dict = DICT_Create( "main" ); + if ( !main_dict ) + { + fprintf( stderr, "Can't create dictionary\n" ); + exit( -1 ); + } + + printf( "\n" ); + printf( "Add a new entry... foo1... ret: %d\n", DICT_AddEntry( main_dict, "foo1", ( void * ) val1, strlen( val1 ) + 1, DICT_ENTRY_FLAG_NORMAL )); + + printf( "\n" ); + printf( "Get an exists entry... foo1... ret: [%s]\n", DICT_GetEntry( main_dict, "foo1", NULL )); + printf( "Get non exist entry... foo2... ret: [%s]\n", DICT_GetEntry( main_dict, "foo2", NULL )); + + printf( "\n" ); + printf( "Find an entry... foo1... ret: %p\n", DICT_FindEntry( main_dict, "foo1" ) ); + printf( "Find non exists entry... foo2... ret: %p\n", DICT_FindEntry( main_dict, "foo2" ) ); + + printf( "\n" ); + printf( "Update an exists entry... foo1... ret: %d\n", DICT_AddEntry( main_dict, "foo1", ( void * ) val2, strlen( val2 ) + 1, DICT_ENTRY_FLAG_NORMAL )); + + printf( "\n" ); + printf( "Get an exists entry (with a large value)... foo1... ret: [%s]\n", DICT_GetEntry( main_dict, "foo1", NULL )); + printf( "Find an entry... foo1... ret: %p\n", DICT_FindEntry( main_dict, "foo1" ) ); + + printf( "\n" ); + printf( "Update an exists entry (with a short value)... foo1... ret: %d\n", DICT_AddEntry( main_dict, "foo1", ( void * ) val3, strlen( val3 ) + 1, DICT_ENTRY_FLAG_NORMAL )); + + printf( "\n" ); + printf( "Get an exists entry... foo1... ret: [%s]\n", DICT_GetEntry( main_dict, "foo1", NULL )); + printf( "Find an entry... foo1... ret: %p\n", DICT_FindEntry( main_dict, "foo1" ) ); + + printf( "\n" ); + printf( "Delete an exists entry...\n" ); + DICT_DelEntry( main_dict, "foo1" ); + + printf( "\n" ); + printf( "Delete a non exists entry...\n" ); + DICT_DelEntry( main_dict, "foo1" ); + + printf( "\n" ); + printf( "Get a non exists entry... foo1... ret: %p\n", DICT_GetEntry( main_dict, "foo1", NULL )); + printf( "Find a non exists entry... foo1... ret: [%s]\n", DICT_FindEntry( main_dict, "foo1" )); + + printf( "\n" ); + printf( "Add a new entry... foo1... ret: %d\n", DICT_AddEntry( main_dict, "foo1", ( void * ) val1, strlen( val1 ) + 1, DICT_ENTRY_FLAG_NORMAL )); + printf( "Add a new entry... foo2... ret: %d\n", DICT_AddEntry( main_dict, "foo2", ( void * ) val2, strlen( val2 ) + 1, DICT_ENTRY_FLAG_NORMAL )); + printf( "Add a new entry... foo3... ret: %d\n", DICT_AddEntry( main_dict, "foo3", ( void * ) val3, strlen( val3 ) + 1, DICT_ENTRY_FLAG_NORMAL )); + + printf( "\n" ); + printf( "Display all Entries\n" ); + DICT_ShowAllEntries( main_dict, stdout ); + + printf( "\n" ); + printf( "Delete all Entries\n" ); + DICT_DelAllEntries( main_dict ); + + printf( "\n" ); + printf( "Display all Entries\n" ); + DICT_ShowAllEntries( main_dict, stdout ); + + DICT_Destroy( main_dict ); + + DICT_Exit(); + + return 0; +} -- cgit v1.2.3