diff options
author | John Mark Bell <jmb@netsurf-browser.org> | 2007-06-23 22:40:25 +0000 |
---|---|---|
committer | John Mark Bell <jmb@netsurf-browser.org> | 2007-06-23 22:40:25 +0000 |
commit | 7b30a5520cfb56e651f0eb4da85a3e07747da7dc (patch) | |
tree | 5d6281c071c089e1e7a8ae6f8044cecaf6a7db16 /test/aliases.c | |
download | libhubbub-7b30a5520cfb56e651f0eb4da85a3e07747da7dc.tar.gz libhubbub-7b30a5520cfb56e651f0eb4da85a3e07747da7dc.tar.bz2 |
Import hubbub -- an HTML parsing library.
Plenty of work still to do (like tree generation ;)
svn path=/trunk/hubbub/; revision=3359
Diffstat (limited to 'test/aliases.c')
-rw-r--r-- | test/aliases.c | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/test/aliases.c b/test/aliases.c new file mode 100644 index 0000000..1cbf2a4 --- /dev/null +++ b/test/aliases.c @@ -0,0 +1,61 @@ +#include <stdio.h> +#include <string.h> + +#include "charset/aliases.h" + +#include "testutils.h" + +extern void hubbub_aliases_dump(void); + +static void *myrealloc(void *ptr, size_t len, void *pw) +{ + UNUSED(pw); + + return realloc(ptr, len); +} + +int main (int argc, char **argv) +{ + hubbub_aliases_canon *c; + + if (argc != 2) { + printf("Usage: %s <filename>\n", argv[0]); + return 1; + } + + hubbub_aliases_create(argv[1], myrealloc, NULL); + + hubbub_aliases_dump(); + + c = hubbub_alias_canonicalise("moose", 5); + if (c) { + printf("FAIL - found invalid encoding 'moose'\n"); + return 1; + } + + c = hubbub_alias_canonicalise("csinvariant", 11); + if (c) { + printf("%s %d\n", c->name, c->mib_enum); + } else { + printf("FAIL - failed finding encoding 'csinvariant'\n"); + return 1; + } + + c = hubbub_alias_canonicalise("nats-sefi-add", 13); + if (c) { + printf("%s %d\n", c->name, c->mib_enum); + } else { + printf("FAIL - failed finding encoding 'nats-sefi-add'\n"); + return 1; + } + + printf("%d\n", hubbub_mibenum_from_name(c->name, strlen(c->name))); + + printf("%s\n", hubbub_mibenum_to_name(c->mib_enum)); + + hubbub_aliases_destroy(myrealloc, NULL); + + printf("PASS\n"); + + return 0; +} |