File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / libxml2 / testapi.c
Revision 1.1.1.3 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Sun Jun 15 19:53:30 2014 UTC (9 years, 11 months ago) by misho
Branches: libxml2, MAIN
CVS tags: v2_9_1p0, v2_9_1, HEAD
libxml2 2.9.1

    1: /*
    2:  * testapi.c: libxml2 API tester program.
    3:  *
    4:  * Automatically generated by gentest.py from libxml2-api.xml
    5:  *
    6:  * See Copyright for the status of this software.
    7:  *
    8:  * daniel@veillard.com
    9:  */
   10: 
   11: #include "libxml.h"
   12: #include <stdio.h>
   13: 
   14: #include <stdlib.h> /* for putenv() */
   15: #include <string.h>
   16: #include <libxml/xmlerror.h>
   17: #include <libxml/relaxng.h>
   18: 
   19: 
   20: static int testlibxml2(void);
   21: static int test_module(const char *module);
   22: 
   23: static int generic_errors = 0;
   24: static int call_tests = 0;
   25: static int function_tests = 0;
   26: 
   27: static xmlChar chartab[1024];
   28: static int inttab[1024];
   29: static unsigned long longtab[1024];
   30: 
   31: static xmlDocPtr api_doc = NULL;
   32: static xmlDtdPtr api_dtd = NULL;
   33: static xmlNodePtr api_root = NULL;
   34: static xmlAttrPtr api_attr = NULL;
   35: static xmlNsPtr api_ns = NULL;
   36: 
   37: static void
   38: structured_errors(void *userData ATTRIBUTE_UNUSED,
   39:                   xmlErrorPtr error ATTRIBUTE_UNUSED) {
   40:     generic_errors++;
   41: }
   42: 
   43: static void
   44: free_api_doc(void) {
   45:     xmlFreeDoc(api_doc);
   46:     api_doc = NULL;
   47:     api_dtd = NULL;
   48:     api_root = NULL;
   49:     api_attr = NULL;
   50:     api_ns = NULL;
   51: }
   52: 
   53: static xmlDocPtr
   54: get_api_doc(void) {
   55:     if (api_doc == NULL) {
   56:         api_doc = xmlReadMemory("<!DOCTYPE root [<!ELEMENT root EMPTY>]><root xmlns:h='http://example.com/' h:foo='bar'/>", 88, "root_test", NULL, 0);
   57: 	api_root = NULL;
   58: 	api_attr = NULL;
   59:     }
   60:     return(api_doc);
   61: }
   62: 
   63: static xmlDtdPtr
   64: get_api_dtd(void) {
   65:     if ((api_dtd == NULL) || (api_dtd->type != XML_DTD_NODE)) {
   66:         get_api_doc();
   67: 	if ((api_doc != NULL) && (api_doc->children != NULL) &&
   68: 	    (api_doc->children->type == XML_DTD_NODE))
   69: 	    api_dtd = (xmlDtdPtr) api_doc->children;
   70:     }
   71:     return(api_dtd);
   72: }
   73: 
   74: static xmlNodePtr
   75: get_api_root(void) {
   76:     if ((api_root == NULL) || (api_root->type != XML_ELEMENT_NODE)) {
   77:         get_api_doc();
   78: 	if ((api_doc != NULL) && (api_doc->children != NULL) &&
   79: 	    (api_doc->children->next != NULL) &&
   80: 	    (api_doc->children->next->type == XML_ELEMENT_NODE))
   81: 	    api_root = api_doc->children->next;
   82:     }
   83:     return(api_root);
   84: }
   85: 
   86: static xmlNsPtr
   87: get_api_ns(void) {
   88:     get_api_root();
   89:     if (api_root != NULL)
   90:         api_ns = api_root->nsDef;
   91:     return(api_ns);
   92: }
   93: 
   94: static xmlAttrPtr
   95: get_api_attr(void) {
   96: #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_HTML_ENABLED)
   97:     static int nr = 0;
   98:     xmlChar name[20];
   99: #endif
  100: 
  101:     if ((api_root == NULL) || (api_root->type != XML_ELEMENT_NODE)) {
  102:         get_api_root();
  103:     }
  104:     if (api_root == NULL)
  105:         return(NULL);
  106:     if (api_root->properties != NULL) {
  107:         api_attr = api_root->properties;
  108:         return(api_root->properties);
  109:     }
  110:     api_attr = NULL;
  111: #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_HTML_ENABLED)
  112:     snprintf((char *) name, 20, "foo%d", nr++);
  113:     api_attr = xmlSetProp(api_root, name, (const xmlChar *) "bar");
  114: #endif
  115:     return(api_attr);
  116: }
  117: 
  118: static int quiet = 0;
  119: 
  120: int main(int argc, char **argv) {
  121:     int ret;
  122:     int blocks, mem;
  123: 
  124: #ifdef HAVE_PUTENV
  125:     /* access to the proxy can slow up regression tests a lot */
  126:     putenv((char *) "http_proxy=");
  127: #endif
  128: 
  129:     memset(chartab, 0, sizeof(chartab));
  130:     strncpy((char *) chartab, "  chartab\n", 20);
  131:     memset(inttab, 0, sizeof(inttab));
  132:     memset(longtab, 0, sizeof(longtab));
  133: 
  134:     xmlInitParser();
  135: #ifdef LIBXML_SCHEMAS_ENABLED
  136:     xmlRelaxNGInitTypes();
  137: #endif
  138: 
  139:     LIBXML_TEST_VERSION
  140: 
  141:     xmlSetStructuredErrorFunc(NULL, structured_errors);
  142: 
  143:     if (argc >= 2) {
  144:         if (!strcmp(argv[1], "-q")) {
  145: 	    quiet = 1;
  146: 	    if (argc >= 3)
  147: 	        ret = test_module(argv[2]);
  148: 	    else
  149: 		ret = testlibxml2();
  150:         } else {
  151: 	   ret = test_module(argv[1]);
  152: 	}
  153:     } else
  154: 	ret = testlibxml2();
  155: 
  156:     xmlCleanupParser();
  157:     blocks = xmlMemBlocks();
  158:     mem = xmlMemUsed();
  159:     if ((blocks != 0) || (mem != 0)) {
  160:         printf("testapi leaked %d bytes in %d blocks\n", mem, blocks);
  161:     }
  162:     xmlMemoryDump();
  163: 
  164:     return (ret != 0);
  165: }
  166: 
  167: #include <libxml/HTMLparser.h>
  168: #include <libxml/HTMLtree.h>
  169: #include <libxml/catalog.h>
  170: #include <libxml/chvalid.h>
  171: #include <libxml/dict.h>
  172: #include <libxml/encoding.h>
  173: #include <libxml/entities.h>
  174: #include <libxml/hash.h>
  175: #include <libxml/list.h>
  176: #include <libxml/nanoftp.h>
  177: #include <libxml/nanohttp.h>
  178: #include <libxml/parser.h>
  179: #include <libxml/parserInternals.h>
  180: #include <libxml/pattern.h>
  181: #include <libxml/relaxng.h>
  182: #include <libxml/schemasInternals.h>
  183: #include <libxml/schematron.h>
  184: #include <libxml/tree.h>
  185: #include <libxml/uri.h>
  186: #include <libxml/valid.h>
  187: #include <libxml/xinclude.h>
  188: #include <libxml/xmlIO.h>
  189: #include <libxml/xmlerror.h>
  190: #include <libxml/xmlreader.h>
  191: #include <libxml/xmlsave.h>
  192: #include <libxml/xmlschemas.h>
  193: #include <libxml/xmlschemastypes.h>
  194: #include <libxml/xmlstring.h>
  195: #include <libxml/xmlwriter.h>
  196: #include <libxml/xpath.h>
  197: #include <libxml/xpointer.h>
  198: #include <libxml/debugXML.h>
  199: 
  200: /*
  201:   We manually define xmlErrMemory because it's normal declaration
  202:   is "hidden" by #ifdef IN_LIBXML
  203: */
  204: void xmlErrMemory(xmlParserCtxtPtr ctxt, const char *extra);
  205: 
  206: /*
  207:  We need some "remote" addresses, but want to avoid getting into
  208:  name resolution delays, so we use these
  209: */
  210: #define	REMOTE1GOOD	"http://localhost/"
  211: #define	REMOTE1BAD	"http:http://http"
  212: #define	REMOTE2GOOD	"ftp://localhost/foo"
  213: 
  214: #define gen_nb_void_ptr 2
  215: 
  216: static void *gen_void_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  217:     return(NULL);
  218: }
  219: static void des_void_ptr(int no ATTRIBUTE_UNUSED, void *val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  220: }
  221: 
  222: #if 0
  223: #define gen_nb_const_void_ptr 2
  224: 
  225: static const void *gen_const_void_ptr(int no, int nr ATTRIBUTE_UNUSED) {
  226:     if (no == 0) return((const void *) "immutable string");
  227:     return(NULL);
  228: }
  229: static void des_const_void_ptr(int no ATTRIBUTE_UNUSED, const void *val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  230: }
  231: #endif
  232: 
  233: #define gen_nb_userdata 3
  234: 
  235: static void *gen_userdata(int no, int nr ATTRIBUTE_UNUSED) {
  236:     if (no == 0) return((void *) &call_tests);
  237:     if (no == 1) return((void *) -1);
  238:     return(NULL);
  239: }
  240: static void des_userdata(int no ATTRIBUTE_UNUSED, void *val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  241: }
  242: 
  243: 
  244: #define gen_nb_int 4
  245: 
  246: static int gen_int(int no, int nr ATTRIBUTE_UNUSED) {
  247:     if (no == 0) return(0);
  248:     if (no == 1) return(1);
  249:     if (no == 2) return(-1);
  250:     if (no == 3) return(122);
  251:     return(-1);
  252: }
  253: 
  254: static void des_int(int no ATTRIBUTE_UNUSED, int val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  255: }
  256: 
  257: #define gen_nb_parseroptions 5
  258: 
  259: static int gen_parseroptions(int no, int nr ATTRIBUTE_UNUSED) {
  260:     if (no == 0) return(XML_PARSE_NOBLANKS | XML_PARSE_RECOVER);
  261:     if (no == 1) return(XML_PARSE_NOENT | XML_PARSE_DTDLOAD | XML_PARSE_DTDATTR | XML_PARSE_DTDVALID | XML_PARSE_NOCDATA);
  262:     if (no == 2) return(XML_PARSE_XINCLUDE | XML_PARSE_NOXINCNODE | XML_PARSE_NSCLEAN);
  263:     if (no == 3) return(XML_PARSE_XINCLUDE | XML_PARSE_NODICT);
  264:     return(XML_PARSE_SAX1);
  265: }
  266: 
  267: static void des_parseroptions(int no ATTRIBUTE_UNUSED, int val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  268: }
  269: 
  270: #if 0
  271: #define gen_nb_long 5
  272: 
  273: static long gen_long(int no, int nr ATTRIBUTE_UNUSED) {
  274:     if (no == 0) return(0);
  275:     if (no == 1) return(1);
  276:     if (no == 2) return(-1);
  277:     if (no == 3) return(122);
  278:     return(-1);
  279: }
  280: 
  281: static void des_long(int no ATTRIBUTE_UNUSED, long val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  282: }
  283: #endif
  284: 
  285: #define gen_nb_xmlChar 4
  286: 
  287: static xmlChar gen_xmlChar(int no, int nr ATTRIBUTE_UNUSED) {
  288:     if (no == 0) return('a');
  289:     if (no == 1) return(' ');
  290:     if (no == 2) return((xmlChar) '\xf8');
  291:     return(0);
  292: }
  293: 
  294: static void des_xmlChar(int no ATTRIBUTE_UNUSED, xmlChar val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  295: }
  296: 
  297: #define gen_nb_unsigned_int 3
  298: 
  299: static unsigned int gen_unsigned_int(int no, int nr ATTRIBUTE_UNUSED) {
  300:     if (no == 0) return(0);
  301:     if (no == 1) return(1);
  302:     if (no == 2) return(122);
  303:     return((unsigned int) -1);
  304: }
  305: 
  306: static void des_unsigned_int(int no ATTRIBUTE_UNUSED, unsigned int val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  307: }
  308: 
  309: #define gen_nb_unsigned_long 4
  310: 
  311: static unsigned long gen_unsigned_long(int no, int nr ATTRIBUTE_UNUSED) {
  312:     if (no == 0) return(0);
  313:     if (no == 1) return(1);
  314:     if (no == 2) return(122);
  315:     return((unsigned long) -1);
  316: }
  317: 
  318: static void des_unsigned_long(int no ATTRIBUTE_UNUSED, unsigned long val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  319: }
  320: 
  321: #define gen_nb_double 4
  322: 
  323: static double gen_double(int no, int nr ATTRIBUTE_UNUSED) {
  324:     if (no == 0) return(0);
  325:     if (no == 1) return(-1.1);
  326: #if defined(LIBXML_XPATH_ENABLED)
  327:     if (no == 2) return(xmlXPathNAN);
  328: #endif
  329:     return(-1);
  330: }
  331: 
  332: static void des_double(int no ATTRIBUTE_UNUSED, double val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  333: }
  334: 
  335: #define gen_nb_unsigned_long_ptr 2
  336: 
  337: static unsigned long *gen_unsigned_long_ptr(int no, int nr) {
  338:     if (no == 0) return(&longtab[nr]);
  339:     return(NULL);
  340: }
  341: 
  342: static void des_unsigned_long_ptr(int no ATTRIBUTE_UNUSED, unsigned long *val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  343: }
  344: 
  345: #define gen_nb_int_ptr 2
  346: 
  347: static int *gen_int_ptr(int no, int nr) {
  348:     if (no == 0) return(&inttab[nr]);
  349:     return(NULL);
  350: }
  351: 
  352: static void des_int_ptr(int no ATTRIBUTE_UNUSED, int *val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  353: }
  354: 
  355: #define gen_nb_const_char_ptr 4
  356: 
  357: static char *gen_const_char_ptr(int no, int nr ATTRIBUTE_UNUSED) {
  358:     if (no == 0) return((char *) "foo");
  359:     if (no == 1) return((char *) "<foo/>");
  360:     if (no == 2) return((char *) "test/ent2");
  361:     return(NULL);
  362: }
  363: static void des_const_char_ptr(int no ATTRIBUTE_UNUSED, const char *val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  364: }
  365: 
  366: #define gen_nb_xmlChar_ptr 2
  367: 
  368: static xmlChar *gen_xmlChar_ptr(int no, int nr ATTRIBUTE_UNUSED) {
  369:     if (no == 0) return(&chartab[0]);
  370:     return(NULL);
  371: }
  372: static void des_xmlChar_ptr(int no ATTRIBUTE_UNUSED, xmlChar *val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  373: }
  374: 
  375: #define gen_nb_FILE_ptr 2
  376: 
  377: static FILE *gen_FILE_ptr(int no, int nr ATTRIBUTE_UNUSED) {
  378:     if (no == 0) return(fopen("test.out", "a+"));
  379:     return(NULL);
  380: }
  381: static void des_FILE_ptr(int no ATTRIBUTE_UNUSED, FILE *val, int nr ATTRIBUTE_UNUSED) {
  382:     if (val != NULL) fclose(val);
  383: }
  384: 
  385: #define gen_nb_debug_FILE_ptr 2
  386: static FILE *gen_debug_FILE_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  387:     return(fopen("test.out", "a+"));
  388: }
  389: static void des_debug_FILE_ptr(int no ATTRIBUTE_UNUSED, FILE *val, int nr ATTRIBUTE_UNUSED) {
  390:     if (val != NULL) fclose(val);
  391: }
  392: 
  393: #define gen_nb_const_xmlChar_ptr 5
  394: 
  395: static xmlChar *gen_const_xmlChar_ptr(int no, int nr ATTRIBUTE_UNUSED) {
  396:     if (no == 0) return((xmlChar *) "foo");
  397:     if (no == 1) return((xmlChar *) "<foo/>");
  398:     if (no == 2) return((xmlChar *) "n" "\xf8" "ne");
  399:     if (no == 3) return((xmlChar *) " 2ab ");
  400:     return(NULL);
  401: }
  402: static void des_const_xmlChar_ptr(int no ATTRIBUTE_UNUSED, const xmlChar *val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  403: }
  404: 
  405: #define gen_nb_filepath 8
  406: 
  407: static const char *gen_filepath(int no, int nr ATTRIBUTE_UNUSED) {
  408:     if (no == 0) return("missing.xml");
  409:     if (no == 1) return("<foo/>");
  410:     if (no == 2) return("test/ent2");
  411:     if (no == 3) return("test/valid/REC-xml-19980210.xml");
  412:     if (no == 4) return("test/valid/dtds/xhtml1-strict.dtd");
  413:     if (no == 5) return(REMOTE1GOOD);
  414:     if (no == 6) return(REMOTE1BAD);
  415:     return(NULL);
  416: }
  417: static void des_filepath(int no ATTRIBUTE_UNUSED, const char *val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  418: }
  419: 
  420: #define gen_nb_eaten_name 2
  421: 
  422: static xmlChar *gen_eaten_name(int no, int nr ATTRIBUTE_UNUSED) {
  423:     if (no == 0) return(xmlStrdup(BAD_CAST "eaten"));
  424:     return(NULL);
  425: }
  426: static void des_eaten_name(int no ATTRIBUTE_UNUSED, xmlChar *val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  427: }
  428: 
  429: #define gen_nb_fileoutput 6
  430: 
  431: static const char *gen_fileoutput(int no, int nr ATTRIBUTE_UNUSED) {
  432:     if (no == 0) return("/missing.xml");
  433:     if (no == 1) return("<foo/>");
  434:     if (no == 2) return(REMOTE2GOOD);
  435:     if (no == 3) return(REMOTE1GOOD);
  436:     if (no == 4) return(REMOTE1BAD);
  437:     return(NULL);
  438: }
  439: static void des_fileoutput(int no ATTRIBUTE_UNUSED, const char *val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  440: }
  441: 
  442: #define gen_nb_xmlParserCtxtPtr 3
  443: static xmlParserCtxtPtr gen_xmlParserCtxtPtr(int no, int nr ATTRIBUTE_UNUSED) {
  444:     if (no == 0) return(xmlNewParserCtxt());
  445:     if (no == 1) return(xmlCreateMemoryParserCtxt("<doc/>", 6));
  446:     return(NULL);
  447: }
  448: static void des_xmlParserCtxtPtr(int no ATTRIBUTE_UNUSED, xmlParserCtxtPtr val, int nr ATTRIBUTE_UNUSED) {
  449:     if (val != NULL)
  450:         xmlFreeParserCtxt(val);
  451: }
  452: 
  453: #define gen_nb_xmlSAXHandlerPtr 2
  454: static xmlSAXHandlerPtr gen_xmlSAXHandlerPtr(int no, int nr ATTRIBUTE_UNUSED) {
  455: #ifdef LIBXML_SAX1_ENABLED
  456:     if (no == 0) return((xmlSAXHandlerPtr) &xmlDefaultSAXHandler);
  457: #endif
  458:     return(NULL);
  459: }
  460: static void des_xmlSAXHandlerPtr(int no ATTRIBUTE_UNUSED, xmlSAXHandlerPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  461: }
  462: 
  463: #define gen_nb_xmlValidCtxtPtr 2
  464: static xmlValidCtxtPtr gen_xmlValidCtxtPtr(int no, int nr ATTRIBUTE_UNUSED) {
  465: #ifdef LIBXML_VALID_ENABLED
  466:     if (no == 0) return(xmlNewValidCtxt());
  467: #endif
  468:     return(NULL);
  469: }
  470: static void des_xmlValidCtxtPtr(int no ATTRIBUTE_UNUSED, xmlValidCtxtPtr val, int nr ATTRIBUTE_UNUSED) {
  471: #ifdef LIBXML_VALID_ENABLED
  472:     if (val != NULL)
  473:         xmlFreeValidCtxt(val);
  474: #endif
  475: }
  476: 
  477: #define gen_nb_xmlParserInputBufferPtr 8
  478: 
  479: static xmlParserInputBufferPtr gen_xmlParserInputBufferPtr(int no, int nr ATTRIBUTE_UNUSED) {
  480:     if (no == 0) return(xmlParserInputBufferCreateFilename("missing.xml", XML_CHAR_ENCODING_NONE));
  481:     if (no == 1) return(xmlParserInputBufferCreateFilename("<foo/>", XML_CHAR_ENCODING_NONE));
  482:     if (no == 2) return(xmlParserInputBufferCreateFilename("test/ent2", XML_CHAR_ENCODING_NONE));
  483:     if (no == 3) return(xmlParserInputBufferCreateFilename("test/valid/REC-xml-19980210.xml", XML_CHAR_ENCODING_NONE));
  484:     if (no == 4) return(xmlParserInputBufferCreateFilename("test/valid/dtds/xhtml1-strict.dtd", XML_CHAR_ENCODING_NONE));
  485:     if (no == 5) return(xmlParserInputBufferCreateFilename(REMOTE1GOOD, XML_CHAR_ENCODING_NONE));
  486:     if (no == 6) return(xmlParserInputBufferCreateFilename(REMOTE1BAD, XML_CHAR_ENCODING_NONE));
  487:     return(NULL);
  488: }
  489: static void des_xmlParserInputBufferPtr(int no ATTRIBUTE_UNUSED, xmlParserInputBufferPtr val, int nr ATTRIBUTE_UNUSED) {
  490:     xmlFreeParserInputBuffer(val);
  491: }
  492: 
  493: #define gen_nb_xmlDocPtr 4
  494: static xmlDocPtr gen_xmlDocPtr(int no, int nr ATTRIBUTE_UNUSED) {
  495:     if (no == 0) return(xmlNewDoc(BAD_CAST "1.0"));
  496:     if (no == 1) return(xmlReadMemory("<foo/>", 6, "test", NULL, 0));
  497:     if (no == 2) return(xmlReadMemory("<!DOCTYPE foo []> <foo/>", 24, "test", NULL, 0));
  498:     return(NULL);
  499: }
  500: static void des_xmlDocPtr(int no ATTRIBUTE_UNUSED, xmlDocPtr val, int nr ATTRIBUTE_UNUSED) {
  501:     if ((val != NULL) && (val != api_doc) && (val->doc != api_doc))
  502:         xmlFreeDoc(val);
  503: }
  504: 
  505: #define gen_nb_xmlAttrPtr 2
  506: static xmlAttrPtr gen_xmlAttrPtr(int no, int nr ATTRIBUTE_UNUSED) {
  507:     if (no == 0) return(get_api_attr());
  508:     return(NULL);
  509: }
  510: static void des_xmlAttrPtr(int no, xmlAttrPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  511:     if (no == 0) free_api_doc();
  512: }
  513: 
  514: #define gen_nb_xmlDictPtr 2
  515: static xmlDictPtr gen_xmlDictPtr(int no, int nr ATTRIBUTE_UNUSED) {
  516:     if (no == 0) return(xmlDictCreate());
  517:     return(NULL);
  518: }
  519: static void des_xmlDictPtr(int no ATTRIBUTE_UNUSED, xmlDictPtr val, int nr ATTRIBUTE_UNUSED) {
  520:     if (val != NULL)
  521:         xmlDictFree(val);
  522: }
  523: 
  524: #define gen_nb_xmlNodePtr 3
  525: static xmlNodePtr gen_xmlNodePtr(int no, int nr ATTRIBUTE_UNUSED) {
  526:     if (no == 0) return(xmlNewPI(BAD_CAST "test", NULL));
  527:     if (no == 1) return(get_api_root());
  528:     return(NULL);
  529: /*     if (no == 2) return((xmlNodePtr) get_api_doc()); */
  530: }
  531: static void des_xmlNodePtr(int no, xmlNodePtr val, int nr ATTRIBUTE_UNUSED) {
  532:     if (no == 1) {
  533:         free_api_doc();
  534:     } else if (val != NULL) {
  535:         xmlUnlinkNode(val);
  536:         xmlFreeNode(val);
  537:     }
  538: }
  539: 
  540: #define gen_nb_xmlDtdPtr 3
  541: static xmlDtdPtr gen_xmlDtdPtr(int no, int nr ATTRIBUTE_UNUSED) {
  542:     if (no == 0)
  543:         return(xmlNewDtd(NULL, BAD_CAST "dtd", BAD_CAST"foo", BAD_CAST"bar"));
  544:     if (no == 1) return(get_api_dtd());
  545:     return(NULL);
  546: }
  547: static void des_xmlDtdPtr(int no, xmlDtdPtr val, int nr ATTRIBUTE_UNUSED) {
  548:     if (no == 1) free_api_doc();
  549:     else if (val != NULL) {
  550:         xmlUnlinkNode((xmlNodePtr) val);
  551:         xmlFreeNode((xmlNodePtr) val);
  552:     }
  553: }
  554: 
  555: #define gen_nb_xmlNsPtr 2
  556: static xmlNsPtr gen_xmlNsPtr(int no, int nr ATTRIBUTE_UNUSED) {
  557:     if (no == 0) return(get_api_ns());
  558:     return(NULL);
  559: }
  560: static void des_xmlNsPtr(int no, xmlNsPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  561:     if (no == 0) free_api_doc();
  562: }
  563: 
  564: #define gen_nb_xmlNodePtr_in 3
  565: static xmlNodePtr gen_xmlNodePtr_in(int no, int nr ATTRIBUTE_UNUSED) {
  566:     if (no == 0) return(xmlNewPI(BAD_CAST "test", NULL));
  567:     if (no == 0) return(xmlNewText(BAD_CAST "text"));
  568:     return(NULL);
  569: }
  570: static void des_xmlNodePtr_in(int no ATTRIBUTE_UNUSED, xmlNodePtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  571: }
  572: 
  573: #ifdef LIBXML_WRITER_ENABLED
  574: #define gen_nb_xmlTextWriterPtr 2
  575: static xmlTextWriterPtr gen_xmlTextWriterPtr(int no, int nr ATTRIBUTE_UNUSED) {
  576:     if (no == 0) return(xmlNewTextWriterFilename("test.out", 0));
  577:     return(NULL);
  578: }
  579: static void des_xmlTextWriterPtr(int no ATTRIBUTE_UNUSED, xmlTextWriterPtr val, int nr ATTRIBUTE_UNUSED) {
  580:     if (val != NULL) xmlFreeTextWriter(val);
  581: }
  582: #endif
  583: 
  584: #ifdef LIBXML_READER_ENABLED
  585: #define gen_nb_xmlTextReaderPtr 4
  586: static xmlTextReaderPtr gen_xmlTextReaderPtr(int no, int nr ATTRIBUTE_UNUSED) {
  587:     if (no == 0) return(xmlNewTextReaderFilename("test/ent2"));
  588:     if (no == 1) return(xmlNewTextReaderFilename("test/valid/REC-xml-19980210.xml"));
  589:     if (no == 2) return(xmlNewTextReaderFilename("test/valid/dtds/xhtml1-strict.dtd"));
  590:     return(NULL);
  591: }
  592: static void des_xmlTextReaderPtr(int no ATTRIBUTE_UNUSED, xmlTextReaderPtr val, int nr ATTRIBUTE_UNUSED) {
  593:     if (val != NULL) xmlFreeTextReader(val);
  594: }
  595: #endif
  596: 
  597: #define gen_nb_xmlBufferPtr 3
  598: static const xmlChar *static_buf_content = (xmlChar *)"a static buffer";
  599: static xmlBufferPtr gen_xmlBufferPtr(int no, int nr ATTRIBUTE_UNUSED) {
  600:     if (no == 0) return(xmlBufferCreate());
  601:     if (no == 1) return(xmlBufferCreateStatic((void *)static_buf_content, 13));
  602:     return(NULL);
  603: }
  604: static void des_xmlBufferPtr(int no ATTRIBUTE_UNUSED, xmlBufferPtr val, int nr ATTRIBUTE_UNUSED) {
  605:     if (val != NULL) {
  606:         xmlBufferFree(val);
  607:     }
  608: }
  609: 
  610: #define gen_nb_xmlListPtr 2
  611: static xmlListPtr gen_xmlListPtr(int no, int nr ATTRIBUTE_UNUSED) {
  612:     if (no == 0) return(xmlListCreate(NULL, NULL));
  613:     return(NULL);
  614: }
  615: static void des_xmlListPtr(int no ATTRIBUTE_UNUSED, xmlListPtr val, int nr ATTRIBUTE_UNUSED) {
  616:     if (val != NULL) {
  617:         xmlListDelete(val);
  618:     }
  619: }
  620: 
  621: #define gen_nb_xmlHashTablePtr 2
  622: static xmlHashTablePtr gen_xmlHashTablePtr(int no, int nr ATTRIBUTE_UNUSED) {
  623:     if (no == 0) return(xmlHashCreate(10));
  624:     return(NULL);
  625: }
  626: static void des_xmlHashTablePtr(int no ATTRIBUTE_UNUSED, xmlHashTablePtr val, int nr ATTRIBUTE_UNUSED) {
  627:     if (val != NULL) {
  628:         xmlHashFree(val, NULL);
  629:     }
  630: }
  631: 
  632: #include <libxml/xpathInternals.h>
  633: 
  634: #ifdef LIBXML_XPATH_ENABLED
  635: #define gen_nb_xmlXPathObjectPtr 5
  636: static xmlXPathObjectPtr gen_xmlXPathObjectPtr(int no, int nr ATTRIBUTE_UNUSED) {
  637:     if (no == 0) return(xmlXPathNewString(BAD_CAST "string object"));
  638:     if (no == 1) return(xmlXPathNewFloat(1.1));
  639:     if (no == 2) return(xmlXPathNewBoolean(1));
  640:     if (no == 3) return(xmlXPathNewNodeSet(NULL));
  641:     return(NULL);
  642: }
  643: static void des_xmlXPathObjectPtr(int no ATTRIBUTE_UNUSED, xmlXPathObjectPtr val, int nr ATTRIBUTE_UNUSED) {
  644:     if (val != NULL) {
  645:         xmlXPathFreeObject(val);
  646:     }
  647: }
  648: #endif
  649: 
  650: #ifdef LIBXML_OUTPUT_ENABLED
  651: #define gen_nb_xmlOutputBufferPtr 2
  652: static xmlOutputBufferPtr gen_xmlOutputBufferPtr(int no, int nr ATTRIBUTE_UNUSED) {
  653:     if (no == 0) return(xmlOutputBufferCreateFilename("test.out", NULL, 0));
  654:     return(NULL);
  655: }
  656: static void des_xmlOutputBufferPtr(int no ATTRIBUTE_UNUSED, xmlOutputBufferPtr val, int nr ATTRIBUTE_UNUSED) {
  657:     if (val != NULL) {
  658:         xmlOutputBufferClose(val);
  659:     }
  660: }
  661: #endif
  662: 
  663: #ifdef LIBXML_FTP_ENABLED
  664: #define gen_nb_xmlNanoFTPCtxtPtr 4
  665: static void *gen_xmlNanoFTPCtxtPtr(int no, int nr ATTRIBUTE_UNUSED) {
  666:     if (no == 0) return(xmlNanoFTPNewCtxt(REMOTE2GOOD));
  667:     if (no == 1) return(xmlNanoFTPNewCtxt(REMOTE1GOOD));
  668:     if (no == 2) return(xmlNanoFTPNewCtxt("foo"));
  669:     return(NULL);
  670: }
  671: static void des_xmlNanoFTPCtxtPtr(int no ATTRIBUTE_UNUSED, void *val, int nr ATTRIBUTE_UNUSED) {
  672:     if (val != NULL) {
  673:         xmlNanoFTPFreeCtxt(val);
  674:     }
  675: }
  676: #endif
  677: 
  678: #ifdef LIBXML_HTTP_ENABLED
  679: #define gen_nb_xmlNanoHTTPCtxtPtr 1
  680: static void *gen_xmlNanoHTTPCtxtPtr(int no, int nr ATTRIBUTE_UNUSED) {
  681:     if (no == 0) return(xmlNanoHTTPOpen(REMOTE1GOOD, NULL));
  682:     if (no == 1) return(xmlNanoHTTPOpen(REMOTE2GOOD, NULL));
  683:     if (no == 2) return(xmlNanoHTTPOpen(REMOTE1BAD, NULL));
  684:     return(NULL);
  685: }
  686: static void des_xmlNanoHTTPCtxtPtr(int no ATTRIBUTE_UNUSED, void *val, int nr ATTRIBUTE_UNUSED) {
  687:     if (val != NULL) {
  688: 	xmlNanoHTTPClose(val);
  689:     }
  690: }
  691: #endif
  692: 
  693: #define gen_nb_xmlCharEncoding 4
  694: static xmlCharEncoding gen_xmlCharEncoding(int no, int nr ATTRIBUTE_UNUSED) {
  695:     if (no == 0) return(XML_CHAR_ENCODING_UTF8);
  696:     if (no == 1) return(XML_CHAR_ENCODING_NONE);
  697:     if (no == 2) return(XML_CHAR_ENCODING_8859_1);
  698:     return(XML_CHAR_ENCODING_ERROR);
  699: }
  700: static void des_xmlCharEncoding(int no ATTRIBUTE_UNUSED, xmlCharEncoding val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  701: }
  702: 
  703: #if defined(LIBXML_REGEXP_ENABLED) && defined(LIBXML_EXPR_ENABLED)
  704: 
  705: #define gen_nb_xmlExpCtxtPtr 1
  706: static xmlExpCtxtPtr gen_xmlExpCtxtPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  707:     return(NULL);
  708: }
  709: static void des_xmlExpCtxtPtr(int no ATTRIBUTE_UNUSED, xmlExpCtxtPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  710: }
  711: 
  712: #define gen_nb_xmlExpNodePtr 1
  713: static xmlExpNodePtr gen_xmlExpNodePtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  714:     return(NULL);
  715: }
  716: static void des_xmlExpNodePtr(int no ATTRIBUTE_UNUSED, xmlExpNodePtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  717: }
  718: 
  719: #endif
  720: 
  721: #if defined(LIBXML_SCHEMAS_ENABLED)
  722: #define gen_nb_xmlSchemaPtr 1
  723: static xmlSchemaPtr gen_xmlSchemaPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  724:     return(NULL);
  725: }
  726: static void des_xmlSchemaPtr(int no ATTRIBUTE_UNUSED, xmlSchemaPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  727: }
  728: 
  729: #define gen_nb_xmlSchemaValidCtxtPtr 1
  730: static xmlSchemaValidCtxtPtr gen_xmlSchemaValidCtxtPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  731:     return(NULL);
  732: }
  733: static void des_xmlSchemaValidCtxtPtr(int no ATTRIBUTE_UNUSED, xmlSchemaValidCtxtPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  734: }
  735: 
  736: #endif /* LIBXML_SCHEMAS_ENABLED */
  737: 
  738: #define gen_nb_xmlHashDeallocator 2
  739: static void
  740: test_xmlHashDeallocator(void *payload ATTRIBUTE_UNUSED, xmlChar *name ATTRIBUTE_UNUSED) {
  741: }
  742: 
  743: static xmlHashDeallocator gen_xmlHashDeallocator(int no, int nr ATTRIBUTE_UNUSED) {
  744:     if (no == 0) return(test_xmlHashDeallocator);
  745:     return(NULL);
  746: }
  747: static void des_xmlHashDeallocator(int no ATTRIBUTE_UNUSED, xmlHashDeallocator val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  748: }
  749: 
  750: 
  751: static void desret_int(int val ATTRIBUTE_UNUSED) {
  752: }
  753: static void desret_xmlChar(xmlChar val ATTRIBUTE_UNUSED) {
  754: }
  755: static void desret_long(long val ATTRIBUTE_UNUSED) {
  756: }
  757: static void desret_unsigned_long(unsigned long val ATTRIBUTE_UNUSED) {
  758: }
  759: static void desret_double(double val ATTRIBUTE_UNUSED) {
  760: }
  761: static void desret_xmlCharEncoding(xmlCharEncoding val ATTRIBUTE_UNUSED) {
  762: }
  763: #if 0
  764: static void desret_const_void_ptr(void *val ATTRIBUTE_UNUSED) {
  765: }
  766: #endif
  767: static void desret_void_ptr(void *val ATTRIBUTE_UNUSED) {
  768: }
  769: static void desret_const_char_ptr(const char *val ATTRIBUTE_UNUSED) {
  770: }
  771: static void desret_const_xmlChar_ptr(const xmlChar *val ATTRIBUTE_UNUSED) {
  772: }
  773: static void desret_xmlChar_ptr(xmlChar *val) {
  774:     if (val != NULL)
  775: 	xmlFree(val);
  776: }
  777: static void desret_xmlDocPtr(xmlDocPtr val) {
  778:     if (val != api_doc)
  779: 	xmlFreeDoc(val);
  780: }
  781: static void desret_xmlDictPtr(xmlDictPtr val) {
  782:     xmlDictFree(val);
  783: }
  784: #ifdef LIBXML_OUTPUT_ENABLED
  785: static void desret_xmlOutputBufferPtr(xmlOutputBufferPtr val) {
  786:     xmlOutputBufferClose(val);
  787: }
  788: #endif
  789: #ifdef LIBXML_READER_ENABLED
  790: static void desret_xmlTextReaderPtr(xmlTextReaderPtr val) {
  791:     xmlFreeTextReader(val);
  792: }
  793: #endif
  794: static void desret_xmlNodePtr(xmlNodePtr val) {
  795:     if ((val != NULL) && (val != api_root) && (val != (xmlNodePtr) api_doc)) {
  796: 	xmlUnlinkNode(val);
  797: 	xmlFreeNode(val);
  798:     }
  799: }
  800: static void desret_xmlAttrPtr(xmlAttrPtr val) {
  801:     if (val != NULL) {
  802: 	xmlUnlinkNode((xmlNodePtr) val);
  803: 	xmlFreeNode((xmlNodePtr) val);
  804:     }
  805: }
  806: static void desret_xmlEntityPtr(xmlEntityPtr val) {
  807:     if (val != NULL) {
  808: 	xmlUnlinkNode((xmlNodePtr) val);
  809: 	xmlFreeNode((xmlNodePtr) val);
  810:     }
  811: }
  812: static void desret_xmlElementPtr(xmlElementPtr val) {
  813:     if (val != NULL) {
  814: 	xmlUnlinkNode((xmlNodePtr) val);
  815:     }
  816: }
  817: static void desret_xmlAttributePtr(xmlAttributePtr val) {
  818:     if (val != NULL) {
  819: 	xmlUnlinkNode((xmlNodePtr) val);
  820:     }
  821: }
  822: static void desret_xmlNsPtr(xmlNsPtr val ATTRIBUTE_UNUSED) {
  823: }
  824: static void desret_xmlDtdPtr(xmlDtdPtr val) {
  825:     desret_xmlNodePtr((xmlNodePtr)val);
  826: }
  827: #ifdef LIBXML_XPATH_ENABLED
  828: static void desret_xmlXPathObjectPtr(xmlXPathObjectPtr val) {
  829:     xmlXPathFreeObject(val);
  830: }
  831: static void desret_xmlNodeSetPtr(xmlNodeSetPtr val) {
  832:     xmlXPathFreeNodeSet(val);
  833: }
  834: #endif
  835: static void desret_xmlParserCtxtPtr(xmlParserCtxtPtr val) {
  836:     xmlFreeParserCtxt(val);
  837: }
  838: static void desret_xmlParserInputBufferPtr(xmlParserInputBufferPtr val) {
  839:     xmlFreeParserInputBuffer(val);
  840: }
  841: static void desret_xmlParserInputPtr(xmlParserInputPtr val) {
  842:     xmlFreeInputStream(val);
  843: }
  844: #ifdef LIBXML_WRITER_ENABLED
  845: static void desret_xmlTextWriterPtr(xmlTextWriterPtr val) {
  846:     xmlFreeTextWriter(val);
  847: }
  848: #endif
  849: static void desret_xmlBufferPtr(xmlBufferPtr val) {
  850:     xmlBufferFree(val);
  851: }
  852: #ifdef LIBXML_SCHEMAS_ENABLED
  853: static void desret_xmlSchemaParserCtxtPtr(xmlSchemaParserCtxtPtr val) {
  854:     xmlSchemaFreeParserCtxt(val);
  855: }
  856: static void desret_xmlSchemaTypePtr(xmlSchemaTypePtr val ATTRIBUTE_UNUSED) {
  857: }
  858: static void desret_xmlRelaxNGParserCtxtPtr(xmlRelaxNGParserCtxtPtr val) {
  859:     xmlRelaxNGFreeParserCtxt(val);
  860: }
  861: #endif
  862: #ifdef LIBXML_HTML_ENABLED
  863: static void desret_const_htmlEntityDesc_ptr(const htmlEntityDesc * val ATTRIBUTE_UNUSED) {
  864: }
  865: #endif
  866: #ifdef LIBXML_HTTP_ENABLED
  867: static void desret_xmlNanoHTTPCtxtPtr(void *val) {
  868:     xmlNanoHTTPClose(val);
  869: }
  870: #endif
  871: #ifdef LIBXML_FTP_ENABLED
  872: static void desret_xmlNanoFTPCtxtPtr(void *val) {
  873:     xmlNanoFTPClose(val);
  874: }
  875: #endif
  876: /* cut and pasted from autogenerated to avoid troubles */
  877: #define gen_nb_const_xmlChar_ptr_ptr 1
  878: static xmlChar ** gen_const_xmlChar_ptr_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  879:     return(NULL);
  880: }
  881: static void des_const_xmlChar_ptr_ptr(int no ATTRIBUTE_UNUSED, const xmlChar ** val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  882: }
  883: 
  884: #define gen_nb_unsigned_char_ptr 1
  885: static unsigned char * gen_unsigned_char_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  886:     return(NULL);
  887: }
  888: static void des_unsigned_char_ptr(int no ATTRIBUTE_UNUSED, unsigned char * val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  889: }
  890: 
  891: #define gen_nb_const_unsigned_char_ptr 1
  892: static unsigned char * gen_const_unsigned_char_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  893:     return(NULL);
  894: }
  895: static void des_const_unsigned_char_ptr(int no ATTRIBUTE_UNUSED, const unsigned char * val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  896: }
  897: 
  898: #ifdef LIBXML_HTML_ENABLED
  899: #define gen_nb_const_htmlNodePtr 1
  900: static htmlNodePtr gen_const_htmlNodePtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  901:     return(NULL);
  902: }
  903: static void des_const_htmlNodePtr(int no ATTRIBUTE_UNUSED, const htmlNodePtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  904: }
  905: #endif
  906: 
  907: #ifdef LIBXML_HTML_ENABLED
  908: #define gen_nb_htmlDocPtr 3
  909: static htmlDocPtr gen_htmlDocPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  910:     if (no == 0) return(htmlNewDoc(NULL, NULL));
  911:     if (no == 1) return(htmlReadMemory("<html/>", 7, "test", NULL, 0));
  912:     return(NULL);
  913: }
  914: static void des_htmlDocPtr(int no ATTRIBUTE_UNUSED, htmlDocPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  915:     if ((val != NULL) && (val != api_doc) && (val->doc != api_doc))
  916:         xmlFreeDoc(val);
  917: }
  918: static void desret_htmlDocPtr(htmlDocPtr val) {
  919:     if ((val != NULL) && (val != api_doc) && (val->doc != api_doc))
  920:         xmlFreeDoc(val);
  921: }
  922: #define gen_nb_htmlParserCtxtPtr 3
  923: static htmlParserCtxtPtr gen_htmlParserCtxtPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  924:     if (no == 0) return(xmlNewParserCtxt());
  925:     if (no == 1) return(htmlCreateMemoryParserCtxt("<html/>", 7));
  926:     return(NULL);
  927: }
  928: static void des_htmlParserCtxtPtr(int no ATTRIBUTE_UNUSED, htmlParserCtxtPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  929:     if (val != NULL)
  930:         htmlFreeParserCtxt(val);
  931: }
  932: static void desret_htmlParserCtxtPtr(htmlParserCtxtPtr val) {
  933:     if (val != NULL)
  934:         htmlFreeParserCtxt(val);
  935: }
  936: #endif
  937: 
  938: #ifdef LIBXML_XPATH_ENABLED
  939: #define gen_nb_xmlNodeSetPtr 1
  940: static xmlNodeSetPtr gen_xmlNodeSetPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  941:     return(NULL);
  942: }
  943: static void des_xmlNodeSetPtr(int no ATTRIBUTE_UNUSED, xmlNodeSetPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  944: }
  945: #endif
  946: 
  947: #ifdef LIBXML_DEBUG_ENABLED
  948: #ifdef LIBXML_XPATH_ENABLED
  949: #define gen_nb_xmlShellCtxtPtr 1
  950: static xmlShellCtxtPtr gen_xmlShellCtxtPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  951:     return(NULL);
  952: }
  953: static void des_xmlShellCtxtPtr(int no ATTRIBUTE_UNUSED, xmlShellCtxtPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  954: }
  955: #endif
  956: #endif
  957: 
  958: #ifdef LIBXML_PATTERN_ENABLED
  959: #define gen_nb_xmlPatternPtr 1
  960: static xmlPatternPtr gen_xmlPatternPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  961:     return(NULL);
  962: }
  963: static void des_xmlPatternPtr(int no ATTRIBUTE_UNUSED, xmlPatternPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  964: }
  965: #endif
  966: 
  967: #define gen_nb_xmlElementContentPtr 1
  968: static xmlElementContentPtr gen_xmlElementContentPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  969:     return(NULL);
  970: }
  971: static void des_xmlElementContentPtr(int no ATTRIBUTE_UNUSED, xmlElementContentPtr val, int nr ATTRIBUTE_UNUSED) {
  972:     if (val != NULL)
  973:         xmlFreeElementContent(val);
  974: }
  975: static void desret_xmlElementContentPtr(xmlElementContentPtr val) {
  976:     if (val != NULL)
  977:         xmlFreeElementContent(val);
  978: }
  979: 
  980: #define gen_nb_xmlParserNodeInfoSeqPtr 1
  981: static xmlParserNodeInfoSeqPtr gen_xmlParserNodeInfoSeqPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  982:     return(NULL);
  983: }
  984: static void des_xmlParserNodeInfoSeqPtr(int no ATTRIBUTE_UNUSED, xmlParserNodeInfoSeqPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  985: }
  986: 
  987: static void desret_const_xmlParserNodeInfo_ptr(const xmlParserNodeInfo *val ATTRIBUTE_UNUSED) {
  988: }
  989: 
  990: #define gen_nb_void_ptr_ptr 1
  991: static void ** gen_void_ptr_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  992:     return(NULL);
  993: }
  994: static void des_void_ptr_ptr(int no ATTRIBUTE_UNUSED, void ** val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
  995: }
  996: 
  997: /************************************************************************
  998:  *									*
  999:  *   WARNING: end of the manually maintained part of the test code	*
 1000:  *            do not remove or alter the CUT HERE line			*
 1001:  *									*
 1002:  ************************************************************************/
 1003: 
 1004: /* CUT HERE: everything below that line is generated */
 1005: #ifdef LIBXML_HTML_ENABLED
 1006: static void desret_htmlStatus(htmlStatus val ATTRIBUTE_UNUSED) {
 1007: }
 1008: 
 1009: #endif
 1010: 
 1011: #define gen_nb_xmlAttributeDefault 4
 1012: static xmlAttributeDefault gen_xmlAttributeDefault(int no, int nr ATTRIBUTE_UNUSED) {
 1013:     if (no == 1) return(XML_ATTRIBUTE_FIXED);
 1014:     if (no == 2) return(XML_ATTRIBUTE_IMPLIED);
 1015:     if (no == 3) return(XML_ATTRIBUTE_NONE);
 1016:     if (no == 4) return(XML_ATTRIBUTE_REQUIRED);
 1017:     return(0);
 1018: }
 1019: 
 1020: static void des_xmlAttributeDefault(int no ATTRIBUTE_UNUSED, xmlAttributeDefault val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 1021: }
 1022: 
 1023: #define gen_nb_xmlAttributeType 4
 1024: static xmlAttributeType gen_xmlAttributeType(int no, int nr ATTRIBUTE_UNUSED) {
 1025:     if (no == 1) return(XML_ATTRIBUTE_CDATA);
 1026:     if (no == 2) return(XML_ATTRIBUTE_ENTITIES);
 1027:     if (no == 3) return(XML_ATTRIBUTE_ENTITY);
 1028:     if (no == 4) return(XML_ATTRIBUTE_ENUMERATION);
 1029:     return(0);
 1030: }
 1031: 
 1032: static void des_xmlAttributeType(int no ATTRIBUTE_UNUSED, xmlAttributeType val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 1033: }
 1034: 
 1035: #define gen_nb_xmlBufferAllocationScheme 4
 1036: static xmlBufferAllocationScheme gen_xmlBufferAllocationScheme(int no, int nr ATTRIBUTE_UNUSED) {
 1037:     if (no == 1) return(XML_BUFFER_ALLOC_DOUBLEIT);
 1038:     if (no == 2) return(XML_BUFFER_ALLOC_EXACT);
 1039:     if (no == 3) return(XML_BUFFER_ALLOC_HYBRID);
 1040:     if (no == 4) return(XML_BUFFER_ALLOC_IMMUTABLE);
 1041:     return(0);
 1042: }
 1043: 
 1044: static void des_xmlBufferAllocationScheme(int no ATTRIBUTE_UNUSED, xmlBufferAllocationScheme val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 1045: }
 1046: 
 1047: static void desret_xmlBufferAllocationScheme(xmlBufferAllocationScheme val ATTRIBUTE_UNUSED) {
 1048: }
 1049: 
 1050: #ifdef LIBXML_CATALOG_ENABLED
 1051: #define gen_nb_xmlCatalogAllow 4
 1052: static xmlCatalogAllow gen_xmlCatalogAllow(int no, int nr ATTRIBUTE_UNUSED) {
 1053:     if (no == 1) return(XML_CATA_ALLOW_ALL);
 1054:     if (no == 2) return(XML_CATA_ALLOW_DOCUMENT);
 1055:     if (no == 3) return(XML_CATA_ALLOW_GLOBAL);
 1056:     if (no == 4) return(XML_CATA_ALLOW_NONE);
 1057:     return(0);
 1058: }
 1059: 
 1060: static void des_xmlCatalogAllow(int no ATTRIBUTE_UNUSED, xmlCatalogAllow val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 1061: }
 1062: 
 1063: static void desret_xmlCatalogAllow(xmlCatalogAllow val ATTRIBUTE_UNUSED) {
 1064: }
 1065: 
 1066: #endif
 1067: 
 1068: #ifdef LIBXML_CATALOG_ENABLED
 1069: #define gen_nb_xmlCatalogPrefer 3
 1070: static xmlCatalogPrefer gen_xmlCatalogPrefer(int no, int nr ATTRIBUTE_UNUSED) {
 1071:     if (no == 1) return(XML_CATA_PREFER_NONE);
 1072:     if (no == 2) return(XML_CATA_PREFER_PUBLIC);
 1073:     if (no == 3) return(XML_CATA_PREFER_SYSTEM);
 1074:     return(0);
 1075: }
 1076: 
 1077: static void des_xmlCatalogPrefer(int no ATTRIBUTE_UNUSED, xmlCatalogPrefer val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 1078: }
 1079: 
 1080: static void desret_xmlCatalogPrefer(xmlCatalogPrefer val ATTRIBUTE_UNUSED) {
 1081: }
 1082: 
 1083: #endif
 1084: 
 1085: #define gen_nb_xmlElementContentType 4
 1086: static xmlElementContentType gen_xmlElementContentType(int no, int nr ATTRIBUTE_UNUSED) {
 1087:     if (no == 1) return(XML_ELEMENT_CONTENT_ELEMENT);
 1088:     if (no == 2) return(XML_ELEMENT_CONTENT_OR);
 1089:     if (no == 3) return(XML_ELEMENT_CONTENT_PCDATA);
 1090:     if (no == 4) return(XML_ELEMENT_CONTENT_SEQ);
 1091:     return(0);
 1092: }
 1093: 
 1094: static void des_xmlElementContentType(int no ATTRIBUTE_UNUSED, xmlElementContentType val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 1095: }
 1096: 
 1097: #define gen_nb_xmlElementTypeVal 4
 1098: static xmlElementTypeVal gen_xmlElementTypeVal(int no, int nr ATTRIBUTE_UNUSED) {
 1099:     if (no == 1) return(XML_ELEMENT_TYPE_ANY);
 1100:     if (no == 2) return(XML_ELEMENT_TYPE_ELEMENT);
 1101:     if (no == 3) return(XML_ELEMENT_TYPE_EMPTY);
 1102:     if (no == 4) return(XML_ELEMENT_TYPE_MIXED);
 1103:     return(0);
 1104: }
 1105: 
 1106: static void des_xmlElementTypeVal(int no ATTRIBUTE_UNUSED, xmlElementTypeVal val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 1107: }
 1108: 
 1109: #define gen_nb_xmlFeature 4
 1110: static xmlFeature gen_xmlFeature(int no, int nr ATTRIBUTE_UNUSED) {
 1111:     if (no == 1) return(XML_WITH_AUTOMATA);
 1112:     if (no == 2) return(XML_WITH_C14N);
 1113:     if (no == 3) return(XML_WITH_CATALOG);
 1114:     if (no == 4) return(XML_WITH_DEBUG);
 1115:     return(0);
 1116: }
 1117: 
 1118: static void des_xmlFeature(int no ATTRIBUTE_UNUSED, xmlFeature val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 1119: }
 1120: 
 1121: static void desret_xmlParserErrors(xmlParserErrors val ATTRIBUTE_UNUSED) {
 1122: }
 1123: 
 1124: #ifdef LIBXML_SCHEMAS_ENABLED
 1125: #define gen_nb_xmlSchemaValType 4
 1126: static xmlSchemaValType gen_xmlSchemaValType(int no, int nr ATTRIBUTE_UNUSED) {
 1127:     if (no == 1) return(XML_SCHEMAS_ANYSIMPLETYPE);
 1128:     if (no == 2) return(XML_SCHEMAS_ANYTYPE);
 1129:     if (no == 3) return(XML_SCHEMAS_ANYURI);
 1130:     if (no == 4) return(XML_SCHEMAS_BASE64BINARY);
 1131:     return(0);
 1132: }
 1133: 
 1134: static void des_xmlSchemaValType(int no ATTRIBUTE_UNUSED, xmlSchemaValType val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 1135: }
 1136: 
 1137: static void desret_xmlSchemaValType(xmlSchemaValType val ATTRIBUTE_UNUSED) {
 1138: }
 1139: 
 1140: #endif
 1141: 
 1142: #ifdef LIBXML_SCHEMAS_ENABLED
 1143: #define gen_nb_xmlSchemaWhitespaceValueType 4
 1144: static xmlSchemaWhitespaceValueType gen_xmlSchemaWhitespaceValueType(int no, int nr ATTRIBUTE_UNUSED) {
 1145:     if (no == 1) return(XML_SCHEMA_WHITESPACE_COLLAPSE);
 1146:     if (no == 2) return(XML_SCHEMA_WHITESPACE_PRESERVE);
 1147:     if (no == 3) return(XML_SCHEMA_WHITESPACE_REPLACE);
 1148:     if (no == 4) return(XML_SCHEMA_WHITESPACE_UNKNOWN);
 1149:     return(0);
 1150: }
 1151: 
 1152: static void des_xmlSchemaWhitespaceValueType(int no ATTRIBUTE_UNUSED, xmlSchemaWhitespaceValueType val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 1153: }
 1154: 
 1155: #endif
 1156: 
 1157: #include <libxml/HTMLparser.h>
 1158: #include <libxml/HTMLtree.h>
 1159: #include <libxml/SAX2.h>
 1160: #include <libxml/c14n.h>
 1161: #include <libxml/catalog.h>
 1162: #include <libxml/chvalid.h>
 1163: #include <libxml/debugXML.h>
 1164: #include <libxml/dict.h>
 1165: #include <libxml/encoding.h>
 1166: #include <libxml/entities.h>
 1167: #include <libxml/hash.h>
 1168: #include <libxml/list.h>
 1169: #include <libxml/nanoftp.h>
 1170: #include <libxml/nanohttp.h>
 1171: #include <libxml/parser.h>
 1172: #include <libxml/parserInternals.h>
 1173: #include <libxml/pattern.h>
 1174: #include <libxml/relaxng.h>
 1175: #include <libxml/schemasInternals.h>
 1176: #include <libxml/schematron.h>
 1177: #include <libxml/tree.h>
 1178: #include <libxml/uri.h>
 1179: #include <libxml/valid.h>
 1180: #include <libxml/xinclude.h>
 1181: #include <libxml/xmlIO.h>
 1182: #include <libxml/xmlautomata.h>
 1183: #include <libxml/xmlerror.h>
 1184: #include <libxml/xmlmodule.h>
 1185: #include <libxml/xmlreader.h>
 1186: #include <libxml/xmlregexp.h>
 1187: #include <libxml/xmlsave.h>
 1188: #include <libxml/xmlschemas.h>
 1189: #include <libxml/xmlschemastypes.h>
 1190: #include <libxml/xmlstring.h>
 1191: #include <libxml/xmlunicode.h>
 1192: #include <libxml/xmlwriter.h>
 1193: #include <libxml/xpath.h>
 1194: #include <libxml/xpathInternals.h>
 1195: #include <libxml/xpointer.h>
 1196: static int test_HTMLparser(void);
 1197: static int test_HTMLtree(void);
 1198: static int test_SAX2(void);
 1199: static int test_c14n(void);
 1200: static int test_catalog(void);
 1201: static int test_chvalid(void);
 1202: static int test_debugXML(void);
 1203: static int test_dict(void);
 1204: static int test_encoding(void);
 1205: static int test_entities(void);
 1206: static int test_hash(void);
 1207: static int test_list(void);
 1208: static int test_nanoftp(void);
 1209: static int test_nanohttp(void);
 1210: static int test_parser(void);
 1211: static int test_parserInternals(void);
 1212: static int test_pattern(void);
 1213: static int test_relaxng(void);
 1214: static int test_schemasInternals(void);
 1215: static int test_schematron(void);
 1216: static int test_tree(void);
 1217: static int test_uri(void);
 1218: static int test_valid(void);
 1219: static int test_xinclude(void);
 1220: static int test_xmlIO(void);
 1221: static int test_xmlautomata(void);
 1222: static int test_xmlerror(void);
 1223: static int test_xmlmodule(void);
 1224: static int test_xmlreader(void);
 1225: static int test_xmlregexp(void);
 1226: static int test_xmlsave(void);
 1227: static int test_xmlschemas(void);
 1228: static int test_xmlschemastypes(void);
 1229: static int test_xmlstring(void);
 1230: static int test_xmlunicode(void);
 1231: static int test_xmlwriter(void);
 1232: static int test_xpath(void);
 1233: static int test_xpathInternals(void);
 1234: static int test_xpointer(void);
 1235: 
 1236: /**
 1237:  * testlibxml2:
 1238:  *
 1239:  * Main entry point of the tester for the full libxml2 module,
 1240:  * it calls all the tester entry point for each module.
 1241:  *
 1242:  * Returns the number of error found
 1243:  */
 1244: static int
 1245: testlibxml2(void)
 1246: {
 1247:     int test_ret = 0;
 1248: 
 1249:     test_ret += test_HTMLparser();
 1250:     test_ret += test_HTMLtree();
 1251:     test_ret += test_SAX2();
 1252:     test_ret += test_c14n();
 1253:     test_ret += test_catalog();
 1254:     test_ret += test_chvalid();
 1255:     test_ret += test_debugXML();
 1256:     test_ret += test_dict();
 1257:     test_ret += test_encoding();
 1258:     test_ret += test_entities();
 1259:     test_ret += test_hash();
 1260:     test_ret += test_list();
 1261:     test_ret += test_nanoftp();
 1262:     test_ret += test_nanohttp();
 1263:     test_ret += test_parser();
 1264:     test_ret += test_parserInternals();
 1265:     test_ret += test_pattern();
 1266:     test_ret += test_relaxng();
 1267:     test_ret += test_schemasInternals();
 1268:     test_ret += test_schematron();
 1269:     test_ret += test_tree();
 1270:     test_ret += test_uri();
 1271:     test_ret += test_valid();
 1272:     test_ret += test_xinclude();
 1273:     test_ret += test_xmlIO();
 1274:     test_ret += test_xmlautomata();
 1275:     test_ret += test_xmlerror();
 1276:     test_ret += test_xmlmodule();
 1277:     test_ret += test_xmlreader();
 1278:     test_ret += test_xmlregexp();
 1279:     test_ret += test_xmlsave();
 1280:     test_ret += test_xmlschemas();
 1281:     test_ret += test_xmlschemastypes();
 1282:     test_ret += test_xmlstring();
 1283:     test_ret += test_xmlunicode();
 1284:     test_ret += test_xmlwriter();
 1285:     test_ret += test_xpath();
 1286:     test_ret += test_xpathInternals();
 1287:     test_ret += test_xpointer();
 1288: 
 1289:     printf("Total: %d functions, %d tests, %d errors\n",
 1290:            function_tests, call_tests, test_ret);
 1291:     return(test_ret);
 1292: }
 1293: 
 1294: 
 1295: static int
 1296: test_UTF8ToHtml(void) {
 1297:     int test_ret = 0;
 1298: 
 1299: #if defined(LIBXML_HTML_ENABLED)
 1300:     int mem_base;
 1301:     int ret_val;
 1302:     unsigned char * out; /* a pointer to an array of bytes to store the result */
 1303:     int n_out;
 1304:     int * outlen; /* the length of @out */
 1305:     int n_outlen;
 1306:     unsigned char * in; /* a pointer to an array of UTF-8 chars */
 1307:     int n_in;
 1308:     int * inlen; /* the length of @in */
 1309:     int n_inlen;
 1310: 
 1311:     for (n_out = 0;n_out < gen_nb_unsigned_char_ptr;n_out++) {
 1312:     for (n_outlen = 0;n_outlen < gen_nb_int_ptr;n_outlen++) {
 1313:     for (n_in = 0;n_in < gen_nb_const_unsigned_char_ptr;n_in++) {
 1314:     for (n_inlen = 0;n_inlen < gen_nb_int_ptr;n_inlen++) {
 1315:         mem_base = xmlMemBlocks();
 1316:         out = gen_unsigned_char_ptr(n_out, 0);
 1317:         outlen = gen_int_ptr(n_outlen, 1);
 1318:         in = gen_const_unsigned_char_ptr(n_in, 2);
 1319:         inlen = gen_int_ptr(n_inlen, 3);
 1320: 
 1321:         ret_val = UTF8ToHtml(out, outlen, (const unsigned char *)in, inlen);
 1322:         desret_int(ret_val);
 1323:         call_tests++;
 1324:         des_unsigned_char_ptr(n_out, out, 0);
 1325:         des_int_ptr(n_outlen, outlen, 1);
 1326:         des_const_unsigned_char_ptr(n_in, (const unsigned char *)in, 2);
 1327:         des_int_ptr(n_inlen, inlen, 3);
 1328:         xmlResetLastError();
 1329:         if (mem_base != xmlMemBlocks()) {
 1330:             printf("Leak of %d blocks found in UTF8ToHtml",
 1331: 	           xmlMemBlocks() - mem_base);
 1332: 	    test_ret++;
 1333:             printf(" %d", n_out);
 1334:             printf(" %d", n_outlen);
 1335:             printf(" %d", n_in);
 1336:             printf(" %d", n_inlen);
 1337:             printf("\n");
 1338:         }
 1339:     }
 1340:     }
 1341:     }
 1342:     }
 1343:     function_tests++;
 1344: #endif
 1345: 
 1346:     return(test_ret);
 1347: }
 1348: 
 1349: #ifdef LIBXML_HTML_ENABLED
 1350: 
 1351: #define gen_nb_const_htmlElemDesc_ptr 1
 1352: static htmlElemDesc * gen_const_htmlElemDesc_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 1353:     return(NULL);
 1354: }
 1355: static void des_const_htmlElemDesc_ptr(int no ATTRIBUTE_UNUSED, const htmlElemDesc * val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 1356: }
 1357: #endif
 1358: 
 1359: 
 1360: static int
 1361: test_htmlAttrAllowed(void) {
 1362:     int test_ret = 0;
 1363: 
 1364: #if defined(LIBXML_HTML_ENABLED)
 1365:     int mem_base;
 1366:     htmlStatus ret_val;
 1367:     htmlElemDesc * elt; /* HTML element */
 1368:     int n_elt;
 1369:     xmlChar * attr; /* HTML attribute */
 1370:     int n_attr;
 1371:     int legacy; /* whether to allow deprecated attributes */
 1372:     int n_legacy;
 1373: 
 1374:     for (n_elt = 0;n_elt < gen_nb_const_htmlElemDesc_ptr;n_elt++) {
 1375:     for (n_attr = 0;n_attr < gen_nb_const_xmlChar_ptr;n_attr++) {
 1376:     for (n_legacy = 0;n_legacy < gen_nb_int;n_legacy++) {
 1377:         mem_base = xmlMemBlocks();
 1378:         elt = gen_const_htmlElemDesc_ptr(n_elt, 0);
 1379:         attr = gen_const_xmlChar_ptr(n_attr, 1);
 1380:         legacy = gen_int(n_legacy, 2);
 1381: 
 1382:         ret_val = htmlAttrAllowed((const htmlElemDesc *)elt, (const xmlChar *)attr, legacy);
 1383:         desret_htmlStatus(ret_val);
 1384:         call_tests++;
 1385:         des_const_htmlElemDesc_ptr(n_elt, (const htmlElemDesc *)elt, 0);
 1386:         des_const_xmlChar_ptr(n_attr, (const xmlChar *)attr, 1);
 1387:         des_int(n_legacy, legacy, 2);
 1388:         xmlResetLastError();
 1389:         if (mem_base != xmlMemBlocks()) {
 1390:             printf("Leak of %d blocks found in htmlAttrAllowed",
 1391: 	           xmlMemBlocks() - mem_base);
 1392: 	    test_ret++;
 1393:             printf(" %d", n_elt);
 1394:             printf(" %d", n_attr);
 1395:             printf(" %d", n_legacy);
 1396:             printf("\n");
 1397:         }
 1398:     }
 1399:     }
 1400:     }
 1401:     function_tests++;
 1402: #endif
 1403: 
 1404:     return(test_ret);
 1405: }
 1406: 
 1407: #ifdef LIBXML_HTML_ENABLED
 1408: 
 1409: #define gen_nb_htmlNodePtr 1
 1410: static htmlNodePtr gen_htmlNodePtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 1411:     return(NULL);
 1412: }
 1413: static void des_htmlNodePtr(int no ATTRIBUTE_UNUSED, htmlNodePtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 1414: }
 1415: #endif
 1416: 
 1417: 
 1418: static int
 1419: test_htmlAutoCloseTag(void) {
 1420:     int test_ret = 0;
 1421: 
 1422: #if defined(LIBXML_HTML_ENABLED)
 1423:     int mem_base;
 1424:     int ret_val;
 1425:     htmlDocPtr doc; /* the HTML document */
 1426:     int n_doc;
 1427:     xmlChar * name; /* The tag name */
 1428:     int n_name;
 1429:     htmlNodePtr elem; /* the HTML element */
 1430:     int n_elem;
 1431: 
 1432:     for (n_doc = 0;n_doc < gen_nb_htmlDocPtr;n_doc++) {
 1433:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 1434:     for (n_elem = 0;n_elem < gen_nb_htmlNodePtr;n_elem++) {
 1435:         mem_base = xmlMemBlocks();
 1436:         doc = gen_htmlDocPtr(n_doc, 0);
 1437:         name = gen_const_xmlChar_ptr(n_name, 1);
 1438:         elem = gen_htmlNodePtr(n_elem, 2);
 1439: 
 1440:         ret_val = htmlAutoCloseTag(doc, (const xmlChar *)name, elem);
 1441:         desret_int(ret_val);
 1442:         call_tests++;
 1443:         des_htmlDocPtr(n_doc, doc, 0);
 1444:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 1445:         des_htmlNodePtr(n_elem, elem, 2);
 1446:         xmlResetLastError();
 1447:         if (mem_base != xmlMemBlocks()) {
 1448:             printf("Leak of %d blocks found in htmlAutoCloseTag",
 1449: 	           xmlMemBlocks() - mem_base);
 1450: 	    test_ret++;
 1451:             printf(" %d", n_doc);
 1452:             printf(" %d", n_name);
 1453:             printf(" %d", n_elem);
 1454:             printf("\n");
 1455:         }
 1456:     }
 1457:     }
 1458:     }
 1459:     function_tests++;
 1460: #endif
 1461: 
 1462:     return(test_ret);
 1463: }
 1464: 
 1465: 
 1466: static int
 1467: test_htmlCreateMemoryParserCtxt(void) {
 1468:     int test_ret = 0;
 1469: 
 1470: #if defined(LIBXML_HTML_ENABLED)
 1471:     int mem_base;
 1472:     htmlParserCtxtPtr ret_val;
 1473:     char * buffer; /* a pointer to a char array */
 1474:     int n_buffer;
 1475:     int size; /* the size of the array */
 1476:     int n_size;
 1477: 
 1478:     for (n_buffer = 0;n_buffer < gen_nb_const_char_ptr;n_buffer++) {
 1479:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
 1480:         mem_base = xmlMemBlocks();
 1481:         buffer = gen_const_char_ptr(n_buffer, 0);
 1482:         size = gen_int(n_size, 1);
 1483: 
 1484:         ret_val = htmlCreateMemoryParserCtxt((const char *)buffer, size);
 1485:         desret_htmlParserCtxtPtr(ret_val);
 1486:         call_tests++;
 1487:         des_const_char_ptr(n_buffer, (const char *)buffer, 0);
 1488:         des_int(n_size, size, 1);
 1489:         xmlResetLastError();
 1490:         if (mem_base != xmlMemBlocks()) {
 1491:             printf("Leak of %d blocks found in htmlCreateMemoryParserCtxt",
 1492: 	           xmlMemBlocks() - mem_base);
 1493: 	    test_ret++;
 1494:             printf(" %d", n_buffer);
 1495:             printf(" %d", n_size);
 1496:             printf("\n");
 1497:         }
 1498:     }
 1499:     }
 1500:     function_tests++;
 1501: #endif
 1502: 
 1503:     return(test_ret);
 1504: }
 1505: 
 1506: #ifdef LIBXML_HTML_ENABLED
 1507: 
 1508: #define gen_nb_htmlSAXHandlerPtr 1
 1509: static htmlSAXHandlerPtr gen_htmlSAXHandlerPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 1510:     return(NULL);
 1511: }
 1512: static void des_htmlSAXHandlerPtr(int no ATTRIBUTE_UNUSED, htmlSAXHandlerPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 1513: }
 1514: #endif
 1515: 
 1516: 
 1517: static int
 1518: test_htmlCreatePushParserCtxt(void) {
 1519:     int test_ret = 0;
 1520: 
 1521: #if defined(LIBXML_HTML_ENABLED) && defined(LIBXML_PUSH_ENABLED)
 1522:     int mem_base;
 1523:     htmlParserCtxtPtr ret_val;
 1524:     htmlSAXHandlerPtr sax; /* a SAX handler */
 1525:     int n_sax;
 1526:     void * user_data; /* The user data returned on SAX callbacks */
 1527:     int n_user_data;
 1528:     char * chunk; /* a pointer to an array of chars */
 1529:     int n_chunk;
 1530:     int size; /* number of chars in the array */
 1531:     int n_size;
 1532:     const char * filename; /* an optional file name or URI */
 1533:     int n_filename;
 1534:     xmlCharEncoding enc; /* an optional encoding */
 1535:     int n_enc;
 1536: 
 1537:     for (n_sax = 0;n_sax < gen_nb_htmlSAXHandlerPtr;n_sax++) {
 1538:     for (n_user_data = 0;n_user_data < gen_nb_userdata;n_user_data++) {
 1539:     for (n_chunk = 0;n_chunk < gen_nb_const_char_ptr;n_chunk++) {
 1540:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
 1541:     for (n_filename = 0;n_filename < gen_nb_fileoutput;n_filename++) {
 1542:     for (n_enc = 0;n_enc < gen_nb_xmlCharEncoding;n_enc++) {
 1543:         mem_base = xmlMemBlocks();
 1544:         sax = gen_htmlSAXHandlerPtr(n_sax, 0);
 1545:         user_data = gen_userdata(n_user_data, 1);
 1546:         chunk = gen_const_char_ptr(n_chunk, 2);
 1547:         size = gen_int(n_size, 3);
 1548:         filename = gen_fileoutput(n_filename, 4);
 1549:         enc = gen_xmlCharEncoding(n_enc, 5);
 1550: 
 1551:         ret_val = htmlCreatePushParserCtxt(sax, user_data, (const char *)chunk, size, filename, enc);
 1552:         desret_htmlParserCtxtPtr(ret_val);
 1553:         call_tests++;
 1554:         des_htmlSAXHandlerPtr(n_sax, sax, 0);
 1555:         des_userdata(n_user_data, user_data, 1);
 1556:         des_const_char_ptr(n_chunk, (const char *)chunk, 2);
 1557:         des_int(n_size, size, 3);
 1558:         des_fileoutput(n_filename, filename, 4);
 1559:         des_xmlCharEncoding(n_enc, enc, 5);
 1560:         xmlResetLastError();
 1561:         if (mem_base != xmlMemBlocks()) {
 1562:             printf("Leak of %d blocks found in htmlCreatePushParserCtxt",
 1563: 	           xmlMemBlocks() - mem_base);
 1564: 	    test_ret++;
 1565:             printf(" %d", n_sax);
 1566:             printf(" %d", n_user_data);
 1567:             printf(" %d", n_chunk);
 1568:             printf(" %d", n_size);
 1569:             printf(" %d", n_filename);
 1570:             printf(" %d", n_enc);
 1571:             printf("\n");
 1572:         }
 1573:     }
 1574:     }
 1575:     }
 1576:     }
 1577:     }
 1578:     }
 1579:     function_tests++;
 1580: #endif
 1581: 
 1582:     return(test_ret);
 1583: }
 1584: 
 1585: 
 1586: static int
 1587: test_htmlCtxtReadDoc(void) {
 1588:     int test_ret = 0;
 1589: 
 1590: #if defined(LIBXML_HTML_ENABLED)
 1591:     int mem_base;
 1592:     htmlDocPtr ret_val;
 1593:     htmlParserCtxtPtr ctxt; /* an HTML parser context */
 1594:     int n_ctxt;
 1595:     xmlChar * cur; /* a pointer to a zero terminated string */
 1596:     int n_cur;
 1597:     const char * URL; /* the base URL to use for the document */
 1598:     int n_URL;
 1599:     char * encoding; /* the document encoding, or NULL */
 1600:     int n_encoding;
 1601:     int options; /* a combination of htmlParserOption(s) */
 1602:     int n_options;
 1603: 
 1604:     for (n_ctxt = 0;n_ctxt < gen_nb_htmlParserCtxtPtr;n_ctxt++) {
 1605:     for (n_cur = 0;n_cur < gen_nb_const_xmlChar_ptr;n_cur++) {
 1606:     for (n_URL = 0;n_URL < gen_nb_filepath;n_URL++) {
 1607:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
 1608:     for (n_options = 0;n_options < gen_nb_int;n_options++) {
 1609:         mem_base = xmlMemBlocks();
 1610:         ctxt = gen_htmlParserCtxtPtr(n_ctxt, 0);
 1611:         cur = gen_const_xmlChar_ptr(n_cur, 1);
 1612:         URL = gen_filepath(n_URL, 2);
 1613:         encoding = gen_const_char_ptr(n_encoding, 3);
 1614:         options = gen_int(n_options, 4);
 1615: 
 1616:         ret_val = htmlCtxtReadDoc(ctxt, (const xmlChar *)cur, URL, (const char *)encoding, options);
 1617:         desret_htmlDocPtr(ret_val);
 1618:         call_tests++;
 1619:         des_htmlParserCtxtPtr(n_ctxt, ctxt, 0);
 1620:         des_const_xmlChar_ptr(n_cur, (const xmlChar *)cur, 1);
 1621:         des_filepath(n_URL, URL, 2);
 1622:         des_const_char_ptr(n_encoding, (const char *)encoding, 3);
 1623:         des_int(n_options, options, 4);
 1624:         xmlResetLastError();
 1625:         if (mem_base != xmlMemBlocks()) {
 1626:             printf("Leak of %d blocks found in htmlCtxtReadDoc",
 1627: 	           xmlMemBlocks() - mem_base);
 1628: 	    test_ret++;
 1629:             printf(" %d", n_ctxt);
 1630:             printf(" %d", n_cur);
 1631:             printf(" %d", n_URL);
 1632:             printf(" %d", n_encoding);
 1633:             printf(" %d", n_options);
 1634:             printf("\n");
 1635:         }
 1636:     }
 1637:     }
 1638:     }
 1639:     }
 1640:     }
 1641:     function_tests++;
 1642: #endif
 1643: 
 1644:     return(test_ret);
 1645: }
 1646: 
 1647: 
 1648: static int
 1649: test_htmlCtxtReadFile(void) {
 1650:     int test_ret = 0;
 1651: 
 1652: #if defined(LIBXML_HTML_ENABLED)
 1653:     htmlDocPtr ret_val;
 1654:     htmlParserCtxtPtr ctxt; /* an HTML parser context */
 1655:     int n_ctxt;
 1656:     const char * filename; /* a file or URL */
 1657:     int n_filename;
 1658:     char * encoding; /* the document encoding, or NULL */
 1659:     int n_encoding;
 1660:     int options; /* a combination of htmlParserOption(s) */
 1661:     int n_options;
 1662: 
 1663:     for (n_ctxt = 0;n_ctxt < gen_nb_htmlParserCtxtPtr;n_ctxt++) {
 1664:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
 1665:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
 1666:     for (n_options = 0;n_options < gen_nb_int;n_options++) {
 1667:         ctxt = gen_htmlParserCtxtPtr(n_ctxt, 0);
 1668:         filename = gen_filepath(n_filename, 1);
 1669:         encoding = gen_const_char_ptr(n_encoding, 2);
 1670:         options = gen_int(n_options, 3);
 1671: 
 1672:         ret_val = htmlCtxtReadFile(ctxt, filename, (const char *)encoding, options);
 1673:         desret_htmlDocPtr(ret_val);
 1674:         call_tests++;
 1675:         des_htmlParserCtxtPtr(n_ctxt, ctxt, 0);
 1676:         des_filepath(n_filename, filename, 1);
 1677:         des_const_char_ptr(n_encoding, (const char *)encoding, 2);
 1678:         des_int(n_options, options, 3);
 1679:         xmlResetLastError();
 1680:     }
 1681:     }
 1682:     }
 1683:     }
 1684:     function_tests++;
 1685: #endif
 1686: 
 1687:     return(test_ret);
 1688: }
 1689: 
 1690: 
 1691: static int
 1692: test_htmlCtxtReadMemory(void) {
 1693:     int test_ret = 0;
 1694: 
 1695: #if defined(LIBXML_HTML_ENABLED)
 1696:     int mem_base;
 1697:     htmlDocPtr ret_val;
 1698:     htmlParserCtxtPtr ctxt; /* an HTML parser context */
 1699:     int n_ctxt;
 1700:     char * buffer; /* a pointer to a char array */
 1701:     int n_buffer;
 1702:     int size; /* the size of the array */
 1703:     int n_size;
 1704:     const char * URL; /* the base URL to use for the document */
 1705:     int n_URL;
 1706:     char * encoding; /* the document encoding, or NULL */
 1707:     int n_encoding;
 1708:     int options; /* a combination of htmlParserOption(s) */
 1709:     int n_options;
 1710: 
 1711:     for (n_ctxt = 0;n_ctxt < gen_nb_htmlParserCtxtPtr;n_ctxt++) {
 1712:     for (n_buffer = 0;n_buffer < gen_nb_const_char_ptr;n_buffer++) {
 1713:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
 1714:     for (n_URL = 0;n_URL < gen_nb_filepath;n_URL++) {
 1715:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
 1716:     for (n_options = 0;n_options < gen_nb_int;n_options++) {
 1717:         mem_base = xmlMemBlocks();
 1718:         ctxt = gen_htmlParserCtxtPtr(n_ctxt, 0);
 1719:         buffer = gen_const_char_ptr(n_buffer, 1);
 1720:         size = gen_int(n_size, 2);
 1721:         URL = gen_filepath(n_URL, 3);
 1722:         encoding = gen_const_char_ptr(n_encoding, 4);
 1723:         options = gen_int(n_options, 5);
 1724: 
 1725:         ret_val = htmlCtxtReadMemory(ctxt, (const char *)buffer, size, URL, (const char *)encoding, options);
 1726:         desret_htmlDocPtr(ret_val);
 1727:         call_tests++;
 1728:         des_htmlParserCtxtPtr(n_ctxt, ctxt, 0);
 1729:         des_const_char_ptr(n_buffer, (const char *)buffer, 1);
 1730:         des_int(n_size, size, 2);
 1731:         des_filepath(n_URL, URL, 3);
 1732:         des_const_char_ptr(n_encoding, (const char *)encoding, 4);
 1733:         des_int(n_options, options, 5);
 1734:         xmlResetLastError();
 1735:         if (mem_base != xmlMemBlocks()) {
 1736:             printf("Leak of %d blocks found in htmlCtxtReadMemory",
 1737: 	           xmlMemBlocks() - mem_base);
 1738: 	    test_ret++;
 1739:             printf(" %d", n_ctxt);
 1740:             printf(" %d", n_buffer);
 1741:             printf(" %d", n_size);
 1742:             printf(" %d", n_URL);
 1743:             printf(" %d", n_encoding);
 1744:             printf(" %d", n_options);
 1745:             printf("\n");
 1746:         }
 1747:     }
 1748:     }
 1749:     }
 1750:     }
 1751:     }
 1752:     }
 1753:     function_tests++;
 1754: #endif
 1755: 
 1756:     return(test_ret);
 1757: }
 1758: 
 1759: 
 1760: static int
 1761: test_htmlCtxtReset(void) {
 1762:     int test_ret = 0;
 1763: 
 1764: #if defined(LIBXML_HTML_ENABLED)
 1765:     int mem_base;
 1766:     htmlParserCtxtPtr ctxt; /* an HTML parser context */
 1767:     int n_ctxt;
 1768: 
 1769:     for (n_ctxt = 0;n_ctxt < gen_nb_htmlParserCtxtPtr;n_ctxt++) {
 1770:         mem_base = xmlMemBlocks();
 1771:         ctxt = gen_htmlParserCtxtPtr(n_ctxt, 0);
 1772: 
 1773:         htmlCtxtReset(ctxt);
 1774:         call_tests++;
 1775:         des_htmlParserCtxtPtr(n_ctxt, ctxt, 0);
 1776:         xmlResetLastError();
 1777:         if (mem_base != xmlMemBlocks()) {
 1778:             printf("Leak of %d blocks found in htmlCtxtReset",
 1779: 	           xmlMemBlocks() - mem_base);
 1780: 	    test_ret++;
 1781:             printf(" %d", n_ctxt);
 1782:             printf("\n");
 1783:         }
 1784:     }
 1785:     function_tests++;
 1786: #endif
 1787: 
 1788:     return(test_ret);
 1789: }
 1790: 
 1791: 
 1792: static int
 1793: test_htmlCtxtUseOptions(void) {
 1794:     int test_ret = 0;
 1795: 
 1796: #if defined(LIBXML_HTML_ENABLED)
 1797:     int mem_base;
 1798:     int ret_val;
 1799:     htmlParserCtxtPtr ctxt; /* an HTML parser context */
 1800:     int n_ctxt;
 1801:     int options; /* a combination of htmlParserOption(s) */
 1802:     int n_options;
 1803: 
 1804:     for (n_ctxt = 0;n_ctxt < gen_nb_htmlParserCtxtPtr;n_ctxt++) {
 1805:     for (n_options = 0;n_options < gen_nb_int;n_options++) {
 1806:         mem_base = xmlMemBlocks();
 1807:         ctxt = gen_htmlParserCtxtPtr(n_ctxt, 0);
 1808:         options = gen_int(n_options, 1);
 1809: 
 1810:         ret_val = htmlCtxtUseOptions(ctxt, options);
 1811:         desret_int(ret_val);
 1812:         call_tests++;
 1813:         des_htmlParserCtxtPtr(n_ctxt, ctxt, 0);
 1814:         des_int(n_options, options, 1);
 1815:         xmlResetLastError();
 1816:         if (mem_base != xmlMemBlocks()) {
 1817:             printf("Leak of %d blocks found in htmlCtxtUseOptions",
 1818: 	           xmlMemBlocks() - mem_base);
 1819: 	    test_ret++;
 1820:             printf(" %d", n_ctxt);
 1821:             printf(" %d", n_options);
 1822:             printf("\n");
 1823:         }
 1824:     }
 1825:     }
 1826:     function_tests++;
 1827: #endif
 1828: 
 1829:     return(test_ret);
 1830: }
 1831: 
 1832: 
 1833: static int
 1834: test_htmlElementAllowedHere(void) {
 1835:     int test_ret = 0;
 1836: 
 1837: #if defined(LIBXML_HTML_ENABLED)
 1838:     int mem_base;
 1839:     int ret_val;
 1840:     htmlElemDesc * parent; /* HTML parent element */
 1841:     int n_parent;
 1842:     xmlChar * elt; /* HTML element */
 1843:     int n_elt;
 1844: 
 1845:     for (n_parent = 0;n_parent < gen_nb_const_htmlElemDesc_ptr;n_parent++) {
 1846:     for (n_elt = 0;n_elt < gen_nb_const_xmlChar_ptr;n_elt++) {
 1847:         mem_base = xmlMemBlocks();
 1848:         parent = gen_const_htmlElemDesc_ptr(n_parent, 0);
 1849:         elt = gen_const_xmlChar_ptr(n_elt, 1);
 1850: 
 1851:         ret_val = htmlElementAllowedHere((const htmlElemDesc *)parent, (const xmlChar *)elt);
 1852:         desret_int(ret_val);
 1853:         call_tests++;
 1854:         des_const_htmlElemDesc_ptr(n_parent, (const htmlElemDesc *)parent, 0);
 1855:         des_const_xmlChar_ptr(n_elt, (const xmlChar *)elt, 1);
 1856:         xmlResetLastError();
 1857:         if (mem_base != xmlMemBlocks()) {
 1858:             printf("Leak of %d blocks found in htmlElementAllowedHere",
 1859: 	           xmlMemBlocks() - mem_base);
 1860: 	    test_ret++;
 1861:             printf(" %d", n_parent);
 1862:             printf(" %d", n_elt);
 1863:             printf("\n");
 1864:         }
 1865:     }
 1866:     }
 1867:     function_tests++;
 1868: #endif
 1869: 
 1870:     return(test_ret);
 1871: }
 1872: 
 1873: 
 1874: static int
 1875: test_htmlElementStatusHere(void) {
 1876:     int test_ret = 0;
 1877: 
 1878: #if defined(LIBXML_HTML_ENABLED)
 1879:     int mem_base;
 1880:     htmlStatus ret_val;
 1881:     htmlElemDesc * parent; /* HTML parent element */
 1882:     int n_parent;
 1883:     htmlElemDesc * elt; /* HTML element */
 1884:     int n_elt;
 1885: 
 1886:     for (n_parent = 0;n_parent < gen_nb_const_htmlElemDesc_ptr;n_parent++) {
 1887:     for (n_elt = 0;n_elt < gen_nb_const_htmlElemDesc_ptr;n_elt++) {
 1888:         mem_base = xmlMemBlocks();
 1889:         parent = gen_const_htmlElemDesc_ptr(n_parent, 0);
 1890:         elt = gen_const_htmlElemDesc_ptr(n_elt, 1);
 1891: 
 1892:         ret_val = htmlElementStatusHere((const htmlElemDesc *)parent, (const htmlElemDesc *)elt);
 1893:         desret_htmlStatus(ret_val);
 1894:         call_tests++;
 1895:         des_const_htmlElemDesc_ptr(n_parent, (const htmlElemDesc *)parent, 0);
 1896:         des_const_htmlElemDesc_ptr(n_elt, (const htmlElemDesc *)elt, 1);
 1897:         xmlResetLastError();
 1898:         if (mem_base != xmlMemBlocks()) {
 1899:             printf("Leak of %d blocks found in htmlElementStatusHere",
 1900: 	           xmlMemBlocks() - mem_base);
 1901: 	    test_ret++;
 1902:             printf(" %d", n_parent);
 1903:             printf(" %d", n_elt);
 1904:             printf("\n");
 1905:         }
 1906:     }
 1907:     }
 1908:     function_tests++;
 1909: #endif
 1910: 
 1911:     return(test_ret);
 1912: }
 1913: 
 1914: 
 1915: static int
 1916: test_htmlEncodeEntities(void) {
 1917:     int test_ret = 0;
 1918: 
 1919: #if defined(LIBXML_HTML_ENABLED)
 1920:     int mem_base;
 1921:     int ret_val;
 1922:     unsigned char * out; /* a pointer to an array of bytes to store the result */
 1923:     int n_out;
 1924:     int * outlen; /* the length of @out */
 1925:     int n_outlen;
 1926:     unsigned char * in; /* a pointer to an array of UTF-8 chars */
 1927:     int n_in;
 1928:     int * inlen; /* the length of @in */
 1929:     int n_inlen;
 1930:     int quoteChar; /* the quote character to escape (' or ") or zero. */
 1931:     int n_quoteChar;
 1932: 
 1933:     for (n_out = 0;n_out < gen_nb_unsigned_char_ptr;n_out++) {
 1934:     for (n_outlen = 0;n_outlen < gen_nb_int_ptr;n_outlen++) {
 1935:     for (n_in = 0;n_in < gen_nb_const_unsigned_char_ptr;n_in++) {
 1936:     for (n_inlen = 0;n_inlen < gen_nb_int_ptr;n_inlen++) {
 1937:     for (n_quoteChar = 0;n_quoteChar < gen_nb_int;n_quoteChar++) {
 1938:         mem_base = xmlMemBlocks();
 1939:         out = gen_unsigned_char_ptr(n_out, 0);
 1940:         outlen = gen_int_ptr(n_outlen, 1);
 1941:         in = gen_const_unsigned_char_ptr(n_in, 2);
 1942:         inlen = gen_int_ptr(n_inlen, 3);
 1943:         quoteChar = gen_int(n_quoteChar, 4);
 1944: 
 1945:         ret_val = htmlEncodeEntities(out, outlen, (const unsigned char *)in, inlen, quoteChar);
 1946:         desret_int(ret_val);
 1947:         call_tests++;
 1948:         des_unsigned_char_ptr(n_out, out, 0);
 1949:         des_int_ptr(n_outlen, outlen, 1);
 1950:         des_const_unsigned_char_ptr(n_in, (const unsigned char *)in, 2);
 1951:         des_int_ptr(n_inlen, inlen, 3);
 1952:         des_int(n_quoteChar, quoteChar, 4);
 1953:         xmlResetLastError();
 1954:         if (mem_base != xmlMemBlocks()) {
 1955:             printf("Leak of %d blocks found in htmlEncodeEntities",
 1956: 	           xmlMemBlocks() - mem_base);
 1957: 	    test_ret++;
 1958:             printf(" %d", n_out);
 1959:             printf(" %d", n_outlen);
 1960:             printf(" %d", n_in);
 1961:             printf(" %d", n_inlen);
 1962:             printf(" %d", n_quoteChar);
 1963:             printf("\n");
 1964:         }
 1965:     }
 1966:     }
 1967:     }
 1968:     }
 1969:     }
 1970:     function_tests++;
 1971: #endif
 1972: 
 1973:     return(test_ret);
 1974: }
 1975: 
 1976: 
 1977: static int
 1978: test_htmlEntityLookup(void) {
 1979:     int test_ret = 0;
 1980: 
 1981: #if defined(LIBXML_HTML_ENABLED)
 1982:     int mem_base;
 1983:     const htmlEntityDesc * ret_val;
 1984:     xmlChar * name; /* the entity name */
 1985:     int n_name;
 1986: 
 1987:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 1988:         mem_base = xmlMemBlocks();
 1989:         name = gen_const_xmlChar_ptr(n_name, 0);
 1990: 
 1991:         ret_val = htmlEntityLookup((const xmlChar *)name);
 1992:         desret_const_htmlEntityDesc_ptr(ret_val);
 1993:         call_tests++;
 1994:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 0);
 1995:         xmlResetLastError();
 1996:         if (mem_base != xmlMemBlocks()) {
 1997:             printf("Leak of %d blocks found in htmlEntityLookup",
 1998: 	           xmlMemBlocks() - mem_base);
 1999: 	    test_ret++;
 2000:             printf(" %d", n_name);
 2001:             printf("\n");
 2002:         }
 2003:     }
 2004:     function_tests++;
 2005: #endif
 2006: 
 2007:     return(test_ret);
 2008: }
 2009: 
 2010: 
 2011: static int
 2012: test_htmlEntityValueLookup(void) {
 2013:     int test_ret = 0;
 2014: 
 2015: #if defined(LIBXML_HTML_ENABLED)
 2016:     int mem_base;
 2017:     const htmlEntityDesc * ret_val;
 2018:     unsigned int value; /* the entity's unicode value */
 2019:     int n_value;
 2020: 
 2021:     for (n_value = 0;n_value < gen_nb_unsigned_int;n_value++) {
 2022:         mem_base = xmlMemBlocks();
 2023:         value = gen_unsigned_int(n_value, 0);
 2024: 
 2025:         ret_val = htmlEntityValueLookup(value);
 2026:         desret_const_htmlEntityDesc_ptr(ret_val);
 2027:         call_tests++;
 2028:         des_unsigned_int(n_value, value, 0);
 2029:         xmlResetLastError();
 2030:         if (mem_base != xmlMemBlocks()) {
 2031:             printf("Leak of %d blocks found in htmlEntityValueLookup",
 2032: 	           xmlMemBlocks() - mem_base);
 2033: 	    test_ret++;
 2034:             printf(" %d", n_value);
 2035:             printf("\n");
 2036:         }
 2037:     }
 2038:     function_tests++;
 2039: #endif
 2040: 
 2041:     return(test_ret);
 2042: }
 2043: 
 2044: 
 2045: static int
 2046: test_htmlHandleOmittedElem(void) {
 2047:     int test_ret = 0;
 2048: 
 2049: #if defined(LIBXML_HTML_ENABLED)
 2050:     int mem_base;
 2051:     int ret_val;
 2052:     int val; /* int 0 or 1 */
 2053:     int n_val;
 2054: 
 2055:     for (n_val = 0;n_val < gen_nb_int;n_val++) {
 2056:         mem_base = xmlMemBlocks();
 2057:         val = gen_int(n_val, 0);
 2058: 
 2059:         ret_val = htmlHandleOmittedElem(val);
 2060:         desret_int(ret_val);
 2061:         call_tests++;
 2062:         des_int(n_val, val, 0);
 2063:         xmlResetLastError();
 2064:         if (mem_base != xmlMemBlocks()) {
 2065:             printf("Leak of %d blocks found in htmlHandleOmittedElem",
 2066: 	           xmlMemBlocks() - mem_base);
 2067: 	    test_ret++;
 2068:             printf(" %d", n_val);
 2069:             printf("\n");
 2070:         }
 2071:     }
 2072:     function_tests++;
 2073: #endif
 2074: 
 2075:     return(test_ret);
 2076: }
 2077: 
 2078: 
 2079: static int
 2080: test_htmlIsAutoClosed(void) {
 2081:     int test_ret = 0;
 2082: 
 2083: #if defined(LIBXML_HTML_ENABLED)
 2084:     int mem_base;
 2085:     int ret_val;
 2086:     htmlDocPtr doc; /* the HTML document */
 2087:     int n_doc;
 2088:     htmlNodePtr elem; /* the HTML element */
 2089:     int n_elem;
 2090: 
 2091:     for (n_doc = 0;n_doc < gen_nb_htmlDocPtr;n_doc++) {
 2092:     for (n_elem = 0;n_elem < gen_nb_htmlNodePtr;n_elem++) {
 2093:         mem_base = xmlMemBlocks();
 2094:         doc = gen_htmlDocPtr(n_doc, 0);
 2095:         elem = gen_htmlNodePtr(n_elem, 1);
 2096: 
 2097:         ret_val = htmlIsAutoClosed(doc, elem);
 2098:         desret_int(ret_val);
 2099:         call_tests++;
 2100:         des_htmlDocPtr(n_doc, doc, 0);
 2101:         des_htmlNodePtr(n_elem, elem, 1);
 2102:         xmlResetLastError();
 2103:         if (mem_base != xmlMemBlocks()) {
 2104:             printf("Leak of %d blocks found in htmlIsAutoClosed",
 2105: 	           xmlMemBlocks() - mem_base);
 2106: 	    test_ret++;
 2107:             printf(" %d", n_doc);
 2108:             printf(" %d", n_elem);
 2109:             printf("\n");
 2110:         }
 2111:     }
 2112:     }
 2113:     function_tests++;
 2114: #endif
 2115: 
 2116:     return(test_ret);
 2117: }
 2118: 
 2119: 
 2120: static int
 2121: test_htmlIsScriptAttribute(void) {
 2122:     int test_ret = 0;
 2123: 
 2124: #if defined(LIBXML_HTML_ENABLED)
 2125:     int mem_base;
 2126:     int ret_val;
 2127:     xmlChar * name; /* an attribute name */
 2128:     int n_name;
 2129: 
 2130:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 2131:         mem_base = xmlMemBlocks();
 2132:         name = gen_const_xmlChar_ptr(n_name, 0);
 2133: 
 2134:         ret_val = htmlIsScriptAttribute((const xmlChar *)name);
 2135:         desret_int(ret_val);
 2136:         call_tests++;
 2137:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 0);
 2138:         xmlResetLastError();
 2139:         if (mem_base != xmlMemBlocks()) {
 2140:             printf("Leak of %d blocks found in htmlIsScriptAttribute",
 2141: 	           xmlMemBlocks() - mem_base);
 2142: 	    test_ret++;
 2143:             printf(" %d", n_name);
 2144:             printf("\n");
 2145:         }
 2146:     }
 2147:     function_tests++;
 2148: #endif
 2149: 
 2150:     return(test_ret);
 2151: }
 2152: 
 2153: 
 2154: static int
 2155: test_htmlNewParserCtxt(void) {
 2156:     int test_ret = 0;
 2157: 
 2158: #if defined(LIBXML_HTML_ENABLED)
 2159:     int mem_base;
 2160:     htmlParserCtxtPtr ret_val;
 2161: 
 2162:         mem_base = xmlMemBlocks();
 2163: 
 2164:         ret_val = htmlNewParserCtxt();
 2165:         desret_htmlParserCtxtPtr(ret_val);
 2166:         call_tests++;
 2167:         xmlResetLastError();
 2168:         if (mem_base != xmlMemBlocks()) {
 2169:             printf("Leak of %d blocks found in htmlNewParserCtxt",
 2170: 	           xmlMemBlocks() - mem_base);
 2171: 	    test_ret++;
 2172:             printf("\n");
 2173:         }
 2174:     function_tests++;
 2175: #endif
 2176: 
 2177:     return(test_ret);
 2178: }
 2179: 
 2180: 
 2181: static int
 2182: test_htmlNodeStatus(void) {
 2183:     int test_ret = 0;
 2184: 
 2185: #if defined(LIBXML_HTML_ENABLED)
 2186:     int mem_base;
 2187:     htmlStatus ret_val;
 2188:     htmlNodePtr node; /* an htmlNodePtr in a tree */
 2189:     int n_node;
 2190:     int legacy; /* whether to allow deprecated elements (YES is faster here for Element nodes) */
 2191:     int n_legacy;
 2192: 
 2193:     for (n_node = 0;n_node < gen_nb_const_htmlNodePtr;n_node++) {
 2194:     for (n_legacy = 0;n_legacy < gen_nb_int;n_legacy++) {
 2195:         mem_base = xmlMemBlocks();
 2196:         node = gen_const_htmlNodePtr(n_node, 0);
 2197:         legacy = gen_int(n_legacy, 1);
 2198: 
 2199:         ret_val = htmlNodeStatus((const htmlNodePtr)node, legacy);
 2200:         desret_htmlStatus(ret_val);
 2201:         call_tests++;
 2202:         des_const_htmlNodePtr(n_node, (const htmlNodePtr)node, 0);
 2203:         des_int(n_legacy, legacy, 1);
 2204:         xmlResetLastError();
 2205:         if (mem_base != xmlMemBlocks()) {
 2206:             printf("Leak of %d blocks found in htmlNodeStatus",
 2207: 	           xmlMemBlocks() - mem_base);
 2208: 	    test_ret++;
 2209:             printf(" %d", n_node);
 2210:             printf(" %d", n_legacy);
 2211:             printf("\n");
 2212:         }
 2213:     }
 2214:     }
 2215:     function_tests++;
 2216: #endif
 2217: 
 2218:     return(test_ret);
 2219: }
 2220: 
 2221: 
 2222: static int
 2223: test_htmlParseCharRef(void) {
 2224:     int test_ret = 0;
 2225: 
 2226: #if defined(LIBXML_HTML_ENABLED)
 2227:     int mem_base;
 2228:     int ret_val;
 2229:     htmlParserCtxtPtr ctxt; /* an HTML parser context */
 2230:     int n_ctxt;
 2231: 
 2232:     for (n_ctxt = 0;n_ctxt < gen_nb_htmlParserCtxtPtr;n_ctxt++) {
 2233:         mem_base = xmlMemBlocks();
 2234:         ctxt = gen_htmlParserCtxtPtr(n_ctxt, 0);
 2235: 
 2236:         ret_val = htmlParseCharRef(ctxt);
 2237:         desret_int(ret_val);
 2238:         call_tests++;
 2239:         des_htmlParserCtxtPtr(n_ctxt, ctxt, 0);
 2240:         xmlResetLastError();
 2241:         if (mem_base != xmlMemBlocks()) {
 2242:             printf("Leak of %d blocks found in htmlParseCharRef",
 2243: 	           xmlMemBlocks() - mem_base);
 2244: 	    test_ret++;
 2245:             printf(" %d", n_ctxt);
 2246:             printf("\n");
 2247:         }
 2248:     }
 2249:     function_tests++;
 2250: #endif
 2251: 
 2252:     return(test_ret);
 2253: }
 2254: 
 2255: 
 2256: static int
 2257: test_htmlParseChunk(void) {
 2258:     int test_ret = 0;
 2259: 
 2260: #if defined(LIBXML_HTML_ENABLED) && defined(LIBXML_PUSH_ENABLED)
 2261:     int mem_base;
 2262:     int ret_val;
 2263:     htmlParserCtxtPtr ctxt; /* an HTML parser context */
 2264:     int n_ctxt;
 2265:     char * chunk; /* an char array */
 2266:     int n_chunk;
 2267:     int size; /* the size in byte of the chunk */
 2268:     int n_size;
 2269:     int terminate; /* last chunk indicator */
 2270:     int n_terminate;
 2271: 
 2272:     for (n_ctxt = 0;n_ctxt < gen_nb_htmlParserCtxtPtr;n_ctxt++) {
 2273:     for (n_chunk = 0;n_chunk < gen_nb_const_char_ptr;n_chunk++) {
 2274:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
 2275:     for (n_terminate = 0;n_terminate < gen_nb_int;n_terminate++) {
 2276:         mem_base = xmlMemBlocks();
 2277:         ctxt = gen_htmlParserCtxtPtr(n_ctxt, 0);
 2278:         chunk = gen_const_char_ptr(n_chunk, 1);
 2279:         size = gen_int(n_size, 2);
 2280:         terminate = gen_int(n_terminate, 3);
 2281: 
 2282:         ret_val = htmlParseChunk(ctxt, (const char *)chunk, size, terminate);
 2283:         if (ctxt != NULL) {xmlFreeDoc(ctxt->myDoc); ctxt->myDoc = NULL;}
 2284:         desret_int(ret_val);
 2285:         call_tests++;
 2286:         des_htmlParserCtxtPtr(n_ctxt, ctxt, 0);
 2287:         des_const_char_ptr(n_chunk, (const char *)chunk, 1);
 2288:         des_int(n_size, size, 2);
 2289:         des_int(n_terminate, terminate, 3);
 2290:         xmlResetLastError();
 2291:         if (mem_base != xmlMemBlocks()) {
 2292:             printf("Leak of %d blocks found in htmlParseChunk",
 2293: 	           xmlMemBlocks() - mem_base);
 2294: 	    test_ret++;
 2295:             printf(" %d", n_ctxt);
 2296:             printf(" %d", n_chunk);
 2297:             printf(" %d", n_size);
 2298:             printf(" %d", n_terminate);
 2299:             printf("\n");
 2300:         }
 2301:     }
 2302:     }
 2303:     }
 2304:     }
 2305:     function_tests++;
 2306: #endif
 2307: 
 2308:     return(test_ret);
 2309: }
 2310: 
 2311: 
 2312: static int
 2313: test_htmlParseDoc(void) {
 2314:     int test_ret = 0;
 2315: 
 2316: #if defined(LIBXML_HTML_ENABLED)
 2317:     int mem_base;
 2318:     htmlDocPtr ret_val;
 2319:     xmlChar * cur; /* a pointer to an array of xmlChar */
 2320:     int n_cur;
 2321:     char * encoding; /* a free form C string describing the HTML document encoding, or NULL */
 2322:     int n_encoding;
 2323: 
 2324:     for (n_cur = 0;n_cur < gen_nb_xmlChar_ptr;n_cur++) {
 2325:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
 2326:         mem_base = xmlMemBlocks();
 2327:         cur = gen_xmlChar_ptr(n_cur, 0);
 2328:         encoding = gen_const_char_ptr(n_encoding, 1);
 2329: 
 2330:         ret_val = htmlParseDoc(cur, (const char *)encoding);
 2331:         desret_htmlDocPtr(ret_val);
 2332:         call_tests++;
 2333:         des_xmlChar_ptr(n_cur, cur, 0);
 2334:         des_const_char_ptr(n_encoding, (const char *)encoding, 1);
 2335:         xmlResetLastError();
 2336:         if (mem_base != xmlMemBlocks()) {
 2337:             printf("Leak of %d blocks found in htmlParseDoc",
 2338: 	           xmlMemBlocks() - mem_base);
 2339: 	    test_ret++;
 2340:             printf(" %d", n_cur);
 2341:             printf(" %d", n_encoding);
 2342:             printf("\n");
 2343:         }
 2344:     }
 2345:     }
 2346:     function_tests++;
 2347: #endif
 2348: 
 2349:     return(test_ret);
 2350: }
 2351: 
 2352: 
 2353: static int
 2354: test_htmlParseDocument(void) {
 2355:     int test_ret = 0;
 2356: 
 2357: #if defined(LIBXML_HTML_ENABLED)
 2358:     int mem_base;
 2359:     int ret_val;
 2360:     htmlParserCtxtPtr ctxt; /* an HTML parser context */
 2361:     int n_ctxt;
 2362: 
 2363:     for (n_ctxt = 0;n_ctxt < gen_nb_htmlParserCtxtPtr;n_ctxt++) {
 2364:         mem_base = xmlMemBlocks();
 2365:         ctxt = gen_htmlParserCtxtPtr(n_ctxt, 0);
 2366: 
 2367:         ret_val = htmlParseDocument(ctxt);
 2368:         if (ctxt != NULL) {xmlFreeDoc(ctxt->myDoc); ctxt->myDoc = NULL;}
 2369:         desret_int(ret_val);
 2370:         call_tests++;
 2371:         des_htmlParserCtxtPtr(n_ctxt, ctxt, 0);
 2372:         xmlResetLastError();
 2373:         if (mem_base != xmlMemBlocks()) {
 2374:             printf("Leak of %d blocks found in htmlParseDocument",
 2375: 	           xmlMemBlocks() - mem_base);
 2376: 	    test_ret++;
 2377:             printf(" %d", n_ctxt);
 2378:             printf("\n");
 2379:         }
 2380:     }
 2381:     function_tests++;
 2382: #endif
 2383: 
 2384:     return(test_ret);
 2385: }
 2386: 
 2387: 
 2388: static int
 2389: test_htmlParseElement(void) {
 2390:     int test_ret = 0;
 2391: 
 2392: #if defined(LIBXML_HTML_ENABLED)
 2393:     int mem_base;
 2394:     htmlParserCtxtPtr ctxt; /* an HTML parser context */
 2395:     int n_ctxt;
 2396: 
 2397:     for (n_ctxt = 0;n_ctxt < gen_nb_htmlParserCtxtPtr;n_ctxt++) {
 2398:         mem_base = xmlMemBlocks();
 2399:         ctxt = gen_htmlParserCtxtPtr(n_ctxt, 0);
 2400: 
 2401:         htmlParseElement(ctxt);
 2402:         call_tests++;
 2403:         des_htmlParserCtxtPtr(n_ctxt, ctxt, 0);
 2404:         xmlResetLastError();
 2405:         if (mem_base != xmlMemBlocks()) {
 2406:             printf("Leak of %d blocks found in htmlParseElement",
 2407: 	           xmlMemBlocks() - mem_base);
 2408: 	    test_ret++;
 2409:             printf(" %d", n_ctxt);
 2410:             printf("\n");
 2411:         }
 2412:     }
 2413:     function_tests++;
 2414: #endif
 2415: 
 2416:     return(test_ret);
 2417: }
 2418: 
 2419: 
 2420: static int
 2421: test_htmlParseEntityRef(void) {
 2422:     int test_ret = 0;
 2423: 
 2424: #if defined(LIBXML_HTML_ENABLED)
 2425:     int mem_base;
 2426:     const htmlEntityDesc * ret_val;
 2427:     htmlParserCtxtPtr ctxt; /* an HTML parser context */
 2428:     int n_ctxt;
 2429:     xmlChar ** str; /* location to store the entity name */
 2430:     int n_str;
 2431: 
 2432:     for (n_ctxt = 0;n_ctxt < gen_nb_htmlParserCtxtPtr;n_ctxt++) {
 2433:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr_ptr;n_str++) {
 2434:         mem_base = xmlMemBlocks();
 2435:         ctxt = gen_htmlParserCtxtPtr(n_ctxt, 0);
 2436:         str = gen_const_xmlChar_ptr_ptr(n_str, 1);
 2437: 
 2438:         ret_val = htmlParseEntityRef(ctxt, (const xmlChar **)str);
 2439:         desret_const_htmlEntityDesc_ptr(ret_val);
 2440:         call_tests++;
 2441:         des_htmlParserCtxtPtr(n_ctxt, ctxt, 0);
 2442:         des_const_xmlChar_ptr_ptr(n_str, (const xmlChar **)str, 1);
 2443:         xmlResetLastError();
 2444:         if (mem_base != xmlMemBlocks()) {
 2445:             printf("Leak of %d blocks found in htmlParseEntityRef",
 2446: 	           xmlMemBlocks() - mem_base);
 2447: 	    test_ret++;
 2448:             printf(" %d", n_ctxt);
 2449:             printf(" %d", n_str);
 2450:             printf("\n");
 2451:         }
 2452:     }
 2453:     }
 2454:     function_tests++;
 2455: #endif
 2456: 
 2457:     return(test_ret);
 2458: }
 2459: 
 2460: 
 2461: static int
 2462: test_htmlParseFile(void) {
 2463:     int test_ret = 0;
 2464: 
 2465: #if defined(LIBXML_HTML_ENABLED)
 2466:     htmlDocPtr ret_val;
 2467:     const char * filename; /* the filename */
 2468:     int n_filename;
 2469:     char * encoding; /* a free form C string describing the HTML document encoding, or NULL */
 2470:     int n_encoding;
 2471: 
 2472:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
 2473:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
 2474:         filename = gen_filepath(n_filename, 0);
 2475:         encoding = gen_const_char_ptr(n_encoding, 1);
 2476: 
 2477:         ret_val = htmlParseFile(filename, (const char *)encoding);
 2478:         desret_htmlDocPtr(ret_val);
 2479:         call_tests++;
 2480:         des_filepath(n_filename, filename, 0);
 2481:         des_const_char_ptr(n_encoding, (const char *)encoding, 1);
 2482:         xmlResetLastError();
 2483:     }
 2484:     }
 2485:     function_tests++;
 2486: #endif
 2487: 
 2488:     return(test_ret);
 2489: }
 2490: 
 2491: 
 2492: static int
 2493: test_htmlReadDoc(void) {
 2494:     int test_ret = 0;
 2495: 
 2496: #if defined(LIBXML_HTML_ENABLED)
 2497:     int mem_base;
 2498:     htmlDocPtr ret_val;
 2499:     xmlChar * cur; /* a pointer to a zero terminated string */
 2500:     int n_cur;
 2501:     const char * URL; /* the base URL to use for the document */
 2502:     int n_URL;
 2503:     char * encoding; /* the document encoding, or NULL */
 2504:     int n_encoding;
 2505:     int options; /* a combination of htmlParserOption(s) */
 2506:     int n_options;
 2507: 
 2508:     for (n_cur = 0;n_cur < gen_nb_const_xmlChar_ptr;n_cur++) {
 2509:     for (n_URL = 0;n_URL < gen_nb_filepath;n_URL++) {
 2510:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
 2511:     for (n_options = 0;n_options < gen_nb_int;n_options++) {
 2512:         mem_base = xmlMemBlocks();
 2513:         cur = gen_const_xmlChar_ptr(n_cur, 0);
 2514:         URL = gen_filepath(n_URL, 1);
 2515:         encoding = gen_const_char_ptr(n_encoding, 2);
 2516:         options = gen_int(n_options, 3);
 2517: 
 2518:         ret_val = htmlReadDoc((const xmlChar *)cur, URL, (const char *)encoding, options);
 2519:         desret_htmlDocPtr(ret_val);
 2520:         call_tests++;
 2521:         des_const_xmlChar_ptr(n_cur, (const xmlChar *)cur, 0);
 2522:         des_filepath(n_URL, URL, 1);
 2523:         des_const_char_ptr(n_encoding, (const char *)encoding, 2);
 2524:         des_int(n_options, options, 3);
 2525:         xmlResetLastError();
 2526:         if (mem_base != xmlMemBlocks()) {
 2527:             printf("Leak of %d blocks found in htmlReadDoc",
 2528: 	           xmlMemBlocks() - mem_base);
 2529: 	    test_ret++;
 2530:             printf(" %d", n_cur);
 2531:             printf(" %d", n_URL);
 2532:             printf(" %d", n_encoding);
 2533:             printf(" %d", n_options);
 2534:             printf("\n");
 2535:         }
 2536:     }
 2537:     }
 2538:     }
 2539:     }
 2540:     function_tests++;
 2541: #endif
 2542: 
 2543:     return(test_ret);
 2544: }
 2545: 
 2546: 
 2547: static int
 2548: test_htmlReadFile(void) {
 2549:     int test_ret = 0;
 2550: 
 2551: #if defined(LIBXML_HTML_ENABLED)
 2552:     int mem_base;
 2553:     htmlDocPtr ret_val;
 2554:     const char * filename; /* a file or URL */
 2555:     int n_filename;
 2556:     char * encoding; /* the document encoding, or NULL */
 2557:     int n_encoding;
 2558:     int options; /* a combination of htmlParserOption(s) */
 2559:     int n_options;
 2560: 
 2561:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
 2562:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
 2563:     for (n_options = 0;n_options < gen_nb_int;n_options++) {
 2564:         mem_base = xmlMemBlocks();
 2565:         filename = gen_filepath(n_filename, 0);
 2566:         encoding = gen_const_char_ptr(n_encoding, 1);
 2567:         options = gen_int(n_options, 2);
 2568: 
 2569:         ret_val = htmlReadFile(filename, (const char *)encoding, options);
 2570:         desret_htmlDocPtr(ret_val);
 2571:         call_tests++;
 2572:         des_filepath(n_filename, filename, 0);
 2573:         des_const_char_ptr(n_encoding, (const char *)encoding, 1);
 2574:         des_int(n_options, options, 2);
 2575:         xmlResetLastError();
 2576:         if (mem_base != xmlMemBlocks()) {
 2577:             printf("Leak of %d blocks found in htmlReadFile",
 2578: 	           xmlMemBlocks() - mem_base);
 2579: 	    test_ret++;
 2580:             printf(" %d", n_filename);
 2581:             printf(" %d", n_encoding);
 2582:             printf(" %d", n_options);
 2583:             printf("\n");
 2584:         }
 2585:     }
 2586:     }
 2587:     }
 2588:     function_tests++;
 2589: #endif
 2590: 
 2591:     return(test_ret);
 2592: }
 2593: 
 2594: 
 2595: static int
 2596: test_htmlReadMemory(void) {
 2597:     int test_ret = 0;
 2598: 
 2599: #if defined(LIBXML_HTML_ENABLED)
 2600:     int mem_base;
 2601:     htmlDocPtr ret_val;
 2602:     char * buffer; /* a pointer to a char array */
 2603:     int n_buffer;
 2604:     int size; /* the size of the array */
 2605:     int n_size;
 2606:     const char * URL; /* the base URL to use for the document */
 2607:     int n_URL;
 2608:     char * encoding; /* the document encoding, or NULL */
 2609:     int n_encoding;
 2610:     int options; /* a combination of htmlParserOption(s) */
 2611:     int n_options;
 2612: 
 2613:     for (n_buffer = 0;n_buffer < gen_nb_const_char_ptr;n_buffer++) {
 2614:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
 2615:     for (n_URL = 0;n_URL < gen_nb_filepath;n_URL++) {
 2616:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
 2617:     for (n_options = 0;n_options < gen_nb_int;n_options++) {
 2618:         mem_base = xmlMemBlocks();
 2619:         buffer = gen_const_char_ptr(n_buffer, 0);
 2620:         size = gen_int(n_size, 1);
 2621:         URL = gen_filepath(n_URL, 2);
 2622:         encoding = gen_const_char_ptr(n_encoding, 3);
 2623:         options = gen_int(n_options, 4);
 2624: 
 2625:         ret_val = htmlReadMemory((const char *)buffer, size, URL, (const char *)encoding, options);
 2626:         desret_htmlDocPtr(ret_val);
 2627:         call_tests++;
 2628:         des_const_char_ptr(n_buffer, (const char *)buffer, 0);
 2629:         des_int(n_size, size, 1);
 2630:         des_filepath(n_URL, URL, 2);
 2631:         des_const_char_ptr(n_encoding, (const char *)encoding, 3);
 2632:         des_int(n_options, options, 4);
 2633:         xmlResetLastError();
 2634:         if (mem_base != xmlMemBlocks()) {
 2635:             printf("Leak of %d blocks found in htmlReadMemory",
 2636: 	           xmlMemBlocks() - mem_base);
 2637: 	    test_ret++;
 2638:             printf(" %d", n_buffer);
 2639:             printf(" %d", n_size);
 2640:             printf(" %d", n_URL);
 2641:             printf(" %d", n_encoding);
 2642:             printf(" %d", n_options);
 2643:             printf("\n");
 2644:         }
 2645:     }
 2646:     }
 2647:     }
 2648:     }
 2649:     }
 2650:     function_tests++;
 2651: #endif
 2652: 
 2653:     return(test_ret);
 2654: }
 2655: 
 2656: 
 2657: static int
 2658: test_htmlSAXParseDoc(void) {
 2659:     int test_ret = 0;
 2660: 
 2661: #if defined(LIBXML_HTML_ENABLED)
 2662:     int mem_base;
 2663:     htmlDocPtr ret_val;
 2664:     xmlChar * cur; /* a pointer to an array of xmlChar */
 2665:     int n_cur;
 2666:     char * encoding; /* a free form C string describing the HTML document encoding, or NULL */
 2667:     int n_encoding;
 2668:     htmlSAXHandlerPtr sax; /* the SAX handler block */
 2669:     int n_sax;
 2670:     void * userData; /* if using SAX, this pointer will be provided on callbacks. */
 2671:     int n_userData;
 2672: 
 2673:     for (n_cur = 0;n_cur < gen_nb_xmlChar_ptr;n_cur++) {
 2674:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
 2675:     for (n_sax = 0;n_sax < gen_nb_htmlSAXHandlerPtr;n_sax++) {
 2676:     for (n_userData = 0;n_userData < gen_nb_userdata;n_userData++) {
 2677:         mem_base = xmlMemBlocks();
 2678:         cur = gen_xmlChar_ptr(n_cur, 0);
 2679:         encoding = gen_const_char_ptr(n_encoding, 1);
 2680:         sax = gen_htmlSAXHandlerPtr(n_sax, 2);
 2681:         userData = gen_userdata(n_userData, 3);
 2682: 
 2683:         ret_val = htmlSAXParseDoc(cur, (const char *)encoding, sax, userData);
 2684:         desret_htmlDocPtr(ret_val);
 2685:         call_tests++;
 2686:         des_xmlChar_ptr(n_cur, cur, 0);
 2687:         des_const_char_ptr(n_encoding, (const char *)encoding, 1);
 2688:         des_htmlSAXHandlerPtr(n_sax, sax, 2);
 2689:         des_userdata(n_userData, userData, 3);
 2690:         xmlResetLastError();
 2691:         if (mem_base != xmlMemBlocks()) {
 2692:             printf("Leak of %d blocks found in htmlSAXParseDoc",
 2693: 	           xmlMemBlocks() - mem_base);
 2694: 	    test_ret++;
 2695:             printf(" %d", n_cur);
 2696:             printf(" %d", n_encoding);
 2697:             printf(" %d", n_sax);
 2698:             printf(" %d", n_userData);
 2699:             printf("\n");
 2700:         }
 2701:     }
 2702:     }
 2703:     }
 2704:     }
 2705:     function_tests++;
 2706: #endif
 2707: 
 2708:     return(test_ret);
 2709: }
 2710: 
 2711: 
 2712: static int
 2713: test_htmlSAXParseFile(void) {
 2714:     int test_ret = 0;
 2715: 
 2716: #if defined(LIBXML_HTML_ENABLED)
 2717:     int mem_base;
 2718:     htmlDocPtr ret_val;
 2719:     const char * filename; /* the filename */
 2720:     int n_filename;
 2721:     char * encoding; /* a free form C string describing the HTML document encoding, or NULL */
 2722:     int n_encoding;
 2723:     htmlSAXHandlerPtr sax; /* the SAX handler block */
 2724:     int n_sax;
 2725:     void * userData; /* if using SAX, this pointer will be provided on callbacks. */
 2726:     int n_userData;
 2727: 
 2728:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
 2729:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
 2730:     for (n_sax = 0;n_sax < gen_nb_htmlSAXHandlerPtr;n_sax++) {
 2731:     for (n_userData = 0;n_userData < gen_nb_userdata;n_userData++) {
 2732:         mem_base = xmlMemBlocks();
 2733:         filename = gen_filepath(n_filename, 0);
 2734:         encoding = gen_const_char_ptr(n_encoding, 1);
 2735:         sax = gen_htmlSAXHandlerPtr(n_sax, 2);
 2736:         userData = gen_userdata(n_userData, 3);
 2737: 
 2738:         ret_val = htmlSAXParseFile(filename, (const char *)encoding, sax, userData);
 2739:         desret_htmlDocPtr(ret_val);
 2740:         call_tests++;
 2741:         des_filepath(n_filename, filename, 0);
 2742:         des_const_char_ptr(n_encoding, (const char *)encoding, 1);
 2743:         des_htmlSAXHandlerPtr(n_sax, sax, 2);
 2744:         des_userdata(n_userData, userData, 3);
 2745:         xmlResetLastError();
 2746:         if (mem_base != xmlMemBlocks()) {
 2747:             printf("Leak of %d blocks found in htmlSAXParseFile",
 2748: 	           xmlMemBlocks() - mem_base);
 2749: 	    test_ret++;
 2750:             printf(" %d", n_filename);
 2751:             printf(" %d", n_encoding);
 2752:             printf(" %d", n_sax);
 2753:             printf(" %d", n_userData);
 2754:             printf("\n");
 2755:         }
 2756:     }
 2757:     }
 2758:     }
 2759:     }
 2760:     function_tests++;
 2761: #endif
 2762: 
 2763:     return(test_ret);
 2764: }
 2765: 
 2766: 
 2767: static int
 2768: test_htmlTagLookup(void) {
 2769:     int test_ret = 0;
 2770: 
 2771: 
 2772:     /* missing type support */
 2773:     return(test_ret);
 2774: }
 2775: 
 2776: static int
 2777: test_HTMLparser(void) {
 2778:     int test_ret = 0;
 2779: 
 2780:     if (quiet == 0) printf("Testing HTMLparser : 32 of 38 functions ...\n");
 2781:     test_ret += test_UTF8ToHtml();
 2782:     test_ret += test_htmlAttrAllowed();
 2783:     test_ret += test_htmlAutoCloseTag();
 2784:     test_ret += test_htmlCreateMemoryParserCtxt();
 2785:     test_ret += test_htmlCreatePushParserCtxt();
 2786:     test_ret += test_htmlCtxtReadDoc();
 2787:     test_ret += test_htmlCtxtReadFile();
 2788:     test_ret += test_htmlCtxtReadMemory();
 2789:     test_ret += test_htmlCtxtReset();
 2790:     test_ret += test_htmlCtxtUseOptions();
 2791:     test_ret += test_htmlElementAllowedHere();
 2792:     test_ret += test_htmlElementStatusHere();
 2793:     test_ret += test_htmlEncodeEntities();
 2794:     test_ret += test_htmlEntityLookup();
 2795:     test_ret += test_htmlEntityValueLookup();
 2796:     test_ret += test_htmlHandleOmittedElem();
 2797:     test_ret += test_htmlIsAutoClosed();
 2798:     test_ret += test_htmlIsScriptAttribute();
 2799:     test_ret += test_htmlNewParserCtxt();
 2800:     test_ret += test_htmlNodeStatus();
 2801:     test_ret += test_htmlParseCharRef();
 2802:     test_ret += test_htmlParseChunk();
 2803:     test_ret += test_htmlParseDoc();
 2804:     test_ret += test_htmlParseDocument();
 2805:     test_ret += test_htmlParseElement();
 2806:     test_ret += test_htmlParseEntityRef();
 2807:     test_ret += test_htmlParseFile();
 2808:     test_ret += test_htmlReadDoc();
 2809:     test_ret += test_htmlReadFile();
 2810:     test_ret += test_htmlReadMemory();
 2811:     test_ret += test_htmlSAXParseDoc();
 2812:     test_ret += test_htmlSAXParseFile();
 2813:     test_ret += test_htmlTagLookup();
 2814: 
 2815:     if (test_ret != 0)
 2816: 	printf("Module HTMLparser: %d errors\n", test_ret);
 2817:     return(test_ret);
 2818: }
 2819: 
 2820: static int
 2821: test_htmlDocContentDumpFormatOutput(void) {
 2822:     int test_ret = 0;
 2823: 
 2824: #if defined(LIBXML_HTML_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
 2825:     int mem_base;
 2826:     xmlOutputBufferPtr buf; /* the HTML buffer output */
 2827:     int n_buf;
 2828:     xmlDocPtr cur; /* the document */
 2829:     int n_cur;
 2830:     char * encoding; /* the encoding string */
 2831:     int n_encoding;
 2832:     int format; /* should formatting spaces been added */
 2833:     int n_format;
 2834: 
 2835:     for (n_buf = 0;n_buf < gen_nb_xmlOutputBufferPtr;n_buf++) {
 2836:     for (n_cur = 0;n_cur < gen_nb_xmlDocPtr;n_cur++) {
 2837:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
 2838:     for (n_format = 0;n_format < gen_nb_int;n_format++) {
 2839:         mem_base = xmlMemBlocks();
 2840:         buf = gen_xmlOutputBufferPtr(n_buf, 0);
 2841:         cur = gen_xmlDocPtr(n_cur, 1);
 2842:         encoding = gen_const_char_ptr(n_encoding, 2);
 2843:         format = gen_int(n_format, 3);
 2844: 
 2845:         htmlDocContentDumpFormatOutput(buf, cur, (const char *)encoding, format);
 2846:         call_tests++;
 2847:         des_xmlOutputBufferPtr(n_buf, buf, 0);
 2848:         des_xmlDocPtr(n_cur, cur, 1);
 2849:         des_const_char_ptr(n_encoding, (const char *)encoding, 2);
 2850:         des_int(n_format, format, 3);
 2851:         xmlResetLastError();
 2852:         if (mem_base != xmlMemBlocks()) {
 2853:             printf("Leak of %d blocks found in htmlDocContentDumpFormatOutput",
 2854: 	           xmlMemBlocks() - mem_base);
 2855: 	    test_ret++;
 2856:             printf(" %d", n_buf);
 2857:             printf(" %d", n_cur);
 2858:             printf(" %d", n_encoding);
 2859:             printf(" %d", n_format);
 2860:             printf("\n");
 2861:         }
 2862:     }
 2863:     }
 2864:     }
 2865:     }
 2866:     function_tests++;
 2867: #endif
 2868: 
 2869:     return(test_ret);
 2870: }
 2871: 
 2872: 
 2873: static int
 2874: test_htmlDocContentDumpOutput(void) {
 2875:     int test_ret = 0;
 2876: 
 2877: #if defined(LIBXML_HTML_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
 2878:     int mem_base;
 2879:     xmlOutputBufferPtr buf; /* the HTML buffer output */
 2880:     int n_buf;
 2881:     xmlDocPtr cur; /* the document */
 2882:     int n_cur;
 2883:     char * encoding; /* the encoding string */
 2884:     int n_encoding;
 2885: 
 2886:     for (n_buf = 0;n_buf < gen_nb_xmlOutputBufferPtr;n_buf++) {
 2887:     for (n_cur = 0;n_cur < gen_nb_xmlDocPtr;n_cur++) {
 2888:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
 2889:         mem_base = xmlMemBlocks();
 2890:         buf = gen_xmlOutputBufferPtr(n_buf, 0);
 2891:         cur = gen_xmlDocPtr(n_cur, 1);
 2892:         encoding = gen_const_char_ptr(n_encoding, 2);
 2893: 
 2894:         htmlDocContentDumpOutput(buf, cur, (const char *)encoding);
 2895:         call_tests++;
 2896:         des_xmlOutputBufferPtr(n_buf, buf, 0);
 2897:         des_xmlDocPtr(n_cur, cur, 1);
 2898:         des_const_char_ptr(n_encoding, (const char *)encoding, 2);
 2899:         xmlResetLastError();
 2900:         if (mem_base != xmlMemBlocks()) {
 2901:             printf("Leak of %d blocks found in htmlDocContentDumpOutput",
 2902: 	           xmlMemBlocks() - mem_base);
 2903: 	    test_ret++;
 2904:             printf(" %d", n_buf);
 2905:             printf(" %d", n_cur);
 2906:             printf(" %d", n_encoding);
 2907:             printf("\n");
 2908:         }
 2909:     }
 2910:     }
 2911:     }
 2912:     function_tests++;
 2913: #endif
 2914: 
 2915:     return(test_ret);
 2916: }
 2917: 
 2918: 
 2919: static int
 2920: test_htmlDocDump(void) {
 2921:     int test_ret = 0;
 2922: 
 2923: #if defined(LIBXML_HTML_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
 2924:     int mem_base;
 2925:     int ret_val;
 2926:     FILE * f; /* the FILE* */
 2927:     int n_f;
 2928:     xmlDocPtr cur; /* the document */
 2929:     int n_cur;
 2930: 
 2931:     for (n_f = 0;n_f < gen_nb_FILE_ptr;n_f++) {
 2932:     for (n_cur = 0;n_cur < gen_nb_xmlDocPtr;n_cur++) {
 2933:         mem_base = xmlMemBlocks();
 2934:         f = gen_FILE_ptr(n_f, 0);
 2935:         cur = gen_xmlDocPtr(n_cur, 1);
 2936: 
 2937:         ret_val = htmlDocDump(f, cur);
 2938:         desret_int(ret_val);
 2939:         call_tests++;
 2940:         des_FILE_ptr(n_f, f, 0);
 2941:         des_xmlDocPtr(n_cur, cur, 1);
 2942:         xmlResetLastError();
 2943:         if (mem_base != xmlMemBlocks()) {
 2944:             printf("Leak of %d blocks found in htmlDocDump",
 2945: 	           xmlMemBlocks() - mem_base);
 2946: 	    test_ret++;
 2947:             printf(" %d", n_f);
 2948:             printf(" %d", n_cur);
 2949:             printf("\n");
 2950:         }
 2951:     }
 2952:     }
 2953:     function_tests++;
 2954: #endif
 2955: 
 2956:     return(test_ret);
 2957: }
 2958: 
 2959: 
 2960: #define gen_nb_xmlChar_ptr_ptr 1
 2961: static xmlChar ** gen_xmlChar_ptr_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 2962:     return(NULL);
 2963: }
 2964: static void des_xmlChar_ptr_ptr(int no ATTRIBUTE_UNUSED, xmlChar ** val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 2965: }
 2966: 
 2967: static int
 2968: test_htmlDocDumpMemory(void) {
 2969:     int test_ret = 0;
 2970: 
 2971: #if defined(LIBXML_HTML_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
 2972:     int mem_base;
 2973:     xmlDocPtr cur; /* the document */
 2974:     int n_cur;
 2975:     xmlChar ** mem; /* OUT: the memory pointer */
 2976:     int n_mem;
 2977:     int * size; /* OUT: the memory length */
 2978:     int n_size;
 2979: 
 2980:     for (n_cur = 0;n_cur < gen_nb_xmlDocPtr;n_cur++) {
 2981:     for (n_mem = 0;n_mem < gen_nb_xmlChar_ptr_ptr;n_mem++) {
 2982:     for (n_size = 0;n_size < gen_nb_int_ptr;n_size++) {
 2983:         mem_base = xmlMemBlocks();
 2984:         cur = gen_xmlDocPtr(n_cur, 0);
 2985:         mem = gen_xmlChar_ptr_ptr(n_mem, 1);
 2986:         size = gen_int_ptr(n_size, 2);
 2987: 
 2988:         htmlDocDumpMemory(cur, mem, size);
 2989:         call_tests++;
 2990:         des_xmlDocPtr(n_cur, cur, 0);
 2991:         des_xmlChar_ptr_ptr(n_mem, mem, 1);
 2992:         des_int_ptr(n_size, size, 2);
 2993:         xmlResetLastError();
 2994:         if (mem_base != xmlMemBlocks()) {
 2995:             printf("Leak of %d blocks found in htmlDocDumpMemory",
 2996: 	           xmlMemBlocks() - mem_base);
 2997: 	    test_ret++;
 2998:             printf(" %d", n_cur);
 2999:             printf(" %d", n_mem);
 3000:             printf(" %d", n_size);
 3001:             printf("\n");
 3002:         }
 3003:     }
 3004:     }
 3005:     }
 3006:     function_tests++;
 3007: #endif
 3008: 
 3009:     return(test_ret);
 3010: }
 3011: 
 3012: 
 3013: static int
 3014: test_htmlDocDumpMemoryFormat(void) {
 3015:     int test_ret = 0;
 3016: 
 3017: #if defined(LIBXML_HTML_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
 3018:     int mem_base;
 3019:     xmlDocPtr cur; /* the document */
 3020:     int n_cur;
 3021:     xmlChar ** mem; /* OUT: the memory pointer */
 3022:     int n_mem;
 3023:     int * size; /* OUT: the memory length */
 3024:     int n_size;
 3025:     int format; /* should formatting spaces been added */
 3026:     int n_format;
 3027: 
 3028:     for (n_cur = 0;n_cur < gen_nb_xmlDocPtr;n_cur++) {
 3029:     for (n_mem = 0;n_mem < gen_nb_xmlChar_ptr_ptr;n_mem++) {
 3030:     for (n_size = 0;n_size < gen_nb_int_ptr;n_size++) {
 3031:     for (n_format = 0;n_format < gen_nb_int;n_format++) {
 3032:         mem_base = xmlMemBlocks();
 3033:         cur = gen_xmlDocPtr(n_cur, 0);
 3034:         mem = gen_xmlChar_ptr_ptr(n_mem, 1);
 3035:         size = gen_int_ptr(n_size, 2);
 3036:         format = gen_int(n_format, 3);
 3037: 
 3038:         htmlDocDumpMemoryFormat(cur, mem, size, format);
 3039:         call_tests++;
 3040:         des_xmlDocPtr(n_cur, cur, 0);
 3041:         des_xmlChar_ptr_ptr(n_mem, mem, 1);
 3042:         des_int_ptr(n_size, size, 2);
 3043:         des_int(n_format, format, 3);
 3044:         xmlResetLastError();
 3045:         if (mem_base != xmlMemBlocks()) {
 3046:             printf("Leak of %d blocks found in htmlDocDumpMemoryFormat",
 3047: 	           xmlMemBlocks() - mem_base);
 3048: 	    test_ret++;
 3049:             printf(" %d", n_cur);
 3050:             printf(" %d", n_mem);
 3051:             printf(" %d", n_size);
 3052:             printf(" %d", n_format);
 3053:             printf("\n");
 3054:         }
 3055:     }
 3056:     }
 3057:     }
 3058:     }
 3059:     function_tests++;
 3060: #endif
 3061: 
 3062:     return(test_ret);
 3063: }
 3064: 
 3065: 
 3066: static int
 3067: test_htmlGetMetaEncoding(void) {
 3068:     int test_ret = 0;
 3069: 
 3070: #if defined(LIBXML_HTML_ENABLED)
 3071:     int mem_base;
 3072:     const xmlChar * ret_val;
 3073:     htmlDocPtr doc; /* the document */
 3074:     int n_doc;
 3075: 
 3076:     for (n_doc = 0;n_doc < gen_nb_htmlDocPtr;n_doc++) {
 3077:         mem_base = xmlMemBlocks();
 3078:         doc = gen_htmlDocPtr(n_doc, 0);
 3079: 
 3080:         ret_val = htmlGetMetaEncoding(doc);
 3081:         desret_const_xmlChar_ptr(ret_val);
 3082:         call_tests++;
 3083:         des_htmlDocPtr(n_doc, doc, 0);
 3084:         xmlResetLastError();
 3085:         if (mem_base != xmlMemBlocks()) {
 3086:             printf("Leak of %d blocks found in htmlGetMetaEncoding",
 3087: 	           xmlMemBlocks() - mem_base);
 3088: 	    test_ret++;
 3089:             printf(" %d", n_doc);
 3090:             printf("\n");
 3091:         }
 3092:     }
 3093:     function_tests++;
 3094: #endif
 3095: 
 3096:     return(test_ret);
 3097: }
 3098: 
 3099: 
 3100: static int
 3101: test_htmlIsBooleanAttr(void) {
 3102:     int test_ret = 0;
 3103: 
 3104: #if defined(LIBXML_HTML_ENABLED)
 3105:     int mem_base;
 3106:     int ret_val;
 3107:     xmlChar * name; /* the name of the attribute to check */
 3108:     int n_name;
 3109: 
 3110:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 3111:         mem_base = xmlMemBlocks();
 3112:         name = gen_const_xmlChar_ptr(n_name, 0);
 3113: 
 3114:         ret_val = htmlIsBooleanAttr((const xmlChar *)name);
 3115:         desret_int(ret_val);
 3116:         call_tests++;
 3117:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 0);
 3118:         xmlResetLastError();
 3119:         if (mem_base != xmlMemBlocks()) {
 3120:             printf("Leak of %d blocks found in htmlIsBooleanAttr",
 3121: 	           xmlMemBlocks() - mem_base);
 3122: 	    test_ret++;
 3123:             printf(" %d", n_name);
 3124:             printf("\n");
 3125:         }
 3126:     }
 3127:     function_tests++;
 3128: #endif
 3129: 
 3130:     return(test_ret);
 3131: }
 3132: 
 3133: 
 3134: static int
 3135: test_htmlNewDoc(void) {
 3136:     int test_ret = 0;
 3137: 
 3138: #if defined(LIBXML_HTML_ENABLED)
 3139:     int mem_base;
 3140:     htmlDocPtr ret_val;
 3141:     xmlChar * URI; /* URI for the dtd, or NULL */
 3142:     int n_URI;
 3143:     xmlChar * ExternalID; /* the external ID of the DTD, or NULL */
 3144:     int n_ExternalID;
 3145: 
 3146:     for (n_URI = 0;n_URI < gen_nb_const_xmlChar_ptr;n_URI++) {
 3147:     for (n_ExternalID = 0;n_ExternalID < gen_nb_const_xmlChar_ptr;n_ExternalID++) {
 3148:         mem_base = xmlMemBlocks();
 3149:         URI = gen_const_xmlChar_ptr(n_URI, 0);
 3150:         ExternalID = gen_const_xmlChar_ptr(n_ExternalID, 1);
 3151: 
 3152:         ret_val = htmlNewDoc((const xmlChar *)URI, (const xmlChar *)ExternalID);
 3153:         desret_htmlDocPtr(ret_val);
 3154:         call_tests++;
 3155:         des_const_xmlChar_ptr(n_URI, (const xmlChar *)URI, 0);
 3156:         des_const_xmlChar_ptr(n_ExternalID, (const xmlChar *)ExternalID, 1);
 3157:         xmlResetLastError();
 3158:         if (mem_base != xmlMemBlocks()) {
 3159:             printf("Leak of %d blocks found in htmlNewDoc",
 3160: 	           xmlMemBlocks() - mem_base);
 3161: 	    test_ret++;
 3162:             printf(" %d", n_URI);
 3163:             printf(" %d", n_ExternalID);
 3164:             printf("\n");
 3165:         }
 3166:     }
 3167:     }
 3168:     function_tests++;
 3169: #endif
 3170: 
 3171:     return(test_ret);
 3172: }
 3173: 
 3174: 
 3175: static int
 3176: test_htmlNewDocNoDtD(void) {
 3177:     int test_ret = 0;
 3178: 
 3179: #if defined(LIBXML_HTML_ENABLED)
 3180:     int mem_base;
 3181:     htmlDocPtr ret_val;
 3182:     xmlChar * URI; /* URI for the dtd, or NULL */
 3183:     int n_URI;
 3184:     xmlChar * ExternalID; /* the external ID of the DTD, or NULL */
 3185:     int n_ExternalID;
 3186: 
 3187:     for (n_URI = 0;n_URI < gen_nb_const_xmlChar_ptr;n_URI++) {
 3188:     for (n_ExternalID = 0;n_ExternalID < gen_nb_const_xmlChar_ptr;n_ExternalID++) {
 3189:         mem_base = xmlMemBlocks();
 3190:         URI = gen_const_xmlChar_ptr(n_URI, 0);
 3191:         ExternalID = gen_const_xmlChar_ptr(n_ExternalID, 1);
 3192: 
 3193:         ret_val = htmlNewDocNoDtD((const xmlChar *)URI, (const xmlChar *)ExternalID);
 3194:         desret_htmlDocPtr(ret_val);
 3195:         call_tests++;
 3196:         des_const_xmlChar_ptr(n_URI, (const xmlChar *)URI, 0);
 3197:         des_const_xmlChar_ptr(n_ExternalID, (const xmlChar *)ExternalID, 1);
 3198:         xmlResetLastError();
 3199:         if (mem_base != xmlMemBlocks()) {
 3200:             printf("Leak of %d blocks found in htmlNewDocNoDtD",
 3201: 	           xmlMemBlocks() - mem_base);
 3202: 	    test_ret++;
 3203:             printf(" %d", n_URI);
 3204:             printf(" %d", n_ExternalID);
 3205:             printf("\n");
 3206:         }
 3207:     }
 3208:     }
 3209:     function_tests++;
 3210: #endif
 3211: 
 3212:     return(test_ret);
 3213: }
 3214: 
 3215: 
 3216: static int
 3217: test_htmlNodeDump(void) {
 3218:     int test_ret = 0;
 3219: 
 3220: #if defined(LIBXML_HTML_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
 3221:     int mem_base;
 3222:     int ret_val;
 3223:     xmlBufferPtr buf; /* the HTML buffer output */
 3224:     int n_buf;
 3225:     xmlDocPtr doc; /* the document */
 3226:     int n_doc;
 3227:     xmlNodePtr cur; /* the current node */
 3228:     int n_cur;
 3229: 
 3230:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
 3231:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
 3232:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
 3233:         mem_base = xmlMemBlocks();
 3234:         buf = gen_xmlBufferPtr(n_buf, 0);
 3235:         doc = gen_xmlDocPtr(n_doc, 1);
 3236:         cur = gen_xmlNodePtr(n_cur, 2);
 3237: 
 3238:         ret_val = htmlNodeDump(buf, doc, cur);
 3239:         desret_int(ret_val);
 3240:         call_tests++;
 3241:         des_xmlBufferPtr(n_buf, buf, 0);
 3242:         des_xmlDocPtr(n_doc, doc, 1);
 3243:         des_xmlNodePtr(n_cur, cur, 2);
 3244:         xmlResetLastError();
 3245:         if (mem_base != xmlMemBlocks()) {
 3246:             printf("Leak of %d blocks found in htmlNodeDump",
 3247: 	           xmlMemBlocks() - mem_base);
 3248: 	    test_ret++;
 3249:             printf(" %d", n_buf);
 3250:             printf(" %d", n_doc);
 3251:             printf(" %d", n_cur);
 3252:             printf("\n");
 3253:         }
 3254:     }
 3255:     }
 3256:     }
 3257:     function_tests++;
 3258: #endif
 3259: 
 3260:     return(test_ret);
 3261: }
 3262: 
 3263: 
 3264: static int
 3265: test_htmlNodeDumpFile(void) {
 3266:     int test_ret = 0;
 3267: 
 3268: #if defined(LIBXML_HTML_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
 3269:     int mem_base;
 3270:     FILE * out; /* the FILE pointer */
 3271:     int n_out;
 3272:     xmlDocPtr doc; /* the document */
 3273:     int n_doc;
 3274:     xmlNodePtr cur; /* the current node */
 3275:     int n_cur;
 3276: 
 3277:     for (n_out = 0;n_out < gen_nb_FILE_ptr;n_out++) {
 3278:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
 3279:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
 3280:         mem_base = xmlMemBlocks();
 3281:         out = gen_FILE_ptr(n_out, 0);
 3282:         doc = gen_xmlDocPtr(n_doc, 1);
 3283:         cur = gen_xmlNodePtr(n_cur, 2);
 3284: 
 3285:         htmlNodeDumpFile(out, doc, cur);
 3286:         call_tests++;
 3287:         des_FILE_ptr(n_out, out, 0);
 3288:         des_xmlDocPtr(n_doc, doc, 1);
 3289:         des_xmlNodePtr(n_cur, cur, 2);
 3290:         xmlResetLastError();
 3291:         if (mem_base != xmlMemBlocks()) {
 3292:             printf("Leak of %d blocks found in htmlNodeDumpFile",
 3293: 	           xmlMemBlocks() - mem_base);
 3294: 	    test_ret++;
 3295:             printf(" %d", n_out);
 3296:             printf(" %d", n_doc);
 3297:             printf(" %d", n_cur);
 3298:             printf("\n");
 3299:         }
 3300:     }
 3301:     }
 3302:     }
 3303:     function_tests++;
 3304: #endif
 3305: 
 3306:     return(test_ret);
 3307: }
 3308: 
 3309: 
 3310: static int
 3311: test_htmlNodeDumpFileFormat(void) {
 3312:     int test_ret = 0;
 3313: 
 3314: #if defined(LIBXML_HTML_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
 3315:     int mem_base;
 3316:     int ret_val;
 3317:     FILE * out; /* the FILE pointer */
 3318:     int n_out;
 3319:     xmlDocPtr doc; /* the document */
 3320:     int n_doc;
 3321:     xmlNodePtr cur; /* the current node */
 3322:     int n_cur;
 3323:     char * encoding; /* the document encoding */
 3324:     int n_encoding;
 3325:     int format; /* should formatting spaces been added */
 3326:     int n_format;
 3327: 
 3328:     for (n_out = 0;n_out < gen_nb_FILE_ptr;n_out++) {
 3329:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
 3330:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
 3331:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
 3332:     for (n_format = 0;n_format < gen_nb_int;n_format++) {
 3333:         mem_base = xmlMemBlocks();
 3334:         out = gen_FILE_ptr(n_out, 0);
 3335:         doc = gen_xmlDocPtr(n_doc, 1);
 3336:         cur = gen_xmlNodePtr(n_cur, 2);
 3337:         encoding = gen_const_char_ptr(n_encoding, 3);
 3338:         format = gen_int(n_format, 4);
 3339: 
 3340:         ret_val = htmlNodeDumpFileFormat(out, doc, cur, (const char *)encoding, format);
 3341:         desret_int(ret_val);
 3342:         call_tests++;
 3343:         des_FILE_ptr(n_out, out, 0);
 3344:         des_xmlDocPtr(n_doc, doc, 1);
 3345:         des_xmlNodePtr(n_cur, cur, 2);
 3346:         des_const_char_ptr(n_encoding, (const char *)encoding, 3);
 3347:         des_int(n_format, format, 4);
 3348:         xmlResetLastError();
 3349:         if (mem_base != xmlMemBlocks()) {
 3350:             printf("Leak of %d blocks found in htmlNodeDumpFileFormat",
 3351: 	           xmlMemBlocks() - mem_base);
 3352: 	    test_ret++;
 3353:             printf(" %d", n_out);
 3354:             printf(" %d", n_doc);
 3355:             printf(" %d", n_cur);
 3356:             printf(" %d", n_encoding);
 3357:             printf(" %d", n_format);
 3358:             printf("\n");
 3359:         }
 3360:     }
 3361:     }
 3362:     }
 3363:     }
 3364:     }
 3365:     function_tests++;
 3366: #endif
 3367: 
 3368:     return(test_ret);
 3369: }
 3370: 
 3371: 
 3372: static int
 3373: test_htmlNodeDumpFormatOutput(void) {
 3374:     int test_ret = 0;
 3375: 
 3376: #if defined(LIBXML_HTML_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
 3377:     int mem_base;
 3378:     xmlOutputBufferPtr buf; /* the HTML buffer output */
 3379:     int n_buf;
 3380:     xmlDocPtr doc; /* the document */
 3381:     int n_doc;
 3382:     xmlNodePtr cur; /* the current node */
 3383:     int n_cur;
 3384:     char * encoding; /* the encoding string */
 3385:     int n_encoding;
 3386:     int format; /* should formatting spaces been added */
 3387:     int n_format;
 3388: 
 3389:     for (n_buf = 0;n_buf < gen_nb_xmlOutputBufferPtr;n_buf++) {
 3390:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
 3391:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
 3392:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
 3393:     for (n_format = 0;n_format < gen_nb_int;n_format++) {
 3394:         mem_base = xmlMemBlocks();
 3395:         buf = gen_xmlOutputBufferPtr(n_buf, 0);
 3396:         doc = gen_xmlDocPtr(n_doc, 1);
 3397:         cur = gen_xmlNodePtr(n_cur, 2);
 3398:         encoding = gen_const_char_ptr(n_encoding, 3);
 3399:         format = gen_int(n_format, 4);
 3400: 
 3401:         htmlNodeDumpFormatOutput(buf, doc, cur, (const char *)encoding, format);
 3402:         call_tests++;
 3403:         des_xmlOutputBufferPtr(n_buf, buf, 0);
 3404:         des_xmlDocPtr(n_doc, doc, 1);
 3405:         des_xmlNodePtr(n_cur, cur, 2);
 3406:         des_const_char_ptr(n_encoding, (const char *)encoding, 3);
 3407:         des_int(n_format, format, 4);
 3408:         xmlResetLastError();
 3409:         if (mem_base != xmlMemBlocks()) {
 3410:             printf("Leak of %d blocks found in htmlNodeDumpFormatOutput",
 3411: 	           xmlMemBlocks() - mem_base);
 3412: 	    test_ret++;
 3413:             printf(" %d", n_buf);
 3414:             printf(" %d", n_doc);
 3415:             printf(" %d", n_cur);
 3416:             printf(" %d", n_encoding);
 3417:             printf(" %d", n_format);
 3418:             printf("\n");
 3419:         }
 3420:     }
 3421:     }
 3422:     }
 3423:     }
 3424:     }
 3425:     function_tests++;
 3426: #endif
 3427: 
 3428:     return(test_ret);
 3429: }
 3430: 
 3431: 
 3432: static int
 3433: test_htmlNodeDumpOutput(void) {
 3434:     int test_ret = 0;
 3435: 
 3436: #if defined(LIBXML_HTML_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
 3437:     int mem_base;
 3438:     xmlOutputBufferPtr buf; /* the HTML buffer output */
 3439:     int n_buf;
 3440:     xmlDocPtr doc; /* the document */
 3441:     int n_doc;
 3442:     xmlNodePtr cur; /* the current node */
 3443:     int n_cur;
 3444:     char * encoding; /* the encoding string */
 3445:     int n_encoding;
 3446: 
 3447:     for (n_buf = 0;n_buf < gen_nb_xmlOutputBufferPtr;n_buf++) {
 3448:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
 3449:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
 3450:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
 3451:         mem_base = xmlMemBlocks();
 3452:         buf = gen_xmlOutputBufferPtr(n_buf, 0);
 3453:         doc = gen_xmlDocPtr(n_doc, 1);
 3454:         cur = gen_xmlNodePtr(n_cur, 2);
 3455:         encoding = gen_const_char_ptr(n_encoding, 3);
 3456: 
 3457:         htmlNodeDumpOutput(buf, doc, cur, (const char *)encoding);
 3458:         call_tests++;
 3459:         des_xmlOutputBufferPtr(n_buf, buf, 0);
 3460:         des_xmlDocPtr(n_doc, doc, 1);
 3461:         des_xmlNodePtr(n_cur, cur, 2);
 3462:         des_const_char_ptr(n_encoding, (const char *)encoding, 3);
 3463:         xmlResetLastError();
 3464:         if (mem_base != xmlMemBlocks()) {
 3465:             printf("Leak of %d blocks found in htmlNodeDumpOutput",
 3466: 	           xmlMemBlocks() - mem_base);
 3467: 	    test_ret++;
 3468:             printf(" %d", n_buf);
 3469:             printf(" %d", n_doc);
 3470:             printf(" %d", n_cur);
 3471:             printf(" %d", n_encoding);
 3472:             printf("\n");
 3473:         }
 3474:     }
 3475:     }
 3476:     }
 3477:     }
 3478:     function_tests++;
 3479: #endif
 3480: 
 3481:     return(test_ret);
 3482: }
 3483: 
 3484: 
 3485: static int
 3486: test_htmlSaveFile(void) {
 3487:     int test_ret = 0;
 3488: 
 3489: #if defined(LIBXML_HTML_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
 3490:     int mem_base;
 3491:     int ret_val;
 3492:     const char * filename; /* the filename (or URL) */
 3493:     int n_filename;
 3494:     xmlDocPtr cur; /* the document */
 3495:     int n_cur;
 3496: 
 3497:     for (n_filename = 0;n_filename < gen_nb_fileoutput;n_filename++) {
 3498:     for (n_cur = 0;n_cur < gen_nb_xmlDocPtr;n_cur++) {
 3499:         mem_base = xmlMemBlocks();
 3500:         filename = gen_fileoutput(n_filename, 0);
 3501:         cur = gen_xmlDocPtr(n_cur, 1);
 3502: 
 3503:         ret_val = htmlSaveFile(filename, cur);
 3504:         desret_int(ret_val);
 3505:         call_tests++;
 3506:         des_fileoutput(n_filename, filename, 0);
 3507:         des_xmlDocPtr(n_cur, cur, 1);
 3508:         xmlResetLastError();
 3509:         if (mem_base != xmlMemBlocks()) {
 3510:             printf("Leak of %d blocks found in htmlSaveFile",
 3511: 	           xmlMemBlocks() - mem_base);
 3512: 	    test_ret++;
 3513:             printf(" %d", n_filename);
 3514:             printf(" %d", n_cur);
 3515:             printf("\n");
 3516:         }
 3517:     }
 3518:     }
 3519:     function_tests++;
 3520: #endif
 3521: 
 3522:     return(test_ret);
 3523: }
 3524: 
 3525: 
 3526: static int
 3527: test_htmlSaveFileEnc(void) {
 3528:     int test_ret = 0;
 3529: 
 3530: #if defined(LIBXML_HTML_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
 3531:     int mem_base;
 3532:     int ret_val;
 3533:     const char * filename; /* the filename */
 3534:     int n_filename;
 3535:     xmlDocPtr cur; /* the document */
 3536:     int n_cur;
 3537:     char * encoding; /* the document encoding */
 3538:     int n_encoding;
 3539: 
 3540:     for (n_filename = 0;n_filename < gen_nb_fileoutput;n_filename++) {
 3541:     for (n_cur = 0;n_cur < gen_nb_xmlDocPtr;n_cur++) {
 3542:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
 3543:         mem_base = xmlMemBlocks();
 3544:         filename = gen_fileoutput(n_filename, 0);
 3545:         cur = gen_xmlDocPtr(n_cur, 1);
 3546:         encoding = gen_const_char_ptr(n_encoding, 2);
 3547: 
 3548:         ret_val = htmlSaveFileEnc(filename, cur, (const char *)encoding);
 3549:         desret_int(ret_val);
 3550:         call_tests++;
 3551:         des_fileoutput(n_filename, filename, 0);
 3552:         des_xmlDocPtr(n_cur, cur, 1);
 3553:         des_const_char_ptr(n_encoding, (const char *)encoding, 2);
 3554:         xmlResetLastError();
 3555:         if (mem_base != xmlMemBlocks()) {
 3556:             printf("Leak of %d blocks found in htmlSaveFileEnc",
 3557: 	           xmlMemBlocks() - mem_base);
 3558: 	    test_ret++;
 3559:             printf(" %d", n_filename);
 3560:             printf(" %d", n_cur);
 3561:             printf(" %d", n_encoding);
 3562:             printf("\n");
 3563:         }
 3564:     }
 3565:     }
 3566:     }
 3567:     function_tests++;
 3568: #endif
 3569: 
 3570:     return(test_ret);
 3571: }
 3572: 
 3573: 
 3574: static int
 3575: test_htmlSaveFileFormat(void) {
 3576:     int test_ret = 0;
 3577: 
 3578: #if defined(LIBXML_HTML_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
 3579:     int mem_base;
 3580:     int ret_val;
 3581:     const char * filename; /* the filename */
 3582:     int n_filename;
 3583:     xmlDocPtr cur; /* the document */
 3584:     int n_cur;
 3585:     char * encoding; /* the document encoding */
 3586:     int n_encoding;
 3587:     int format; /* should formatting spaces been added */
 3588:     int n_format;
 3589: 
 3590:     for (n_filename = 0;n_filename < gen_nb_fileoutput;n_filename++) {
 3591:     for (n_cur = 0;n_cur < gen_nb_xmlDocPtr;n_cur++) {
 3592:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
 3593:     for (n_format = 0;n_format < gen_nb_int;n_format++) {
 3594:         mem_base = xmlMemBlocks();
 3595:         filename = gen_fileoutput(n_filename, 0);
 3596:         cur = gen_xmlDocPtr(n_cur, 1);
 3597:         encoding = gen_const_char_ptr(n_encoding, 2);
 3598:         format = gen_int(n_format, 3);
 3599: 
 3600:         ret_val = htmlSaveFileFormat(filename, cur, (const char *)encoding, format);
 3601:         desret_int(ret_val);
 3602:         call_tests++;
 3603:         des_fileoutput(n_filename, filename, 0);
 3604:         des_xmlDocPtr(n_cur, cur, 1);
 3605:         des_const_char_ptr(n_encoding, (const char *)encoding, 2);
 3606:         des_int(n_format, format, 3);
 3607:         xmlResetLastError();
 3608:         if (mem_base != xmlMemBlocks()) {
 3609:             printf("Leak of %d blocks found in htmlSaveFileFormat",
 3610: 	           xmlMemBlocks() - mem_base);
 3611: 	    test_ret++;
 3612:             printf(" %d", n_filename);
 3613:             printf(" %d", n_cur);
 3614:             printf(" %d", n_encoding);
 3615:             printf(" %d", n_format);
 3616:             printf("\n");
 3617:         }
 3618:     }
 3619:     }
 3620:     }
 3621:     }
 3622:     function_tests++;
 3623: #endif
 3624: 
 3625:     return(test_ret);
 3626: }
 3627: 
 3628: 
 3629: static int
 3630: test_htmlSetMetaEncoding(void) {
 3631:     int test_ret = 0;
 3632: 
 3633: #if defined(LIBXML_HTML_ENABLED)
 3634:     int mem_base;
 3635:     int ret_val;
 3636:     htmlDocPtr doc; /* the document */
 3637:     int n_doc;
 3638:     xmlChar * encoding; /* the encoding string */
 3639:     int n_encoding;
 3640: 
 3641:     for (n_doc = 0;n_doc < gen_nb_htmlDocPtr;n_doc++) {
 3642:     for (n_encoding = 0;n_encoding < gen_nb_const_xmlChar_ptr;n_encoding++) {
 3643:         mem_base = xmlMemBlocks();
 3644:         doc = gen_htmlDocPtr(n_doc, 0);
 3645:         encoding = gen_const_xmlChar_ptr(n_encoding, 1);
 3646: 
 3647:         ret_val = htmlSetMetaEncoding(doc, (const xmlChar *)encoding);
 3648:         desret_int(ret_val);
 3649:         call_tests++;
 3650:         des_htmlDocPtr(n_doc, doc, 0);
 3651:         des_const_xmlChar_ptr(n_encoding, (const xmlChar *)encoding, 1);
 3652:         xmlResetLastError();
 3653:         if (mem_base != xmlMemBlocks()) {
 3654:             printf("Leak of %d blocks found in htmlSetMetaEncoding",
 3655: 	           xmlMemBlocks() - mem_base);
 3656: 	    test_ret++;
 3657:             printf(" %d", n_doc);
 3658:             printf(" %d", n_encoding);
 3659:             printf("\n");
 3660:         }
 3661:     }
 3662:     }
 3663:     function_tests++;
 3664: #endif
 3665: 
 3666:     return(test_ret);
 3667: }
 3668: 
 3669: static int
 3670: test_HTMLtree(void) {
 3671:     int test_ret = 0;
 3672: 
 3673:     if (quiet == 0) printf("Testing HTMLtree : 18 of 18 functions ...\n");
 3674:     test_ret += test_htmlDocContentDumpFormatOutput();
 3675:     test_ret += test_htmlDocContentDumpOutput();
 3676:     test_ret += test_htmlDocDump();
 3677:     test_ret += test_htmlDocDumpMemory();
 3678:     test_ret += test_htmlDocDumpMemoryFormat();
 3679:     test_ret += test_htmlGetMetaEncoding();
 3680:     test_ret += test_htmlIsBooleanAttr();
 3681:     test_ret += test_htmlNewDoc();
 3682:     test_ret += test_htmlNewDocNoDtD();
 3683:     test_ret += test_htmlNodeDump();
 3684:     test_ret += test_htmlNodeDumpFile();
 3685:     test_ret += test_htmlNodeDumpFileFormat();
 3686:     test_ret += test_htmlNodeDumpFormatOutput();
 3687:     test_ret += test_htmlNodeDumpOutput();
 3688:     test_ret += test_htmlSaveFile();
 3689:     test_ret += test_htmlSaveFileEnc();
 3690:     test_ret += test_htmlSaveFileFormat();
 3691:     test_ret += test_htmlSetMetaEncoding();
 3692: 
 3693:     if (test_ret != 0)
 3694: 	printf("Module HTMLtree: %d errors\n", test_ret);
 3695:     return(test_ret);
 3696: }
 3697: 
 3698: static int
 3699: test_docbDefaultSAXHandlerInit(void) {
 3700:     int test_ret = 0;
 3701: 
 3702: #if defined(LIBXML_DOCB_ENABLED)
 3703: #ifdef LIBXML_DOCB_ENABLED
 3704:     int mem_base;
 3705: 
 3706:         mem_base = xmlMemBlocks();
 3707: 
 3708:         docbDefaultSAXHandlerInit();
 3709:         call_tests++;
 3710:         xmlResetLastError();
 3711:         if (mem_base != xmlMemBlocks()) {
 3712:             printf("Leak of %d blocks found in docbDefaultSAXHandlerInit",
 3713: 	           xmlMemBlocks() - mem_base);
 3714: 	    test_ret++;
 3715:             printf("\n");
 3716:         }
 3717:     function_tests++;
 3718: #endif
 3719: #endif
 3720: 
 3721:     return(test_ret);
 3722: }
 3723: 
 3724: 
 3725: static int
 3726: test_htmlDefaultSAXHandlerInit(void) {
 3727:     int test_ret = 0;
 3728: 
 3729: #if defined(LIBXML_HTML_ENABLED)
 3730: #ifdef LIBXML_HTML_ENABLED
 3731:     int mem_base;
 3732: 
 3733:         mem_base = xmlMemBlocks();
 3734: 
 3735:         htmlDefaultSAXHandlerInit();
 3736:         call_tests++;
 3737:         xmlResetLastError();
 3738:         if (mem_base != xmlMemBlocks()) {
 3739:             printf("Leak of %d blocks found in htmlDefaultSAXHandlerInit",
 3740: 	           xmlMemBlocks() - mem_base);
 3741: 	    test_ret++;
 3742:             printf("\n");
 3743:         }
 3744:     function_tests++;
 3745: #endif
 3746: #endif
 3747: 
 3748:     return(test_ret);
 3749: }
 3750: 
 3751: 
 3752: static int
 3753: test_xmlDefaultSAXHandlerInit(void) {
 3754:     int test_ret = 0;
 3755: 
 3756:     int mem_base;
 3757: 
 3758:         mem_base = xmlMemBlocks();
 3759: 
 3760:         xmlDefaultSAXHandlerInit();
 3761:         call_tests++;
 3762:         xmlResetLastError();
 3763:         if (mem_base != xmlMemBlocks()) {
 3764:             printf("Leak of %d blocks found in xmlDefaultSAXHandlerInit",
 3765: 	           xmlMemBlocks() - mem_base);
 3766: 	    test_ret++;
 3767:             printf("\n");
 3768:         }
 3769:     function_tests++;
 3770: 
 3771:     return(test_ret);
 3772: }
 3773: 
 3774: 
 3775: #define gen_nb_xmlEnumerationPtr 1
 3776: static xmlEnumerationPtr gen_xmlEnumerationPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 3777:     return(NULL);
 3778: }
 3779: static void des_xmlEnumerationPtr(int no ATTRIBUTE_UNUSED, xmlEnumerationPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 3780: }
 3781: 
 3782: static int
 3783: test_xmlSAX2AttributeDecl(void) {
 3784:     int test_ret = 0;
 3785: 
 3786:     int mem_base;
 3787:     void * ctx; /* the user data (XML parser context) */
 3788:     int n_ctx;
 3789:     xmlChar * elem; /* the name of the element */
 3790:     int n_elem;
 3791:     xmlChar * fullname; /* the attribute name */
 3792:     int n_fullname;
 3793:     int type; /* the attribute type */
 3794:     int n_type;
 3795:     int def; /* the type of default value */
 3796:     int n_def;
 3797:     xmlChar * defaultValue; /* the attribute default value */
 3798:     int n_defaultValue;
 3799:     xmlEnumerationPtr tree; /* the tree of enumerated value set */
 3800:     int n_tree;
 3801: 
 3802:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 3803:     for (n_elem = 0;n_elem < gen_nb_const_xmlChar_ptr;n_elem++) {
 3804:     for (n_fullname = 0;n_fullname < gen_nb_const_xmlChar_ptr;n_fullname++) {
 3805:     for (n_type = 0;n_type < gen_nb_int;n_type++) {
 3806:     for (n_def = 0;n_def < gen_nb_int;n_def++) {
 3807:     for (n_defaultValue = 0;n_defaultValue < gen_nb_const_xmlChar_ptr;n_defaultValue++) {
 3808:     for (n_tree = 0;n_tree < gen_nb_xmlEnumerationPtr;n_tree++) {
 3809:         mem_base = xmlMemBlocks();
 3810:         ctx = gen_void_ptr(n_ctx, 0);
 3811:         elem = gen_const_xmlChar_ptr(n_elem, 1);
 3812:         fullname = gen_const_xmlChar_ptr(n_fullname, 2);
 3813:         type = gen_int(n_type, 3);
 3814:         def = gen_int(n_def, 4);
 3815:         defaultValue = gen_const_xmlChar_ptr(n_defaultValue, 5);
 3816:         tree = gen_xmlEnumerationPtr(n_tree, 6);
 3817: 
 3818:         xmlSAX2AttributeDecl(ctx, (const xmlChar *)elem, (const xmlChar *)fullname, type, def, (const xmlChar *)defaultValue, tree);
 3819:         call_tests++;
 3820:         des_void_ptr(n_ctx, ctx, 0);
 3821:         des_const_xmlChar_ptr(n_elem, (const xmlChar *)elem, 1);
 3822:         des_const_xmlChar_ptr(n_fullname, (const xmlChar *)fullname, 2);
 3823:         des_int(n_type, type, 3);
 3824:         des_int(n_def, def, 4);
 3825:         des_const_xmlChar_ptr(n_defaultValue, (const xmlChar *)defaultValue, 5);
 3826:         des_xmlEnumerationPtr(n_tree, tree, 6);
 3827:         xmlResetLastError();
 3828:         if (mem_base != xmlMemBlocks()) {
 3829:             printf("Leak of %d blocks found in xmlSAX2AttributeDecl",
 3830: 	           xmlMemBlocks() - mem_base);
 3831: 	    test_ret++;
 3832:             printf(" %d", n_ctx);
 3833:             printf(" %d", n_elem);
 3834:             printf(" %d", n_fullname);
 3835:             printf(" %d", n_type);
 3836:             printf(" %d", n_def);
 3837:             printf(" %d", n_defaultValue);
 3838:             printf(" %d", n_tree);
 3839:             printf("\n");
 3840:         }
 3841:     }
 3842:     }
 3843:     }
 3844:     }
 3845:     }
 3846:     }
 3847:     }
 3848:     function_tests++;
 3849: 
 3850:     return(test_ret);
 3851: }
 3852: 
 3853: 
 3854: static int
 3855: test_xmlSAX2CDataBlock(void) {
 3856:     int test_ret = 0;
 3857: 
 3858:     int mem_base;
 3859:     void * ctx; /* the user data (XML parser context) */
 3860:     int n_ctx;
 3861:     xmlChar * value; /* The pcdata content */
 3862:     int n_value;
 3863:     int len; /* the block length */
 3864:     int n_len;
 3865: 
 3866:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 3867:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
 3868:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
 3869:         mem_base = xmlMemBlocks();
 3870:         ctx = gen_void_ptr(n_ctx, 0);
 3871:         value = gen_const_xmlChar_ptr(n_value, 1);
 3872:         len = gen_int(n_len, 2);
 3873: 
 3874:         xmlSAX2CDataBlock(ctx, (const xmlChar *)value, len);
 3875:         call_tests++;
 3876:         des_void_ptr(n_ctx, ctx, 0);
 3877:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 1);
 3878:         des_int(n_len, len, 2);
 3879:         xmlResetLastError();
 3880:         if (mem_base != xmlMemBlocks()) {
 3881:             printf("Leak of %d blocks found in xmlSAX2CDataBlock",
 3882: 	           xmlMemBlocks() - mem_base);
 3883: 	    test_ret++;
 3884:             printf(" %d", n_ctx);
 3885:             printf(" %d", n_value);
 3886:             printf(" %d", n_len);
 3887:             printf("\n");
 3888:         }
 3889:     }
 3890:     }
 3891:     }
 3892:     function_tests++;
 3893: 
 3894:     return(test_ret);
 3895: }
 3896: 
 3897: 
 3898: static int
 3899: test_xmlSAX2Characters(void) {
 3900:     int test_ret = 0;
 3901: 
 3902:     int mem_base;
 3903:     void * ctx; /* the user data (XML parser context) */
 3904:     int n_ctx;
 3905:     xmlChar * ch; /* a xmlChar string */
 3906:     int n_ch;
 3907:     int len; /* the number of xmlChar */
 3908:     int n_len;
 3909: 
 3910:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 3911:     for (n_ch = 0;n_ch < gen_nb_const_xmlChar_ptr;n_ch++) {
 3912:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
 3913:         mem_base = xmlMemBlocks();
 3914:         ctx = gen_void_ptr(n_ctx, 0);
 3915:         ch = gen_const_xmlChar_ptr(n_ch, 1);
 3916:         len = gen_int(n_len, 2);
 3917: 
 3918:         xmlSAX2Characters(ctx, (const xmlChar *)ch, len);
 3919:         call_tests++;
 3920:         des_void_ptr(n_ctx, ctx, 0);
 3921:         des_const_xmlChar_ptr(n_ch, (const xmlChar *)ch, 1);
 3922:         des_int(n_len, len, 2);
 3923:         xmlResetLastError();
 3924:         if (mem_base != xmlMemBlocks()) {
 3925:             printf("Leak of %d blocks found in xmlSAX2Characters",
 3926: 	           xmlMemBlocks() - mem_base);
 3927: 	    test_ret++;
 3928:             printf(" %d", n_ctx);
 3929:             printf(" %d", n_ch);
 3930:             printf(" %d", n_len);
 3931:             printf("\n");
 3932:         }
 3933:     }
 3934:     }
 3935:     }
 3936:     function_tests++;
 3937: 
 3938:     return(test_ret);
 3939: }
 3940: 
 3941: 
 3942: static int
 3943: test_xmlSAX2Comment(void) {
 3944:     int test_ret = 0;
 3945: 
 3946:     int mem_base;
 3947:     void * ctx; /* the user data (XML parser context) */
 3948:     int n_ctx;
 3949:     xmlChar * value; /* the xmlSAX2Comment content */
 3950:     int n_value;
 3951: 
 3952:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 3953:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
 3954:         mem_base = xmlMemBlocks();
 3955:         ctx = gen_void_ptr(n_ctx, 0);
 3956:         value = gen_const_xmlChar_ptr(n_value, 1);
 3957: 
 3958:         xmlSAX2Comment(ctx, (const xmlChar *)value);
 3959:         call_tests++;
 3960:         des_void_ptr(n_ctx, ctx, 0);
 3961:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 1);
 3962:         xmlResetLastError();
 3963:         if (mem_base != xmlMemBlocks()) {
 3964:             printf("Leak of %d blocks found in xmlSAX2Comment",
 3965: 	           xmlMemBlocks() - mem_base);
 3966: 	    test_ret++;
 3967:             printf(" %d", n_ctx);
 3968:             printf(" %d", n_value);
 3969:             printf("\n");
 3970:         }
 3971:     }
 3972:     }
 3973:     function_tests++;
 3974: 
 3975:     return(test_ret);
 3976: }
 3977: 
 3978: 
 3979: static int
 3980: test_xmlSAX2ElementDecl(void) {
 3981:     int test_ret = 0;
 3982: 
 3983:     int mem_base;
 3984:     void * ctx; /* the user data (XML parser context) */
 3985:     int n_ctx;
 3986:     xmlChar * name; /* the element name */
 3987:     int n_name;
 3988:     int type; /* the element type */
 3989:     int n_type;
 3990:     xmlElementContentPtr content; /* the element value tree */
 3991:     int n_content;
 3992: 
 3993:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 3994:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 3995:     for (n_type = 0;n_type < gen_nb_int;n_type++) {
 3996:     for (n_content = 0;n_content < gen_nb_xmlElementContentPtr;n_content++) {
 3997:         mem_base = xmlMemBlocks();
 3998:         ctx = gen_void_ptr(n_ctx, 0);
 3999:         name = gen_const_xmlChar_ptr(n_name, 1);
 4000:         type = gen_int(n_type, 2);
 4001:         content = gen_xmlElementContentPtr(n_content, 3);
 4002: 
 4003:         xmlSAX2ElementDecl(ctx, (const xmlChar *)name, type, content);
 4004:         call_tests++;
 4005:         des_void_ptr(n_ctx, ctx, 0);
 4006:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 4007:         des_int(n_type, type, 2);
 4008:         des_xmlElementContentPtr(n_content, content, 3);
 4009:         xmlResetLastError();
 4010:         if (mem_base != xmlMemBlocks()) {
 4011:             printf("Leak of %d blocks found in xmlSAX2ElementDecl",
 4012: 	           xmlMemBlocks() - mem_base);
 4013: 	    test_ret++;
 4014:             printf(" %d", n_ctx);
 4015:             printf(" %d", n_name);
 4016:             printf(" %d", n_type);
 4017:             printf(" %d", n_content);
 4018:             printf("\n");
 4019:         }
 4020:     }
 4021:     }
 4022:     }
 4023:     }
 4024:     function_tests++;
 4025: 
 4026:     return(test_ret);
 4027: }
 4028: 
 4029: 
 4030: static int
 4031: test_xmlSAX2EndDocument(void) {
 4032:     int test_ret = 0;
 4033: 
 4034:     int mem_base;
 4035:     void * ctx; /* the user data (XML parser context) */
 4036:     int n_ctx;
 4037: 
 4038:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 4039:         mem_base = xmlMemBlocks();
 4040:         ctx = gen_void_ptr(n_ctx, 0);
 4041: 
 4042:         xmlSAX2EndDocument(ctx);
 4043:         call_tests++;
 4044:         des_void_ptr(n_ctx, ctx, 0);
 4045:         xmlResetLastError();
 4046:         if (mem_base != xmlMemBlocks()) {
 4047:             printf("Leak of %d blocks found in xmlSAX2EndDocument",
 4048: 	           xmlMemBlocks() - mem_base);
 4049: 	    test_ret++;
 4050:             printf(" %d", n_ctx);
 4051:             printf("\n");
 4052:         }
 4053:     }
 4054:     function_tests++;
 4055: 
 4056:     return(test_ret);
 4057: }
 4058: 
 4059: 
 4060: static int
 4061: test_xmlSAX2EndElement(void) {
 4062:     int test_ret = 0;
 4063: 
 4064: #if defined(LIBXML_SAX1_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || defined(LIBXML_DOCB_ENABLED)
 4065: #ifdef LIBXML_SAX1_ENABLED
 4066:     int mem_base;
 4067:     void * ctx; /* the user data (XML parser context) */
 4068:     int n_ctx;
 4069:     xmlChar * name; /* The element name */
 4070:     int n_name;
 4071: 
 4072:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 4073:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 4074:         mem_base = xmlMemBlocks();
 4075:         ctx = gen_void_ptr(n_ctx, 0);
 4076:         name = gen_const_xmlChar_ptr(n_name, 1);
 4077: 
 4078:         xmlSAX2EndElement(ctx, (const xmlChar *)name);
 4079:         call_tests++;
 4080:         des_void_ptr(n_ctx, ctx, 0);
 4081:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 4082:         xmlResetLastError();
 4083:         if (mem_base != xmlMemBlocks()) {
 4084:             printf("Leak of %d blocks found in xmlSAX2EndElement",
 4085: 	           xmlMemBlocks() - mem_base);
 4086: 	    test_ret++;
 4087:             printf(" %d", n_ctx);
 4088:             printf(" %d", n_name);
 4089:             printf("\n");
 4090:         }
 4091:     }
 4092:     }
 4093:     function_tests++;
 4094: #endif
 4095: #endif
 4096: 
 4097:     return(test_ret);
 4098: }
 4099: 
 4100: 
 4101: static int
 4102: test_xmlSAX2EndElementNs(void) {
 4103:     int test_ret = 0;
 4104: 
 4105:     int mem_base;
 4106:     void * ctx; /* the user data (XML parser context) */
 4107:     int n_ctx;
 4108:     xmlChar * localname; /* the local name of the element */
 4109:     int n_localname;
 4110:     xmlChar * prefix; /* the element namespace prefix if available */
 4111:     int n_prefix;
 4112:     xmlChar * URI; /* the element namespace name if available */
 4113:     int n_URI;
 4114: 
 4115:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 4116:     for (n_localname = 0;n_localname < gen_nb_const_xmlChar_ptr;n_localname++) {
 4117:     for (n_prefix = 0;n_prefix < gen_nb_const_xmlChar_ptr;n_prefix++) {
 4118:     for (n_URI = 0;n_URI < gen_nb_const_xmlChar_ptr;n_URI++) {
 4119:         mem_base = xmlMemBlocks();
 4120:         ctx = gen_void_ptr(n_ctx, 0);
 4121:         localname = gen_const_xmlChar_ptr(n_localname, 1);
 4122:         prefix = gen_const_xmlChar_ptr(n_prefix, 2);
 4123:         URI = gen_const_xmlChar_ptr(n_URI, 3);
 4124: 
 4125:         xmlSAX2EndElementNs(ctx, (const xmlChar *)localname, (const xmlChar *)prefix, (const xmlChar *)URI);
 4126:         call_tests++;
 4127:         des_void_ptr(n_ctx, ctx, 0);
 4128:         des_const_xmlChar_ptr(n_localname, (const xmlChar *)localname, 1);
 4129:         des_const_xmlChar_ptr(n_prefix, (const xmlChar *)prefix, 2);
 4130:         des_const_xmlChar_ptr(n_URI, (const xmlChar *)URI, 3);
 4131:         xmlResetLastError();
 4132:         if (mem_base != xmlMemBlocks()) {
 4133:             printf("Leak of %d blocks found in xmlSAX2EndElementNs",
 4134: 	           xmlMemBlocks() - mem_base);
 4135: 	    test_ret++;
 4136:             printf(" %d", n_ctx);
 4137:             printf(" %d", n_localname);
 4138:             printf(" %d", n_prefix);
 4139:             printf(" %d", n_URI);
 4140:             printf("\n");
 4141:         }
 4142:     }
 4143:     }
 4144:     }
 4145:     }
 4146:     function_tests++;
 4147: 
 4148:     return(test_ret);
 4149: }
 4150: 
 4151: 
 4152: static int
 4153: test_xmlSAX2EntityDecl(void) {
 4154:     int test_ret = 0;
 4155: 
 4156:     int mem_base;
 4157:     void * ctx; /* the user data (XML parser context) */
 4158:     int n_ctx;
 4159:     xmlChar * name; /* the entity name */
 4160:     int n_name;
 4161:     int type; /* the entity type */
 4162:     int n_type;
 4163:     xmlChar * publicId; /* The public ID of the entity */
 4164:     int n_publicId;
 4165:     xmlChar * systemId; /* The system ID of the entity */
 4166:     int n_systemId;
 4167:     xmlChar * content; /* the entity value (without processing). */
 4168:     int n_content;
 4169: 
 4170:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 4171:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 4172:     for (n_type = 0;n_type < gen_nb_int;n_type++) {
 4173:     for (n_publicId = 0;n_publicId < gen_nb_const_xmlChar_ptr;n_publicId++) {
 4174:     for (n_systemId = 0;n_systemId < gen_nb_const_xmlChar_ptr;n_systemId++) {
 4175:     for (n_content = 0;n_content < gen_nb_xmlChar_ptr;n_content++) {
 4176:         mem_base = xmlMemBlocks();
 4177:         ctx = gen_void_ptr(n_ctx, 0);
 4178:         name = gen_const_xmlChar_ptr(n_name, 1);
 4179:         type = gen_int(n_type, 2);
 4180:         publicId = gen_const_xmlChar_ptr(n_publicId, 3);
 4181:         systemId = gen_const_xmlChar_ptr(n_systemId, 4);
 4182:         content = gen_xmlChar_ptr(n_content, 5);
 4183: 
 4184:         xmlSAX2EntityDecl(ctx, (const xmlChar *)name, type, (const xmlChar *)publicId, (const xmlChar *)systemId, content);
 4185:         call_tests++;
 4186:         des_void_ptr(n_ctx, ctx, 0);
 4187:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 4188:         des_int(n_type, type, 2);
 4189:         des_const_xmlChar_ptr(n_publicId, (const xmlChar *)publicId, 3);
 4190:         des_const_xmlChar_ptr(n_systemId, (const xmlChar *)systemId, 4);
 4191:         des_xmlChar_ptr(n_content, content, 5);
 4192:         xmlResetLastError();
 4193:         if (mem_base != xmlMemBlocks()) {
 4194:             printf("Leak of %d blocks found in xmlSAX2EntityDecl",
 4195: 	           xmlMemBlocks() - mem_base);
 4196: 	    test_ret++;
 4197:             printf(" %d", n_ctx);
 4198:             printf(" %d", n_name);
 4199:             printf(" %d", n_type);
 4200:             printf(" %d", n_publicId);
 4201:             printf(" %d", n_systemId);
 4202:             printf(" %d", n_content);
 4203:             printf("\n");
 4204:         }
 4205:     }
 4206:     }
 4207:     }
 4208:     }
 4209:     }
 4210:     }
 4211:     function_tests++;
 4212: 
 4213:     return(test_ret);
 4214: }
 4215: 
 4216: 
 4217: static int
 4218: test_xmlSAX2ExternalSubset(void) {
 4219:     int test_ret = 0;
 4220: 
 4221:     int mem_base;
 4222:     void * ctx; /* the user data (XML parser context) */
 4223:     int n_ctx;
 4224:     xmlChar * name; /* the root element name */
 4225:     int n_name;
 4226:     xmlChar * ExternalID; /* the external ID */
 4227:     int n_ExternalID;
 4228:     xmlChar * SystemID; /* the SYSTEM ID (e.g. filename or URL) */
 4229:     int n_SystemID;
 4230: 
 4231:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 4232:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 4233:     for (n_ExternalID = 0;n_ExternalID < gen_nb_const_xmlChar_ptr;n_ExternalID++) {
 4234:     for (n_SystemID = 0;n_SystemID < gen_nb_const_xmlChar_ptr;n_SystemID++) {
 4235:         mem_base = xmlMemBlocks();
 4236:         ctx = gen_void_ptr(n_ctx, 0);
 4237:         name = gen_const_xmlChar_ptr(n_name, 1);
 4238:         ExternalID = gen_const_xmlChar_ptr(n_ExternalID, 2);
 4239:         SystemID = gen_const_xmlChar_ptr(n_SystemID, 3);
 4240: 
 4241:         xmlSAX2ExternalSubset(ctx, (const xmlChar *)name, (const xmlChar *)ExternalID, (const xmlChar *)SystemID);
 4242:         call_tests++;
 4243:         des_void_ptr(n_ctx, ctx, 0);
 4244:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 4245:         des_const_xmlChar_ptr(n_ExternalID, (const xmlChar *)ExternalID, 2);
 4246:         des_const_xmlChar_ptr(n_SystemID, (const xmlChar *)SystemID, 3);
 4247:         xmlResetLastError();
 4248:         if (mem_base != xmlMemBlocks()) {
 4249:             printf("Leak of %d blocks found in xmlSAX2ExternalSubset",
 4250: 	           xmlMemBlocks() - mem_base);
 4251: 	    test_ret++;
 4252:             printf(" %d", n_ctx);
 4253:             printf(" %d", n_name);
 4254:             printf(" %d", n_ExternalID);
 4255:             printf(" %d", n_SystemID);
 4256:             printf("\n");
 4257:         }
 4258:     }
 4259:     }
 4260:     }
 4261:     }
 4262:     function_tests++;
 4263: 
 4264:     return(test_ret);
 4265: }
 4266: 
 4267: 
 4268: static int
 4269: test_xmlSAX2GetColumnNumber(void) {
 4270:     int test_ret = 0;
 4271: 
 4272:     int mem_base;
 4273:     int ret_val;
 4274:     void * ctx; /* the user data (XML parser context) */
 4275:     int n_ctx;
 4276: 
 4277:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 4278:         mem_base = xmlMemBlocks();
 4279:         ctx = gen_void_ptr(n_ctx, 0);
 4280: 
 4281:         ret_val = xmlSAX2GetColumnNumber(ctx);
 4282:         desret_int(ret_val);
 4283:         call_tests++;
 4284:         des_void_ptr(n_ctx, ctx, 0);
 4285:         xmlResetLastError();
 4286:         if (mem_base != xmlMemBlocks()) {
 4287:             printf("Leak of %d blocks found in xmlSAX2GetColumnNumber",
 4288: 	           xmlMemBlocks() - mem_base);
 4289: 	    test_ret++;
 4290:             printf(" %d", n_ctx);
 4291:             printf("\n");
 4292:         }
 4293:     }
 4294:     function_tests++;
 4295: 
 4296:     return(test_ret);
 4297: }
 4298: 
 4299: 
 4300: static int
 4301: test_xmlSAX2GetEntity(void) {
 4302:     int test_ret = 0;
 4303: 
 4304:     int mem_base;
 4305:     xmlEntityPtr ret_val;
 4306:     void * ctx; /* the user data (XML parser context) */
 4307:     int n_ctx;
 4308:     xmlChar * name; /* The entity name */
 4309:     int n_name;
 4310: 
 4311:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 4312:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 4313:         mem_base = xmlMemBlocks();
 4314:         ctx = gen_void_ptr(n_ctx, 0);
 4315:         name = gen_const_xmlChar_ptr(n_name, 1);
 4316: 
 4317:         ret_val = xmlSAX2GetEntity(ctx, (const xmlChar *)name);
 4318:         desret_xmlEntityPtr(ret_val);
 4319:         call_tests++;
 4320:         des_void_ptr(n_ctx, ctx, 0);
 4321:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 4322:         xmlResetLastError();
 4323:         if (mem_base != xmlMemBlocks()) {
 4324:             printf("Leak of %d blocks found in xmlSAX2GetEntity",
 4325: 	           xmlMemBlocks() - mem_base);
 4326: 	    test_ret++;
 4327:             printf(" %d", n_ctx);
 4328:             printf(" %d", n_name);
 4329:             printf("\n");
 4330:         }
 4331:     }
 4332:     }
 4333:     function_tests++;
 4334: 
 4335:     return(test_ret);
 4336: }
 4337: 
 4338: 
 4339: static int
 4340: test_xmlSAX2GetLineNumber(void) {
 4341:     int test_ret = 0;
 4342: 
 4343:     int mem_base;
 4344:     int ret_val;
 4345:     void * ctx; /* the user data (XML parser context) */
 4346:     int n_ctx;
 4347: 
 4348:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 4349:         mem_base = xmlMemBlocks();
 4350:         ctx = gen_void_ptr(n_ctx, 0);
 4351: 
 4352:         ret_val = xmlSAX2GetLineNumber(ctx);
 4353:         desret_int(ret_val);
 4354:         call_tests++;
 4355:         des_void_ptr(n_ctx, ctx, 0);
 4356:         xmlResetLastError();
 4357:         if (mem_base != xmlMemBlocks()) {
 4358:             printf("Leak of %d blocks found in xmlSAX2GetLineNumber",
 4359: 	           xmlMemBlocks() - mem_base);
 4360: 	    test_ret++;
 4361:             printf(" %d", n_ctx);
 4362:             printf("\n");
 4363:         }
 4364:     }
 4365:     function_tests++;
 4366: 
 4367:     return(test_ret);
 4368: }
 4369: 
 4370: 
 4371: static int
 4372: test_xmlSAX2GetParameterEntity(void) {
 4373:     int test_ret = 0;
 4374: 
 4375:     int mem_base;
 4376:     xmlEntityPtr ret_val;
 4377:     void * ctx; /* the user data (XML parser context) */
 4378:     int n_ctx;
 4379:     xmlChar * name; /* The entity name */
 4380:     int n_name;
 4381: 
 4382:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 4383:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 4384:         mem_base = xmlMemBlocks();
 4385:         ctx = gen_void_ptr(n_ctx, 0);
 4386:         name = gen_const_xmlChar_ptr(n_name, 1);
 4387: 
 4388:         ret_val = xmlSAX2GetParameterEntity(ctx, (const xmlChar *)name);
 4389:         desret_xmlEntityPtr(ret_val);
 4390:         call_tests++;
 4391:         des_void_ptr(n_ctx, ctx, 0);
 4392:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 4393:         xmlResetLastError();
 4394:         if (mem_base != xmlMemBlocks()) {
 4395:             printf("Leak of %d blocks found in xmlSAX2GetParameterEntity",
 4396: 	           xmlMemBlocks() - mem_base);
 4397: 	    test_ret++;
 4398:             printf(" %d", n_ctx);
 4399:             printf(" %d", n_name);
 4400:             printf("\n");
 4401:         }
 4402:     }
 4403:     }
 4404:     function_tests++;
 4405: 
 4406:     return(test_ret);
 4407: }
 4408: 
 4409: 
 4410: static int
 4411: test_xmlSAX2GetPublicId(void) {
 4412:     int test_ret = 0;
 4413: 
 4414:     int mem_base;
 4415:     const xmlChar * ret_val;
 4416:     void * ctx; /* the user data (XML parser context) */
 4417:     int n_ctx;
 4418: 
 4419:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 4420:         mem_base = xmlMemBlocks();
 4421:         ctx = gen_void_ptr(n_ctx, 0);
 4422: 
 4423:         ret_val = xmlSAX2GetPublicId(ctx);
 4424:         desret_const_xmlChar_ptr(ret_val);
 4425:         call_tests++;
 4426:         des_void_ptr(n_ctx, ctx, 0);
 4427:         xmlResetLastError();
 4428:         if (mem_base != xmlMemBlocks()) {
 4429:             printf("Leak of %d blocks found in xmlSAX2GetPublicId",
 4430: 	           xmlMemBlocks() - mem_base);
 4431: 	    test_ret++;
 4432:             printf(" %d", n_ctx);
 4433:             printf("\n");
 4434:         }
 4435:     }
 4436:     function_tests++;
 4437: 
 4438:     return(test_ret);
 4439: }
 4440: 
 4441: 
 4442: static int
 4443: test_xmlSAX2GetSystemId(void) {
 4444:     int test_ret = 0;
 4445: 
 4446:     int mem_base;
 4447:     const xmlChar * ret_val;
 4448:     void * ctx; /* the user data (XML parser context) */
 4449:     int n_ctx;
 4450: 
 4451:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 4452:         mem_base = xmlMemBlocks();
 4453:         ctx = gen_void_ptr(n_ctx, 0);
 4454: 
 4455:         ret_val = xmlSAX2GetSystemId(ctx);
 4456:         desret_const_xmlChar_ptr(ret_val);
 4457:         call_tests++;
 4458:         des_void_ptr(n_ctx, ctx, 0);
 4459:         xmlResetLastError();
 4460:         if (mem_base != xmlMemBlocks()) {
 4461:             printf("Leak of %d blocks found in xmlSAX2GetSystemId",
 4462: 	           xmlMemBlocks() - mem_base);
 4463: 	    test_ret++;
 4464:             printf(" %d", n_ctx);
 4465:             printf("\n");
 4466:         }
 4467:     }
 4468:     function_tests++;
 4469: 
 4470:     return(test_ret);
 4471: }
 4472: 
 4473: 
 4474: static int
 4475: test_xmlSAX2HasExternalSubset(void) {
 4476:     int test_ret = 0;
 4477: 
 4478:     int mem_base;
 4479:     int ret_val;
 4480:     void * ctx; /* the user data (XML parser context) */
 4481:     int n_ctx;
 4482: 
 4483:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 4484:         mem_base = xmlMemBlocks();
 4485:         ctx = gen_void_ptr(n_ctx, 0);
 4486: 
 4487:         ret_val = xmlSAX2HasExternalSubset(ctx);
 4488:         desret_int(ret_val);
 4489:         call_tests++;
 4490:         des_void_ptr(n_ctx, ctx, 0);
 4491:         xmlResetLastError();
 4492:         if (mem_base != xmlMemBlocks()) {
 4493:             printf("Leak of %d blocks found in xmlSAX2HasExternalSubset",
 4494: 	           xmlMemBlocks() - mem_base);
 4495: 	    test_ret++;
 4496:             printf(" %d", n_ctx);
 4497:             printf("\n");
 4498:         }
 4499:     }
 4500:     function_tests++;
 4501: 
 4502:     return(test_ret);
 4503: }
 4504: 
 4505: 
 4506: static int
 4507: test_xmlSAX2HasInternalSubset(void) {
 4508:     int test_ret = 0;
 4509: 
 4510:     int mem_base;
 4511:     int ret_val;
 4512:     void * ctx; /* the user data (XML parser context) */
 4513:     int n_ctx;
 4514: 
 4515:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 4516:         mem_base = xmlMemBlocks();
 4517:         ctx = gen_void_ptr(n_ctx, 0);
 4518: 
 4519:         ret_val = xmlSAX2HasInternalSubset(ctx);
 4520:         desret_int(ret_val);
 4521:         call_tests++;
 4522:         des_void_ptr(n_ctx, ctx, 0);
 4523:         xmlResetLastError();
 4524:         if (mem_base != xmlMemBlocks()) {
 4525:             printf("Leak of %d blocks found in xmlSAX2HasInternalSubset",
 4526: 	           xmlMemBlocks() - mem_base);
 4527: 	    test_ret++;
 4528:             printf(" %d", n_ctx);
 4529:             printf("\n");
 4530:         }
 4531:     }
 4532:     function_tests++;
 4533: 
 4534:     return(test_ret);
 4535: }
 4536: 
 4537: 
 4538: static int
 4539: test_xmlSAX2IgnorableWhitespace(void) {
 4540:     int test_ret = 0;
 4541: 
 4542:     int mem_base;
 4543:     void * ctx; /* the user data (XML parser context) */
 4544:     int n_ctx;
 4545:     xmlChar * ch; /* a xmlChar string */
 4546:     int n_ch;
 4547:     int len; /* the number of xmlChar */
 4548:     int n_len;
 4549: 
 4550:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 4551:     for (n_ch = 0;n_ch < gen_nb_const_xmlChar_ptr;n_ch++) {
 4552:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
 4553:         mem_base = xmlMemBlocks();
 4554:         ctx = gen_void_ptr(n_ctx, 0);
 4555:         ch = gen_const_xmlChar_ptr(n_ch, 1);
 4556:         len = gen_int(n_len, 2);
 4557: 
 4558:         xmlSAX2IgnorableWhitespace(ctx, (const xmlChar *)ch, len);
 4559:         call_tests++;
 4560:         des_void_ptr(n_ctx, ctx, 0);
 4561:         des_const_xmlChar_ptr(n_ch, (const xmlChar *)ch, 1);
 4562:         des_int(n_len, len, 2);
 4563:         xmlResetLastError();
 4564:         if (mem_base != xmlMemBlocks()) {
 4565:             printf("Leak of %d blocks found in xmlSAX2IgnorableWhitespace",
 4566: 	           xmlMemBlocks() - mem_base);
 4567: 	    test_ret++;
 4568:             printf(" %d", n_ctx);
 4569:             printf(" %d", n_ch);
 4570:             printf(" %d", n_len);
 4571:             printf("\n");
 4572:         }
 4573:     }
 4574:     }
 4575:     }
 4576:     function_tests++;
 4577: 
 4578:     return(test_ret);
 4579: }
 4580: 
 4581: 
 4582: #define gen_nb_xmlSAXHandler_ptr 1
 4583: static xmlSAXHandler * gen_xmlSAXHandler_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 4584:     return(NULL);
 4585: }
 4586: static void des_xmlSAXHandler_ptr(int no ATTRIBUTE_UNUSED, xmlSAXHandler * val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 4587: }
 4588: 
 4589: static int
 4590: test_xmlSAX2InitDefaultSAXHandler(void) {
 4591:     int test_ret = 0;
 4592: 
 4593:     int mem_base;
 4594:     xmlSAXHandler * hdlr; /* the SAX handler */
 4595:     int n_hdlr;
 4596:     int warning; /* flag if non-zero sets the handler warning procedure */
 4597:     int n_warning;
 4598: 
 4599:     for (n_hdlr = 0;n_hdlr < gen_nb_xmlSAXHandler_ptr;n_hdlr++) {
 4600:     for (n_warning = 0;n_warning < gen_nb_int;n_warning++) {
 4601:         mem_base = xmlMemBlocks();
 4602:         hdlr = gen_xmlSAXHandler_ptr(n_hdlr, 0);
 4603:         warning = gen_int(n_warning, 1);
 4604: 
 4605:         xmlSAX2InitDefaultSAXHandler(hdlr, warning);
 4606:         call_tests++;
 4607:         des_xmlSAXHandler_ptr(n_hdlr, hdlr, 0);
 4608:         des_int(n_warning, warning, 1);
 4609:         xmlResetLastError();
 4610:         if (mem_base != xmlMemBlocks()) {
 4611:             printf("Leak of %d blocks found in xmlSAX2InitDefaultSAXHandler",
 4612: 	           xmlMemBlocks() - mem_base);
 4613: 	    test_ret++;
 4614:             printf(" %d", n_hdlr);
 4615:             printf(" %d", n_warning);
 4616:             printf("\n");
 4617:         }
 4618:     }
 4619:     }
 4620:     function_tests++;
 4621: 
 4622:     return(test_ret);
 4623: }
 4624: 
 4625: 
 4626: static int
 4627: test_xmlSAX2InitDocbDefaultSAXHandler(void) {
 4628:     int test_ret = 0;
 4629: 
 4630: #if defined(LIBXML_DOCB_ENABLED)
 4631:     int mem_base;
 4632:     xmlSAXHandler * hdlr; /* the SAX handler */
 4633:     int n_hdlr;
 4634: 
 4635:     for (n_hdlr = 0;n_hdlr < gen_nb_xmlSAXHandler_ptr;n_hdlr++) {
 4636:         mem_base = xmlMemBlocks();
 4637:         hdlr = gen_xmlSAXHandler_ptr(n_hdlr, 0);
 4638: 
 4639:         xmlSAX2InitDocbDefaultSAXHandler(hdlr);
 4640:         call_tests++;
 4641:         des_xmlSAXHandler_ptr(n_hdlr, hdlr, 0);
 4642:         xmlResetLastError();
 4643:         if (mem_base != xmlMemBlocks()) {
 4644:             printf("Leak of %d blocks found in xmlSAX2InitDocbDefaultSAXHandler",
 4645: 	           xmlMemBlocks() - mem_base);
 4646: 	    test_ret++;
 4647:             printf(" %d", n_hdlr);
 4648:             printf("\n");
 4649:         }
 4650:     }
 4651:     function_tests++;
 4652: #endif
 4653: 
 4654:     return(test_ret);
 4655: }
 4656: 
 4657: 
 4658: static int
 4659: test_xmlSAX2InitHtmlDefaultSAXHandler(void) {
 4660:     int test_ret = 0;
 4661: 
 4662: #if defined(LIBXML_HTML_ENABLED)
 4663:     int mem_base;
 4664:     xmlSAXHandler * hdlr; /* the SAX handler */
 4665:     int n_hdlr;
 4666: 
 4667:     for (n_hdlr = 0;n_hdlr < gen_nb_xmlSAXHandler_ptr;n_hdlr++) {
 4668:         mem_base = xmlMemBlocks();
 4669:         hdlr = gen_xmlSAXHandler_ptr(n_hdlr, 0);
 4670: 
 4671:         xmlSAX2InitHtmlDefaultSAXHandler(hdlr);
 4672:         call_tests++;
 4673:         des_xmlSAXHandler_ptr(n_hdlr, hdlr, 0);
 4674:         xmlResetLastError();
 4675:         if (mem_base != xmlMemBlocks()) {
 4676:             printf("Leak of %d blocks found in xmlSAX2InitHtmlDefaultSAXHandler",
 4677: 	           xmlMemBlocks() - mem_base);
 4678: 	    test_ret++;
 4679:             printf(" %d", n_hdlr);
 4680:             printf("\n");
 4681:         }
 4682:     }
 4683:     function_tests++;
 4684: #endif
 4685: 
 4686:     return(test_ret);
 4687: }
 4688: 
 4689: 
 4690: static int
 4691: test_xmlSAX2InternalSubset(void) {
 4692:     int test_ret = 0;
 4693: 
 4694:     int mem_base;
 4695:     void * ctx; /* the user data (XML parser context) */
 4696:     int n_ctx;
 4697:     xmlChar * name; /* the root element name */
 4698:     int n_name;
 4699:     xmlChar * ExternalID; /* the external ID */
 4700:     int n_ExternalID;
 4701:     xmlChar * SystemID; /* the SYSTEM ID (e.g. filename or URL) */
 4702:     int n_SystemID;
 4703: 
 4704:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 4705:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 4706:     for (n_ExternalID = 0;n_ExternalID < gen_nb_const_xmlChar_ptr;n_ExternalID++) {
 4707:     for (n_SystemID = 0;n_SystemID < gen_nb_const_xmlChar_ptr;n_SystemID++) {
 4708:         mem_base = xmlMemBlocks();
 4709:         ctx = gen_void_ptr(n_ctx, 0);
 4710:         name = gen_const_xmlChar_ptr(n_name, 1);
 4711:         ExternalID = gen_const_xmlChar_ptr(n_ExternalID, 2);
 4712:         SystemID = gen_const_xmlChar_ptr(n_SystemID, 3);
 4713: 
 4714:         xmlSAX2InternalSubset(ctx, (const xmlChar *)name, (const xmlChar *)ExternalID, (const xmlChar *)SystemID);
 4715:         call_tests++;
 4716:         des_void_ptr(n_ctx, ctx, 0);
 4717:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 4718:         des_const_xmlChar_ptr(n_ExternalID, (const xmlChar *)ExternalID, 2);
 4719:         des_const_xmlChar_ptr(n_SystemID, (const xmlChar *)SystemID, 3);
 4720:         xmlResetLastError();
 4721:         if (mem_base != xmlMemBlocks()) {
 4722:             printf("Leak of %d blocks found in xmlSAX2InternalSubset",
 4723: 	           xmlMemBlocks() - mem_base);
 4724: 	    test_ret++;
 4725:             printf(" %d", n_ctx);
 4726:             printf(" %d", n_name);
 4727:             printf(" %d", n_ExternalID);
 4728:             printf(" %d", n_SystemID);
 4729:             printf("\n");
 4730:         }
 4731:     }
 4732:     }
 4733:     }
 4734:     }
 4735:     function_tests++;
 4736: 
 4737:     return(test_ret);
 4738: }
 4739: 
 4740: 
 4741: static int
 4742: test_xmlSAX2IsStandalone(void) {
 4743:     int test_ret = 0;
 4744: 
 4745:     int mem_base;
 4746:     int ret_val;
 4747:     void * ctx; /* the user data (XML parser context) */
 4748:     int n_ctx;
 4749: 
 4750:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 4751:         mem_base = xmlMemBlocks();
 4752:         ctx = gen_void_ptr(n_ctx, 0);
 4753: 
 4754:         ret_val = xmlSAX2IsStandalone(ctx);
 4755:         desret_int(ret_val);
 4756:         call_tests++;
 4757:         des_void_ptr(n_ctx, ctx, 0);
 4758:         xmlResetLastError();
 4759:         if (mem_base != xmlMemBlocks()) {
 4760:             printf("Leak of %d blocks found in xmlSAX2IsStandalone",
 4761: 	           xmlMemBlocks() - mem_base);
 4762: 	    test_ret++;
 4763:             printf(" %d", n_ctx);
 4764:             printf("\n");
 4765:         }
 4766:     }
 4767:     function_tests++;
 4768: 
 4769:     return(test_ret);
 4770: }
 4771: 
 4772: 
 4773: static int
 4774: test_xmlSAX2NotationDecl(void) {
 4775:     int test_ret = 0;
 4776: 
 4777:     int mem_base;
 4778:     void * ctx; /* the user data (XML parser context) */
 4779:     int n_ctx;
 4780:     xmlChar * name; /* The name of the notation */
 4781:     int n_name;
 4782:     xmlChar * publicId; /* The public ID of the entity */
 4783:     int n_publicId;
 4784:     xmlChar * systemId; /* The system ID of the entity */
 4785:     int n_systemId;
 4786: 
 4787:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 4788:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 4789:     for (n_publicId = 0;n_publicId < gen_nb_const_xmlChar_ptr;n_publicId++) {
 4790:     for (n_systemId = 0;n_systemId < gen_nb_const_xmlChar_ptr;n_systemId++) {
 4791:         mem_base = xmlMemBlocks();
 4792:         ctx = gen_void_ptr(n_ctx, 0);
 4793:         name = gen_const_xmlChar_ptr(n_name, 1);
 4794:         publicId = gen_const_xmlChar_ptr(n_publicId, 2);
 4795:         systemId = gen_const_xmlChar_ptr(n_systemId, 3);
 4796: 
 4797:         xmlSAX2NotationDecl(ctx, (const xmlChar *)name, (const xmlChar *)publicId, (const xmlChar *)systemId);
 4798:         call_tests++;
 4799:         des_void_ptr(n_ctx, ctx, 0);
 4800:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 4801:         des_const_xmlChar_ptr(n_publicId, (const xmlChar *)publicId, 2);
 4802:         des_const_xmlChar_ptr(n_systemId, (const xmlChar *)systemId, 3);
 4803:         xmlResetLastError();
 4804:         if (mem_base != xmlMemBlocks()) {
 4805:             printf("Leak of %d blocks found in xmlSAX2NotationDecl",
 4806: 	           xmlMemBlocks() - mem_base);
 4807: 	    test_ret++;
 4808:             printf(" %d", n_ctx);
 4809:             printf(" %d", n_name);
 4810:             printf(" %d", n_publicId);
 4811:             printf(" %d", n_systemId);
 4812:             printf("\n");
 4813:         }
 4814:     }
 4815:     }
 4816:     }
 4817:     }
 4818:     function_tests++;
 4819: 
 4820:     return(test_ret);
 4821: }
 4822: 
 4823: 
 4824: static int
 4825: test_xmlSAX2ProcessingInstruction(void) {
 4826:     int test_ret = 0;
 4827: 
 4828:     int mem_base;
 4829:     void * ctx; /* the user data (XML parser context) */
 4830:     int n_ctx;
 4831:     xmlChar * target; /* the target name */
 4832:     int n_target;
 4833:     xmlChar * data; /* the PI data's */
 4834:     int n_data;
 4835: 
 4836:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 4837:     for (n_target = 0;n_target < gen_nb_const_xmlChar_ptr;n_target++) {
 4838:     for (n_data = 0;n_data < gen_nb_const_xmlChar_ptr;n_data++) {
 4839:         mem_base = xmlMemBlocks();
 4840:         ctx = gen_void_ptr(n_ctx, 0);
 4841:         target = gen_const_xmlChar_ptr(n_target, 1);
 4842:         data = gen_const_xmlChar_ptr(n_data, 2);
 4843: 
 4844:         xmlSAX2ProcessingInstruction(ctx, (const xmlChar *)target, (const xmlChar *)data);
 4845:         call_tests++;
 4846:         des_void_ptr(n_ctx, ctx, 0);
 4847:         des_const_xmlChar_ptr(n_target, (const xmlChar *)target, 1);
 4848:         des_const_xmlChar_ptr(n_data, (const xmlChar *)data, 2);
 4849:         xmlResetLastError();
 4850:         if (mem_base != xmlMemBlocks()) {
 4851:             printf("Leak of %d blocks found in xmlSAX2ProcessingInstruction",
 4852: 	           xmlMemBlocks() - mem_base);
 4853: 	    test_ret++;
 4854:             printf(" %d", n_ctx);
 4855:             printf(" %d", n_target);
 4856:             printf(" %d", n_data);
 4857:             printf("\n");
 4858:         }
 4859:     }
 4860:     }
 4861:     }
 4862:     function_tests++;
 4863: 
 4864:     return(test_ret);
 4865: }
 4866: 
 4867: 
 4868: static int
 4869: test_xmlSAX2Reference(void) {
 4870:     int test_ret = 0;
 4871: 
 4872:     int mem_base;
 4873:     void * ctx; /* the user data (XML parser context) */
 4874:     int n_ctx;
 4875:     xmlChar * name; /* The entity name */
 4876:     int n_name;
 4877: 
 4878:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 4879:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 4880:         mem_base = xmlMemBlocks();
 4881:         ctx = gen_void_ptr(n_ctx, 0);
 4882:         name = gen_const_xmlChar_ptr(n_name, 1);
 4883: 
 4884:         xmlSAX2Reference(ctx, (const xmlChar *)name);
 4885:         call_tests++;
 4886:         des_void_ptr(n_ctx, ctx, 0);
 4887:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 4888:         xmlResetLastError();
 4889:         if (mem_base != xmlMemBlocks()) {
 4890:             printf("Leak of %d blocks found in xmlSAX2Reference",
 4891: 	           xmlMemBlocks() - mem_base);
 4892: 	    test_ret++;
 4893:             printf(" %d", n_ctx);
 4894:             printf(" %d", n_name);
 4895:             printf("\n");
 4896:         }
 4897:     }
 4898:     }
 4899:     function_tests++;
 4900: 
 4901:     return(test_ret);
 4902: }
 4903: 
 4904: 
 4905: static int
 4906: test_xmlSAX2ResolveEntity(void) {
 4907:     int test_ret = 0;
 4908: 
 4909:     int mem_base;
 4910:     xmlParserInputPtr ret_val;
 4911:     void * ctx; /* the user data (XML parser context) */
 4912:     int n_ctx;
 4913:     xmlChar * publicId; /* The public ID of the entity */
 4914:     int n_publicId;
 4915:     xmlChar * systemId; /* The system ID of the entity */
 4916:     int n_systemId;
 4917: 
 4918:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 4919:     for (n_publicId = 0;n_publicId < gen_nb_const_xmlChar_ptr;n_publicId++) {
 4920:     for (n_systemId = 0;n_systemId < gen_nb_const_xmlChar_ptr;n_systemId++) {
 4921:         mem_base = xmlMemBlocks();
 4922:         ctx = gen_void_ptr(n_ctx, 0);
 4923:         publicId = gen_const_xmlChar_ptr(n_publicId, 1);
 4924:         systemId = gen_const_xmlChar_ptr(n_systemId, 2);
 4925: 
 4926:         ret_val = xmlSAX2ResolveEntity(ctx, (const xmlChar *)publicId, (const xmlChar *)systemId);
 4927:         desret_xmlParserInputPtr(ret_val);
 4928:         call_tests++;
 4929:         des_void_ptr(n_ctx, ctx, 0);
 4930:         des_const_xmlChar_ptr(n_publicId, (const xmlChar *)publicId, 1);
 4931:         des_const_xmlChar_ptr(n_systemId, (const xmlChar *)systemId, 2);
 4932:         xmlResetLastError();
 4933:         if (mem_base != xmlMemBlocks()) {
 4934:             printf("Leak of %d blocks found in xmlSAX2ResolveEntity",
 4935: 	           xmlMemBlocks() - mem_base);
 4936: 	    test_ret++;
 4937:             printf(" %d", n_ctx);
 4938:             printf(" %d", n_publicId);
 4939:             printf(" %d", n_systemId);
 4940:             printf("\n");
 4941:         }
 4942:     }
 4943:     }
 4944:     }
 4945:     function_tests++;
 4946: 
 4947:     return(test_ret);
 4948: }
 4949: 
 4950: 
 4951: #define gen_nb_xmlSAXLocatorPtr 1
 4952: static xmlSAXLocatorPtr gen_xmlSAXLocatorPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 4953:     return(NULL);
 4954: }
 4955: static void des_xmlSAXLocatorPtr(int no ATTRIBUTE_UNUSED, xmlSAXLocatorPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 4956: }
 4957: 
 4958: static int
 4959: test_xmlSAX2SetDocumentLocator(void) {
 4960:     int test_ret = 0;
 4961: 
 4962:     int mem_base;
 4963:     void * ctx; /* the user data (XML parser context) */
 4964:     int n_ctx;
 4965:     xmlSAXLocatorPtr loc; /* A SAX Locator */
 4966:     int n_loc;
 4967: 
 4968:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 4969:     for (n_loc = 0;n_loc < gen_nb_xmlSAXLocatorPtr;n_loc++) {
 4970:         mem_base = xmlMemBlocks();
 4971:         ctx = gen_void_ptr(n_ctx, 0);
 4972:         loc = gen_xmlSAXLocatorPtr(n_loc, 1);
 4973: 
 4974:         xmlSAX2SetDocumentLocator(ctx, loc);
 4975:         call_tests++;
 4976:         des_void_ptr(n_ctx, ctx, 0);
 4977:         des_xmlSAXLocatorPtr(n_loc, loc, 1);
 4978:         xmlResetLastError();
 4979:         if (mem_base != xmlMemBlocks()) {
 4980:             printf("Leak of %d blocks found in xmlSAX2SetDocumentLocator",
 4981: 	           xmlMemBlocks() - mem_base);
 4982: 	    test_ret++;
 4983:             printf(" %d", n_ctx);
 4984:             printf(" %d", n_loc);
 4985:             printf("\n");
 4986:         }
 4987:     }
 4988:     }
 4989:     function_tests++;
 4990: 
 4991:     return(test_ret);
 4992: }
 4993: 
 4994: 
 4995: static int
 4996: test_xmlSAX2StartDocument(void) {
 4997:     int test_ret = 0;
 4998: 
 4999:     int mem_base;
 5000:     void * ctx; /* the user data (XML parser context) */
 5001:     int n_ctx;
 5002: 
 5003:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 5004:         mem_base = xmlMemBlocks();
 5005:         ctx = gen_void_ptr(n_ctx, 0);
 5006: 
 5007:         xmlSAX2StartDocument(ctx);
 5008:         call_tests++;
 5009:         des_void_ptr(n_ctx, ctx, 0);
 5010:         xmlResetLastError();
 5011:         if (mem_base != xmlMemBlocks()) {
 5012:             printf("Leak of %d blocks found in xmlSAX2StartDocument",
 5013: 	           xmlMemBlocks() - mem_base);
 5014: 	    test_ret++;
 5015:             printf(" %d", n_ctx);
 5016:             printf("\n");
 5017:         }
 5018:     }
 5019:     function_tests++;
 5020: 
 5021:     return(test_ret);
 5022: }
 5023: 
 5024: 
 5025: static int
 5026: test_xmlSAX2StartElement(void) {
 5027:     int test_ret = 0;
 5028: 
 5029: #if defined(LIBXML_SAX1_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || defined(LIBXML_DOCB_ENABLED)
 5030: #ifdef LIBXML_SAX1_ENABLED
 5031:     int mem_base;
 5032:     void * ctx; /* the user data (XML parser context) */
 5033:     int n_ctx;
 5034:     xmlChar * fullname; /* The element name, including namespace prefix */
 5035:     int n_fullname;
 5036:     xmlChar ** atts; /* An array of name/value attributes pairs, NULL terminated */
 5037:     int n_atts;
 5038: 
 5039:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 5040:     for (n_fullname = 0;n_fullname < gen_nb_const_xmlChar_ptr;n_fullname++) {
 5041:     for (n_atts = 0;n_atts < gen_nb_const_xmlChar_ptr_ptr;n_atts++) {
 5042:         mem_base = xmlMemBlocks();
 5043:         ctx = gen_void_ptr(n_ctx, 0);
 5044:         fullname = gen_const_xmlChar_ptr(n_fullname, 1);
 5045:         atts = gen_const_xmlChar_ptr_ptr(n_atts, 2);
 5046: 
 5047:         xmlSAX2StartElement(ctx, (const xmlChar *)fullname, (const xmlChar **)atts);
 5048:         call_tests++;
 5049:         des_void_ptr(n_ctx, ctx, 0);
 5050:         des_const_xmlChar_ptr(n_fullname, (const xmlChar *)fullname, 1);
 5051:         des_const_xmlChar_ptr_ptr(n_atts, (const xmlChar **)atts, 2);
 5052:         xmlResetLastError();
 5053:         if (mem_base != xmlMemBlocks()) {
 5054:             printf("Leak of %d blocks found in xmlSAX2StartElement",
 5055: 	           xmlMemBlocks() - mem_base);
 5056: 	    test_ret++;
 5057:             printf(" %d", n_ctx);
 5058:             printf(" %d", n_fullname);
 5059:             printf(" %d", n_atts);
 5060:             printf("\n");
 5061:         }
 5062:     }
 5063:     }
 5064:     }
 5065:     function_tests++;
 5066: #endif
 5067: #endif
 5068: 
 5069:     return(test_ret);
 5070: }
 5071: 
 5072: 
 5073: static int
 5074: test_xmlSAX2StartElementNs(void) {
 5075:     int test_ret = 0;
 5076: 
 5077:     int mem_base;
 5078:     void * ctx; /* the user data (XML parser context) */
 5079:     int n_ctx;
 5080:     xmlChar * localname; /* the local name of the element */
 5081:     int n_localname;
 5082:     xmlChar * prefix; /* the element namespace prefix if available */
 5083:     int n_prefix;
 5084:     xmlChar * URI; /* the element namespace name if available */
 5085:     int n_URI;
 5086:     int nb_namespaces; /* number of namespace definitions on that node */
 5087:     int n_nb_namespaces;
 5088:     xmlChar ** namespaces; /* pointer to the array of prefix/URI pairs namespace definitions */
 5089:     int n_namespaces;
 5090:     int nb_attributes; /* the number of attributes on that node */
 5091:     int n_nb_attributes;
 5092:     int nb_defaulted; /* the number of defaulted attributes. */
 5093:     int n_nb_defaulted;
 5094:     xmlChar ** attributes; /* pointer to the array of (localname/prefix/URI/value/end) attribute values. */
 5095:     int n_attributes;
 5096: 
 5097:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 5098:     for (n_localname = 0;n_localname < gen_nb_const_xmlChar_ptr;n_localname++) {
 5099:     for (n_prefix = 0;n_prefix < gen_nb_const_xmlChar_ptr;n_prefix++) {
 5100:     for (n_URI = 0;n_URI < gen_nb_const_xmlChar_ptr;n_URI++) {
 5101:     for (n_nb_namespaces = 0;n_nb_namespaces < gen_nb_int;n_nb_namespaces++) {
 5102:     for (n_namespaces = 0;n_namespaces < gen_nb_const_xmlChar_ptr_ptr;n_namespaces++) {
 5103:     for (n_nb_attributes = 0;n_nb_attributes < gen_nb_int;n_nb_attributes++) {
 5104:     for (n_nb_defaulted = 0;n_nb_defaulted < gen_nb_int;n_nb_defaulted++) {
 5105:     for (n_attributes = 0;n_attributes < gen_nb_const_xmlChar_ptr_ptr;n_attributes++) {
 5106:         mem_base = xmlMemBlocks();
 5107:         ctx = gen_void_ptr(n_ctx, 0);
 5108:         localname = gen_const_xmlChar_ptr(n_localname, 1);
 5109:         prefix = gen_const_xmlChar_ptr(n_prefix, 2);
 5110:         URI = gen_const_xmlChar_ptr(n_URI, 3);
 5111:         nb_namespaces = gen_int(n_nb_namespaces, 4);
 5112:         namespaces = gen_const_xmlChar_ptr_ptr(n_namespaces, 5);
 5113:         nb_attributes = gen_int(n_nb_attributes, 6);
 5114:         nb_defaulted = gen_int(n_nb_defaulted, 7);
 5115:         attributes = gen_const_xmlChar_ptr_ptr(n_attributes, 8);
 5116: 
 5117:         xmlSAX2StartElementNs(ctx, (const xmlChar *)localname, (const xmlChar *)prefix, (const xmlChar *)URI, nb_namespaces, (const xmlChar **)namespaces, nb_attributes, nb_defaulted, (const xmlChar **)attributes);
 5118:         call_tests++;
 5119:         des_void_ptr(n_ctx, ctx, 0);
 5120:         des_const_xmlChar_ptr(n_localname, (const xmlChar *)localname, 1);
 5121:         des_const_xmlChar_ptr(n_prefix, (const xmlChar *)prefix, 2);
 5122:         des_const_xmlChar_ptr(n_URI, (const xmlChar *)URI, 3);
 5123:         des_int(n_nb_namespaces, nb_namespaces, 4);
 5124:         des_const_xmlChar_ptr_ptr(n_namespaces, (const xmlChar **)namespaces, 5);
 5125:         des_int(n_nb_attributes, nb_attributes, 6);
 5126:         des_int(n_nb_defaulted, nb_defaulted, 7);
 5127:         des_const_xmlChar_ptr_ptr(n_attributes, (const xmlChar **)attributes, 8);
 5128:         xmlResetLastError();
 5129:         if (mem_base != xmlMemBlocks()) {
 5130:             printf("Leak of %d blocks found in xmlSAX2StartElementNs",
 5131: 	           xmlMemBlocks() - mem_base);
 5132: 	    test_ret++;
 5133:             printf(" %d", n_ctx);
 5134:             printf(" %d", n_localname);
 5135:             printf(" %d", n_prefix);
 5136:             printf(" %d", n_URI);
 5137:             printf(" %d", n_nb_namespaces);
 5138:             printf(" %d", n_namespaces);
 5139:             printf(" %d", n_nb_attributes);
 5140:             printf(" %d", n_nb_defaulted);
 5141:             printf(" %d", n_attributes);
 5142:             printf("\n");
 5143:         }
 5144:     }
 5145:     }
 5146:     }
 5147:     }
 5148:     }
 5149:     }
 5150:     }
 5151:     }
 5152:     }
 5153:     function_tests++;
 5154: 
 5155:     return(test_ret);
 5156: }
 5157: 
 5158: 
 5159: static int
 5160: test_xmlSAX2UnparsedEntityDecl(void) {
 5161:     int test_ret = 0;
 5162: 
 5163:     int mem_base;
 5164:     void * ctx; /* the user data (XML parser context) */
 5165:     int n_ctx;
 5166:     xmlChar * name; /* The name of the entity */
 5167:     int n_name;
 5168:     xmlChar * publicId; /* The public ID of the entity */
 5169:     int n_publicId;
 5170:     xmlChar * systemId; /* The system ID of the entity */
 5171:     int n_systemId;
 5172:     xmlChar * notationName; /* the name of the notation */
 5173:     int n_notationName;
 5174: 
 5175:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
 5176:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 5177:     for (n_publicId = 0;n_publicId < gen_nb_const_xmlChar_ptr;n_publicId++) {
 5178:     for (n_systemId = 0;n_systemId < gen_nb_const_xmlChar_ptr;n_systemId++) {
 5179:     for (n_notationName = 0;n_notationName < gen_nb_const_xmlChar_ptr;n_notationName++) {
 5180:         mem_base = xmlMemBlocks();
 5181:         ctx = gen_void_ptr(n_ctx, 0);
 5182:         name = gen_const_xmlChar_ptr(n_name, 1);
 5183:         publicId = gen_const_xmlChar_ptr(n_publicId, 2);
 5184:         systemId = gen_const_xmlChar_ptr(n_systemId, 3);
 5185:         notationName = gen_const_xmlChar_ptr(n_notationName, 4);
 5186: 
 5187:         xmlSAX2UnparsedEntityDecl(ctx, (const xmlChar *)name, (const xmlChar *)publicId, (const xmlChar *)systemId, (const xmlChar *)notationName);
 5188:         call_tests++;
 5189:         des_void_ptr(n_ctx, ctx, 0);
 5190:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 5191:         des_const_xmlChar_ptr(n_publicId, (const xmlChar *)publicId, 2);
 5192:         des_const_xmlChar_ptr(n_systemId, (const xmlChar *)systemId, 3);
 5193:         des_const_xmlChar_ptr(n_notationName, (const xmlChar *)notationName, 4);
 5194:         xmlResetLastError();
 5195:         if (mem_base != xmlMemBlocks()) {
 5196:             printf("Leak of %d blocks found in xmlSAX2UnparsedEntityDecl",
 5197: 	           xmlMemBlocks() - mem_base);
 5198: 	    test_ret++;
 5199:             printf(" %d", n_ctx);
 5200:             printf(" %d", n_name);
 5201:             printf(" %d", n_publicId);
 5202:             printf(" %d", n_systemId);
 5203:             printf(" %d", n_notationName);
 5204:             printf("\n");
 5205:         }
 5206:     }
 5207:     }
 5208:     }
 5209:     }
 5210:     }
 5211:     function_tests++;
 5212: 
 5213:     return(test_ret);
 5214: }
 5215: 
 5216: 
 5217: static int
 5218: test_xmlSAXDefaultVersion(void) {
 5219:     int test_ret = 0;
 5220: 
 5221: #if defined(LIBXML_SAX1_ENABLED)
 5222: #ifdef LIBXML_SAX1_ENABLED
 5223:     int mem_base;
 5224:     int ret_val;
 5225:     int version; /* the version, 1 or 2 */
 5226:     int n_version;
 5227: 
 5228:     for (n_version = 0;n_version < gen_nb_int;n_version++) {
 5229:         mem_base = xmlMemBlocks();
 5230:         version = gen_int(n_version, 0);
 5231: 
 5232:         ret_val = xmlSAXDefaultVersion(version);
 5233:         desret_int(ret_val);
 5234:         call_tests++;
 5235:         des_int(n_version, version, 0);
 5236:         xmlResetLastError();
 5237:         if (mem_base != xmlMemBlocks()) {
 5238:             printf("Leak of %d blocks found in xmlSAXDefaultVersion",
 5239: 	           xmlMemBlocks() - mem_base);
 5240: 	    test_ret++;
 5241:             printf(" %d", n_version);
 5242:             printf("\n");
 5243:         }
 5244:     }
 5245:     function_tests++;
 5246: #endif
 5247: #endif
 5248: 
 5249:     return(test_ret);
 5250: }
 5251: 
 5252: 
 5253: static int
 5254: test_xmlSAXVersion(void) {
 5255:     int test_ret = 0;
 5256: 
 5257:     int mem_base;
 5258:     int ret_val;
 5259:     xmlSAXHandler * hdlr; /* the SAX handler */
 5260:     int n_hdlr;
 5261:     int version; /* the version, 1 or 2 */
 5262:     int n_version;
 5263: 
 5264:     for (n_hdlr = 0;n_hdlr < gen_nb_xmlSAXHandler_ptr;n_hdlr++) {
 5265:     for (n_version = 0;n_version < gen_nb_int;n_version++) {
 5266:         mem_base = xmlMemBlocks();
 5267:         hdlr = gen_xmlSAXHandler_ptr(n_hdlr, 0);
 5268:         version = gen_int(n_version, 1);
 5269: 
 5270:         ret_val = xmlSAXVersion(hdlr, version);
 5271:         desret_int(ret_val);
 5272:         call_tests++;
 5273:         des_xmlSAXHandler_ptr(n_hdlr, hdlr, 0);
 5274:         des_int(n_version, version, 1);
 5275:         xmlResetLastError();
 5276:         if (mem_base != xmlMemBlocks()) {
 5277:             printf("Leak of %d blocks found in xmlSAXVersion",
 5278: 	           xmlMemBlocks() - mem_base);
 5279: 	    test_ret++;
 5280:             printf(" %d", n_hdlr);
 5281:             printf(" %d", n_version);
 5282:             printf("\n");
 5283:         }
 5284:     }
 5285:     }
 5286:     function_tests++;
 5287: 
 5288:     return(test_ret);
 5289: }
 5290: 
 5291: static int
 5292: test_SAX2(void) {
 5293:     int test_ret = 0;
 5294: 
 5295:     if (quiet == 0) printf("Testing SAX2 : 38 of 38 functions ...\n");
 5296:     test_ret += test_docbDefaultSAXHandlerInit();
 5297:     test_ret += test_htmlDefaultSAXHandlerInit();
 5298:     test_ret += test_xmlDefaultSAXHandlerInit();
 5299:     test_ret += test_xmlSAX2AttributeDecl();
 5300:     test_ret += test_xmlSAX2CDataBlock();
 5301:     test_ret += test_xmlSAX2Characters();
 5302:     test_ret += test_xmlSAX2Comment();
 5303:     test_ret += test_xmlSAX2ElementDecl();
 5304:     test_ret += test_xmlSAX2EndDocument();
 5305:     test_ret += test_xmlSAX2EndElement();
 5306:     test_ret += test_xmlSAX2EndElementNs();
 5307:     test_ret += test_xmlSAX2EntityDecl();
 5308:     test_ret += test_xmlSAX2ExternalSubset();
 5309:     test_ret += test_xmlSAX2GetColumnNumber();
 5310:     test_ret += test_xmlSAX2GetEntity();
 5311:     test_ret += test_xmlSAX2GetLineNumber();
 5312:     test_ret += test_xmlSAX2GetParameterEntity();
 5313:     test_ret += test_xmlSAX2GetPublicId();
 5314:     test_ret += test_xmlSAX2GetSystemId();
 5315:     test_ret += test_xmlSAX2HasExternalSubset();
 5316:     test_ret += test_xmlSAX2HasInternalSubset();
 5317:     test_ret += test_xmlSAX2IgnorableWhitespace();
 5318:     test_ret += test_xmlSAX2InitDefaultSAXHandler();
 5319:     test_ret += test_xmlSAX2InitDocbDefaultSAXHandler();
 5320:     test_ret += test_xmlSAX2InitHtmlDefaultSAXHandler();
 5321:     test_ret += test_xmlSAX2InternalSubset();
 5322:     test_ret += test_xmlSAX2IsStandalone();
 5323:     test_ret += test_xmlSAX2NotationDecl();
 5324:     test_ret += test_xmlSAX2ProcessingInstruction();
 5325:     test_ret += test_xmlSAX2Reference();
 5326:     test_ret += test_xmlSAX2ResolveEntity();
 5327:     test_ret += test_xmlSAX2SetDocumentLocator();
 5328:     test_ret += test_xmlSAX2StartDocument();
 5329:     test_ret += test_xmlSAX2StartElement();
 5330:     test_ret += test_xmlSAX2StartElementNs();
 5331:     test_ret += test_xmlSAX2UnparsedEntityDecl();
 5332:     test_ret += test_xmlSAXDefaultVersion();
 5333:     test_ret += test_xmlSAXVersion();
 5334: 
 5335:     if (test_ret != 0)
 5336: 	printf("Module SAX2: %d errors\n", test_ret);
 5337:     return(test_ret);
 5338: }
 5339: 
 5340: static int
 5341: test_xmlC14NDocDumpMemory(void) {
 5342:     int test_ret = 0;
 5343: 
 5344: #if defined(LIBXML_C14N_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
 5345:     int mem_base;
 5346:     int ret_val;
 5347:     xmlDocPtr doc; /* the XML document for canonization */
 5348:     int n_doc;
 5349:     xmlNodeSetPtr nodes; /* the nodes set to be included in the canonized image or NULL if all document nodes should be included */
 5350:     int n_nodes;
 5351:     int mode; /* the c14n mode (see @xmlC14NMode) */
 5352:     int n_mode;
 5353:     xmlChar ** inclusive_ns_prefixes; /* the list of inclusive namespace prefixes ended with a NULL or NULL if there is no inclusive namespaces (only for exclusive canonicalization, ignored otherwise) */
 5354:     int n_inclusive_ns_prefixes;
 5355:     int with_comments; /* include comments in the result (!=0) or not (==0) */
 5356:     int n_with_comments;
 5357:     xmlChar ** doc_txt_ptr; /* the memory pointer for allocated canonical XML text; the caller of this functions is responsible for calling xmlFree() to free allocated memory */
 5358:     int n_doc_txt_ptr;
 5359: 
 5360:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
 5361:     for (n_nodes = 0;n_nodes < gen_nb_xmlNodeSetPtr;n_nodes++) {
 5362:     for (n_mode = 0;n_mode < gen_nb_int;n_mode++) {
 5363:     for (n_inclusive_ns_prefixes = 0;n_inclusive_ns_prefixes < gen_nb_xmlChar_ptr_ptr;n_inclusive_ns_prefixes++) {
 5364:     for (n_with_comments = 0;n_with_comments < gen_nb_int;n_with_comments++) {
 5365:     for (n_doc_txt_ptr = 0;n_doc_txt_ptr < gen_nb_xmlChar_ptr_ptr;n_doc_txt_ptr++) {
 5366:         mem_base = xmlMemBlocks();
 5367:         doc = gen_xmlDocPtr(n_doc, 0);
 5368:         nodes = gen_xmlNodeSetPtr(n_nodes, 1);
 5369:         mode = gen_int(n_mode, 2);
 5370:         inclusive_ns_prefixes = gen_xmlChar_ptr_ptr(n_inclusive_ns_prefixes, 3);
 5371:         with_comments = gen_int(n_with_comments, 4);
 5372:         doc_txt_ptr = gen_xmlChar_ptr_ptr(n_doc_txt_ptr, 5);
 5373: 
 5374:         ret_val = xmlC14NDocDumpMemory(doc, nodes, mode, inclusive_ns_prefixes, with_comments, doc_txt_ptr);
 5375:         desret_int(ret_val);
 5376:         call_tests++;
 5377:         des_xmlDocPtr(n_doc, doc, 0);
 5378:         des_xmlNodeSetPtr(n_nodes, nodes, 1);
 5379:         des_int(n_mode, mode, 2);
 5380:         des_xmlChar_ptr_ptr(n_inclusive_ns_prefixes, inclusive_ns_prefixes, 3);
 5381:         des_int(n_with_comments, with_comments, 4);
 5382:         des_xmlChar_ptr_ptr(n_doc_txt_ptr, doc_txt_ptr, 5);
 5383:         xmlResetLastError();
 5384:         if (mem_base != xmlMemBlocks()) {
 5385:             printf("Leak of %d blocks found in xmlC14NDocDumpMemory",
 5386: 	           xmlMemBlocks() - mem_base);
 5387: 	    test_ret++;
 5388:             printf(" %d", n_doc);
 5389:             printf(" %d", n_nodes);
 5390:             printf(" %d", n_mode);
 5391:             printf(" %d", n_inclusive_ns_prefixes);
 5392:             printf(" %d", n_with_comments);
 5393:             printf(" %d", n_doc_txt_ptr);
 5394:             printf("\n");
 5395:         }
 5396:     }
 5397:     }
 5398:     }
 5399:     }
 5400:     }
 5401:     }
 5402:     function_tests++;
 5403: #endif
 5404: 
 5405:     return(test_ret);
 5406: }
 5407: 
 5408: 
 5409: static int
 5410: test_xmlC14NDocSave(void) {
 5411:     int test_ret = 0;
 5412: 
 5413: #if defined(LIBXML_C14N_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
 5414:     int mem_base;
 5415:     int ret_val;
 5416:     xmlDocPtr doc; /* the XML document for canonization */
 5417:     int n_doc;
 5418:     xmlNodeSetPtr nodes; /* the nodes set to be included in the canonized image or NULL if all document nodes should be included */
 5419:     int n_nodes;
 5420:     int mode; /* the c14n mode (see @xmlC14NMode) */
 5421:     int n_mode;
 5422:     xmlChar ** inclusive_ns_prefixes; /* the list of inclusive namespace prefixes ended with a NULL or NULL if there is no inclusive namespaces (only for exclusive canonicalization, ignored otherwise) */
 5423:     int n_inclusive_ns_prefixes;
 5424:     int with_comments; /* include comments in the result (!=0) or not (==0) */
 5425:     int n_with_comments;
 5426:     const char * filename; /* the filename to store canonical XML image */
 5427:     int n_filename;
 5428:     int compression; /* the compression level (zlib requred): -1 - libxml default, 0 - uncompressed, >0 - compression level */
 5429:     int n_compression;
 5430: 
 5431:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
 5432:     for (n_nodes = 0;n_nodes < gen_nb_xmlNodeSetPtr;n_nodes++) {
 5433:     for (n_mode = 0;n_mode < gen_nb_int;n_mode++) {
 5434:     for (n_inclusive_ns_prefixes = 0;n_inclusive_ns_prefixes < gen_nb_xmlChar_ptr_ptr;n_inclusive_ns_prefixes++) {
 5435:     for (n_with_comments = 0;n_with_comments < gen_nb_int;n_with_comments++) {
 5436:     for (n_filename = 0;n_filename < gen_nb_fileoutput;n_filename++) {
 5437:     for (n_compression = 0;n_compression < gen_nb_int;n_compression++) {
 5438:         mem_base = xmlMemBlocks();
 5439:         doc = gen_xmlDocPtr(n_doc, 0);
 5440:         nodes = gen_xmlNodeSetPtr(n_nodes, 1);
 5441:         mode = gen_int(n_mode, 2);
 5442:         inclusive_ns_prefixes = gen_xmlChar_ptr_ptr(n_inclusive_ns_prefixes, 3);
 5443:         with_comments = gen_int(n_with_comments, 4);
 5444:         filename = gen_fileoutput(n_filename, 5);
 5445:         compression = gen_int(n_compression, 6);
 5446: 
 5447:         ret_val = xmlC14NDocSave(doc, nodes, mode, inclusive_ns_prefixes, with_comments, filename, compression);
 5448:         desret_int(ret_val);
 5449:         call_tests++;
 5450:         des_xmlDocPtr(n_doc, doc, 0);
 5451:         des_xmlNodeSetPtr(n_nodes, nodes, 1);
 5452:         des_int(n_mode, mode, 2);
 5453:         des_xmlChar_ptr_ptr(n_inclusive_ns_prefixes, inclusive_ns_prefixes, 3);
 5454:         des_int(n_with_comments, with_comments, 4);
 5455:         des_fileoutput(n_filename, filename, 5);
 5456:         des_int(n_compression, compression, 6);
 5457:         xmlResetLastError();
 5458:         if (mem_base != xmlMemBlocks()) {
 5459:             printf("Leak of %d blocks found in xmlC14NDocSave",
 5460: 	           xmlMemBlocks() - mem_base);
 5461: 	    test_ret++;
 5462:             printf(" %d", n_doc);
 5463:             printf(" %d", n_nodes);
 5464:             printf(" %d", n_mode);
 5465:             printf(" %d", n_inclusive_ns_prefixes);
 5466:             printf(" %d", n_with_comments);
 5467:             printf(" %d", n_filename);
 5468:             printf(" %d", n_compression);
 5469:             printf("\n");
 5470:         }
 5471:     }
 5472:     }
 5473:     }
 5474:     }
 5475:     }
 5476:     }
 5477:     }
 5478:     function_tests++;
 5479: #endif
 5480: 
 5481:     return(test_ret);
 5482: }
 5483: 
 5484: 
 5485: static int
 5486: test_xmlC14NDocSaveTo(void) {
 5487:     int test_ret = 0;
 5488: 
 5489: #if defined(LIBXML_C14N_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
 5490:     int mem_base;
 5491:     int ret_val;
 5492:     xmlDocPtr doc; /* the XML document for canonization */
 5493:     int n_doc;
 5494:     xmlNodeSetPtr nodes; /* the nodes set to be included in the canonized image or NULL if all document nodes should be included */
 5495:     int n_nodes;
 5496:     int mode; /* the c14n mode (see @xmlC14NMode) */
 5497:     int n_mode;
 5498:     xmlChar ** inclusive_ns_prefixes; /* the list of inclusive namespace prefixes ended with a NULL or NULL if there is no inclusive namespaces (only for exclusive canonicalization, ignored otherwise) */
 5499:     int n_inclusive_ns_prefixes;
 5500:     int with_comments; /* include comments in the result (!=0) or not (==0) */
 5501:     int n_with_comments;
 5502:     xmlOutputBufferPtr buf; /* the output buffer to store canonical XML; this buffer MUST have encoder==NULL because C14N requires UTF-8 output */
 5503:     int n_buf;
 5504: 
 5505:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
 5506:     for (n_nodes = 0;n_nodes < gen_nb_xmlNodeSetPtr;n_nodes++) {
 5507:     for (n_mode = 0;n_mode < gen_nb_int;n_mode++) {
 5508:     for (n_inclusive_ns_prefixes = 0;n_inclusive_ns_prefixes < gen_nb_xmlChar_ptr_ptr;n_inclusive_ns_prefixes++) {
 5509:     for (n_with_comments = 0;n_with_comments < gen_nb_int;n_with_comments++) {
 5510:     for (n_buf = 0;n_buf < gen_nb_xmlOutputBufferPtr;n_buf++) {
 5511:         mem_base = xmlMemBlocks();
 5512:         doc = gen_xmlDocPtr(n_doc, 0);
 5513:         nodes = gen_xmlNodeSetPtr(n_nodes, 1);
 5514:         mode = gen_int(n_mode, 2);
 5515:         inclusive_ns_prefixes = gen_xmlChar_ptr_ptr(n_inclusive_ns_prefixes, 3);
 5516:         with_comments = gen_int(n_with_comments, 4);
 5517:         buf = gen_xmlOutputBufferPtr(n_buf, 5);
 5518: 
 5519:         ret_val = xmlC14NDocSaveTo(doc, nodes, mode, inclusive_ns_prefixes, with_comments, buf);
 5520:         desret_int(ret_val);
 5521:         call_tests++;
 5522:         des_xmlDocPtr(n_doc, doc, 0);
 5523:         des_xmlNodeSetPtr(n_nodes, nodes, 1);
 5524:         des_int(n_mode, mode, 2);
 5525:         des_xmlChar_ptr_ptr(n_inclusive_ns_prefixes, inclusive_ns_prefixes, 3);
 5526:         des_int(n_with_comments, with_comments, 4);
 5527:         des_xmlOutputBufferPtr(n_buf, buf, 5);
 5528:         xmlResetLastError();
 5529:         if (mem_base != xmlMemBlocks()) {
 5530:             printf("Leak of %d blocks found in xmlC14NDocSaveTo",
 5531: 	           xmlMemBlocks() - mem_base);
 5532: 	    test_ret++;
 5533:             printf(" %d", n_doc);
 5534:             printf(" %d", n_nodes);
 5535:             printf(" %d", n_mode);
 5536:             printf(" %d", n_inclusive_ns_prefixes);
 5537:             printf(" %d", n_with_comments);
 5538:             printf(" %d", n_buf);
 5539:             printf("\n");
 5540:         }
 5541:     }
 5542:     }
 5543:     }
 5544:     }
 5545:     }
 5546:     }
 5547:     function_tests++;
 5548: #endif
 5549: 
 5550:     return(test_ret);
 5551: }
 5552: 
 5553: 
 5554: static int
 5555: test_xmlC14NExecute(void) {
 5556:     int test_ret = 0;
 5557: 
 5558: 
 5559:     /* missing type support */
 5560:     return(test_ret);
 5561: }
 5562: 
 5563: static int
 5564: test_c14n(void) {
 5565:     int test_ret = 0;
 5566: 
 5567:     if (quiet == 0) printf("Testing c14n : 3 of 4 functions ...\n");
 5568:     test_ret += test_xmlC14NDocDumpMemory();
 5569:     test_ret += test_xmlC14NDocSave();
 5570:     test_ret += test_xmlC14NDocSaveTo();
 5571:     test_ret += test_xmlC14NExecute();
 5572: 
 5573:     if (test_ret != 0)
 5574: 	printf("Module c14n: %d errors\n", test_ret);
 5575:     return(test_ret);
 5576: }
 5577: #ifdef LIBXML_CATALOG_ENABLED
 5578: 
 5579: #define gen_nb_xmlCatalogPtr 1
 5580: static xmlCatalogPtr gen_xmlCatalogPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 5581:     return(NULL);
 5582: }
 5583: static void des_xmlCatalogPtr(int no ATTRIBUTE_UNUSED, xmlCatalogPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 5584: }
 5585: #endif
 5586: 
 5587: 
 5588: static int
 5589: test_xmlACatalogAdd(void) {
 5590:     int test_ret = 0;
 5591: 
 5592: #if defined(LIBXML_CATALOG_ENABLED)
 5593:     int mem_base;
 5594:     int ret_val;
 5595:     xmlCatalogPtr catal; /* a Catalog */
 5596:     int n_catal;
 5597:     xmlChar * type; /* the type of record to add to the catalog */
 5598:     int n_type;
 5599:     xmlChar * orig; /* the system, public or prefix to match */
 5600:     int n_orig;
 5601:     xmlChar * replace; /* the replacement value for the match */
 5602:     int n_replace;
 5603: 
 5604:     for (n_catal = 0;n_catal < gen_nb_xmlCatalogPtr;n_catal++) {
 5605:     for (n_type = 0;n_type < gen_nb_const_xmlChar_ptr;n_type++) {
 5606:     for (n_orig = 0;n_orig < gen_nb_const_xmlChar_ptr;n_orig++) {
 5607:     for (n_replace = 0;n_replace < gen_nb_const_xmlChar_ptr;n_replace++) {
 5608:         mem_base = xmlMemBlocks();
 5609:         catal = gen_xmlCatalogPtr(n_catal, 0);
 5610:         type = gen_const_xmlChar_ptr(n_type, 1);
 5611:         orig = gen_const_xmlChar_ptr(n_orig, 2);
 5612:         replace = gen_const_xmlChar_ptr(n_replace, 3);
 5613: 
 5614:         ret_val = xmlACatalogAdd(catal, (const xmlChar *)type, (const xmlChar *)orig, (const xmlChar *)replace);
 5615:         desret_int(ret_val);
 5616:         call_tests++;
 5617:         des_xmlCatalogPtr(n_catal, catal, 0);
 5618:         des_const_xmlChar_ptr(n_type, (const xmlChar *)type, 1);
 5619:         des_const_xmlChar_ptr(n_orig, (const xmlChar *)orig, 2);
 5620:         des_const_xmlChar_ptr(n_replace, (const xmlChar *)replace, 3);
 5621:         xmlResetLastError();
 5622:         if (mem_base != xmlMemBlocks()) {
 5623:             printf("Leak of %d blocks found in xmlACatalogAdd",
 5624: 	           xmlMemBlocks() - mem_base);
 5625: 	    test_ret++;
 5626:             printf(" %d", n_catal);
 5627:             printf(" %d", n_type);
 5628:             printf(" %d", n_orig);
 5629:             printf(" %d", n_replace);
 5630:             printf("\n");
 5631:         }
 5632:     }
 5633:     }
 5634:     }
 5635:     }
 5636:     function_tests++;
 5637: #endif
 5638: 
 5639:     return(test_ret);
 5640: }
 5641: 
 5642: 
 5643: static int
 5644: test_xmlACatalogDump(void) {
 5645:     int test_ret = 0;
 5646: 
 5647: #if defined(LIBXML_CATALOG_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
 5648:     int mem_base;
 5649:     xmlCatalogPtr catal; /* a Catalog */
 5650:     int n_catal;
 5651:     FILE * out; /* the file. */
 5652:     int n_out;
 5653: 
 5654:     for (n_catal = 0;n_catal < gen_nb_xmlCatalogPtr;n_catal++) {
 5655:     for (n_out = 0;n_out < gen_nb_FILE_ptr;n_out++) {
 5656:         mem_base = xmlMemBlocks();
 5657:         catal = gen_xmlCatalogPtr(n_catal, 0);
 5658:         out = gen_FILE_ptr(n_out, 1);
 5659: 
 5660:         xmlACatalogDump(catal, out);
 5661:         call_tests++;
 5662:         des_xmlCatalogPtr(n_catal, catal, 0);
 5663:         des_FILE_ptr(n_out, out, 1);
 5664:         xmlResetLastError();
 5665:         if (mem_base != xmlMemBlocks()) {
 5666:             printf("Leak of %d blocks found in xmlACatalogDump",
 5667: 	           xmlMemBlocks() - mem_base);
 5668: 	    test_ret++;
 5669:             printf(" %d", n_catal);
 5670:             printf(" %d", n_out);
 5671:             printf("\n");
 5672:         }
 5673:     }
 5674:     }
 5675:     function_tests++;
 5676: #endif
 5677: 
 5678:     return(test_ret);
 5679: }
 5680: 
 5681: 
 5682: static int
 5683: test_xmlACatalogRemove(void) {
 5684:     int test_ret = 0;
 5685: 
 5686: #if defined(LIBXML_CATALOG_ENABLED)
 5687:     int mem_base;
 5688:     int ret_val;
 5689:     xmlCatalogPtr catal; /* a Catalog */
 5690:     int n_catal;
 5691:     xmlChar * value; /* the value to remove */
 5692:     int n_value;
 5693: 
 5694:     for (n_catal = 0;n_catal < gen_nb_xmlCatalogPtr;n_catal++) {
 5695:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
 5696:         mem_base = xmlMemBlocks();
 5697:         catal = gen_xmlCatalogPtr(n_catal, 0);
 5698:         value = gen_const_xmlChar_ptr(n_value, 1);
 5699: 
 5700:         ret_val = xmlACatalogRemove(catal, (const xmlChar *)value);
 5701:         desret_int(ret_val);
 5702:         call_tests++;
 5703:         des_xmlCatalogPtr(n_catal, catal, 0);
 5704:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 1);
 5705:         xmlResetLastError();
 5706:         if (mem_base != xmlMemBlocks()) {
 5707:             printf("Leak of %d blocks found in xmlACatalogRemove",
 5708: 	           xmlMemBlocks() - mem_base);
 5709: 	    test_ret++;
 5710:             printf(" %d", n_catal);
 5711:             printf(" %d", n_value);
 5712:             printf("\n");
 5713:         }
 5714:     }
 5715:     }
 5716:     function_tests++;
 5717: #endif
 5718: 
 5719:     return(test_ret);
 5720: }
 5721: 
 5722: 
 5723: static int
 5724: test_xmlACatalogResolve(void) {
 5725:     int test_ret = 0;
 5726: 
 5727: #if defined(LIBXML_CATALOG_ENABLED)
 5728:     int mem_base;
 5729:     xmlChar * ret_val;
 5730:     xmlCatalogPtr catal; /* a Catalog */
 5731:     int n_catal;
 5732:     xmlChar * pubID; /* the public ID string */
 5733:     int n_pubID;
 5734:     xmlChar * sysID; /* the system ID string */
 5735:     int n_sysID;
 5736: 
 5737:     for (n_catal = 0;n_catal < gen_nb_xmlCatalogPtr;n_catal++) {
 5738:     for (n_pubID = 0;n_pubID < gen_nb_const_xmlChar_ptr;n_pubID++) {
 5739:     for (n_sysID = 0;n_sysID < gen_nb_const_xmlChar_ptr;n_sysID++) {
 5740:         mem_base = xmlMemBlocks();
 5741:         catal = gen_xmlCatalogPtr(n_catal, 0);
 5742:         pubID = gen_const_xmlChar_ptr(n_pubID, 1);
 5743:         sysID = gen_const_xmlChar_ptr(n_sysID, 2);
 5744: 
 5745:         ret_val = xmlACatalogResolve(catal, (const xmlChar *)pubID, (const xmlChar *)sysID);
 5746:         desret_xmlChar_ptr(ret_val);
 5747:         call_tests++;
 5748:         des_xmlCatalogPtr(n_catal, catal, 0);
 5749:         des_const_xmlChar_ptr(n_pubID, (const xmlChar *)pubID, 1);
 5750:         des_const_xmlChar_ptr(n_sysID, (const xmlChar *)sysID, 2);
 5751:         xmlResetLastError();
 5752:         if (mem_base != xmlMemBlocks()) {
 5753:             printf("Leak of %d blocks found in xmlACatalogResolve",
 5754: 	           xmlMemBlocks() - mem_base);
 5755: 	    test_ret++;
 5756:             printf(" %d", n_catal);
 5757:             printf(" %d", n_pubID);
 5758:             printf(" %d", n_sysID);
 5759:             printf("\n");
 5760:         }
 5761:     }
 5762:     }
 5763:     }
 5764:     function_tests++;
 5765: #endif
 5766: 
 5767:     return(test_ret);
 5768: }
 5769: 
 5770: 
 5771: static int
 5772: test_xmlACatalogResolvePublic(void) {
 5773:     int test_ret = 0;
 5774: 
 5775: #if defined(LIBXML_CATALOG_ENABLED)
 5776:     int mem_base;
 5777:     xmlChar * ret_val;
 5778:     xmlCatalogPtr catal; /* a Catalog */
 5779:     int n_catal;
 5780:     xmlChar * pubID; /* the public ID string */
 5781:     int n_pubID;
 5782: 
 5783:     for (n_catal = 0;n_catal < gen_nb_xmlCatalogPtr;n_catal++) {
 5784:     for (n_pubID = 0;n_pubID < gen_nb_const_xmlChar_ptr;n_pubID++) {
 5785:         mem_base = xmlMemBlocks();
 5786:         catal = gen_xmlCatalogPtr(n_catal, 0);
 5787:         pubID = gen_const_xmlChar_ptr(n_pubID, 1);
 5788: 
 5789:         ret_val = xmlACatalogResolvePublic(catal, (const xmlChar *)pubID);
 5790:         desret_xmlChar_ptr(ret_val);
 5791:         call_tests++;
 5792:         des_xmlCatalogPtr(n_catal, catal, 0);
 5793:         des_const_xmlChar_ptr(n_pubID, (const xmlChar *)pubID, 1);
 5794:         xmlResetLastError();
 5795:         if (mem_base != xmlMemBlocks()) {
 5796:             printf("Leak of %d blocks found in xmlACatalogResolvePublic",
 5797: 	           xmlMemBlocks() - mem_base);
 5798: 	    test_ret++;
 5799:             printf(" %d", n_catal);
 5800:             printf(" %d", n_pubID);
 5801:             printf("\n");
 5802:         }
 5803:     }
 5804:     }
 5805:     function_tests++;
 5806: #endif
 5807: 
 5808:     return(test_ret);
 5809: }
 5810: 
 5811: 
 5812: static int
 5813: test_xmlACatalogResolveSystem(void) {
 5814:     int test_ret = 0;
 5815: 
 5816: #if defined(LIBXML_CATALOG_ENABLED)
 5817:     int mem_base;
 5818:     xmlChar * ret_val;
 5819:     xmlCatalogPtr catal; /* a Catalog */
 5820:     int n_catal;
 5821:     xmlChar * sysID; /* the system ID string */
 5822:     int n_sysID;
 5823: 
 5824:     for (n_catal = 0;n_catal < gen_nb_xmlCatalogPtr;n_catal++) {
 5825:     for (n_sysID = 0;n_sysID < gen_nb_const_xmlChar_ptr;n_sysID++) {
 5826:         mem_base = xmlMemBlocks();
 5827:         catal = gen_xmlCatalogPtr(n_catal, 0);
 5828:         sysID = gen_const_xmlChar_ptr(n_sysID, 1);
 5829: 
 5830:         ret_val = xmlACatalogResolveSystem(catal, (const xmlChar *)sysID);
 5831:         desret_xmlChar_ptr(ret_val);
 5832:         call_tests++;
 5833:         des_xmlCatalogPtr(n_catal, catal, 0);
 5834:         des_const_xmlChar_ptr(n_sysID, (const xmlChar *)sysID, 1);
 5835:         xmlResetLastError();
 5836:         if (mem_base != xmlMemBlocks()) {
 5837:             printf("Leak of %d blocks found in xmlACatalogResolveSystem",
 5838: 	           xmlMemBlocks() - mem_base);
 5839: 	    test_ret++;
 5840:             printf(" %d", n_catal);
 5841:             printf(" %d", n_sysID);
 5842:             printf("\n");
 5843:         }
 5844:     }
 5845:     }
 5846:     function_tests++;
 5847: #endif
 5848: 
 5849:     return(test_ret);
 5850: }
 5851: 
 5852: 
 5853: static int
 5854: test_xmlACatalogResolveURI(void) {
 5855:     int test_ret = 0;
 5856: 
 5857: #if defined(LIBXML_CATALOG_ENABLED)
 5858:     int mem_base;
 5859:     xmlChar * ret_val;
 5860:     xmlCatalogPtr catal; /* a Catalog */
 5861:     int n_catal;
 5862:     xmlChar * URI; /* the URI */
 5863:     int n_URI;
 5864: 
 5865:     for (n_catal = 0;n_catal < gen_nb_xmlCatalogPtr;n_catal++) {
 5866:     for (n_URI = 0;n_URI < gen_nb_const_xmlChar_ptr;n_URI++) {
 5867:         mem_base = xmlMemBlocks();
 5868:         catal = gen_xmlCatalogPtr(n_catal, 0);
 5869:         URI = gen_const_xmlChar_ptr(n_URI, 1);
 5870: 
 5871:         ret_val = xmlACatalogResolveURI(catal, (const xmlChar *)URI);
 5872:         desret_xmlChar_ptr(ret_val);
 5873:         call_tests++;
 5874:         des_xmlCatalogPtr(n_catal, catal, 0);
 5875:         des_const_xmlChar_ptr(n_URI, (const xmlChar *)URI, 1);
 5876:         xmlResetLastError();
 5877:         if (mem_base != xmlMemBlocks()) {
 5878:             printf("Leak of %d blocks found in xmlACatalogResolveURI",
 5879: 	           xmlMemBlocks() - mem_base);
 5880: 	    test_ret++;
 5881:             printf(" %d", n_catal);
 5882:             printf(" %d", n_URI);
 5883:             printf("\n");
 5884:         }
 5885:     }
 5886:     }
 5887:     function_tests++;
 5888: #endif
 5889: 
 5890:     return(test_ret);
 5891: }
 5892: 
 5893: 
 5894: static int
 5895: test_xmlCatalogAdd(void) {
 5896:     int test_ret = 0;
 5897: 
 5898: #if defined(LIBXML_CATALOG_ENABLED)
 5899:     int mem_base;
 5900:     int ret_val;
 5901:     xmlChar * type; /* the type of record to add to the catalog */
 5902:     int n_type;
 5903:     xmlChar * orig; /* the system, public or prefix to match */
 5904:     int n_orig;
 5905:     xmlChar * replace; /* the replacement value for the match */
 5906:     int n_replace;
 5907: 
 5908:     for (n_type = 0;n_type < gen_nb_const_xmlChar_ptr;n_type++) {
 5909:     for (n_orig = 0;n_orig < gen_nb_const_xmlChar_ptr;n_orig++) {
 5910:     for (n_replace = 0;n_replace < gen_nb_const_xmlChar_ptr;n_replace++) {
 5911:         mem_base = xmlMemBlocks();
 5912:         type = gen_const_xmlChar_ptr(n_type, 0);
 5913:         orig = gen_const_xmlChar_ptr(n_orig, 1);
 5914:         replace = gen_const_xmlChar_ptr(n_replace, 2);
 5915: 
 5916:         ret_val = xmlCatalogAdd((const xmlChar *)type, (const xmlChar *)orig, (const xmlChar *)replace);
 5917:         desret_int(ret_val);
 5918:         call_tests++;
 5919:         des_const_xmlChar_ptr(n_type, (const xmlChar *)type, 0);
 5920:         des_const_xmlChar_ptr(n_orig, (const xmlChar *)orig, 1);
 5921:         des_const_xmlChar_ptr(n_replace, (const xmlChar *)replace, 2);
 5922:         xmlResetLastError();
 5923:         if (mem_base != xmlMemBlocks()) {
 5924:             printf("Leak of %d blocks found in xmlCatalogAdd",
 5925: 	           xmlMemBlocks() - mem_base);
 5926: 	    test_ret++;
 5927:             printf(" %d", n_type);
 5928:             printf(" %d", n_orig);
 5929:             printf(" %d", n_replace);
 5930:             printf("\n");
 5931:         }
 5932:     }
 5933:     }
 5934:     }
 5935:     function_tests++;
 5936: #endif
 5937: 
 5938:     return(test_ret);
 5939: }
 5940: 
 5941: 
 5942: static int
 5943: test_xmlCatalogCleanup(void) {
 5944:     int test_ret = 0;
 5945: 
 5946: #if defined(LIBXML_CATALOG_ENABLED)
 5947: 
 5948: 
 5949:         xmlCatalogCleanup();
 5950:         call_tests++;
 5951:         xmlResetLastError();
 5952:     function_tests++;
 5953: #endif
 5954: 
 5955:     return(test_ret);
 5956: }
 5957: 
 5958: 
 5959: static int
 5960: test_xmlCatalogConvert(void) {
 5961:     int test_ret = 0;
 5962: 
 5963: #if defined(LIBXML_CATALOG_ENABLED)
 5964:     int ret_val;
 5965: 
 5966: 
 5967:         ret_val = xmlCatalogConvert();
 5968:         desret_int(ret_val);
 5969:         call_tests++;
 5970:         xmlResetLastError();
 5971:     function_tests++;
 5972: #endif
 5973: 
 5974:     return(test_ret);
 5975: }
 5976: 
 5977: 
 5978: static int
 5979: test_xmlCatalogDump(void) {
 5980:     int test_ret = 0;
 5981: 
 5982: #if defined(LIBXML_CATALOG_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
 5983:     int mem_base;
 5984:     FILE * out; /* the file. */
 5985:     int n_out;
 5986: 
 5987:     for (n_out = 0;n_out < gen_nb_FILE_ptr;n_out++) {
 5988:         mem_base = xmlMemBlocks();
 5989:         out = gen_FILE_ptr(n_out, 0);
 5990: 
 5991:         xmlCatalogDump(out);
 5992:         call_tests++;
 5993:         des_FILE_ptr(n_out, out, 0);
 5994:         xmlResetLastError();
 5995:         if (mem_base != xmlMemBlocks()) {
 5996:             printf("Leak of %d blocks found in xmlCatalogDump",
 5997: 	           xmlMemBlocks() - mem_base);
 5998: 	    test_ret++;
 5999:             printf(" %d", n_out);
 6000:             printf("\n");
 6001:         }
 6002:     }
 6003:     function_tests++;
 6004: #endif
 6005: 
 6006:     return(test_ret);
 6007: }
 6008: 
 6009: 
 6010: static int
 6011: test_xmlCatalogGetDefaults(void) {
 6012:     int test_ret = 0;
 6013: 
 6014: #if defined(LIBXML_CATALOG_ENABLED)
 6015:     int mem_base;
 6016:     xmlCatalogAllow ret_val;
 6017: 
 6018:         mem_base = xmlMemBlocks();
 6019: 
 6020:         ret_val = xmlCatalogGetDefaults();
 6021:         desret_xmlCatalogAllow(ret_val);
 6022:         call_tests++;
 6023:         xmlResetLastError();
 6024:         if (mem_base != xmlMemBlocks()) {
 6025:             printf("Leak of %d blocks found in xmlCatalogGetDefaults",
 6026: 	           xmlMemBlocks() - mem_base);
 6027: 	    test_ret++;
 6028:             printf("\n");
 6029:         }
 6030:     function_tests++;
 6031: #endif
 6032: 
 6033:     return(test_ret);
 6034: }
 6035: 
 6036: 
 6037: static int
 6038: test_xmlCatalogIsEmpty(void) {
 6039:     int test_ret = 0;
 6040: 
 6041: #if defined(LIBXML_CATALOG_ENABLED)
 6042:     int mem_base;
 6043:     int ret_val;
 6044:     xmlCatalogPtr catal; /* should this create an SGML catalog */
 6045:     int n_catal;
 6046: 
 6047:     for (n_catal = 0;n_catal < gen_nb_xmlCatalogPtr;n_catal++) {
 6048:         mem_base = xmlMemBlocks();
 6049:         catal = gen_xmlCatalogPtr(n_catal, 0);
 6050: 
 6051:         ret_val = xmlCatalogIsEmpty(catal);
 6052:         desret_int(ret_val);
 6053:         call_tests++;
 6054:         des_xmlCatalogPtr(n_catal, catal, 0);
 6055:         xmlResetLastError();
 6056:         if (mem_base != xmlMemBlocks()) {
 6057:             printf("Leak of %d blocks found in xmlCatalogIsEmpty",
 6058: 	           xmlMemBlocks() - mem_base);
 6059: 	    test_ret++;
 6060:             printf(" %d", n_catal);
 6061:             printf("\n");
 6062:         }
 6063:     }
 6064:     function_tests++;
 6065: #endif
 6066: 
 6067:     return(test_ret);
 6068: }
 6069: 
 6070: 
 6071: static int
 6072: test_xmlCatalogLocalResolve(void) {
 6073:     int test_ret = 0;
 6074: 
 6075: #if defined(LIBXML_CATALOG_ENABLED)
 6076:     int mem_base;
 6077:     xmlChar * ret_val;
 6078:     void * catalogs; /* a document's list of catalogs */
 6079:     int n_catalogs;
 6080:     xmlChar * pubID; /* the public ID string */
 6081:     int n_pubID;
 6082:     xmlChar * sysID; /* the system ID string */
 6083:     int n_sysID;
 6084: 
 6085:     for (n_catalogs = 0;n_catalogs < gen_nb_void_ptr;n_catalogs++) {
 6086:     for (n_pubID = 0;n_pubID < gen_nb_const_xmlChar_ptr;n_pubID++) {
 6087:     for (n_sysID = 0;n_sysID < gen_nb_const_xmlChar_ptr;n_sysID++) {
 6088:         mem_base = xmlMemBlocks();
 6089:         catalogs = gen_void_ptr(n_catalogs, 0);
 6090:         pubID = gen_const_xmlChar_ptr(n_pubID, 1);
 6091:         sysID = gen_const_xmlChar_ptr(n_sysID, 2);
 6092: 
 6093:         ret_val = xmlCatalogLocalResolve(catalogs, (const xmlChar *)pubID, (const xmlChar *)sysID);
 6094:         desret_xmlChar_ptr(ret_val);
 6095:         call_tests++;
 6096:         des_void_ptr(n_catalogs, catalogs, 0);
 6097:         des_const_xmlChar_ptr(n_pubID, (const xmlChar *)pubID, 1);
 6098:         des_const_xmlChar_ptr(n_sysID, (const xmlChar *)sysID, 2);
 6099:         xmlResetLastError();
 6100:         if (mem_base != xmlMemBlocks()) {
 6101:             printf("Leak of %d blocks found in xmlCatalogLocalResolve",
 6102: 	           xmlMemBlocks() - mem_base);
 6103: 	    test_ret++;
 6104:             printf(" %d", n_catalogs);
 6105:             printf(" %d", n_pubID);
 6106:             printf(" %d", n_sysID);
 6107:             printf("\n");
 6108:         }
 6109:     }
 6110:     }
 6111:     }
 6112:     function_tests++;
 6113: #endif
 6114: 
 6115:     return(test_ret);
 6116: }
 6117: 
 6118: 
 6119: static int
 6120: test_xmlCatalogLocalResolveURI(void) {
 6121:     int test_ret = 0;
 6122: 
 6123: #if defined(LIBXML_CATALOG_ENABLED)
 6124:     int mem_base;
 6125:     xmlChar * ret_val;
 6126:     void * catalogs; /* a document's list of catalogs */
 6127:     int n_catalogs;
 6128:     xmlChar * URI; /* the URI */
 6129:     int n_URI;
 6130: 
 6131:     for (n_catalogs = 0;n_catalogs < gen_nb_void_ptr;n_catalogs++) {
 6132:     for (n_URI = 0;n_URI < gen_nb_const_xmlChar_ptr;n_URI++) {
 6133:         mem_base = xmlMemBlocks();
 6134:         catalogs = gen_void_ptr(n_catalogs, 0);
 6135:         URI = gen_const_xmlChar_ptr(n_URI, 1);
 6136: 
 6137:         ret_val = xmlCatalogLocalResolveURI(catalogs, (const xmlChar *)URI);
 6138:         desret_xmlChar_ptr(ret_val);
 6139:         call_tests++;
 6140:         des_void_ptr(n_catalogs, catalogs, 0);
 6141:         des_const_xmlChar_ptr(n_URI, (const xmlChar *)URI, 1);
 6142:         xmlResetLastError();
 6143:         if (mem_base != xmlMemBlocks()) {
 6144:             printf("Leak of %d blocks found in xmlCatalogLocalResolveURI",
 6145: 	           xmlMemBlocks() - mem_base);
 6146: 	    test_ret++;
 6147:             printf(" %d", n_catalogs);
 6148:             printf(" %d", n_URI);
 6149:             printf("\n");
 6150:         }
 6151:     }
 6152:     }
 6153:     function_tests++;
 6154: #endif
 6155: 
 6156:     return(test_ret);
 6157: }
 6158: 
 6159: 
 6160: static int
 6161: test_xmlCatalogRemove(void) {
 6162:     int test_ret = 0;
 6163: 
 6164: #if defined(LIBXML_CATALOG_ENABLED)
 6165:     int ret_val;
 6166:     xmlChar * value; /* the value to remove */
 6167:     int n_value;
 6168: 
 6169:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
 6170:         value = gen_const_xmlChar_ptr(n_value, 0);
 6171: 
 6172:         ret_val = xmlCatalogRemove((const xmlChar *)value);
 6173:         desret_int(ret_val);
 6174:         call_tests++;
 6175:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 0);
 6176:         xmlResetLastError();
 6177:     }
 6178:     function_tests++;
 6179: #endif
 6180: 
 6181:     return(test_ret);
 6182: }
 6183: 
 6184: 
 6185: static int
 6186: test_xmlCatalogResolve(void) {
 6187:     int test_ret = 0;
 6188: 
 6189: #if defined(LIBXML_CATALOG_ENABLED)
 6190:     xmlChar * ret_val;
 6191:     xmlChar * pubID; /* the public ID string */
 6192:     int n_pubID;
 6193:     xmlChar * sysID; /* the system ID string */
 6194:     int n_sysID;
 6195: 
 6196:     for (n_pubID = 0;n_pubID < gen_nb_const_xmlChar_ptr;n_pubID++) {
 6197:     for (n_sysID = 0;n_sysID < gen_nb_const_xmlChar_ptr;n_sysID++) {
 6198:         pubID = gen_const_xmlChar_ptr(n_pubID, 0);
 6199:         sysID = gen_const_xmlChar_ptr(n_sysID, 1);
 6200: 
 6201:         ret_val = xmlCatalogResolve((const xmlChar *)pubID, (const xmlChar *)sysID);
 6202:         desret_xmlChar_ptr(ret_val);
 6203:         call_tests++;
 6204:         des_const_xmlChar_ptr(n_pubID, (const xmlChar *)pubID, 0);
 6205:         des_const_xmlChar_ptr(n_sysID, (const xmlChar *)sysID, 1);
 6206:         xmlResetLastError();
 6207:     }
 6208:     }
 6209:     function_tests++;
 6210: #endif
 6211: 
 6212:     return(test_ret);
 6213: }
 6214: 
 6215: 
 6216: static int
 6217: test_xmlCatalogResolvePublic(void) {
 6218:     int test_ret = 0;
 6219: 
 6220: #if defined(LIBXML_CATALOG_ENABLED)
 6221:     int mem_base;
 6222:     xmlChar * ret_val;
 6223:     xmlChar * pubID; /* the public ID string */
 6224:     int n_pubID;
 6225: 
 6226:     for (n_pubID = 0;n_pubID < gen_nb_const_xmlChar_ptr;n_pubID++) {
 6227:         mem_base = xmlMemBlocks();
 6228:         pubID = gen_const_xmlChar_ptr(n_pubID, 0);
 6229: 
 6230:         ret_val = xmlCatalogResolvePublic((const xmlChar *)pubID);
 6231:         desret_xmlChar_ptr(ret_val);
 6232:         call_tests++;
 6233:         des_const_xmlChar_ptr(n_pubID, (const xmlChar *)pubID, 0);
 6234:         xmlResetLastError();
 6235:         if (mem_base != xmlMemBlocks()) {
 6236:             printf("Leak of %d blocks found in xmlCatalogResolvePublic",
 6237: 	           xmlMemBlocks() - mem_base);
 6238: 	    test_ret++;
 6239:             printf(" %d", n_pubID);
 6240:             printf("\n");
 6241:         }
 6242:     }
 6243:     function_tests++;
 6244: #endif
 6245: 
 6246:     return(test_ret);
 6247: }
 6248: 
 6249: 
 6250: static int
 6251: test_xmlCatalogResolveSystem(void) {
 6252:     int test_ret = 0;
 6253: 
 6254: #if defined(LIBXML_CATALOG_ENABLED)
 6255:     int mem_base;
 6256:     xmlChar * ret_val;
 6257:     xmlChar * sysID; /* the system ID string */
 6258:     int n_sysID;
 6259: 
 6260:     for (n_sysID = 0;n_sysID < gen_nb_const_xmlChar_ptr;n_sysID++) {
 6261:         mem_base = xmlMemBlocks();
 6262:         sysID = gen_const_xmlChar_ptr(n_sysID, 0);
 6263: 
 6264:         ret_val = xmlCatalogResolveSystem((const xmlChar *)sysID);
 6265:         desret_xmlChar_ptr(ret_val);
 6266:         call_tests++;
 6267:         des_const_xmlChar_ptr(n_sysID, (const xmlChar *)sysID, 0);
 6268:         xmlResetLastError();
 6269:         if (mem_base != xmlMemBlocks()) {
 6270:             printf("Leak of %d blocks found in xmlCatalogResolveSystem",
 6271: 	           xmlMemBlocks() - mem_base);
 6272: 	    test_ret++;
 6273:             printf(" %d", n_sysID);
 6274:             printf("\n");
 6275:         }
 6276:     }
 6277:     function_tests++;
 6278: #endif
 6279: 
 6280:     return(test_ret);
 6281: }
 6282: 
 6283: 
 6284: static int
 6285: test_xmlCatalogResolveURI(void) {
 6286:     int test_ret = 0;
 6287: 
 6288: #if defined(LIBXML_CATALOG_ENABLED)
 6289:     int mem_base;
 6290:     xmlChar * ret_val;
 6291:     xmlChar * URI; /* the URI */
 6292:     int n_URI;
 6293: 
 6294:     for (n_URI = 0;n_URI < gen_nb_const_xmlChar_ptr;n_URI++) {
 6295:         mem_base = xmlMemBlocks();
 6296:         URI = gen_const_xmlChar_ptr(n_URI, 0);
 6297: 
 6298:         ret_val = xmlCatalogResolveURI((const xmlChar *)URI);
 6299:         desret_xmlChar_ptr(ret_val);
 6300:         call_tests++;
 6301:         des_const_xmlChar_ptr(n_URI, (const xmlChar *)URI, 0);
 6302:         xmlResetLastError();
 6303:         if (mem_base != xmlMemBlocks()) {
 6304:             printf("Leak of %d blocks found in xmlCatalogResolveURI",
 6305: 	           xmlMemBlocks() - mem_base);
 6306: 	    test_ret++;
 6307:             printf(" %d", n_URI);
 6308:             printf("\n");
 6309:         }
 6310:     }
 6311:     function_tests++;
 6312: #endif
 6313: 
 6314:     return(test_ret);
 6315: }
 6316: 
 6317: 
 6318: static int
 6319: test_xmlCatalogSetDefaultPrefer(void) {
 6320:     int test_ret = 0;
 6321: 
 6322: #if defined(LIBXML_CATALOG_ENABLED)
 6323:     int mem_base;
 6324:     xmlCatalogPrefer ret_val;
 6325:     xmlCatalogPrefer prefer; /* the default preference for delegation */
 6326:     int n_prefer;
 6327: 
 6328:     for (n_prefer = 0;n_prefer < gen_nb_xmlCatalogPrefer;n_prefer++) {
 6329:         mem_base = xmlMemBlocks();
 6330:         prefer = gen_xmlCatalogPrefer(n_prefer, 0);
 6331: 
 6332:         ret_val = xmlCatalogSetDefaultPrefer(prefer);
 6333:         desret_xmlCatalogPrefer(ret_val);
 6334:         call_tests++;
 6335:         des_xmlCatalogPrefer(n_prefer, prefer, 0);
 6336:         xmlResetLastError();
 6337:         if (mem_base != xmlMemBlocks()) {
 6338:             printf("Leak of %d blocks found in xmlCatalogSetDefaultPrefer",
 6339: 	           xmlMemBlocks() - mem_base);
 6340: 	    test_ret++;
 6341:             printf(" %d", n_prefer);
 6342:             printf("\n");
 6343:         }
 6344:     }
 6345:     function_tests++;
 6346: #endif
 6347: 
 6348:     return(test_ret);
 6349: }
 6350: 
 6351: 
 6352: static int
 6353: test_xmlCatalogSetDefaults(void) {
 6354:     int test_ret = 0;
 6355: 
 6356: #if defined(LIBXML_CATALOG_ENABLED)
 6357:     int mem_base;
 6358:     xmlCatalogAllow allow; /* what catalogs should be accepted */
 6359:     int n_allow;
 6360: 
 6361:     for (n_allow = 0;n_allow < gen_nb_xmlCatalogAllow;n_allow++) {
 6362:         mem_base = xmlMemBlocks();
 6363:         allow = gen_xmlCatalogAllow(n_allow, 0);
 6364: 
 6365:         xmlCatalogSetDefaults(allow);
 6366:         call_tests++;
 6367:         des_xmlCatalogAllow(n_allow, allow, 0);
 6368:         xmlResetLastError();
 6369:         if (mem_base != xmlMemBlocks()) {
 6370:             printf("Leak of %d blocks found in xmlCatalogSetDefaults",
 6371: 	           xmlMemBlocks() - mem_base);
 6372: 	    test_ret++;
 6373:             printf(" %d", n_allow);
 6374:             printf("\n");
 6375:         }
 6376:     }
 6377:     function_tests++;
 6378: #endif
 6379: 
 6380:     return(test_ret);
 6381: }
 6382: 
 6383: 
 6384: static int
 6385: test_xmlConvertSGMLCatalog(void) {
 6386:     int test_ret = 0;
 6387: 
 6388: #if defined(LIBXML_CATALOG_ENABLED)
 6389:     int mem_base;
 6390:     int ret_val;
 6391:     xmlCatalogPtr catal; /* the catalog */
 6392:     int n_catal;
 6393: 
 6394:     for (n_catal = 0;n_catal < gen_nb_xmlCatalogPtr;n_catal++) {
 6395:         mem_base = xmlMemBlocks();
 6396:         catal = gen_xmlCatalogPtr(n_catal, 0);
 6397: 
 6398:         ret_val = xmlConvertSGMLCatalog(catal);
 6399:         desret_int(ret_val);
 6400:         call_tests++;
 6401:         des_xmlCatalogPtr(n_catal, catal, 0);
 6402:         xmlResetLastError();
 6403:         if (mem_base != xmlMemBlocks()) {
 6404:             printf("Leak of %d blocks found in xmlConvertSGMLCatalog",
 6405: 	           xmlMemBlocks() - mem_base);
 6406: 	    test_ret++;
 6407:             printf(" %d", n_catal);
 6408:             printf("\n");
 6409:         }
 6410:     }
 6411:     function_tests++;
 6412: #endif
 6413: 
 6414:     return(test_ret);
 6415: }
 6416: 
 6417: 
 6418: static int
 6419: test_xmlInitializeCatalog(void) {
 6420:     int test_ret = 0;
 6421: 
 6422: #if defined(LIBXML_CATALOG_ENABLED)
 6423:     int mem_base;
 6424: 
 6425:         mem_base = xmlMemBlocks();
 6426: 
 6427:         xmlInitializeCatalog();
 6428:         call_tests++;
 6429:         xmlResetLastError();
 6430:         if (mem_base != xmlMemBlocks()) {
 6431:             printf("Leak of %d blocks found in xmlInitializeCatalog",
 6432: 	           xmlMemBlocks() - mem_base);
 6433: 	    test_ret++;
 6434:             printf("\n");
 6435:         }
 6436:     function_tests++;
 6437: #endif
 6438: 
 6439:     return(test_ret);
 6440: }
 6441: 
 6442: 
 6443: static int
 6444: test_xmlLoadACatalog(void) {
 6445:     int test_ret = 0;
 6446: 
 6447: 
 6448:     /* missing type support */
 6449:     return(test_ret);
 6450: }
 6451: 
 6452: 
 6453: static int
 6454: test_xmlLoadCatalog(void) {
 6455:     int test_ret = 0;
 6456: 
 6457: #if defined(LIBXML_CATALOG_ENABLED)
 6458:     int ret_val;
 6459:     const char * filename; /* a file path */
 6460:     int n_filename;
 6461: 
 6462:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
 6463:         filename = gen_filepath(n_filename, 0);
 6464: 
 6465:         ret_val = xmlLoadCatalog(filename);
 6466:         desret_int(ret_val);
 6467:         call_tests++;
 6468:         des_filepath(n_filename, filename, 0);
 6469:         xmlResetLastError();
 6470:     }
 6471:     function_tests++;
 6472: #endif
 6473: 
 6474:     return(test_ret);
 6475: }
 6476: 
 6477: 
 6478: static int
 6479: test_xmlLoadCatalogs(void) {
 6480:     int test_ret = 0;
 6481: 
 6482: #if defined(LIBXML_CATALOG_ENABLED)
 6483:     char * pathss; /* a list of directories separated by a colon or a space. */
 6484:     int n_pathss;
 6485: 
 6486:     for (n_pathss = 0;n_pathss < gen_nb_const_char_ptr;n_pathss++) {
 6487:         pathss = gen_const_char_ptr(n_pathss, 0);
 6488: 
 6489:         xmlLoadCatalogs((const char *)pathss);
 6490:         call_tests++;
 6491:         des_const_char_ptr(n_pathss, (const char *)pathss, 0);
 6492:         xmlResetLastError();
 6493:     }
 6494:     function_tests++;
 6495: #endif
 6496: 
 6497:     return(test_ret);
 6498: }
 6499: 
 6500: 
 6501: static int
 6502: test_xmlLoadSGMLSuperCatalog(void) {
 6503:     int test_ret = 0;
 6504: 
 6505: 
 6506:     /* missing type support */
 6507:     return(test_ret);
 6508: }
 6509: 
 6510: 
 6511: static int
 6512: test_xmlNewCatalog(void) {
 6513:     int test_ret = 0;
 6514: 
 6515: 
 6516:     /* missing type support */
 6517:     return(test_ret);
 6518: }
 6519: 
 6520: 
 6521: static int
 6522: test_xmlParseCatalogFile(void) {
 6523:     int test_ret = 0;
 6524: 
 6525: #if defined(LIBXML_CATALOG_ENABLED)
 6526:     int mem_base;
 6527:     xmlDocPtr ret_val;
 6528:     const char * filename; /* the filename */
 6529:     int n_filename;
 6530: 
 6531:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
 6532:         mem_base = xmlMemBlocks();
 6533:         filename = gen_filepath(n_filename, 0);
 6534: 
 6535:         ret_val = xmlParseCatalogFile(filename);
 6536:         desret_xmlDocPtr(ret_val);
 6537:         call_tests++;
 6538:         des_filepath(n_filename, filename, 0);
 6539:         xmlResetLastError();
 6540:         if (mem_base != xmlMemBlocks()) {
 6541:             printf("Leak of %d blocks found in xmlParseCatalogFile",
 6542: 	           xmlMemBlocks() - mem_base);
 6543: 	    test_ret++;
 6544:             printf(" %d", n_filename);
 6545:             printf("\n");
 6546:         }
 6547:     }
 6548:     function_tests++;
 6549: #endif
 6550: 
 6551:     return(test_ret);
 6552: }
 6553: 
 6554: static int
 6555: test_catalog(void) {
 6556:     int test_ret = 0;
 6557: 
 6558:     if (quiet == 0) printf("Testing catalog : 27 of 36 functions ...\n");
 6559:     test_ret += test_xmlACatalogAdd();
 6560:     test_ret += test_xmlACatalogDump();
 6561:     test_ret += test_xmlACatalogRemove();
 6562:     test_ret += test_xmlACatalogResolve();
 6563:     test_ret += test_xmlACatalogResolvePublic();
 6564:     test_ret += test_xmlACatalogResolveSystem();
 6565:     test_ret += test_xmlACatalogResolveURI();
 6566:     test_ret += test_xmlCatalogAdd();
 6567:     test_ret += test_xmlCatalogCleanup();
 6568:     test_ret += test_xmlCatalogConvert();
 6569:     test_ret += test_xmlCatalogDump();
 6570:     test_ret += test_xmlCatalogGetDefaults();
 6571:     test_ret += test_xmlCatalogIsEmpty();
 6572:     test_ret += test_xmlCatalogLocalResolve();
 6573:     test_ret += test_xmlCatalogLocalResolveURI();
 6574:     test_ret += test_xmlCatalogRemove();
 6575:     test_ret += test_xmlCatalogResolve();
 6576:     test_ret += test_xmlCatalogResolvePublic();
 6577:     test_ret += test_xmlCatalogResolveSystem();
 6578:     test_ret += test_xmlCatalogResolveURI();
 6579:     test_ret += test_xmlCatalogSetDefaultPrefer();
 6580:     test_ret += test_xmlCatalogSetDefaults();
 6581:     test_ret += test_xmlConvertSGMLCatalog();
 6582:     test_ret += test_xmlInitializeCatalog();
 6583:     test_ret += test_xmlLoadACatalog();
 6584:     test_ret += test_xmlLoadCatalog();
 6585:     test_ret += test_xmlLoadCatalogs();
 6586:     test_ret += test_xmlLoadSGMLSuperCatalog();
 6587:     test_ret += test_xmlNewCatalog();
 6588:     test_ret += test_xmlParseCatalogFile();
 6589: 
 6590:     if (test_ret != 0)
 6591: 	printf("Module catalog: %d errors\n", test_ret);
 6592:     return(test_ret);
 6593: }
 6594: 
 6595: #define gen_nb_const_xmlChRangeGroup_ptr 1
 6596: static xmlChRangeGroup * gen_const_xmlChRangeGroup_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 6597:     return(NULL);
 6598: }
 6599: static void des_const_xmlChRangeGroup_ptr(int no ATTRIBUTE_UNUSED, const xmlChRangeGroup * val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 6600: }
 6601: 
 6602: static int
 6603: test_xmlCharInRange(void) {
 6604:     int test_ret = 0;
 6605: 
 6606:     int mem_base;
 6607:     int ret_val;
 6608:     unsigned int val; /* character to be validated */
 6609:     int n_val;
 6610:     xmlChRangeGroup * rptr; /* pointer to range to be used to validate */
 6611:     int n_rptr;
 6612: 
 6613:     for (n_val = 0;n_val < gen_nb_unsigned_int;n_val++) {
 6614:     for (n_rptr = 0;n_rptr < gen_nb_const_xmlChRangeGroup_ptr;n_rptr++) {
 6615:         mem_base = xmlMemBlocks();
 6616:         val = gen_unsigned_int(n_val, 0);
 6617:         rptr = gen_const_xmlChRangeGroup_ptr(n_rptr, 1);
 6618: 
 6619:         ret_val = xmlCharInRange(val, (const xmlChRangeGroup *)rptr);
 6620:         desret_int(ret_val);
 6621:         call_tests++;
 6622:         des_unsigned_int(n_val, val, 0);
 6623:         des_const_xmlChRangeGroup_ptr(n_rptr, (const xmlChRangeGroup *)rptr, 1);
 6624:         xmlResetLastError();
 6625:         if (mem_base != xmlMemBlocks()) {
 6626:             printf("Leak of %d blocks found in xmlCharInRange",
 6627: 	           xmlMemBlocks() - mem_base);
 6628: 	    test_ret++;
 6629:             printf(" %d", n_val);
 6630:             printf(" %d", n_rptr);
 6631:             printf("\n");
 6632:         }
 6633:     }
 6634:     }
 6635:     function_tests++;
 6636: 
 6637:     return(test_ret);
 6638: }
 6639: 
 6640: 
 6641: static int
 6642: test_xmlIsBaseChar(void) {
 6643:     int test_ret = 0;
 6644: 
 6645:     int mem_base;
 6646:     int ret_val;
 6647:     unsigned int ch; /* character to validate */
 6648:     int n_ch;
 6649: 
 6650:     for (n_ch = 0;n_ch < gen_nb_unsigned_int;n_ch++) {
 6651:         mem_base = xmlMemBlocks();
 6652:         ch = gen_unsigned_int(n_ch, 0);
 6653: 
 6654:         ret_val = xmlIsBaseChar(ch);
 6655:         desret_int(ret_val);
 6656:         call_tests++;
 6657:         des_unsigned_int(n_ch, ch, 0);
 6658:         xmlResetLastError();
 6659:         if (mem_base != xmlMemBlocks()) {
 6660:             printf("Leak of %d blocks found in xmlIsBaseChar",
 6661: 	           xmlMemBlocks() - mem_base);
 6662: 	    test_ret++;
 6663:             printf(" %d", n_ch);
 6664:             printf("\n");
 6665:         }
 6666:     }
 6667:     function_tests++;
 6668: 
 6669:     return(test_ret);
 6670: }
 6671: 
 6672: 
 6673: static int
 6674: test_xmlIsBlank(void) {
 6675:     int test_ret = 0;
 6676: 
 6677:     int mem_base;
 6678:     int ret_val;
 6679:     unsigned int ch; /* character to validate */
 6680:     int n_ch;
 6681: 
 6682:     for (n_ch = 0;n_ch < gen_nb_unsigned_int;n_ch++) {
 6683:         mem_base = xmlMemBlocks();
 6684:         ch = gen_unsigned_int(n_ch, 0);
 6685: 
 6686:         ret_val = xmlIsBlank(ch);
 6687:         desret_int(ret_val);
 6688:         call_tests++;
 6689:         des_unsigned_int(n_ch, ch, 0);
 6690:         xmlResetLastError();
 6691:         if (mem_base != xmlMemBlocks()) {
 6692:             printf("Leak of %d blocks found in xmlIsBlank",
 6693: 	           xmlMemBlocks() - mem_base);
 6694: 	    test_ret++;
 6695:             printf(" %d", n_ch);
 6696:             printf("\n");
 6697:         }
 6698:     }
 6699:     function_tests++;
 6700: 
 6701:     return(test_ret);
 6702: }
 6703: 
 6704: 
 6705: static int
 6706: test_xmlIsChar(void) {
 6707:     int test_ret = 0;
 6708: 
 6709:     int mem_base;
 6710:     int ret_val;
 6711:     unsigned int ch; /* character to validate */
 6712:     int n_ch;
 6713: 
 6714:     for (n_ch = 0;n_ch < gen_nb_unsigned_int;n_ch++) {
 6715:         mem_base = xmlMemBlocks();
 6716:         ch = gen_unsigned_int(n_ch, 0);
 6717: 
 6718:         ret_val = xmlIsChar(ch);
 6719:         desret_int(ret_val);
 6720:         call_tests++;
 6721:         des_unsigned_int(n_ch, ch, 0);
 6722:         xmlResetLastError();
 6723:         if (mem_base != xmlMemBlocks()) {
 6724:             printf("Leak of %d blocks found in xmlIsChar",
 6725: 	           xmlMemBlocks() - mem_base);
 6726: 	    test_ret++;
 6727:             printf(" %d", n_ch);
 6728:             printf("\n");
 6729:         }
 6730:     }
 6731:     function_tests++;
 6732: 
 6733:     return(test_ret);
 6734: }
 6735: 
 6736: 
 6737: static int
 6738: test_xmlIsCombining(void) {
 6739:     int test_ret = 0;
 6740: 
 6741:     int mem_base;
 6742:     int ret_val;
 6743:     unsigned int ch; /* character to validate */
 6744:     int n_ch;
 6745: 
 6746:     for (n_ch = 0;n_ch < gen_nb_unsigned_int;n_ch++) {
 6747:         mem_base = xmlMemBlocks();
 6748:         ch = gen_unsigned_int(n_ch, 0);
 6749: 
 6750:         ret_val = xmlIsCombining(ch);
 6751:         desret_int(ret_val);
 6752:         call_tests++;
 6753:         des_unsigned_int(n_ch, ch, 0);
 6754:         xmlResetLastError();
 6755:         if (mem_base != xmlMemBlocks()) {
 6756:             printf("Leak of %d blocks found in xmlIsCombining",
 6757: 	           xmlMemBlocks() - mem_base);
 6758: 	    test_ret++;
 6759:             printf(" %d", n_ch);
 6760:             printf("\n");
 6761:         }
 6762:     }
 6763:     function_tests++;
 6764: 
 6765:     return(test_ret);
 6766: }
 6767: 
 6768: 
 6769: static int
 6770: test_xmlIsDigit(void) {
 6771:     int test_ret = 0;
 6772: 
 6773:     int mem_base;
 6774:     int ret_val;
 6775:     unsigned int ch; /* character to validate */
 6776:     int n_ch;
 6777: 
 6778:     for (n_ch = 0;n_ch < gen_nb_unsigned_int;n_ch++) {
 6779:         mem_base = xmlMemBlocks();
 6780:         ch = gen_unsigned_int(n_ch, 0);
 6781: 
 6782:         ret_val = xmlIsDigit(ch);
 6783:         desret_int(ret_val);
 6784:         call_tests++;
 6785:         des_unsigned_int(n_ch, ch, 0);
 6786:         xmlResetLastError();
 6787:         if (mem_base != xmlMemBlocks()) {
 6788:             printf("Leak of %d blocks found in xmlIsDigit",
 6789: 	           xmlMemBlocks() - mem_base);
 6790: 	    test_ret++;
 6791:             printf(" %d", n_ch);
 6792:             printf("\n");
 6793:         }
 6794:     }
 6795:     function_tests++;
 6796: 
 6797:     return(test_ret);
 6798: }
 6799: 
 6800: 
 6801: static int
 6802: test_xmlIsExtender(void) {
 6803:     int test_ret = 0;
 6804: 
 6805:     int mem_base;
 6806:     int ret_val;
 6807:     unsigned int ch; /* character to validate */
 6808:     int n_ch;
 6809: 
 6810:     for (n_ch = 0;n_ch < gen_nb_unsigned_int;n_ch++) {
 6811:         mem_base = xmlMemBlocks();
 6812:         ch = gen_unsigned_int(n_ch, 0);
 6813: 
 6814:         ret_val = xmlIsExtender(ch);
 6815:         desret_int(ret_val);
 6816:         call_tests++;
 6817:         des_unsigned_int(n_ch, ch, 0);
 6818:         xmlResetLastError();
 6819:         if (mem_base != xmlMemBlocks()) {
 6820:             printf("Leak of %d blocks found in xmlIsExtender",
 6821: 	           xmlMemBlocks() - mem_base);
 6822: 	    test_ret++;
 6823:             printf(" %d", n_ch);
 6824:             printf("\n");
 6825:         }
 6826:     }
 6827:     function_tests++;
 6828: 
 6829:     return(test_ret);
 6830: }
 6831: 
 6832: 
 6833: static int
 6834: test_xmlIsIdeographic(void) {
 6835:     int test_ret = 0;
 6836: 
 6837:     int mem_base;
 6838:     int ret_val;
 6839:     unsigned int ch; /* character to validate */
 6840:     int n_ch;
 6841: 
 6842:     for (n_ch = 0;n_ch < gen_nb_unsigned_int;n_ch++) {
 6843:         mem_base = xmlMemBlocks();
 6844:         ch = gen_unsigned_int(n_ch, 0);
 6845: 
 6846:         ret_val = xmlIsIdeographic(ch);
 6847:         desret_int(ret_val);
 6848:         call_tests++;
 6849:         des_unsigned_int(n_ch, ch, 0);
 6850:         xmlResetLastError();
 6851:         if (mem_base != xmlMemBlocks()) {
 6852:             printf("Leak of %d blocks found in xmlIsIdeographic",
 6853: 	           xmlMemBlocks() - mem_base);
 6854: 	    test_ret++;
 6855:             printf(" %d", n_ch);
 6856:             printf("\n");
 6857:         }
 6858:     }
 6859:     function_tests++;
 6860: 
 6861:     return(test_ret);
 6862: }
 6863: 
 6864: 
 6865: static int
 6866: test_xmlIsPubidChar(void) {
 6867:     int test_ret = 0;
 6868: 
 6869:     int mem_base;
 6870:     int ret_val;
 6871:     unsigned int ch; /* character to validate */
 6872:     int n_ch;
 6873: 
 6874:     for (n_ch = 0;n_ch < gen_nb_unsigned_int;n_ch++) {
 6875:         mem_base = xmlMemBlocks();
 6876:         ch = gen_unsigned_int(n_ch, 0);
 6877: 
 6878:         ret_val = xmlIsPubidChar(ch);
 6879:         desret_int(ret_val);
 6880:         call_tests++;
 6881:         des_unsigned_int(n_ch, ch, 0);
 6882:         xmlResetLastError();
 6883:         if (mem_base != xmlMemBlocks()) {
 6884:             printf("Leak of %d blocks found in xmlIsPubidChar",
 6885: 	           xmlMemBlocks() - mem_base);
 6886: 	    test_ret++;
 6887:             printf(" %d", n_ch);
 6888:             printf("\n");
 6889:         }
 6890:     }
 6891:     function_tests++;
 6892: 
 6893:     return(test_ret);
 6894: }
 6895: 
 6896: static int
 6897: test_chvalid(void) {
 6898:     int test_ret = 0;
 6899: 
 6900:     if (quiet == 0) printf("Testing chvalid : 9 of 9 functions ...\n");
 6901:     test_ret += test_xmlCharInRange();
 6902:     test_ret += test_xmlIsBaseChar();
 6903:     test_ret += test_xmlIsBlank();
 6904:     test_ret += test_xmlIsChar();
 6905:     test_ret += test_xmlIsCombining();
 6906:     test_ret += test_xmlIsDigit();
 6907:     test_ret += test_xmlIsExtender();
 6908:     test_ret += test_xmlIsIdeographic();
 6909:     test_ret += test_xmlIsPubidChar();
 6910: 
 6911:     if (test_ret != 0)
 6912: 	printf("Module chvalid: %d errors\n", test_ret);
 6913:     return(test_ret);
 6914: }
 6915: 
 6916: static int
 6917: test_xmlBoolToText(void) {
 6918:     int test_ret = 0;
 6919: 
 6920: #if defined(LIBXML_DEBUG_ENABLED)
 6921:     int mem_base;
 6922:     const char * ret_val;
 6923:     int boolval; /* a bool to turn into text */
 6924:     int n_boolval;
 6925: 
 6926:     for (n_boolval = 0;n_boolval < gen_nb_int;n_boolval++) {
 6927:         mem_base = xmlMemBlocks();
 6928:         boolval = gen_int(n_boolval, 0);
 6929: 
 6930:         ret_val = xmlBoolToText(boolval);
 6931:         desret_const_char_ptr(ret_val);
 6932:         call_tests++;
 6933:         des_int(n_boolval, boolval, 0);
 6934:         xmlResetLastError();
 6935:         if (mem_base != xmlMemBlocks()) {
 6936:             printf("Leak of %d blocks found in xmlBoolToText",
 6937: 	           xmlMemBlocks() - mem_base);
 6938: 	    test_ret++;
 6939:             printf(" %d", n_boolval);
 6940:             printf("\n");
 6941:         }
 6942:     }
 6943:     function_tests++;
 6944: #endif
 6945: 
 6946:     return(test_ret);
 6947: }
 6948: 
 6949: 
 6950: static int
 6951: test_xmlDebugCheckDocument(void) {
 6952:     int test_ret = 0;
 6953: 
 6954: #if defined(LIBXML_DEBUG_ENABLED)
 6955:     int mem_base;
 6956:     int ret_val;
 6957:     FILE * output; /* the FILE * for the output */
 6958:     int n_output;
 6959:     xmlDocPtr doc; /* the document */
 6960:     int n_doc;
 6961: 
 6962:     for (n_output = 0;n_output < gen_nb_debug_FILE_ptr;n_output++) {
 6963:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
 6964:         mem_base = xmlMemBlocks();
 6965:         output = gen_debug_FILE_ptr(n_output, 0);
 6966:         doc = gen_xmlDocPtr(n_doc, 1);
 6967: 
 6968:         ret_val = xmlDebugCheckDocument(output, doc);
 6969:         desret_int(ret_val);
 6970:         call_tests++;
 6971:         des_debug_FILE_ptr(n_output, output, 0);
 6972:         des_xmlDocPtr(n_doc, doc, 1);
 6973:         xmlResetLastError();
 6974:         if (mem_base != xmlMemBlocks()) {
 6975:             printf("Leak of %d blocks found in xmlDebugCheckDocument",
 6976: 	           xmlMemBlocks() - mem_base);
 6977: 	    test_ret++;
 6978:             printf(" %d", n_output);
 6979:             printf(" %d", n_doc);
 6980:             printf("\n");
 6981:         }
 6982:     }
 6983:     }
 6984:     function_tests++;
 6985: #endif
 6986: 
 6987:     return(test_ret);
 6988: }
 6989: 
 6990: 
 6991: static int
 6992: test_xmlDebugDumpAttr(void) {
 6993:     int test_ret = 0;
 6994: 
 6995: #if defined(LIBXML_DEBUG_ENABLED)
 6996:     int mem_base;
 6997:     FILE * output; /* the FILE * for the output */
 6998:     int n_output;
 6999:     xmlAttrPtr attr; /* the attribute */
 7000:     int n_attr;
 7001:     int depth; /* the indentation level. */
 7002:     int n_depth;
 7003: 
 7004:     for (n_output = 0;n_output < gen_nb_debug_FILE_ptr;n_output++) {
 7005:     for (n_attr = 0;n_attr < gen_nb_xmlAttrPtr;n_attr++) {
 7006:     for (n_depth = 0;n_depth < gen_nb_int;n_depth++) {
 7007:         mem_base = xmlMemBlocks();
 7008:         output = gen_debug_FILE_ptr(n_output, 0);
 7009:         attr = gen_xmlAttrPtr(n_attr, 1);
 7010:         depth = gen_int(n_depth, 2);
 7011: 
 7012:         xmlDebugDumpAttr(output, attr, depth);
 7013:         call_tests++;
 7014:         des_debug_FILE_ptr(n_output, output, 0);
 7015:         des_xmlAttrPtr(n_attr, attr, 1);
 7016:         des_int(n_depth, depth, 2);
 7017:         xmlResetLastError();
 7018:         if (mem_base != xmlMemBlocks()) {
 7019:             printf("Leak of %d blocks found in xmlDebugDumpAttr",
 7020: 	           xmlMemBlocks() - mem_base);
 7021: 	    test_ret++;
 7022:             printf(" %d", n_output);
 7023:             printf(" %d", n_attr);
 7024:             printf(" %d", n_depth);
 7025:             printf("\n");
 7026:         }
 7027:     }
 7028:     }
 7029:     }
 7030:     function_tests++;
 7031: #endif
 7032: 
 7033:     return(test_ret);
 7034: }
 7035: 
 7036: 
 7037: static int
 7038: test_xmlDebugDumpAttrList(void) {
 7039:     int test_ret = 0;
 7040: 
 7041: #if defined(LIBXML_DEBUG_ENABLED)
 7042:     int mem_base;
 7043:     FILE * output; /* the FILE * for the output */
 7044:     int n_output;
 7045:     xmlAttrPtr attr; /* the attribute list */
 7046:     int n_attr;
 7047:     int depth; /* the indentation level. */
 7048:     int n_depth;
 7049: 
 7050:     for (n_output = 0;n_output < gen_nb_debug_FILE_ptr;n_output++) {
 7051:     for (n_attr = 0;n_attr < gen_nb_xmlAttrPtr;n_attr++) {
 7052:     for (n_depth = 0;n_depth < gen_nb_int;n_depth++) {
 7053:         mem_base = xmlMemBlocks();
 7054:         output = gen_debug_FILE_ptr(n_output, 0);
 7055:         attr = gen_xmlAttrPtr(n_attr, 1);
 7056:         depth = gen_int(n_depth, 2);
 7057: 
 7058:         xmlDebugDumpAttrList(output, attr, depth);
 7059:         call_tests++;
 7060:         des_debug_FILE_ptr(n_output, output, 0);
 7061:         des_xmlAttrPtr(n_attr, attr, 1);
 7062:         des_int(n_depth, depth, 2);
 7063:         xmlResetLastError();
 7064:         if (mem_base != xmlMemBlocks()) {
 7065:             printf("Leak of %d blocks found in xmlDebugDumpAttrList",
 7066: 	           xmlMemBlocks() - mem_base);
 7067: 	    test_ret++;
 7068:             printf(" %d", n_output);
 7069:             printf(" %d", n_attr);
 7070:             printf(" %d", n_depth);
 7071:             printf("\n");
 7072:         }
 7073:     }
 7074:     }
 7075:     }
 7076:     function_tests++;
 7077: #endif
 7078: 
 7079:     return(test_ret);
 7080: }
 7081: 
 7082: 
 7083: static int
 7084: test_xmlDebugDumpDTD(void) {
 7085:     int test_ret = 0;
 7086: 
 7087: #if defined(LIBXML_DEBUG_ENABLED)
 7088:     int mem_base;
 7089:     FILE * output; /* the FILE * for the output */
 7090:     int n_output;
 7091:     xmlDtdPtr dtd; /* the DTD */
 7092:     int n_dtd;
 7093: 
 7094:     for (n_output = 0;n_output < gen_nb_debug_FILE_ptr;n_output++) {
 7095:     for (n_dtd = 0;n_dtd < gen_nb_xmlDtdPtr;n_dtd++) {
 7096:         mem_base = xmlMemBlocks();
 7097:         output = gen_debug_FILE_ptr(n_output, 0);
 7098:         dtd = gen_xmlDtdPtr(n_dtd, 1);
 7099: 
 7100:         xmlDebugDumpDTD(output, dtd);
 7101:         call_tests++;
 7102:         des_debug_FILE_ptr(n_output, output, 0);
 7103:         des_xmlDtdPtr(n_dtd, dtd, 1);
 7104:         xmlResetLastError();
 7105:         if (mem_base != xmlMemBlocks()) {
 7106:             printf("Leak of %d blocks found in xmlDebugDumpDTD",
 7107: 	           xmlMemBlocks() - mem_base);
 7108: 	    test_ret++;
 7109:             printf(" %d", n_output);
 7110:             printf(" %d", n_dtd);
 7111:             printf("\n");
 7112:         }
 7113:     }
 7114:     }
 7115:     function_tests++;
 7116: #endif
 7117: 
 7118:     return(test_ret);
 7119: }
 7120: 
 7121: 
 7122: static int
 7123: test_xmlDebugDumpDocument(void) {
 7124:     int test_ret = 0;
 7125: 
 7126: #if defined(LIBXML_DEBUG_ENABLED)
 7127:     int mem_base;
 7128:     FILE * output; /* the FILE * for the output */
 7129:     int n_output;
 7130:     xmlDocPtr doc; /* the document */
 7131:     int n_doc;
 7132: 
 7133:     for (n_output = 0;n_output < gen_nb_debug_FILE_ptr;n_output++) {
 7134:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
 7135:         mem_base = xmlMemBlocks();
 7136:         output = gen_debug_FILE_ptr(n_output, 0);
 7137:         doc = gen_xmlDocPtr(n_doc, 1);
 7138: 
 7139:         xmlDebugDumpDocument(output, doc);
 7140:         call_tests++;
 7141:         des_debug_FILE_ptr(n_output, output, 0);
 7142:         des_xmlDocPtr(n_doc, doc, 1);
 7143:         xmlResetLastError();
 7144:         if (mem_base != xmlMemBlocks()) {
 7145:             printf("Leak of %d blocks found in xmlDebugDumpDocument",
 7146: 	           xmlMemBlocks() - mem_base);
 7147: 	    test_ret++;
 7148:             printf(" %d", n_output);
 7149:             printf(" %d", n_doc);
 7150:             printf("\n");
 7151:         }
 7152:     }
 7153:     }
 7154:     function_tests++;
 7155: #endif
 7156: 
 7157:     return(test_ret);
 7158: }
 7159: 
 7160: 
 7161: static int
 7162: test_xmlDebugDumpDocumentHead(void) {
 7163:     int test_ret = 0;
 7164: 
 7165: #if defined(LIBXML_DEBUG_ENABLED)
 7166:     int mem_base;
 7167:     FILE * output; /* the FILE * for the output */
 7168:     int n_output;
 7169:     xmlDocPtr doc; /* the document */
 7170:     int n_doc;
 7171: 
 7172:     for (n_output = 0;n_output < gen_nb_debug_FILE_ptr;n_output++) {
 7173:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
 7174:         mem_base = xmlMemBlocks();
 7175:         output = gen_debug_FILE_ptr(n_output, 0);
 7176:         doc = gen_xmlDocPtr(n_doc, 1);
 7177: 
 7178:         xmlDebugDumpDocumentHead(output, doc);
 7179:         call_tests++;
 7180:         des_debug_FILE_ptr(n_output, output, 0);
 7181:         des_xmlDocPtr(n_doc, doc, 1);
 7182:         xmlResetLastError();
 7183:         if (mem_base != xmlMemBlocks()) {
 7184:             printf("Leak of %d blocks found in xmlDebugDumpDocumentHead",
 7185: 	           xmlMemBlocks() - mem_base);
 7186: 	    test_ret++;
 7187:             printf(" %d", n_output);
 7188:             printf(" %d", n_doc);
 7189:             printf("\n");
 7190:         }
 7191:     }
 7192:     }
 7193:     function_tests++;
 7194: #endif
 7195: 
 7196:     return(test_ret);
 7197: }
 7198: 
 7199: 
 7200: static int
 7201: test_xmlDebugDumpEntities(void) {
 7202:     int test_ret = 0;
 7203: 
 7204: #if defined(LIBXML_DEBUG_ENABLED)
 7205:     int mem_base;
 7206:     FILE * output; /* the FILE * for the output */
 7207:     int n_output;
 7208:     xmlDocPtr doc; /* the document */
 7209:     int n_doc;
 7210: 
 7211:     for (n_output = 0;n_output < gen_nb_debug_FILE_ptr;n_output++) {
 7212:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
 7213:         mem_base = xmlMemBlocks();
 7214:         output = gen_debug_FILE_ptr(n_output, 0);
 7215:         doc = gen_xmlDocPtr(n_doc, 1);
 7216: 
 7217:         xmlDebugDumpEntities(output, doc);
 7218:         call_tests++;
 7219:         des_debug_FILE_ptr(n_output, output, 0);
 7220:         des_xmlDocPtr(n_doc, doc, 1);
 7221:         xmlResetLastError();
 7222:         if (mem_base != xmlMemBlocks()) {
 7223:             printf("Leak of %d blocks found in xmlDebugDumpEntities",
 7224: 	           xmlMemBlocks() - mem_base);
 7225: 	    test_ret++;
 7226:             printf(" %d", n_output);
 7227:             printf(" %d", n_doc);
 7228:             printf("\n");
 7229:         }
 7230:     }
 7231:     }
 7232:     function_tests++;
 7233: #endif
 7234: 
 7235:     return(test_ret);
 7236: }
 7237: 
 7238: 
 7239: static int
 7240: test_xmlDebugDumpNode(void) {
 7241:     int test_ret = 0;
 7242: 
 7243: #if defined(LIBXML_DEBUG_ENABLED)
 7244:     int mem_base;
 7245:     FILE * output; /* the FILE * for the output */
 7246:     int n_output;
 7247:     xmlNodePtr node; /* the node */
 7248:     int n_node;
 7249:     int depth; /* the indentation level. */
 7250:     int n_depth;
 7251: 
 7252:     for (n_output = 0;n_output < gen_nb_debug_FILE_ptr;n_output++) {
 7253:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
 7254:     for (n_depth = 0;n_depth < gen_nb_int;n_depth++) {
 7255:         mem_base = xmlMemBlocks();
 7256:         output = gen_debug_FILE_ptr(n_output, 0);
 7257:         node = gen_xmlNodePtr(n_node, 1);
 7258:         depth = gen_int(n_depth, 2);
 7259: 
 7260:         xmlDebugDumpNode(output, node, depth);
 7261:         call_tests++;
 7262:         des_debug_FILE_ptr(n_output, output, 0);
 7263:         des_xmlNodePtr(n_node, node, 1);
 7264:         des_int(n_depth, depth, 2);
 7265:         xmlResetLastError();
 7266:         if (mem_base != xmlMemBlocks()) {
 7267:             printf("Leak of %d blocks found in xmlDebugDumpNode",
 7268: 	           xmlMemBlocks() - mem_base);
 7269: 	    test_ret++;
 7270:             printf(" %d", n_output);
 7271:             printf(" %d", n_node);
 7272:             printf(" %d", n_depth);
 7273:             printf("\n");
 7274:         }
 7275:     }
 7276:     }
 7277:     }
 7278:     function_tests++;
 7279: #endif
 7280: 
 7281:     return(test_ret);
 7282: }
 7283: 
 7284: 
 7285: static int
 7286: test_xmlDebugDumpNodeList(void) {
 7287:     int test_ret = 0;
 7288: 
 7289: #if defined(LIBXML_DEBUG_ENABLED)
 7290:     int mem_base;
 7291:     FILE * output; /* the FILE * for the output */
 7292:     int n_output;
 7293:     xmlNodePtr node; /* the node list */
 7294:     int n_node;
 7295:     int depth; /* the indentation level. */
 7296:     int n_depth;
 7297: 
 7298:     for (n_output = 0;n_output < gen_nb_debug_FILE_ptr;n_output++) {
 7299:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
 7300:     for (n_depth = 0;n_depth < gen_nb_int;n_depth++) {
 7301:         mem_base = xmlMemBlocks();
 7302:         output = gen_debug_FILE_ptr(n_output, 0);
 7303:         node = gen_xmlNodePtr(n_node, 1);
 7304:         depth = gen_int(n_depth, 2);
 7305: 
 7306:         xmlDebugDumpNodeList(output, node, depth);
 7307:         call_tests++;
 7308:         des_debug_FILE_ptr(n_output, output, 0);
 7309:         des_xmlNodePtr(n_node, node, 1);
 7310:         des_int(n_depth, depth, 2);
 7311:         xmlResetLastError();
 7312:         if (mem_base != xmlMemBlocks()) {
 7313:             printf("Leak of %d blocks found in xmlDebugDumpNodeList",
 7314: 	           xmlMemBlocks() - mem_base);
 7315: 	    test_ret++;
 7316:             printf(" %d", n_output);
 7317:             printf(" %d", n_node);
 7318:             printf(" %d", n_depth);
 7319:             printf("\n");
 7320:         }
 7321:     }
 7322:     }
 7323:     }
 7324:     function_tests++;
 7325: #endif
 7326: 
 7327:     return(test_ret);
 7328: }
 7329: 
 7330: 
 7331: static int
 7332: test_xmlDebugDumpOneNode(void) {
 7333:     int test_ret = 0;
 7334: 
 7335: #if defined(LIBXML_DEBUG_ENABLED)
 7336:     int mem_base;
 7337:     FILE * output; /* the FILE * for the output */
 7338:     int n_output;
 7339:     xmlNodePtr node; /* the node */
 7340:     int n_node;
 7341:     int depth; /* the indentation level. */
 7342:     int n_depth;
 7343: 
 7344:     for (n_output = 0;n_output < gen_nb_debug_FILE_ptr;n_output++) {
 7345:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
 7346:     for (n_depth = 0;n_depth < gen_nb_int;n_depth++) {
 7347:         mem_base = xmlMemBlocks();
 7348:         output = gen_debug_FILE_ptr(n_output, 0);
 7349:         node = gen_xmlNodePtr(n_node, 1);
 7350:         depth = gen_int(n_depth, 2);
 7351: 
 7352:         xmlDebugDumpOneNode(output, node, depth);
 7353:         call_tests++;
 7354:         des_debug_FILE_ptr(n_output, output, 0);
 7355:         des_xmlNodePtr(n_node, node, 1);
 7356:         des_int(n_depth, depth, 2);
 7357:         xmlResetLastError();
 7358:         if (mem_base != xmlMemBlocks()) {
 7359:             printf("Leak of %d blocks found in xmlDebugDumpOneNode",
 7360: 	           xmlMemBlocks() - mem_base);
 7361: 	    test_ret++;
 7362:             printf(" %d", n_output);
 7363:             printf(" %d", n_node);
 7364:             printf(" %d", n_depth);
 7365:             printf("\n");
 7366:         }
 7367:     }
 7368:     }
 7369:     }
 7370:     function_tests++;
 7371: #endif
 7372: 
 7373:     return(test_ret);
 7374: }
 7375: 
 7376: 
 7377: static int
 7378: test_xmlDebugDumpString(void) {
 7379:     int test_ret = 0;
 7380: 
 7381: #if defined(LIBXML_DEBUG_ENABLED)
 7382:     int mem_base;
 7383:     FILE * output; /* the FILE * for the output */
 7384:     int n_output;
 7385:     xmlChar * str; /* the string */
 7386:     int n_str;
 7387: 
 7388:     for (n_output = 0;n_output < gen_nb_debug_FILE_ptr;n_output++) {
 7389:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
 7390:         mem_base = xmlMemBlocks();
 7391:         output = gen_debug_FILE_ptr(n_output, 0);
 7392:         str = gen_const_xmlChar_ptr(n_str, 1);
 7393: 
 7394:         xmlDebugDumpString(output, (const xmlChar *)str);
 7395:         call_tests++;
 7396:         des_debug_FILE_ptr(n_output, output, 0);
 7397:         des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 1);
 7398:         xmlResetLastError();
 7399:         if (mem_base != xmlMemBlocks()) {
 7400:             printf("Leak of %d blocks found in xmlDebugDumpString",
 7401: 	           xmlMemBlocks() - mem_base);
 7402: 	    test_ret++;
 7403:             printf(" %d", n_output);
 7404:             printf(" %d", n_str);
 7405:             printf("\n");
 7406:         }
 7407:     }
 7408:     }
 7409:     function_tests++;
 7410: #endif
 7411: 
 7412:     return(test_ret);
 7413: }
 7414: 
 7415: 
 7416: static int
 7417: test_xmlLsCountNode(void) {
 7418:     int test_ret = 0;
 7419: 
 7420: #if defined(LIBXML_DEBUG_ENABLED)
 7421:     int mem_base;
 7422:     int ret_val;
 7423:     xmlNodePtr node; /* the node to count */
 7424:     int n_node;
 7425: 
 7426:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
 7427:         mem_base = xmlMemBlocks();
 7428:         node = gen_xmlNodePtr(n_node, 0);
 7429: 
 7430:         ret_val = xmlLsCountNode(node);
 7431:         desret_int(ret_val);
 7432:         call_tests++;
 7433:         des_xmlNodePtr(n_node, node, 0);
 7434:         xmlResetLastError();
 7435:         if (mem_base != xmlMemBlocks()) {
 7436:             printf("Leak of %d blocks found in xmlLsCountNode",
 7437: 	           xmlMemBlocks() - mem_base);
 7438: 	    test_ret++;
 7439:             printf(" %d", n_node);
 7440:             printf("\n");
 7441:         }
 7442:     }
 7443:     function_tests++;
 7444: #endif
 7445: 
 7446:     return(test_ret);
 7447: }
 7448: 
 7449: 
 7450: static int
 7451: test_xmlLsOneNode(void) {
 7452:     int test_ret = 0;
 7453: 
 7454: #if defined(LIBXML_DEBUG_ENABLED)
 7455:     int mem_base;
 7456:     FILE * output; /* the FILE * for the output */
 7457:     int n_output;
 7458:     xmlNodePtr node; /* the node to dump */
 7459:     int n_node;
 7460: 
 7461:     for (n_output = 0;n_output < gen_nb_debug_FILE_ptr;n_output++) {
 7462:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
 7463:         mem_base = xmlMemBlocks();
 7464:         output = gen_debug_FILE_ptr(n_output, 0);
 7465:         node = gen_xmlNodePtr(n_node, 1);
 7466: 
 7467:         xmlLsOneNode(output, node);
 7468:         call_tests++;
 7469:         des_debug_FILE_ptr(n_output, output, 0);
 7470:         des_xmlNodePtr(n_node, node, 1);
 7471:         xmlResetLastError();
 7472:         if (mem_base != xmlMemBlocks()) {
 7473:             printf("Leak of %d blocks found in xmlLsOneNode",
 7474: 	           xmlMemBlocks() - mem_base);
 7475: 	    test_ret++;
 7476:             printf(" %d", n_output);
 7477:             printf(" %d", n_node);
 7478:             printf("\n");
 7479:         }
 7480:     }
 7481:     }
 7482:     function_tests++;
 7483: #endif
 7484: 
 7485:     return(test_ret);
 7486: }
 7487: 
 7488: 
 7489: #define gen_nb_char_ptr 1
 7490: static char * gen_char_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 7491:     return(NULL);
 7492: }
 7493: static void des_char_ptr(int no ATTRIBUTE_UNUSED, char * val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 7494: }
 7495: 
 7496: static int
 7497: test_xmlShell(void) {
 7498:     int test_ret = 0;
 7499: 
 7500: 
 7501:     /* missing type support */
 7502:     return(test_ret);
 7503: }
 7504: 
 7505: 
 7506: static int
 7507: test_xmlShellBase(void) {
 7508:     int test_ret = 0;
 7509: 
 7510: #if defined(LIBXML_DEBUG_ENABLED) && defined(LIBXML_XPATH_ENABLED)
 7511:     int mem_base;
 7512:     int ret_val;
 7513:     xmlShellCtxtPtr ctxt; /* the shell context */
 7514:     int n_ctxt;
 7515:     char * arg; /* unused */
 7516:     int n_arg;
 7517:     xmlNodePtr node; /* a node */
 7518:     int n_node;
 7519:     xmlNodePtr node2; /* unused */
 7520:     int n_node2;
 7521: 
 7522:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlShellCtxtPtr;n_ctxt++) {
 7523:     for (n_arg = 0;n_arg < gen_nb_char_ptr;n_arg++) {
 7524:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
 7525:     for (n_node2 = 0;n_node2 < gen_nb_xmlNodePtr;n_node2++) {
 7526:         mem_base = xmlMemBlocks();
 7527:         ctxt = gen_xmlShellCtxtPtr(n_ctxt, 0);
 7528:         arg = gen_char_ptr(n_arg, 1);
 7529:         node = gen_xmlNodePtr(n_node, 2);
 7530:         node2 = gen_xmlNodePtr(n_node2, 3);
 7531: 
 7532:         ret_val = xmlShellBase(ctxt, arg, node, node2);
 7533:         desret_int(ret_val);
 7534:         call_tests++;
 7535:         des_xmlShellCtxtPtr(n_ctxt, ctxt, 0);
 7536:         des_char_ptr(n_arg, arg, 1);
 7537:         des_xmlNodePtr(n_node, node, 2);
 7538:         des_xmlNodePtr(n_node2, node2, 3);
 7539:         xmlResetLastError();
 7540:         if (mem_base != xmlMemBlocks()) {
 7541:             printf("Leak of %d blocks found in xmlShellBase",
 7542: 	           xmlMemBlocks() - mem_base);
 7543: 	    test_ret++;
 7544:             printf(" %d", n_ctxt);
 7545:             printf(" %d", n_arg);
 7546:             printf(" %d", n_node);
 7547:             printf(" %d", n_node2);
 7548:             printf("\n");
 7549:         }
 7550:     }
 7551:     }
 7552:     }
 7553:     }
 7554:     function_tests++;
 7555: #endif
 7556: 
 7557:     return(test_ret);
 7558: }
 7559: 
 7560: 
 7561: static int
 7562: test_xmlShellCat(void) {
 7563:     int test_ret = 0;
 7564: 
 7565: #if defined(LIBXML_DEBUG_ENABLED) && defined(LIBXML_XPATH_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
 7566:     int mem_base;
 7567:     int ret_val;
 7568:     xmlShellCtxtPtr ctxt; /* the shell context */
 7569:     int n_ctxt;
 7570:     char * arg; /* unused */
 7571:     int n_arg;
 7572:     xmlNodePtr node; /* a node */
 7573:     int n_node;
 7574:     xmlNodePtr node2; /* unused */
 7575:     int n_node2;
 7576: 
 7577:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlShellCtxtPtr;n_ctxt++) {
 7578:     for (n_arg = 0;n_arg < gen_nb_char_ptr;n_arg++) {
 7579:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
 7580:     for (n_node2 = 0;n_node2 < gen_nb_xmlNodePtr;n_node2++) {
 7581:         mem_base = xmlMemBlocks();
 7582:         ctxt = gen_xmlShellCtxtPtr(n_ctxt, 0);
 7583:         arg = gen_char_ptr(n_arg, 1);
 7584:         node = gen_xmlNodePtr(n_node, 2);
 7585:         node2 = gen_xmlNodePtr(n_node2, 3);
 7586: 
 7587:         ret_val = xmlShellCat(ctxt, arg, node, node2);
 7588:         desret_int(ret_val);
 7589:         call_tests++;
 7590:         des_xmlShellCtxtPtr(n_ctxt, ctxt, 0);
 7591:         des_char_ptr(n_arg, arg, 1);
 7592:         des_xmlNodePtr(n_node, node, 2);
 7593:         des_xmlNodePtr(n_node2, node2, 3);
 7594:         xmlResetLastError();
 7595:         if (mem_base != xmlMemBlocks()) {
 7596:             printf("Leak of %d blocks found in xmlShellCat",
 7597: 	           xmlMemBlocks() - mem_base);
 7598: 	    test_ret++;
 7599:             printf(" %d", n_ctxt);
 7600:             printf(" %d", n_arg);
 7601:             printf(" %d", n_node);
 7602:             printf(" %d", n_node2);
 7603:             printf("\n");
 7604:         }
 7605:     }
 7606:     }
 7607:     }
 7608:     }
 7609:     function_tests++;
 7610: #endif
 7611: 
 7612:     return(test_ret);
 7613: }
 7614: 
 7615: 
 7616: static int
 7617: test_xmlShellDir(void) {
 7618:     int test_ret = 0;
 7619: 
 7620: #if defined(LIBXML_DEBUG_ENABLED) && defined(LIBXML_XPATH_ENABLED)
 7621:     int mem_base;
 7622:     int ret_val;
 7623:     xmlShellCtxtPtr ctxt; /* the shell context */
 7624:     int n_ctxt;
 7625:     char * arg; /* unused */
 7626:     int n_arg;
 7627:     xmlNodePtr node; /* a node */
 7628:     int n_node;
 7629:     xmlNodePtr node2; /* unused */
 7630:     int n_node2;
 7631: 
 7632:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlShellCtxtPtr;n_ctxt++) {
 7633:     for (n_arg = 0;n_arg < gen_nb_char_ptr;n_arg++) {
 7634:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
 7635:     for (n_node2 = 0;n_node2 < gen_nb_xmlNodePtr;n_node2++) {
 7636:         mem_base = xmlMemBlocks();
 7637:         ctxt = gen_xmlShellCtxtPtr(n_ctxt, 0);
 7638:         arg = gen_char_ptr(n_arg, 1);
 7639:         node = gen_xmlNodePtr(n_node, 2);
 7640:         node2 = gen_xmlNodePtr(n_node2, 3);
 7641: 
 7642:         ret_val = xmlShellDir(ctxt, arg, node, node2);
 7643:         desret_int(ret_val);
 7644:         call_tests++;
 7645:         des_xmlShellCtxtPtr(n_ctxt, ctxt, 0);
 7646:         des_char_ptr(n_arg, arg, 1);
 7647:         des_xmlNodePtr(n_node, node, 2);
 7648:         des_xmlNodePtr(n_node2, node2, 3);
 7649:         xmlResetLastError();
 7650:         if (mem_base != xmlMemBlocks()) {
 7651:             printf("Leak of %d blocks found in xmlShellDir",
 7652: 	           xmlMemBlocks() - mem_base);
 7653: 	    test_ret++;
 7654:             printf(" %d", n_ctxt);
 7655:             printf(" %d", n_arg);
 7656:             printf(" %d", n_node);
 7657:             printf(" %d", n_node2);
 7658:             printf("\n");
 7659:         }
 7660:     }
 7661:     }
 7662:     }
 7663:     }
 7664:     function_tests++;
 7665: #endif
 7666: 
 7667:     return(test_ret);
 7668: }
 7669: 
 7670: 
 7671: static int
 7672: test_xmlShellDu(void) {
 7673:     int test_ret = 0;
 7674: 
 7675: #if defined(LIBXML_DEBUG_ENABLED) && defined(LIBXML_XPATH_ENABLED)
 7676:     int mem_base;
 7677:     int ret_val;
 7678:     xmlShellCtxtPtr ctxt; /* the shell context */
 7679:     int n_ctxt;
 7680:     char * arg; /* unused */
 7681:     int n_arg;
 7682:     xmlNodePtr tree; /* a node defining a subtree */
 7683:     int n_tree;
 7684:     xmlNodePtr node2; /* unused */
 7685:     int n_node2;
 7686: 
 7687:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlShellCtxtPtr;n_ctxt++) {
 7688:     for (n_arg = 0;n_arg < gen_nb_char_ptr;n_arg++) {
 7689:     for (n_tree = 0;n_tree < gen_nb_xmlNodePtr;n_tree++) {
 7690:     for (n_node2 = 0;n_node2 < gen_nb_xmlNodePtr;n_node2++) {
 7691:         mem_base = xmlMemBlocks();
 7692:         ctxt = gen_xmlShellCtxtPtr(n_ctxt, 0);
 7693:         arg = gen_char_ptr(n_arg, 1);
 7694:         tree = gen_xmlNodePtr(n_tree, 2);
 7695:         node2 = gen_xmlNodePtr(n_node2, 3);
 7696: 
 7697:         ret_val = xmlShellDu(ctxt, arg, tree, node2);
 7698:         desret_int(ret_val);
 7699:         call_tests++;
 7700:         des_xmlShellCtxtPtr(n_ctxt, ctxt, 0);
 7701:         des_char_ptr(n_arg, arg, 1);
 7702:         des_xmlNodePtr(n_tree, tree, 2);
 7703:         des_xmlNodePtr(n_node2, node2, 3);
 7704:         xmlResetLastError();
 7705:         if (mem_base != xmlMemBlocks()) {
 7706:             printf("Leak of %d blocks found in xmlShellDu",
 7707: 	           xmlMemBlocks() - mem_base);
 7708: 	    test_ret++;
 7709:             printf(" %d", n_ctxt);
 7710:             printf(" %d", n_arg);
 7711:             printf(" %d", n_tree);
 7712:             printf(" %d", n_node2);
 7713:             printf("\n");
 7714:         }
 7715:     }
 7716:     }
 7717:     }
 7718:     }
 7719:     function_tests++;
 7720: #endif
 7721: 
 7722:     return(test_ret);
 7723: }
 7724: 
 7725: 
 7726: static int
 7727: test_xmlShellList(void) {
 7728:     int test_ret = 0;
 7729: 
 7730: #if defined(LIBXML_DEBUG_ENABLED) && defined(LIBXML_XPATH_ENABLED)
 7731:     int mem_base;
 7732:     int ret_val;
 7733:     xmlShellCtxtPtr ctxt; /* the shell context */
 7734:     int n_ctxt;
 7735:     char * arg; /* unused */
 7736:     int n_arg;
 7737:     xmlNodePtr node; /* a node */
 7738:     int n_node;
 7739:     xmlNodePtr node2; /* unused */
 7740:     int n_node2;
 7741: 
 7742:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlShellCtxtPtr;n_ctxt++) {
 7743:     for (n_arg = 0;n_arg < gen_nb_char_ptr;n_arg++) {
 7744:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
 7745:     for (n_node2 = 0;n_node2 < gen_nb_xmlNodePtr;n_node2++) {
 7746:         mem_base = xmlMemBlocks();
 7747:         ctxt = gen_xmlShellCtxtPtr(n_ctxt, 0);
 7748:         arg = gen_char_ptr(n_arg, 1);
 7749:         node = gen_xmlNodePtr(n_node, 2);
 7750:         node2 = gen_xmlNodePtr(n_node2, 3);
 7751: 
 7752:         ret_val = xmlShellList(ctxt, arg, node, node2);
 7753:         desret_int(ret_val);
 7754:         call_tests++;
 7755:         des_xmlShellCtxtPtr(n_ctxt, ctxt, 0);
 7756:         des_char_ptr(n_arg, arg, 1);
 7757:         des_xmlNodePtr(n_node, node, 2);
 7758:         des_xmlNodePtr(n_node2, node2, 3);
 7759:         xmlResetLastError();
 7760:         if (mem_base != xmlMemBlocks()) {
 7761:             printf("Leak of %d blocks found in xmlShellList",
 7762: 	           xmlMemBlocks() - mem_base);
 7763: 	    test_ret++;
 7764:             printf(" %d", n_ctxt);
 7765:             printf(" %d", n_arg);
 7766:             printf(" %d", n_node);
 7767:             printf(" %d", n_node2);
 7768:             printf("\n");
 7769:         }
 7770:     }
 7771:     }
 7772:     }
 7773:     }
 7774:     function_tests++;
 7775: #endif
 7776: 
 7777:     return(test_ret);
 7778: }
 7779: 
 7780: 
 7781: static int
 7782: test_xmlShellLoad(void) {
 7783:     int test_ret = 0;
 7784: 
 7785: #if defined(LIBXML_DEBUG_ENABLED) && defined(LIBXML_XPATH_ENABLED)
 7786:     int mem_base;
 7787:     int ret_val;
 7788:     xmlShellCtxtPtr ctxt; /* the shell context */
 7789:     int n_ctxt;
 7790:     char * filename; /* the file name */
 7791:     int n_filename;
 7792:     xmlNodePtr node; /* unused */
 7793:     int n_node;
 7794:     xmlNodePtr node2; /* unused */
 7795:     int n_node2;
 7796: 
 7797:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlShellCtxtPtr;n_ctxt++) {
 7798:     for (n_filename = 0;n_filename < gen_nb_char_ptr;n_filename++) {
 7799:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
 7800:     for (n_node2 = 0;n_node2 < gen_nb_xmlNodePtr;n_node2++) {
 7801:         mem_base = xmlMemBlocks();
 7802:         ctxt = gen_xmlShellCtxtPtr(n_ctxt, 0);
 7803:         filename = gen_char_ptr(n_filename, 1);
 7804:         node = gen_xmlNodePtr(n_node, 2);
 7805:         node2 = gen_xmlNodePtr(n_node2, 3);
 7806: 
 7807:         ret_val = xmlShellLoad(ctxt, filename, node, node2);
 7808:         desret_int(ret_val);
 7809:         call_tests++;
 7810:         des_xmlShellCtxtPtr(n_ctxt, ctxt, 0);
 7811:         des_char_ptr(n_filename, filename, 1);
 7812:         des_xmlNodePtr(n_node, node, 2);
 7813:         des_xmlNodePtr(n_node2, node2, 3);
 7814:         xmlResetLastError();
 7815:         if (mem_base != xmlMemBlocks()) {
 7816:             printf("Leak of %d blocks found in xmlShellLoad",
 7817: 	           xmlMemBlocks() - mem_base);
 7818: 	    test_ret++;
 7819:             printf(" %d", n_ctxt);
 7820:             printf(" %d", n_filename);
 7821:             printf(" %d", n_node);
 7822:             printf(" %d", n_node2);
 7823:             printf("\n");
 7824:         }
 7825:     }
 7826:     }
 7827:     }
 7828:     }
 7829:     function_tests++;
 7830: #endif
 7831: 
 7832:     return(test_ret);
 7833: }
 7834: 
 7835: 
 7836: static int
 7837: test_xmlShellPrintXPathResult(void) {
 7838:     int test_ret = 0;
 7839: 
 7840: #if defined(LIBXML_DEBUG_ENABLED) && defined(LIBXML_XPATH_ENABLED)
 7841:     int mem_base;
 7842:     xmlXPathObjectPtr list; /* a valid result generated by an xpath evaluation */
 7843:     int n_list;
 7844: 
 7845:     for (n_list = 0;n_list < gen_nb_xmlXPathObjectPtr;n_list++) {
 7846:         mem_base = xmlMemBlocks();
 7847:         list = gen_xmlXPathObjectPtr(n_list, 0);
 7848: 
 7849:         xmlShellPrintXPathResult(list);
 7850:         call_tests++;
 7851:         des_xmlXPathObjectPtr(n_list, list, 0);
 7852:         xmlResetLastError();
 7853:         if (mem_base != xmlMemBlocks()) {
 7854:             printf("Leak of %d blocks found in xmlShellPrintXPathResult",
 7855: 	           xmlMemBlocks() - mem_base);
 7856: 	    test_ret++;
 7857:             printf(" %d", n_list);
 7858:             printf("\n");
 7859:         }
 7860:     }
 7861:     function_tests++;
 7862: #endif
 7863: 
 7864:     return(test_ret);
 7865: }
 7866: 
 7867: 
 7868: static int
 7869: test_xmlShellPwd(void) {
 7870:     int test_ret = 0;
 7871: 
 7872: #if defined(LIBXML_DEBUG_ENABLED) && defined(LIBXML_XPATH_ENABLED)
 7873:     int mem_base;
 7874:     int ret_val;
 7875:     xmlShellCtxtPtr ctxt; /* the shell context */
 7876:     int n_ctxt;
 7877:     char * buffer; /* the output buffer */
 7878:     int n_buffer;
 7879:     xmlNodePtr node; /* a node */
 7880:     int n_node;
 7881:     xmlNodePtr node2; /* unused */
 7882:     int n_node2;
 7883: 
 7884:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlShellCtxtPtr;n_ctxt++) {
 7885:     for (n_buffer = 0;n_buffer < gen_nb_char_ptr;n_buffer++) {
 7886:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
 7887:     for (n_node2 = 0;n_node2 < gen_nb_xmlNodePtr;n_node2++) {
 7888:         mem_base = xmlMemBlocks();
 7889:         ctxt = gen_xmlShellCtxtPtr(n_ctxt, 0);
 7890:         buffer = gen_char_ptr(n_buffer, 1);
 7891:         node = gen_xmlNodePtr(n_node, 2);
 7892:         node2 = gen_xmlNodePtr(n_node2, 3);
 7893: 
 7894:         ret_val = xmlShellPwd(ctxt, buffer, node, node2);
 7895:         desret_int(ret_val);
 7896:         call_tests++;
 7897:         des_xmlShellCtxtPtr(n_ctxt, ctxt, 0);
 7898:         des_char_ptr(n_buffer, buffer, 1);
 7899:         des_xmlNodePtr(n_node, node, 2);
 7900:         des_xmlNodePtr(n_node2, node2, 3);
 7901:         xmlResetLastError();
 7902:         if (mem_base != xmlMemBlocks()) {
 7903:             printf("Leak of %d blocks found in xmlShellPwd",
 7904: 	           xmlMemBlocks() - mem_base);
 7905: 	    test_ret++;
 7906:             printf(" %d", n_ctxt);
 7907:             printf(" %d", n_buffer);
 7908:             printf(" %d", n_node);
 7909:             printf(" %d", n_node2);
 7910:             printf("\n");
 7911:         }
 7912:     }
 7913:     }
 7914:     }
 7915:     }
 7916:     function_tests++;
 7917: #endif
 7918: 
 7919:     return(test_ret);
 7920: }
 7921: 
 7922: 
 7923: static int
 7924: test_xmlShellSave(void) {
 7925:     int test_ret = 0;
 7926: 
 7927: #if defined(LIBXML_DEBUG_ENABLED) && defined(LIBXML_XPATH_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
 7928:     int mem_base;
 7929:     int ret_val;
 7930:     xmlShellCtxtPtr ctxt; /* the shell context */
 7931:     int n_ctxt;
 7932:     char * filename; /* the file name (optional) */
 7933:     int n_filename;
 7934:     xmlNodePtr node; /* unused */
 7935:     int n_node;
 7936:     xmlNodePtr node2; /* unused */
 7937:     int n_node2;
 7938: 
 7939:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlShellCtxtPtr;n_ctxt++) {
 7940:     for (n_filename = 0;n_filename < gen_nb_char_ptr;n_filename++) {
 7941:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
 7942:     for (n_node2 = 0;n_node2 < gen_nb_xmlNodePtr;n_node2++) {
 7943:         mem_base = xmlMemBlocks();
 7944:         ctxt = gen_xmlShellCtxtPtr(n_ctxt, 0);
 7945:         filename = gen_char_ptr(n_filename, 1);
 7946:         node = gen_xmlNodePtr(n_node, 2);
 7947:         node2 = gen_xmlNodePtr(n_node2, 3);
 7948: 
 7949:         ret_val = xmlShellSave(ctxt, filename, node, node2);
 7950:         desret_int(ret_val);
 7951:         call_tests++;
 7952:         des_xmlShellCtxtPtr(n_ctxt, ctxt, 0);
 7953:         des_char_ptr(n_filename, filename, 1);
 7954:         des_xmlNodePtr(n_node, node, 2);
 7955:         des_xmlNodePtr(n_node2, node2, 3);
 7956:         xmlResetLastError();
 7957:         if (mem_base != xmlMemBlocks()) {
 7958:             printf("Leak of %d blocks found in xmlShellSave",
 7959: 	           xmlMemBlocks() - mem_base);
 7960: 	    test_ret++;
 7961:             printf(" %d", n_ctxt);
 7962:             printf(" %d", n_filename);
 7963:             printf(" %d", n_node);
 7964:             printf(" %d", n_node2);
 7965:             printf("\n");
 7966:         }
 7967:     }
 7968:     }
 7969:     }
 7970:     }
 7971:     function_tests++;
 7972: #endif
 7973: 
 7974:     return(test_ret);
 7975: }
 7976: 
 7977: 
 7978: static int
 7979: test_xmlShellValidate(void) {
 7980:     int test_ret = 0;
 7981: 
 7982: #if defined(LIBXML_DEBUG_ENABLED) && defined(LIBXML_XPATH_ENABLED) && defined(LIBXML_VALID_ENABLED)
 7983:     int mem_base;
 7984:     int ret_val;
 7985:     xmlShellCtxtPtr ctxt; /* the shell context */
 7986:     int n_ctxt;
 7987:     char * dtd; /* the DTD URI (optional) */
 7988:     int n_dtd;
 7989:     xmlNodePtr node; /* unused */
 7990:     int n_node;
 7991:     xmlNodePtr node2; /* unused */
 7992:     int n_node2;
 7993: 
 7994:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlShellCtxtPtr;n_ctxt++) {
 7995:     for (n_dtd = 0;n_dtd < gen_nb_char_ptr;n_dtd++) {
 7996:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
 7997:     for (n_node2 = 0;n_node2 < gen_nb_xmlNodePtr;n_node2++) {
 7998:         mem_base = xmlMemBlocks();
 7999:         ctxt = gen_xmlShellCtxtPtr(n_ctxt, 0);
 8000:         dtd = gen_char_ptr(n_dtd, 1);
 8001:         node = gen_xmlNodePtr(n_node, 2);
 8002:         node2 = gen_xmlNodePtr(n_node2, 3);
 8003: 
 8004:         ret_val = xmlShellValidate(ctxt, dtd, node, node2);
 8005:         desret_int(ret_val);
 8006:         call_tests++;
 8007:         des_xmlShellCtxtPtr(n_ctxt, ctxt, 0);
 8008:         des_char_ptr(n_dtd, dtd, 1);
 8009:         des_xmlNodePtr(n_node, node, 2);
 8010:         des_xmlNodePtr(n_node2, node2, 3);
 8011:         xmlResetLastError();
 8012:         if (mem_base != xmlMemBlocks()) {
 8013:             printf("Leak of %d blocks found in xmlShellValidate",
 8014: 	           xmlMemBlocks() - mem_base);
 8015: 	    test_ret++;
 8016:             printf(" %d", n_ctxt);
 8017:             printf(" %d", n_dtd);
 8018:             printf(" %d", n_node);
 8019:             printf(" %d", n_node2);
 8020:             printf("\n");
 8021:         }
 8022:     }
 8023:     }
 8024:     }
 8025:     }
 8026:     function_tests++;
 8027: #endif
 8028: 
 8029:     return(test_ret);
 8030: }
 8031: 
 8032: 
 8033: static int
 8034: test_xmlShellWrite(void) {
 8035:     int test_ret = 0;
 8036: 
 8037: #if defined(LIBXML_DEBUG_ENABLED) && defined(LIBXML_XPATH_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
 8038:     int mem_base;
 8039:     int ret_val;
 8040:     xmlShellCtxtPtr ctxt; /* the shell context */
 8041:     int n_ctxt;
 8042:     char * filename; /* the file name */
 8043:     int n_filename;
 8044:     xmlNodePtr node; /* a node in the tree */
 8045:     int n_node;
 8046:     xmlNodePtr node2; /* unused */
 8047:     int n_node2;
 8048: 
 8049:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlShellCtxtPtr;n_ctxt++) {
 8050:     for (n_filename = 0;n_filename < gen_nb_char_ptr;n_filename++) {
 8051:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
 8052:     for (n_node2 = 0;n_node2 < gen_nb_xmlNodePtr;n_node2++) {
 8053:         mem_base = xmlMemBlocks();
 8054:         ctxt = gen_xmlShellCtxtPtr(n_ctxt, 0);
 8055:         filename = gen_char_ptr(n_filename, 1);
 8056:         node = gen_xmlNodePtr(n_node, 2);
 8057:         node2 = gen_xmlNodePtr(n_node2, 3);
 8058: 
 8059:         ret_val = xmlShellWrite(ctxt, filename, node, node2);
 8060:         desret_int(ret_val);
 8061:         call_tests++;
 8062:         des_xmlShellCtxtPtr(n_ctxt, ctxt, 0);
 8063:         des_char_ptr(n_filename, filename, 1);
 8064:         des_xmlNodePtr(n_node, node, 2);
 8065:         des_xmlNodePtr(n_node2, node2, 3);
 8066:         xmlResetLastError();
 8067:         if (mem_base != xmlMemBlocks()) {
 8068:             printf("Leak of %d blocks found in xmlShellWrite",
 8069: 	           xmlMemBlocks() - mem_base);
 8070: 	    test_ret++;
 8071:             printf(" %d", n_ctxt);
 8072:             printf(" %d", n_filename);
 8073:             printf(" %d", n_node);
 8074:             printf(" %d", n_node2);
 8075:             printf("\n");
 8076:         }
 8077:     }
 8078:     }
 8079:     }
 8080:     }
 8081:     function_tests++;
 8082: #endif
 8083: 
 8084:     return(test_ret);
 8085: }
 8086: 
 8087: static int
 8088: test_debugXML(void) {
 8089:     int test_ret = 0;
 8090: 
 8091:     if (quiet == 0) printf("Testing debugXML : 25 of 28 functions ...\n");
 8092:     test_ret += test_xmlBoolToText();
 8093:     test_ret += test_xmlDebugCheckDocument();
 8094:     test_ret += test_xmlDebugDumpAttr();
 8095:     test_ret += test_xmlDebugDumpAttrList();
 8096:     test_ret += test_xmlDebugDumpDTD();
 8097:     test_ret += test_xmlDebugDumpDocument();
 8098:     test_ret += test_xmlDebugDumpDocumentHead();
 8099:     test_ret += test_xmlDebugDumpEntities();
 8100:     test_ret += test_xmlDebugDumpNode();
 8101:     test_ret += test_xmlDebugDumpNodeList();
 8102:     test_ret += test_xmlDebugDumpOneNode();
 8103:     test_ret += test_xmlDebugDumpString();
 8104:     test_ret += test_xmlLsCountNode();
 8105:     test_ret += test_xmlLsOneNode();
 8106:     test_ret += test_xmlShell();
 8107:     test_ret += test_xmlShellBase();
 8108:     test_ret += test_xmlShellCat();
 8109:     test_ret += test_xmlShellDir();
 8110:     test_ret += test_xmlShellDu();
 8111:     test_ret += test_xmlShellList();
 8112:     test_ret += test_xmlShellLoad();
 8113:     test_ret += test_xmlShellPrintXPathResult();
 8114:     test_ret += test_xmlShellPwd();
 8115:     test_ret += test_xmlShellSave();
 8116:     test_ret += test_xmlShellValidate();
 8117:     test_ret += test_xmlShellWrite();
 8118: 
 8119:     if (test_ret != 0)
 8120: 	printf("Module debugXML: %d errors\n", test_ret);
 8121:     return(test_ret);
 8122: }
 8123: 
 8124: static int
 8125: test_xmlDictCleanup(void) {
 8126:     int test_ret = 0;
 8127: 
 8128:     int mem_base;
 8129: 
 8130:         mem_base = xmlMemBlocks();
 8131: 
 8132:         xmlDictCleanup();
 8133:         call_tests++;
 8134:         xmlResetLastError();
 8135:         if (mem_base != xmlMemBlocks()) {
 8136:             printf("Leak of %d blocks found in xmlDictCleanup",
 8137: 	           xmlMemBlocks() - mem_base);
 8138: 	    test_ret++;
 8139:             printf("\n");
 8140:         }
 8141:     function_tests++;
 8142: 
 8143:     return(test_ret);
 8144: }
 8145: 
 8146: 
 8147: static int
 8148: test_xmlDictCreate(void) {
 8149:     int test_ret = 0;
 8150: 
 8151:     int mem_base;
 8152:     xmlDictPtr ret_val;
 8153: 
 8154:         mem_base = xmlMemBlocks();
 8155: 
 8156:         ret_val = xmlDictCreate();
 8157:         desret_xmlDictPtr(ret_val);
 8158:         call_tests++;
 8159:         xmlResetLastError();
 8160:         if (mem_base != xmlMemBlocks()) {
 8161:             printf("Leak of %d blocks found in xmlDictCreate",
 8162: 	           xmlMemBlocks() - mem_base);
 8163: 	    test_ret++;
 8164:             printf("\n");
 8165:         }
 8166:     function_tests++;
 8167: 
 8168:     return(test_ret);
 8169: }
 8170: 
 8171: 
 8172: static int
 8173: test_xmlDictCreateSub(void) {
 8174:     int test_ret = 0;
 8175: 
 8176:     int mem_base;
 8177:     xmlDictPtr ret_val;
 8178:     xmlDictPtr sub; /* an existing dictionnary */
 8179:     int n_sub;
 8180: 
 8181:     for (n_sub = 0;n_sub < gen_nb_xmlDictPtr;n_sub++) {
 8182:         mem_base = xmlMemBlocks();
 8183:         sub = gen_xmlDictPtr(n_sub, 0);
 8184: 
 8185:         ret_val = xmlDictCreateSub(sub);
 8186:         desret_xmlDictPtr(ret_val);
 8187:         call_tests++;
 8188:         des_xmlDictPtr(n_sub, sub, 0);
 8189:         xmlResetLastError();
 8190:         if (mem_base != xmlMemBlocks()) {
 8191:             printf("Leak of %d blocks found in xmlDictCreateSub",
 8192: 	           xmlMemBlocks() - mem_base);
 8193: 	    test_ret++;
 8194:             printf(" %d", n_sub);
 8195:             printf("\n");
 8196:         }
 8197:     }
 8198:     function_tests++;
 8199: 
 8200:     return(test_ret);
 8201: }
 8202: 
 8203: 
 8204: static int
 8205: test_xmlDictExists(void) {
 8206:     int test_ret = 0;
 8207: 
 8208:     int mem_base;
 8209:     const xmlChar * ret_val;
 8210:     xmlDictPtr dict; /* the dictionnary */
 8211:     int n_dict;
 8212:     xmlChar * name; /* the name of the userdata */
 8213:     int n_name;
 8214:     int len; /* the length of the name, if -1 it is recomputed */
 8215:     int n_len;
 8216: 
 8217:     for (n_dict = 0;n_dict < gen_nb_xmlDictPtr;n_dict++) {
 8218:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 8219:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
 8220:         mem_base = xmlMemBlocks();
 8221:         dict = gen_xmlDictPtr(n_dict, 0);
 8222:         name = gen_const_xmlChar_ptr(n_name, 1);
 8223:         len = gen_int(n_len, 2);
 8224: 
 8225:         ret_val = xmlDictExists(dict, (const xmlChar *)name, len);
 8226:         desret_const_xmlChar_ptr(ret_val);
 8227:         call_tests++;
 8228:         des_xmlDictPtr(n_dict, dict, 0);
 8229:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 8230:         des_int(n_len, len, 2);
 8231:         xmlResetLastError();
 8232:         if (mem_base != xmlMemBlocks()) {
 8233:             printf("Leak of %d blocks found in xmlDictExists",
 8234: 	           xmlMemBlocks() - mem_base);
 8235: 	    test_ret++;
 8236:             printf(" %d", n_dict);
 8237:             printf(" %d", n_name);
 8238:             printf(" %d", n_len);
 8239:             printf("\n");
 8240:         }
 8241:     }
 8242:     }
 8243:     }
 8244:     function_tests++;
 8245: 
 8246:     return(test_ret);
 8247: }
 8248: 
 8249: 
 8250: static int
 8251: test_xmlDictGetUsage(void) {
 8252:     int test_ret = 0;
 8253: 
 8254: 
 8255:     /* missing type support */
 8256:     return(test_ret);
 8257: }
 8258: 
 8259: 
 8260: static int
 8261: test_xmlDictLookup(void) {
 8262:     int test_ret = 0;
 8263: 
 8264:     int mem_base;
 8265:     const xmlChar * ret_val;
 8266:     xmlDictPtr dict; /* the dictionnary */
 8267:     int n_dict;
 8268:     xmlChar * name; /* the name of the userdata */
 8269:     int n_name;
 8270:     int len; /* the length of the name, if -1 it is recomputed */
 8271:     int n_len;
 8272: 
 8273:     for (n_dict = 0;n_dict < gen_nb_xmlDictPtr;n_dict++) {
 8274:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 8275:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
 8276:         mem_base = xmlMemBlocks();
 8277:         dict = gen_xmlDictPtr(n_dict, 0);
 8278:         name = gen_const_xmlChar_ptr(n_name, 1);
 8279:         len = gen_int(n_len, 2);
 8280: 
 8281:         ret_val = xmlDictLookup(dict, (const xmlChar *)name, len);
 8282:         desret_const_xmlChar_ptr(ret_val);
 8283:         call_tests++;
 8284:         des_xmlDictPtr(n_dict, dict, 0);
 8285:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 8286:         des_int(n_len, len, 2);
 8287:         xmlResetLastError();
 8288:         if (mem_base != xmlMemBlocks()) {
 8289:             printf("Leak of %d blocks found in xmlDictLookup",
 8290: 	           xmlMemBlocks() - mem_base);
 8291: 	    test_ret++;
 8292:             printf(" %d", n_dict);
 8293:             printf(" %d", n_name);
 8294:             printf(" %d", n_len);
 8295:             printf("\n");
 8296:         }
 8297:     }
 8298:     }
 8299:     }
 8300:     function_tests++;
 8301: 
 8302:     return(test_ret);
 8303: }
 8304: 
 8305: 
 8306: static int
 8307: test_xmlDictOwns(void) {
 8308:     int test_ret = 0;
 8309: 
 8310:     int mem_base;
 8311:     int ret_val;
 8312:     xmlDictPtr dict; /* the dictionnary */
 8313:     int n_dict;
 8314:     xmlChar * str; /* the string */
 8315:     int n_str;
 8316: 
 8317:     for (n_dict = 0;n_dict < gen_nb_xmlDictPtr;n_dict++) {
 8318:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
 8319:         mem_base = xmlMemBlocks();
 8320:         dict = gen_xmlDictPtr(n_dict, 0);
 8321:         str = gen_const_xmlChar_ptr(n_str, 1);
 8322: 
 8323:         ret_val = xmlDictOwns(dict, (const xmlChar *)str);
 8324:         desret_int(ret_val);
 8325:         call_tests++;
 8326:         des_xmlDictPtr(n_dict, dict, 0);
 8327:         des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 1);
 8328:         xmlResetLastError();
 8329:         if (mem_base != xmlMemBlocks()) {
 8330:             printf("Leak of %d blocks found in xmlDictOwns",
 8331: 	           xmlMemBlocks() - mem_base);
 8332: 	    test_ret++;
 8333:             printf(" %d", n_dict);
 8334:             printf(" %d", n_str);
 8335:             printf("\n");
 8336:         }
 8337:     }
 8338:     }
 8339:     function_tests++;
 8340: 
 8341:     return(test_ret);
 8342: }
 8343: 
 8344: 
 8345: static int
 8346: test_xmlDictQLookup(void) {
 8347:     int test_ret = 0;
 8348: 
 8349:     int mem_base;
 8350:     const xmlChar * ret_val;
 8351:     xmlDictPtr dict; /* the dictionnary */
 8352:     int n_dict;
 8353:     xmlChar * prefix; /* the prefix */
 8354:     int n_prefix;
 8355:     xmlChar * name; /* the name */
 8356:     int n_name;
 8357: 
 8358:     for (n_dict = 0;n_dict < gen_nb_xmlDictPtr;n_dict++) {
 8359:     for (n_prefix = 0;n_prefix < gen_nb_const_xmlChar_ptr;n_prefix++) {
 8360:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 8361:         mem_base = xmlMemBlocks();
 8362:         dict = gen_xmlDictPtr(n_dict, 0);
 8363:         prefix = gen_const_xmlChar_ptr(n_prefix, 1);
 8364:         name = gen_const_xmlChar_ptr(n_name, 2);
 8365: 
 8366:         ret_val = xmlDictQLookup(dict, (const xmlChar *)prefix, (const xmlChar *)name);
 8367:         desret_const_xmlChar_ptr(ret_val);
 8368:         call_tests++;
 8369:         des_xmlDictPtr(n_dict, dict, 0);
 8370:         des_const_xmlChar_ptr(n_prefix, (const xmlChar *)prefix, 1);
 8371:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
 8372:         xmlResetLastError();
 8373:         if (mem_base != xmlMemBlocks()) {
 8374:             printf("Leak of %d blocks found in xmlDictQLookup",
 8375: 	           xmlMemBlocks() - mem_base);
 8376: 	    test_ret++;
 8377:             printf(" %d", n_dict);
 8378:             printf(" %d", n_prefix);
 8379:             printf(" %d", n_name);
 8380:             printf("\n");
 8381:         }
 8382:     }
 8383:     }
 8384:     }
 8385:     function_tests++;
 8386: 
 8387:     return(test_ret);
 8388: }
 8389: 
 8390: 
 8391: static int
 8392: test_xmlDictReference(void) {
 8393:     int test_ret = 0;
 8394: 
 8395:     int mem_base;
 8396:     int ret_val;
 8397:     xmlDictPtr dict; /* the dictionnary */
 8398:     int n_dict;
 8399: 
 8400:     for (n_dict = 0;n_dict < gen_nb_xmlDictPtr;n_dict++) {
 8401:         mem_base = xmlMemBlocks();
 8402:         dict = gen_xmlDictPtr(n_dict, 0);
 8403: 
 8404:         ret_val = xmlDictReference(dict);
 8405:         xmlDictFree(dict);
 8406:         desret_int(ret_val);
 8407:         call_tests++;
 8408:         des_xmlDictPtr(n_dict, dict, 0);
 8409:         xmlResetLastError();
 8410:         if (mem_base != xmlMemBlocks()) {
 8411:             printf("Leak of %d blocks found in xmlDictReference",
 8412: 	           xmlMemBlocks() - mem_base);
 8413: 	    test_ret++;
 8414:             printf(" %d", n_dict);
 8415:             printf("\n");
 8416:         }
 8417:     }
 8418:     function_tests++;
 8419: 
 8420:     return(test_ret);
 8421: }
 8422: 
 8423: 
 8424: static int
 8425: test_xmlDictSetLimit(void) {
 8426:     int test_ret = 0;
 8427: 
 8428: 
 8429:     /* missing type support */
 8430:     return(test_ret);
 8431: }
 8432: 
 8433: 
 8434: static int
 8435: test_xmlDictSize(void) {
 8436:     int test_ret = 0;
 8437: 
 8438:     int mem_base;
 8439:     int ret_val;
 8440:     xmlDictPtr dict; /* the dictionnary */
 8441:     int n_dict;
 8442: 
 8443:     for (n_dict = 0;n_dict < gen_nb_xmlDictPtr;n_dict++) {
 8444:         mem_base = xmlMemBlocks();
 8445:         dict = gen_xmlDictPtr(n_dict, 0);
 8446: 
 8447:         ret_val = xmlDictSize(dict);
 8448:         desret_int(ret_val);
 8449:         call_tests++;
 8450:         des_xmlDictPtr(n_dict, dict, 0);
 8451:         xmlResetLastError();
 8452:         if (mem_base != xmlMemBlocks()) {
 8453:             printf("Leak of %d blocks found in xmlDictSize",
 8454: 	           xmlMemBlocks() - mem_base);
 8455: 	    test_ret++;
 8456:             printf(" %d", n_dict);
 8457:             printf("\n");
 8458:         }
 8459:     }
 8460:     function_tests++;
 8461: 
 8462:     return(test_ret);
 8463: }
 8464: 
 8465: 
 8466: static int
 8467: test_xmlInitializeDict(void) {
 8468:     int test_ret = 0;
 8469: 
 8470:     int mem_base;
 8471:     int ret_val;
 8472: 
 8473:         mem_base = xmlMemBlocks();
 8474: 
 8475:         ret_val = xmlInitializeDict();
 8476:         desret_int(ret_val);
 8477:         call_tests++;
 8478:         xmlResetLastError();
 8479:         if (mem_base != xmlMemBlocks()) {
 8480:             printf("Leak of %d blocks found in xmlInitializeDict",
 8481: 	           xmlMemBlocks() - mem_base);
 8482: 	    test_ret++;
 8483:             printf("\n");
 8484:         }
 8485:     function_tests++;
 8486: 
 8487:     return(test_ret);
 8488: }
 8489: 
 8490: static int
 8491: test_dict(void) {
 8492:     int test_ret = 0;
 8493: 
 8494:     if (quiet == 0) printf("Testing dict : 10 of 13 functions ...\n");
 8495:     test_ret += test_xmlDictCleanup();
 8496:     test_ret += test_xmlDictCreate();
 8497:     test_ret += test_xmlDictCreateSub();
 8498:     test_ret += test_xmlDictExists();
 8499:     test_ret += test_xmlDictGetUsage();
 8500:     test_ret += test_xmlDictLookup();
 8501:     test_ret += test_xmlDictOwns();
 8502:     test_ret += test_xmlDictQLookup();
 8503:     test_ret += test_xmlDictReference();
 8504:     test_ret += test_xmlDictSetLimit();
 8505:     test_ret += test_xmlDictSize();
 8506:     test_ret += test_xmlInitializeDict();
 8507: 
 8508:     if (test_ret != 0)
 8509: 	printf("Module dict: %d errors\n", test_ret);
 8510:     return(test_ret);
 8511: }
 8512: 
 8513: static int
 8514: test_UTF8Toisolat1(void) {
 8515:     int test_ret = 0;
 8516: 
 8517: #if defined(LIBXML_OUTPUT_ENABLED)
 8518: #ifdef LIBXML_OUTPUT_ENABLED
 8519:     int mem_base;
 8520:     int ret_val;
 8521:     unsigned char * out; /* a pointer to an array of bytes to store the result */
 8522:     int n_out;
 8523:     int * outlen; /* the length of @out */
 8524:     int n_outlen;
 8525:     unsigned char * in; /* a pointer to an array of UTF-8 chars */
 8526:     int n_in;
 8527:     int * inlen; /* the length of @in */
 8528:     int n_inlen;
 8529: 
 8530:     for (n_out = 0;n_out < gen_nb_unsigned_char_ptr;n_out++) {
 8531:     for (n_outlen = 0;n_outlen < gen_nb_int_ptr;n_outlen++) {
 8532:     for (n_in = 0;n_in < gen_nb_const_unsigned_char_ptr;n_in++) {
 8533:     for (n_inlen = 0;n_inlen < gen_nb_int_ptr;n_inlen++) {
 8534:         mem_base = xmlMemBlocks();
 8535:         out = gen_unsigned_char_ptr(n_out, 0);
 8536:         outlen = gen_int_ptr(n_outlen, 1);
 8537:         in = gen_const_unsigned_char_ptr(n_in, 2);
 8538:         inlen = gen_int_ptr(n_inlen, 3);
 8539: 
 8540:         ret_val = UTF8Toisolat1(out, outlen, (const unsigned char *)in, inlen);
 8541:         desret_int(ret_val);
 8542:         call_tests++;
 8543:         des_unsigned_char_ptr(n_out, out, 0);
 8544:         des_int_ptr(n_outlen, outlen, 1);
 8545:         des_const_unsigned_char_ptr(n_in, (const unsigned char *)in, 2);
 8546:         des_int_ptr(n_inlen, inlen, 3);
 8547:         xmlResetLastError();
 8548:         if (mem_base != xmlMemBlocks()) {
 8549:             printf("Leak of %d blocks found in UTF8Toisolat1",
 8550: 	           xmlMemBlocks() - mem_base);
 8551: 	    test_ret++;
 8552:             printf(" %d", n_out);
 8553:             printf(" %d", n_outlen);
 8554:             printf(" %d", n_in);
 8555:             printf(" %d", n_inlen);
 8556:             printf("\n");
 8557:         }
 8558:     }
 8559:     }
 8560:     }
 8561:     }
 8562:     function_tests++;
 8563: #endif
 8564: #endif
 8565: 
 8566:     return(test_ret);
 8567: }
 8568: 
 8569: 
 8570: static int
 8571: test_isolat1ToUTF8(void) {
 8572:     int test_ret = 0;
 8573: 
 8574:     int mem_base;
 8575:     int ret_val;
 8576:     unsigned char * out; /* a pointer to an array of bytes to store the result */
 8577:     int n_out;
 8578:     int * outlen; /* the length of @out */
 8579:     int n_outlen;
 8580:     unsigned char * in; /* a pointer to an array of ISO Latin 1 chars */
 8581:     int n_in;
 8582:     int * inlen; /* the length of @in */
 8583:     int n_inlen;
 8584: 
 8585:     for (n_out = 0;n_out < gen_nb_unsigned_char_ptr;n_out++) {
 8586:     for (n_outlen = 0;n_outlen < gen_nb_int_ptr;n_outlen++) {
 8587:     for (n_in = 0;n_in < gen_nb_const_unsigned_char_ptr;n_in++) {
 8588:     for (n_inlen = 0;n_inlen < gen_nb_int_ptr;n_inlen++) {
 8589:         mem_base = xmlMemBlocks();
 8590:         out = gen_unsigned_char_ptr(n_out, 0);
 8591:         outlen = gen_int_ptr(n_outlen, 1);
 8592:         in = gen_const_unsigned_char_ptr(n_in, 2);
 8593:         inlen = gen_int_ptr(n_inlen, 3);
 8594: 
 8595:         ret_val = isolat1ToUTF8(out, outlen, (const unsigned char *)in, inlen);
 8596:         desret_int(ret_val);
 8597:         call_tests++;
 8598:         des_unsigned_char_ptr(n_out, out, 0);
 8599:         des_int_ptr(n_outlen, outlen, 1);
 8600:         des_const_unsigned_char_ptr(n_in, (const unsigned char *)in, 2);
 8601:         des_int_ptr(n_inlen, inlen, 3);
 8602:         xmlResetLastError();
 8603:         if (mem_base != xmlMemBlocks()) {
 8604:             printf("Leak of %d blocks found in isolat1ToUTF8",
 8605: 	           xmlMemBlocks() - mem_base);
 8606: 	    test_ret++;
 8607:             printf(" %d", n_out);
 8608:             printf(" %d", n_outlen);
 8609:             printf(" %d", n_in);
 8610:             printf(" %d", n_inlen);
 8611:             printf("\n");
 8612:         }
 8613:     }
 8614:     }
 8615:     }
 8616:     }
 8617:     function_tests++;
 8618: 
 8619:     return(test_ret);
 8620: }
 8621: 
 8622: 
 8623: static int
 8624: test_xmlAddEncodingAlias(void) {
 8625:     int test_ret = 0;
 8626: 
 8627:     int ret_val;
 8628:     char * name; /* the encoding name as parsed, in UTF-8 format (ASCII actually) */
 8629:     int n_name;
 8630:     char * alias; /* the alias name as parsed, in UTF-8 format (ASCII actually) */
 8631:     int n_alias;
 8632: 
 8633:     for (n_name = 0;n_name < gen_nb_const_char_ptr;n_name++) {
 8634:     for (n_alias = 0;n_alias < gen_nb_const_char_ptr;n_alias++) {
 8635:         name = gen_const_char_ptr(n_name, 0);
 8636:         alias = gen_const_char_ptr(n_alias, 1);
 8637: 
 8638:         ret_val = xmlAddEncodingAlias((const char *)name, (const char *)alias);
 8639:         desret_int(ret_val);
 8640:         call_tests++;
 8641:         des_const_char_ptr(n_name, (const char *)name, 0);
 8642:         des_const_char_ptr(n_alias, (const char *)alias, 1);
 8643:         xmlResetLastError();
 8644:     }
 8645:     }
 8646:     function_tests++;
 8647: 
 8648:     return(test_ret);
 8649: }
 8650: 
 8651: 
 8652: #define gen_nb_xmlCharEncodingHandler_ptr 1
 8653: static xmlCharEncodingHandler * gen_xmlCharEncodingHandler_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 8654:     return(NULL);
 8655: }
 8656: static void des_xmlCharEncodingHandler_ptr(int no ATTRIBUTE_UNUSED, xmlCharEncodingHandler * val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 8657: }
 8658: 
 8659: static int
 8660: test_xmlCharEncCloseFunc(void) {
 8661:     int test_ret = 0;
 8662: 
 8663:     int mem_base;
 8664:     int ret_val;
 8665:     xmlCharEncodingHandler * handler; /* char enconding transformation data structure */
 8666:     int n_handler;
 8667: 
 8668:     for (n_handler = 0;n_handler < gen_nb_xmlCharEncodingHandler_ptr;n_handler++) {
 8669:         mem_base = xmlMemBlocks();
 8670:         handler = gen_xmlCharEncodingHandler_ptr(n_handler, 0);
 8671: 
 8672:         ret_val = xmlCharEncCloseFunc(handler);
 8673:         desret_int(ret_val);
 8674:         call_tests++;
 8675:         des_xmlCharEncodingHandler_ptr(n_handler, handler, 0);
 8676:         xmlResetLastError();
 8677:         if (mem_base != xmlMemBlocks()) {
 8678:             printf("Leak of %d blocks found in xmlCharEncCloseFunc",
 8679: 	           xmlMemBlocks() - mem_base);
 8680: 	    test_ret++;
 8681:             printf(" %d", n_handler);
 8682:             printf("\n");
 8683:         }
 8684:     }
 8685:     function_tests++;
 8686: 
 8687:     return(test_ret);
 8688: }
 8689: 
 8690: 
 8691: static int
 8692: test_xmlCharEncFirstLine(void) {
 8693:     int test_ret = 0;
 8694: 
 8695:     int mem_base;
 8696:     int ret_val;
 8697:     xmlCharEncodingHandler * handler; /* char enconding transformation data structure */
 8698:     int n_handler;
 8699:     xmlBufferPtr out; /* an xmlBuffer for the output. */
 8700:     int n_out;
 8701:     xmlBufferPtr in; /* an xmlBuffer for the input */
 8702:     int n_in;
 8703: 
 8704:     for (n_handler = 0;n_handler < gen_nb_xmlCharEncodingHandler_ptr;n_handler++) {
 8705:     for (n_out = 0;n_out < gen_nb_xmlBufferPtr;n_out++) {
 8706:     for (n_in = 0;n_in < gen_nb_xmlBufferPtr;n_in++) {
 8707:         mem_base = xmlMemBlocks();
 8708:         handler = gen_xmlCharEncodingHandler_ptr(n_handler, 0);
 8709:         out = gen_xmlBufferPtr(n_out, 1);
 8710:         in = gen_xmlBufferPtr(n_in, 2);
 8711: 
 8712:         ret_val = xmlCharEncFirstLine(handler, out, in);
 8713:         desret_int(ret_val);
 8714:         call_tests++;
 8715:         des_xmlCharEncodingHandler_ptr(n_handler, handler, 0);
 8716:         des_xmlBufferPtr(n_out, out, 1);
 8717:         des_xmlBufferPtr(n_in, in, 2);
 8718:         xmlResetLastError();
 8719:         if (mem_base != xmlMemBlocks()) {
 8720:             printf("Leak of %d blocks found in xmlCharEncFirstLine",
 8721: 	           xmlMemBlocks() - mem_base);
 8722: 	    test_ret++;
 8723:             printf(" %d", n_handler);
 8724:             printf(" %d", n_out);
 8725:             printf(" %d", n_in);
 8726:             printf("\n");
 8727:         }
 8728:     }
 8729:     }
 8730:     }
 8731:     function_tests++;
 8732: 
 8733:     return(test_ret);
 8734: }
 8735: 
 8736: 
 8737: static int
 8738: test_xmlCharEncInFunc(void) {
 8739:     int test_ret = 0;
 8740: 
 8741:     int mem_base;
 8742:     int ret_val;
 8743:     xmlCharEncodingHandler * handler; /* char encoding transformation data structure */
 8744:     int n_handler;
 8745:     xmlBufferPtr out; /* an xmlBuffer for the output. */
 8746:     int n_out;
 8747:     xmlBufferPtr in; /* an xmlBuffer for the input */
 8748:     int n_in;
 8749: 
 8750:     for (n_handler = 0;n_handler < gen_nb_xmlCharEncodingHandler_ptr;n_handler++) {
 8751:     for (n_out = 0;n_out < gen_nb_xmlBufferPtr;n_out++) {
 8752:     for (n_in = 0;n_in < gen_nb_xmlBufferPtr;n_in++) {
 8753:         mem_base = xmlMemBlocks();
 8754:         handler = gen_xmlCharEncodingHandler_ptr(n_handler, 0);
 8755:         out = gen_xmlBufferPtr(n_out, 1);
 8756:         in = gen_xmlBufferPtr(n_in, 2);
 8757: 
 8758:         ret_val = xmlCharEncInFunc(handler, out, in);
 8759:         desret_int(ret_val);
 8760:         call_tests++;
 8761:         des_xmlCharEncodingHandler_ptr(n_handler, handler, 0);
 8762:         des_xmlBufferPtr(n_out, out, 1);
 8763:         des_xmlBufferPtr(n_in, in, 2);
 8764:         xmlResetLastError();
 8765:         if (mem_base != xmlMemBlocks()) {
 8766:             printf("Leak of %d blocks found in xmlCharEncInFunc",
 8767: 	           xmlMemBlocks() - mem_base);
 8768: 	    test_ret++;
 8769:             printf(" %d", n_handler);
 8770:             printf(" %d", n_out);
 8771:             printf(" %d", n_in);
 8772:             printf("\n");
 8773:         }
 8774:     }
 8775:     }
 8776:     }
 8777:     function_tests++;
 8778: 
 8779:     return(test_ret);
 8780: }
 8781: 
 8782: 
 8783: static int
 8784: test_xmlCharEncOutFunc(void) {
 8785:     int test_ret = 0;
 8786: 
 8787:     int mem_base;
 8788:     int ret_val;
 8789:     xmlCharEncodingHandler * handler; /* char enconding transformation data structure */
 8790:     int n_handler;
 8791:     xmlBufferPtr out; /* an xmlBuffer for the output. */
 8792:     int n_out;
 8793:     xmlBufferPtr in; /* an xmlBuffer for the input */
 8794:     int n_in;
 8795: 
 8796:     for (n_handler = 0;n_handler < gen_nb_xmlCharEncodingHandler_ptr;n_handler++) {
 8797:     for (n_out = 0;n_out < gen_nb_xmlBufferPtr;n_out++) {
 8798:     for (n_in = 0;n_in < gen_nb_xmlBufferPtr;n_in++) {
 8799:         mem_base = xmlMemBlocks();
 8800:         handler = gen_xmlCharEncodingHandler_ptr(n_handler, 0);
 8801:         out = gen_xmlBufferPtr(n_out, 1);
 8802:         in = gen_xmlBufferPtr(n_in, 2);
 8803: 
 8804:         ret_val = xmlCharEncOutFunc(handler, out, in);
 8805:         desret_int(ret_val);
 8806:         call_tests++;
 8807:         des_xmlCharEncodingHandler_ptr(n_handler, handler, 0);
 8808:         des_xmlBufferPtr(n_out, out, 1);
 8809:         des_xmlBufferPtr(n_in, in, 2);
 8810:         xmlResetLastError();
 8811:         if (mem_base != xmlMemBlocks()) {
 8812:             printf("Leak of %d blocks found in xmlCharEncOutFunc",
 8813: 	           xmlMemBlocks() - mem_base);
 8814: 	    test_ret++;
 8815:             printf(" %d", n_handler);
 8816:             printf(" %d", n_out);
 8817:             printf(" %d", n_in);
 8818:             printf("\n");
 8819:         }
 8820:     }
 8821:     }
 8822:     }
 8823:     function_tests++;
 8824: 
 8825:     return(test_ret);
 8826: }
 8827: 
 8828: 
 8829: static int
 8830: test_xmlCleanupCharEncodingHandlers(void) {
 8831:     int test_ret = 0;
 8832: 
 8833: 
 8834: 
 8835:         xmlCleanupCharEncodingHandlers();
 8836:         call_tests++;
 8837:         xmlResetLastError();
 8838:     function_tests++;
 8839: 
 8840:     return(test_ret);
 8841: }
 8842: 
 8843: 
 8844: static int
 8845: test_xmlCleanupEncodingAliases(void) {
 8846:     int test_ret = 0;
 8847: 
 8848:     int mem_base;
 8849: 
 8850:         mem_base = xmlMemBlocks();
 8851: 
 8852:         xmlCleanupEncodingAliases();
 8853:         call_tests++;
 8854:         xmlResetLastError();
 8855:         if (mem_base != xmlMemBlocks()) {
 8856:             printf("Leak of %d blocks found in xmlCleanupEncodingAliases",
 8857: 	           xmlMemBlocks() - mem_base);
 8858: 	    test_ret++;
 8859:             printf("\n");
 8860:         }
 8861:     function_tests++;
 8862: 
 8863:     return(test_ret);
 8864: }
 8865: 
 8866: 
 8867: static int
 8868: test_xmlDelEncodingAlias(void) {
 8869:     int test_ret = 0;
 8870: 
 8871:     int mem_base;
 8872:     int ret_val;
 8873:     char * alias; /* the alias name as parsed, in UTF-8 format (ASCII actually) */
 8874:     int n_alias;
 8875: 
 8876:     for (n_alias = 0;n_alias < gen_nb_const_char_ptr;n_alias++) {
 8877:         mem_base = xmlMemBlocks();
 8878:         alias = gen_const_char_ptr(n_alias, 0);
 8879: 
 8880:         ret_val = xmlDelEncodingAlias((const char *)alias);
 8881:         desret_int(ret_val);
 8882:         call_tests++;
 8883:         des_const_char_ptr(n_alias, (const char *)alias, 0);
 8884:         xmlResetLastError();
 8885:         if (mem_base != xmlMemBlocks()) {
 8886:             printf("Leak of %d blocks found in xmlDelEncodingAlias",
 8887: 	           xmlMemBlocks() - mem_base);
 8888: 	    test_ret++;
 8889:             printf(" %d", n_alias);
 8890:             printf("\n");
 8891:         }
 8892:     }
 8893:     function_tests++;
 8894: 
 8895:     return(test_ret);
 8896: }
 8897: 
 8898: 
 8899: static int
 8900: test_xmlDetectCharEncoding(void) {
 8901:     int test_ret = 0;
 8902: 
 8903:     int mem_base;
 8904:     xmlCharEncoding ret_val;
 8905:     unsigned char * in; /* a pointer to the first bytes of the XML entity, must be at least 2 bytes long (at least 4 if encoding is UTF4 variant). */
 8906:     int n_in;
 8907:     int len; /* pointer to the length of the buffer */
 8908:     int n_len;
 8909: 
 8910:     for (n_in = 0;n_in < gen_nb_const_unsigned_char_ptr;n_in++) {
 8911:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
 8912:         mem_base = xmlMemBlocks();
 8913:         in = gen_const_unsigned_char_ptr(n_in, 0);
 8914:         len = gen_int(n_len, 1);
 8915: 
 8916:         ret_val = xmlDetectCharEncoding((const unsigned char *)in, len);
 8917:         desret_xmlCharEncoding(ret_val);
 8918:         call_tests++;
 8919:         des_const_unsigned_char_ptr(n_in, (const unsigned char *)in, 0);
 8920:         des_int(n_len, len, 1);
 8921:         xmlResetLastError();
 8922:         if (mem_base != xmlMemBlocks()) {
 8923:             printf("Leak of %d blocks found in xmlDetectCharEncoding",
 8924: 	           xmlMemBlocks() - mem_base);
 8925: 	    test_ret++;
 8926:             printf(" %d", n_in);
 8927:             printf(" %d", n_len);
 8928:             printf("\n");
 8929:         }
 8930:     }
 8931:     }
 8932:     function_tests++;
 8933: 
 8934:     return(test_ret);
 8935: }
 8936: 
 8937: 
 8938: static int
 8939: test_xmlFindCharEncodingHandler(void) {
 8940:     int test_ret = 0;
 8941: 
 8942: 
 8943:     /* missing type support */
 8944:     return(test_ret);
 8945: }
 8946: 
 8947: 
 8948: static int
 8949: test_xmlGetCharEncodingHandler(void) {
 8950:     int test_ret = 0;
 8951: 
 8952: 
 8953:     /* missing type support */
 8954:     return(test_ret);
 8955: }
 8956: 
 8957: 
 8958: static int
 8959: test_xmlGetCharEncodingName(void) {
 8960:     int test_ret = 0;
 8961: 
 8962:     int mem_base;
 8963:     const char * ret_val;
 8964:     xmlCharEncoding enc; /* the encoding */
 8965:     int n_enc;
 8966: 
 8967:     for (n_enc = 0;n_enc < gen_nb_xmlCharEncoding;n_enc++) {
 8968:         mem_base = xmlMemBlocks();
 8969:         enc = gen_xmlCharEncoding(n_enc, 0);
 8970: 
 8971:         ret_val = xmlGetCharEncodingName(enc);
 8972:         desret_const_char_ptr(ret_val);
 8973:         call_tests++;
 8974:         des_xmlCharEncoding(n_enc, enc, 0);
 8975:         xmlResetLastError();
 8976:         if (mem_base != xmlMemBlocks()) {
 8977:             printf("Leak of %d blocks found in xmlGetCharEncodingName",
 8978: 	           xmlMemBlocks() - mem_base);
 8979: 	    test_ret++;
 8980:             printf(" %d", n_enc);
 8981:             printf("\n");
 8982:         }
 8983:     }
 8984:     function_tests++;
 8985: 
 8986:     return(test_ret);
 8987: }
 8988: 
 8989: 
 8990: static int
 8991: test_xmlGetEncodingAlias(void) {
 8992:     int test_ret = 0;
 8993: 
 8994:     int mem_base;
 8995:     const char * ret_val;
 8996:     char * alias; /* the alias name as parsed, in UTF-8 format (ASCII actually) */
 8997:     int n_alias;
 8998: 
 8999:     for (n_alias = 0;n_alias < gen_nb_const_char_ptr;n_alias++) {
 9000:         mem_base = xmlMemBlocks();
 9001:         alias = gen_const_char_ptr(n_alias, 0);
 9002: 
 9003:         ret_val = xmlGetEncodingAlias((const char *)alias);
 9004:         desret_const_char_ptr(ret_val);
 9005:         call_tests++;
 9006:         des_const_char_ptr(n_alias, (const char *)alias, 0);
 9007:         xmlResetLastError();
 9008:         if (mem_base != xmlMemBlocks()) {
 9009:             printf("Leak of %d blocks found in xmlGetEncodingAlias",
 9010: 	           xmlMemBlocks() - mem_base);
 9011: 	    test_ret++;
 9012:             printf(" %d", n_alias);
 9013:             printf("\n");
 9014:         }
 9015:     }
 9016:     function_tests++;
 9017: 
 9018:     return(test_ret);
 9019: }
 9020: 
 9021: 
 9022: static int
 9023: test_xmlInitCharEncodingHandlers(void) {
 9024:     int test_ret = 0;
 9025: 
 9026: 
 9027: 
 9028:         xmlInitCharEncodingHandlers();
 9029:         call_tests++;
 9030:         xmlResetLastError();
 9031:     function_tests++;
 9032: 
 9033:     return(test_ret);
 9034: }
 9035: 
 9036: 
 9037: static int
 9038: test_xmlNewCharEncodingHandler(void) {
 9039:     int test_ret = 0;
 9040: 
 9041: 
 9042:     /* missing type support */
 9043:     return(test_ret);
 9044: }
 9045: 
 9046: 
 9047: static int
 9048: test_xmlParseCharEncoding(void) {
 9049:     int test_ret = 0;
 9050: 
 9051:     int mem_base;
 9052:     xmlCharEncoding ret_val;
 9053:     char * name; /* the encoding name as parsed, in UTF-8 format (ASCII actually) */
 9054:     int n_name;
 9055: 
 9056:     for (n_name = 0;n_name < gen_nb_const_char_ptr;n_name++) {
 9057:         mem_base = xmlMemBlocks();
 9058:         name = gen_const_char_ptr(n_name, 0);
 9059: 
 9060:         ret_val = xmlParseCharEncoding((const char *)name);
 9061:         desret_xmlCharEncoding(ret_val);
 9062:         call_tests++;
 9063:         des_const_char_ptr(n_name, (const char *)name, 0);
 9064:         xmlResetLastError();
 9065:         if (mem_base != xmlMemBlocks()) {
 9066:             printf("Leak of %d blocks found in xmlParseCharEncoding",
 9067: 	           xmlMemBlocks() - mem_base);
 9068: 	    test_ret++;
 9069:             printf(" %d", n_name);
 9070:             printf("\n");
 9071:         }
 9072:     }
 9073:     function_tests++;
 9074: 
 9075:     return(test_ret);
 9076: }
 9077: 
 9078: 
 9079: #define gen_nb_xmlCharEncodingHandlerPtr 1
 9080: static xmlCharEncodingHandlerPtr gen_xmlCharEncodingHandlerPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 9081:     return(NULL);
 9082: }
 9083: static void des_xmlCharEncodingHandlerPtr(int no ATTRIBUTE_UNUSED, xmlCharEncodingHandlerPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 9084: }
 9085: 
 9086: static int
 9087: test_xmlRegisterCharEncodingHandler(void) {
 9088:     int test_ret = 0;
 9089: 
 9090:     int mem_base;
 9091:     xmlCharEncodingHandlerPtr handler; /* the xmlCharEncodingHandlerPtr handler block */
 9092:     int n_handler;
 9093: 
 9094:     for (n_handler = 0;n_handler < gen_nb_xmlCharEncodingHandlerPtr;n_handler++) {
 9095:         mem_base = xmlMemBlocks();
 9096:         handler = gen_xmlCharEncodingHandlerPtr(n_handler, 0);
 9097: 
 9098:         xmlRegisterCharEncodingHandler(handler);
 9099:         call_tests++;
 9100:         des_xmlCharEncodingHandlerPtr(n_handler, handler, 0);
 9101:         xmlResetLastError();
 9102:         if (mem_base != xmlMemBlocks()) {
 9103:             printf("Leak of %d blocks found in xmlRegisterCharEncodingHandler",
 9104: 	           xmlMemBlocks() - mem_base);
 9105: 	    test_ret++;
 9106:             printf(" %d", n_handler);
 9107:             printf("\n");
 9108:         }
 9109:     }
 9110:     function_tests++;
 9111: 
 9112:     return(test_ret);
 9113: }
 9114: 
 9115: static int
 9116: test_encoding(void) {
 9117:     int test_ret = 0;
 9118: 
 9119:     if (quiet == 0) printf("Testing encoding : 16 of 19 functions ...\n");
 9120:     test_ret += test_UTF8Toisolat1();
 9121:     test_ret += test_isolat1ToUTF8();
 9122:     test_ret += test_xmlAddEncodingAlias();
 9123:     test_ret += test_xmlCharEncCloseFunc();
 9124:     test_ret += test_xmlCharEncFirstLine();
 9125:     test_ret += test_xmlCharEncInFunc();
 9126:     test_ret += test_xmlCharEncOutFunc();
 9127:     test_ret += test_xmlCleanupCharEncodingHandlers();
 9128:     test_ret += test_xmlCleanupEncodingAliases();
 9129:     test_ret += test_xmlDelEncodingAlias();
 9130:     test_ret += test_xmlDetectCharEncoding();
 9131:     test_ret += test_xmlFindCharEncodingHandler();
 9132:     test_ret += test_xmlGetCharEncodingHandler();
 9133:     test_ret += test_xmlGetCharEncodingName();
 9134:     test_ret += test_xmlGetEncodingAlias();
 9135:     test_ret += test_xmlInitCharEncodingHandlers();
 9136:     test_ret += test_xmlNewCharEncodingHandler();
 9137:     test_ret += test_xmlParseCharEncoding();
 9138:     test_ret += test_xmlRegisterCharEncodingHandler();
 9139: 
 9140:     if (test_ret != 0)
 9141: 	printf("Module encoding: %d errors\n", test_ret);
 9142:     return(test_ret);
 9143: }
 9144: 
 9145: static int
 9146: test_xmlAddDocEntity(void) {
 9147:     int test_ret = 0;
 9148: 
 9149:     int mem_base;
 9150:     xmlEntityPtr ret_val;
 9151:     xmlDocPtr doc; /* the document */
 9152:     int n_doc;
 9153:     xmlChar * name; /* the entity name */
 9154:     int n_name;
 9155:     int type; /* the entity type XML_xxx_yyy_ENTITY */
 9156:     int n_type;
 9157:     xmlChar * ExternalID; /* the entity external ID if available */
 9158:     int n_ExternalID;
 9159:     xmlChar * SystemID; /* the entity system ID if available */
 9160:     int n_SystemID;
 9161:     xmlChar * content; /* the entity content */
 9162:     int n_content;
 9163: 
 9164:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
 9165:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 9166:     for (n_type = 0;n_type < gen_nb_int;n_type++) {
 9167:     for (n_ExternalID = 0;n_ExternalID < gen_nb_const_xmlChar_ptr;n_ExternalID++) {
 9168:     for (n_SystemID = 0;n_SystemID < gen_nb_const_xmlChar_ptr;n_SystemID++) {
 9169:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
 9170:         mem_base = xmlMemBlocks();
 9171:         doc = gen_xmlDocPtr(n_doc, 0);
 9172:         name = gen_const_xmlChar_ptr(n_name, 1);
 9173:         type = gen_int(n_type, 2);
 9174:         ExternalID = gen_const_xmlChar_ptr(n_ExternalID, 3);
 9175:         SystemID = gen_const_xmlChar_ptr(n_SystemID, 4);
 9176:         content = gen_const_xmlChar_ptr(n_content, 5);
 9177: 
 9178:         ret_val = xmlAddDocEntity(doc, (const xmlChar *)name, type, (const xmlChar *)ExternalID, (const xmlChar *)SystemID, (const xmlChar *)content);
 9179:         desret_xmlEntityPtr(ret_val);
 9180:         call_tests++;
 9181:         des_xmlDocPtr(n_doc, doc, 0);
 9182:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 9183:         des_int(n_type, type, 2);
 9184:         des_const_xmlChar_ptr(n_ExternalID, (const xmlChar *)ExternalID, 3);
 9185:         des_const_xmlChar_ptr(n_SystemID, (const xmlChar *)SystemID, 4);
 9186:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 5);
 9187:         xmlResetLastError();
 9188:         if (mem_base != xmlMemBlocks()) {
 9189:             printf("Leak of %d blocks found in xmlAddDocEntity",
 9190: 	           xmlMemBlocks() - mem_base);
 9191: 	    test_ret++;
 9192:             printf(" %d", n_doc);
 9193:             printf(" %d", n_name);
 9194:             printf(" %d", n_type);
 9195:             printf(" %d", n_ExternalID);
 9196:             printf(" %d", n_SystemID);
 9197:             printf(" %d", n_content);
 9198:             printf("\n");
 9199:         }
 9200:     }
 9201:     }
 9202:     }
 9203:     }
 9204:     }
 9205:     }
 9206:     function_tests++;
 9207: 
 9208:     return(test_ret);
 9209: }
 9210: 
 9211: 
 9212: static int
 9213: test_xmlAddDtdEntity(void) {
 9214:     int test_ret = 0;
 9215: 
 9216:     int mem_base;
 9217:     xmlEntityPtr ret_val;
 9218:     xmlDocPtr doc; /* the document */
 9219:     int n_doc;
 9220:     xmlChar * name; /* the entity name */
 9221:     int n_name;
 9222:     int type; /* the entity type XML_xxx_yyy_ENTITY */
 9223:     int n_type;
 9224:     xmlChar * ExternalID; /* the entity external ID if available */
 9225:     int n_ExternalID;
 9226:     xmlChar * SystemID; /* the entity system ID if available */
 9227:     int n_SystemID;
 9228:     xmlChar * content; /* the entity content */
 9229:     int n_content;
 9230: 
 9231:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
 9232:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 9233:     for (n_type = 0;n_type < gen_nb_int;n_type++) {
 9234:     for (n_ExternalID = 0;n_ExternalID < gen_nb_const_xmlChar_ptr;n_ExternalID++) {
 9235:     for (n_SystemID = 0;n_SystemID < gen_nb_const_xmlChar_ptr;n_SystemID++) {
 9236:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
 9237:         mem_base = xmlMemBlocks();
 9238:         doc = gen_xmlDocPtr(n_doc, 0);
 9239:         name = gen_const_xmlChar_ptr(n_name, 1);
 9240:         type = gen_int(n_type, 2);
 9241:         ExternalID = gen_const_xmlChar_ptr(n_ExternalID, 3);
 9242:         SystemID = gen_const_xmlChar_ptr(n_SystemID, 4);
 9243:         content = gen_const_xmlChar_ptr(n_content, 5);
 9244: 
 9245:         ret_val = xmlAddDtdEntity(doc, (const xmlChar *)name, type, (const xmlChar *)ExternalID, (const xmlChar *)SystemID, (const xmlChar *)content);
 9246:         desret_xmlEntityPtr(ret_val);
 9247:         call_tests++;
 9248:         des_xmlDocPtr(n_doc, doc, 0);
 9249:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 9250:         des_int(n_type, type, 2);
 9251:         des_const_xmlChar_ptr(n_ExternalID, (const xmlChar *)ExternalID, 3);
 9252:         des_const_xmlChar_ptr(n_SystemID, (const xmlChar *)SystemID, 4);
 9253:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 5);
 9254:         xmlResetLastError();
 9255:         if (mem_base != xmlMemBlocks()) {
 9256:             printf("Leak of %d blocks found in xmlAddDtdEntity",
 9257: 	           xmlMemBlocks() - mem_base);
 9258: 	    test_ret++;
 9259:             printf(" %d", n_doc);
 9260:             printf(" %d", n_name);
 9261:             printf(" %d", n_type);
 9262:             printf(" %d", n_ExternalID);
 9263:             printf(" %d", n_SystemID);
 9264:             printf(" %d", n_content);
 9265:             printf("\n");
 9266:         }
 9267:     }
 9268:     }
 9269:     }
 9270:     }
 9271:     }
 9272:     }
 9273:     function_tests++;
 9274: 
 9275:     return(test_ret);
 9276: }
 9277: 
 9278: 
 9279: static int
 9280: test_xmlCleanupPredefinedEntities(void) {
 9281:     int test_ret = 0;
 9282: 
 9283: #if defined(LIBXML_LEGACY_ENABLED)
 9284: #ifdef LIBXML_LEGACY_ENABLED
 9285:     int mem_base;
 9286: 
 9287:         mem_base = xmlMemBlocks();
 9288: 
 9289:         xmlCleanupPredefinedEntities();
 9290:         call_tests++;
 9291:         xmlResetLastError();
 9292:         if (mem_base != xmlMemBlocks()) {
 9293:             printf("Leak of %d blocks found in xmlCleanupPredefinedEntities",
 9294: 	           xmlMemBlocks() - mem_base);
 9295: 	    test_ret++;
 9296:             printf("\n");
 9297:         }
 9298:     function_tests++;
 9299: #endif
 9300: #endif
 9301: 
 9302:     return(test_ret);
 9303: }
 9304: 
 9305: 
 9306: #define gen_nb_xmlEntitiesTablePtr 1
 9307: static xmlEntitiesTablePtr gen_xmlEntitiesTablePtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 9308:     return(NULL);
 9309: }
 9310: static void des_xmlEntitiesTablePtr(int no ATTRIBUTE_UNUSED, xmlEntitiesTablePtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 9311: }
 9312: 
 9313: static int
 9314: test_xmlCopyEntitiesTable(void) {
 9315:     int test_ret = 0;
 9316: 
 9317: 
 9318:     /* missing type support */
 9319:     return(test_ret);
 9320: }
 9321: 
 9322: 
 9323: static int
 9324: test_xmlCreateEntitiesTable(void) {
 9325:     int test_ret = 0;
 9326: 
 9327: 
 9328:     /* missing type support */
 9329:     return(test_ret);
 9330: }
 9331: 
 9332: 
 9333: static int
 9334: test_xmlDumpEntitiesTable(void) {
 9335:     int test_ret = 0;
 9336: 
 9337: #if defined(LIBXML_OUTPUT_ENABLED)
 9338:     int mem_base;
 9339:     xmlBufferPtr buf; /* An XML buffer. */
 9340:     int n_buf;
 9341:     xmlEntitiesTablePtr table; /* An entity table */
 9342:     int n_table;
 9343: 
 9344:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
 9345:     for (n_table = 0;n_table < gen_nb_xmlEntitiesTablePtr;n_table++) {
 9346:         mem_base = xmlMemBlocks();
 9347:         buf = gen_xmlBufferPtr(n_buf, 0);
 9348:         table = gen_xmlEntitiesTablePtr(n_table, 1);
 9349: 
 9350:         xmlDumpEntitiesTable(buf, table);
 9351:         call_tests++;
 9352:         des_xmlBufferPtr(n_buf, buf, 0);
 9353:         des_xmlEntitiesTablePtr(n_table, table, 1);
 9354:         xmlResetLastError();
 9355:         if (mem_base != xmlMemBlocks()) {
 9356:             printf("Leak of %d blocks found in xmlDumpEntitiesTable",
 9357: 	           xmlMemBlocks() - mem_base);
 9358: 	    test_ret++;
 9359:             printf(" %d", n_buf);
 9360:             printf(" %d", n_table);
 9361:             printf("\n");
 9362:         }
 9363:     }
 9364:     }
 9365:     function_tests++;
 9366: #endif
 9367: 
 9368:     return(test_ret);
 9369: }
 9370: 
 9371: 
 9372: #define gen_nb_xmlEntityPtr 1
 9373: static xmlEntityPtr gen_xmlEntityPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 9374:     return(NULL);
 9375: }
 9376: static void des_xmlEntityPtr(int no ATTRIBUTE_UNUSED, xmlEntityPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
 9377: }
 9378: 
 9379: static int
 9380: test_xmlDumpEntityDecl(void) {
 9381:     int test_ret = 0;
 9382: 
 9383: #if defined(LIBXML_OUTPUT_ENABLED)
 9384:     int mem_base;
 9385:     xmlBufferPtr buf; /* An XML buffer. */
 9386:     int n_buf;
 9387:     xmlEntityPtr ent; /* An entity table */
 9388:     int n_ent;
 9389: 
 9390:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
 9391:     for (n_ent = 0;n_ent < gen_nb_xmlEntityPtr;n_ent++) {
 9392:         mem_base = xmlMemBlocks();
 9393:         buf = gen_xmlBufferPtr(n_buf, 0);
 9394:         ent = gen_xmlEntityPtr(n_ent, 1);
 9395: 
 9396:         xmlDumpEntityDecl(buf, ent);
 9397:         call_tests++;
 9398:         des_xmlBufferPtr(n_buf, buf, 0);
 9399:         des_xmlEntityPtr(n_ent, ent, 1);
 9400:         xmlResetLastError();
 9401:         if (mem_base != xmlMemBlocks()) {
 9402:             printf("Leak of %d blocks found in xmlDumpEntityDecl",
 9403: 	           xmlMemBlocks() - mem_base);
 9404: 	    test_ret++;
 9405:             printf(" %d", n_buf);
 9406:             printf(" %d", n_ent);
 9407:             printf("\n");
 9408:         }
 9409:     }
 9410:     }
 9411:     function_tests++;
 9412: #endif
 9413: 
 9414:     return(test_ret);
 9415: }
 9416: 
 9417: 
 9418: static int
 9419: test_xmlEncodeEntitiesReentrant(void) {
 9420:     int test_ret = 0;
 9421: 
 9422:     int mem_base;
 9423:     xmlChar * ret_val;
 9424:     xmlDocPtr doc; /* the document containing the string */
 9425:     int n_doc;
 9426:     xmlChar * input; /* A string to convert to XML. */
 9427:     int n_input;
 9428: 
 9429:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
 9430:     for (n_input = 0;n_input < gen_nb_const_xmlChar_ptr;n_input++) {
 9431:         mem_base = xmlMemBlocks();
 9432:         doc = gen_xmlDocPtr(n_doc, 0);
 9433:         input = gen_const_xmlChar_ptr(n_input, 1);
 9434: 
 9435:         ret_val = xmlEncodeEntitiesReentrant(doc, (const xmlChar *)input);
 9436:         desret_xmlChar_ptr(ret_val);
 9437:         call_tests++;
 9438:         des_xmlDocPtr(n_doc, doc, 0);
 9439:         des_const_xmlChar_ptr(n_input, (const xmlChar *)input, 1);
 9440:         xmlResetLastError();
 9441:         if (mem_base != xmlMemBlocks()) {
 9442:             printf("Leak of %d blocks found in xmlEncodeEntitiesReentrant",
 9443: 	           xmlMemBlocks() - mem_base);
 9444: 	    test_ret++;
 9445:             printf(" %d", n_doc);
 9446:             printf(" %d", n_input);
 9447:             printf("\n");
 9448:         }
 9449:     }
 9450:     }
 9451:     function_tests++;
 9452: 
 9453:     return(test_ret);
 9454: }
 9455: 
 9456: 
 9457: static int
 9458: test_xmlEncodeSpecialChars(void) {
 9459:     int test_ret = 0;
 9460: 
 9461:     int mem_base;
 9462:     xmlChar * ret_val;
 9463:     xmlDocPtr doc; /* the document containing the string */
 9464:     int n_doc;
 9465:     xmlChar * input; /* A string to convert to XML. */
 9466:     int n_input;
 9467: 
 9468:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
 9469:     for (n_input = 0;n_input < gen_nb_const_xmlChar_ptr;n_input++) {
 9470:         mem_base = xmlMemBlocks();
 9471:         doc = gen_xmlDocPtr(n_doc, 0);
 9472:         input = gen_const_xmlChar_ptr(n_input, 1);
 9473: 
 9474:         ret_val = xmlEncodeSpecialChars(doc, (const xmlChar *)input);
 9475:         desret_xmlChar_ptr(ret_val);
 9476:         call_tests++;
 9477:         des_xmlDocPtr(n_doc, doc, 0);
 9478:         des_const_xmlChar_ptr(n_input, (const xmlChar *)input, 1);
 9479:         xmlResetLastError();
 9480:         if (mem_base != xmlMemBlocks()) {
 9481:             printf("Leak of %d blocks found in xmlEncodeSpecialChars",
 9482: 	           xmlMemBlocks() - mem_base);
 9483: 	    test_ret++;
 9484:             printf(" %d", n_doc);
 9485:             printf(" %d", n_input);
 9486:             printf("\n");
 9487:         }
 9488:     }
 9489:     }
 9490:     function_tests++;
 9491: 
 9492:     return(test_ret);
 9493: }
 9494: 
 9495: 
 9496: static int
 9497: test_xmlGetDocEntity(void) {
 9498:     int test_ret = 0;
 9499: 
 9500:     int mem_base;
 9501:     xmlEntityPtr ret_val;
 9502:     xmlDocPtr doc; /* the document referencing the entity */
 9503:     int n_doc;
 9504:     xmlChar * name; /* the entity name */
 9505:     int n_name;
 9506: 
 9507:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
 9508:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 9509:         mem_base = xmlMemBlocks();
 9510:         doc = gen_xmlDocPtr(n_doc, 0);
 9511:         name = gen_const_xmlChar_ptr(n_name, 1);
 9512: 
 9513:         ret_val = xmlGetDocEntity(doc, (const xmlChar *)name);
 9514:         desret_xmlEntityPtr(ret_val);
 9515:         call_tests++;
 9516:         des_xmlDocPtr(n_doc, doc, 0);
 9517:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 9518:         xmlResetLastError();
 9519:         if (mem_base != xmlMemBlocks()) {
 9520:             printf("Leak of %d blocks found in xmlGetDocEntity",
 9521: 	           xmlMemBlocks() - mem_base);
 9522: 	    test_ret++;
 9523:             printf(" %d", n_doc);
 9524:             printf(" %d", n_name);
 9525:             printf("\n");
 9526:         }
 9527:     }
 9528:     }
 9529:     function_tests++;
 9530: 
 9531:     return(test_ret);
 9532: }
 9533: 
 9534: 
 9535: static int
 9536: test_xmlGetDtdEntity(void) {
 9537:     int test_ret = 0;
 9538: 
 9539:     int mem_base;
 9540:     xmlEntityPtr ret_val;
 9541:     xmlDocPtr doc; /* the document referencing the entity */
 9542:     int n_doc;
 9543:     xmlChar * name; /* the entity name */
 9544:     int n_name;
 9545: 
 9546:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
 9547:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 9548:         mem_base = xmlMemBlocks();
 9549:         doc = gen_xmlDocPtr(n_doc, 0);
 9550:         name = gen_const_xmlChar_ptr(n_name, 1);
 9551: 
 9552:         ret_val = xmlGetDtdEntity(doc, (const xmlChar *)name);
 9553:         desret_xmlEntityPtr(ret_val);
 9554:         call_tests++;
 9555:         des_xmlDocPtr(n_doc, doc, 0);
 9556:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 9557:         xmlResetLastError();
 9558:         if (mem_base != xmlMemBlocks()) {
 9559:             printf("Leak of %d blocks found in xmlGetDtdEntity",
 9560: 	           xmlMemBlocks() - mem_base);
 9561: 	    test_ret++;
 9562:             printf(" %d", n_doc);
 9563:             printf(" %d", n_name);
 9564:             printf("\n");
 9565:         }
 9566:     }
 9567:     }
 9568:     function_tests++;
 9569: 
 9570:     return(test_ret);
 9571: }
 9572: 
 9573: 
 9574: static int
 9575: test_xmlGetParameterEntity(void) {
 9576:     int test_ret = 0;
 9577: 
 9578:     int mem_base;
 9579:     xmlEntityPtr ret_val;
 9580:     xmlDocPtr doc; /* the document referencing the entity */
 9581:     int n_doc;
 9582:     xmlChar * name; /* the entity name */
 9583:     int n_name;
 9584: 
 9585:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
 9586:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 9587:         mem_base = xmlMemBlocks();
 9588:         doc = gen_xmlDocPtr(n_doc, 0);
 9589:         name = gen_const_xmlChar_ptr(n_name, 1);
 9590: 
 9591:         ret_val = xmlGetParameterEntity(doc, (const xmlChar *)name);
 9592:         desret_xmlEntityPtr(ret_val);
 9593:         call_tests++;
 9594:         des_xmlDocPtr(n_doc, doc, 0);
 9595:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 9596:         xmlResetLastError();
 9597:         if (mem_base != xmlMemBlocks()) {
 9598:             printf("Leak of %d blocks found in xmlGetParameterEntity",
 9599: 	           xmlMemBlocks() - mem_base);
 9600: 	    test_ret++;
 9601:             printf(" %d", n_doc);
 9602:             printf(" %d", n_name);
 9603:             printf("\n");
 9604:         }
 9605:     }
 9606:     }
 9607:     function_tests++;
 9608: 
 9609:     return(test_ret);
 9610: }
 9611: 
 9612: 
 9613: static int
 9614: test_xmlGetPredefinedEntity(void) {
 9615:     int test_ret = 0;
 9616: 
 9617:     int mem_base;
 9618:     xmlEntityPtr ret_val;
 9619:     xmlChar * name; /* the entity name */
 9620:     int n_name;
 9621: 
 9622:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 9623:         mem_base = xmlMemBlocks();
 9624:         name = gen_const_xmlChar_ptr(n_name, 0);
 9625: 
 9626:         ret_val = xmlGetPredefinedEntity((const xmlChar *)name);
 9627:         desret_xmlEntityPtr(ret_val);
 9628:         call_tests++;
 9629:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 0);
 9630:         xmlResetLastError();
 9631:         if (mem_base != xmlMemBlocks()) {
 9632:             printf("Leak of %d blocks found in xmlGetPredefinedEntity",
 9633: 	           xmlMemBlocks() - mem_base);
 9634: 	    test_ret++;
 9635:             printf(" %d", n_name);
 9636:             printf("\n");
 9637:         }
 9638:     }
 9639:     function_tests++;
 9640: 
 9641:     return(test_ret);
 9642: }
 9643: 
 9644: 
 9645: static int
 9646: test_xmlInitializePredefinedEntities(void) {
 9647:     int test_ret = 0;
 9648: 
 9649: #if defined(LIBXML_LEGACY_ENABLED)
 9650: #ifdef LIBXML_LEGACY_ENABLED
 9651:     int mem_base;
 9652: 
 9653:         mem_base = xmlMemBlocks();
 9654: 
 9655:         xmlInitializePredefinedEntities();
 9656:         call_tests++;
 9657:         xmlResetLastError();
 9658:         if (mem_base != xmlMemBlocks()) {
 9659:             printf("Leak of %d blocks found in xmlInitializePredefinedEntities",
 9660: 	           xmlMemBlocks() - mem_base);
 9661: 	    test_ret++;
 9662:             printf("\n");
 9663:         }
 9664:     function_tests++;
 9665: #endif
 9666: #endif
 9667: 
 9668:     return(test_ret);
 9669: }
 9670: 
 9671: 
 9672: static int
 9673: test_xmlNewEntity(void) {
 9674:     int test_ret = 0;
 9675: 
 9676:     int mem_base;
 9677:     xmlEntityPtr ret_val;
 9678:     xmlDocPtr doc; /* the document */
 9679:     int n_doc;
 9680:     xmlChar * name; /* the entity name */
 9681:     int n_name;
 9682:     int type; /* the entity type XML_xxx_yyy_ENTITY */
 9683:     int n_type;
 9684:     xmlChar * ExternalID; /* the entity external ID if available */
 9685:     int n_ExternalID;
 9686:     xmlChar * SystemID; /* the entity system ID if available */
 9687:     int n_SystemID;
 9688:     xmlChar * content; /* the entity content */
 9689:     int n_content;
 9690: 
 9691:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
 9692:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 9693:     for (n_type = 0;n_type < gen_nb_int;n_type++) {
 9694:     for (n_ExternalID = 0;n_ExternalID < gen_nb_const_xmlChar_ptr;n_ExternalID++) {
 9695:     for (n_SystemID = 0;n_SystemID < gen_nb_const_xmlChar_ptr;n_SystemID++) {
 9696:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
 9697:         mem_base = xmlMemBlocks();
 9698:         doc = gen_xmlDocPtr(n_doc, 0);
 9699:         name = gen_const_xmlChar_ptr(n_name, 1);
 9700:         type = gen_int(n_type, 2);
 9701:         ExternalID = gen_const_xmlChar_ptr(n_ExternalID, 3);
 9702:         SystemID = gen_const_xmlChar_ptr(n_SystemID, 4);
 9703:         content = gen_const_xmlChar_ptr(n_content, 5);
 9704: 
 9705:         ret_val = xmlNewEntity(doc, (const xmlChar *)name, type, (const xmlChar *)ExternalID, (const xmlChar *)SystemID, (const xmlChar *)content);
 9706:         desret_xmlEntityPtr(ret_val);
 9707:         call_tests++;
 9708:         des_xmlDocPtr(n_doc, doc, 0);
 9709:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 9710:         des_int(n_type, type, 2);
 9711:         des_const_xmlChar_ptr(n_ExternalID, (const xmlChar *)ExternalID, 3);
 9712:         des_const_xmlChar_ptr(n_SystemID, (const xmlChar *)SystemID, 4);
 9713:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 5);
 9714:         xmlResetLastError();
 9715:         if (mem_base != xmlMemBlocks()) {
 9716:             printf("Leak of %d blocks found in xmlNewEntity",
 9717: 	           xmlMemBlocks() - mem_base);
 9718: 	    test_ret++;
 9719:             printf(" %d", n_doc);
 9720:             printf(" %d", n_name);
 9721:             printf(" %d", n_type);
 9722:             printf(" %d", n_ExternalID);
 9723:             printf(" %d", n_SystemID);
 9724:             printf(" %d", n_content);
 9725:             printf("\n");
 9726:         }
 9727:     }
 9728:     }
 9729:     }
 9730:     }
 9731:     }
 9732:     }
 9733:     function_tests++;
 9734: 
 9735:     return(test_ret);
 9736: }
 9737: 
 9738: static int
 9739: test_entities(void) {
 9740:     int test_ret = 0;
 9741: 
 9742:     if (quiet == 0) printf("Testing entities : 13 of 17 functions ...\n");
 9743:     test_ret += test_xmlAddDocEntity();
 9744:     test_ret += test_xmlAddDtdEntity();
 9745:     test_ret += test_xmlCleanupPredefinedEntities();
 9746:     test_ret += test_xmlCopyEntitiesTable();
 9747:     test_ret += test_xmlCreateEntitiesTable();
 9748:     test_ret += test_xmlDumpEntitiesTable();
 9749:     test_ret += test_xmlDumpEntityDecl();
 9750:     test_ret += test_xmlEncodeEntitiesReentrant();
 9751:     test_ret += test_xmlEncodeSpecialChars();
 9752:     test_ret += test_xmlGetDocEntity();
 9753:     test_ret += test_xmlGetDtdEntity();
 9754:     test_ret += test_xmlGetParameterEntity();
 9755:     test_ret += test_xmlGetPredefinedEntity();
 9756:     test_ret += test_xmlInitializePredefinedEntities();
 9757:     test_ret += test_xmlNewEntity();
 9758: 
 9759:     if (test_ret != 0)
 9760: 	printf("Module entities: %d errors\n", test_ret);
 9761:     return(test_ret);
 9762: }
 9763: 
 9764: static int
 9765: test_xmlHashAddEntry(void) {
 9766:     int test_ret = 0;
 9767: 
 9768:     int mem_base;
 9769:     int ret_val;
 9770:     xmlHashTablePtr table; /* the hash table */
 9771:     int n_table;
 9772:     xmlChar * name; /* the name of the userdata */
 9773:     int n_name;
 9774:     void * userdata; /* a pointer to the userdata */
 9775:     int n_userdata;
 9776: 
 9777:     for (n_table = 0;n_table < gen_nb_xmlHashTablePtr;n_table++) {
 9778:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 9779:     for (n_userdata = 0;n_userdata < gen_nb_userdata;n_userdata++) {
 9780:         mem_base = xmlMemBlocks();
 9781:         table = gen_xmlHashTablePtr(n_table, 0);
 9782:         name = gen_const_xmlChar_ptr(n_name, 1);
 9783:         userdata = gen_userdata(n_userdata, 2);
 9784: 
 9785:         ret_val = xmlHashAddEntry(table, (const xmlChar *)name, userdata);
 9786:         desret_int(ret_val);
 9787:         call_tests++;
 9788:         des_xmlHashTablePtr(n_table, table, 0);
 9789:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 9790:         des_userdata(n_userdata, userdata, 2);
 9791:         xmlResetLastError();
 9792:         if (mem_base != xmlMemBlocks()) {
 9793:             printf("Leak of %d blocks found in xmlHashAddEntry",
 9794: 	           xmlMemBlocks() - mem_base);
 9795: 	    test_ret++;
 9796:             printf(" %d", n_table);
 9797:             printf(" %d", n_name);
 9798:             printf(" %d", n_userdata);
 9799:             printf("\n");
 9800:         }
 9801:     }
 9802:     }
 9803:     }
 9804:     function_tests++;
 9805: 
 9806:     return(test_ret);
 9807: }
 9808: 
 9809: 
 9810: static int
 9811: test_xmlHashAddEntry2(void) {
 9812:     int test_ret = 0;
 9813: 
 9814:     int mem_base;
 9815:     int ret_val;
 9816:     xmlHashTablePtr table; /* the hash table */
 9817:     int n_table;
 9818:     xmlChar * name; /* the name of the userdata */
 9819:     int n_name;
 9820:     xmlChar * name2; /* a second name of the userdata */
 9821:     int n_name2;
 9822:     void * userdata; /* a pointer to the userdata */
 9823:     int n_userdata;
 9824: 
 9825:     for (n_table = 0;n_table < gen_nb_xmlHashTablePtr;n_table++) {
 9826:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 9827:     for (n_name2 = 0;n_name2 < gen_nb_const_xmlChar_ptr;n_name2++) {
 9828:     for (n_userdata = 0;n_userdata < gen_nb_userdata;n_userdata++) {
 9829:         mem_base = xmlMemBlocks();
 9830:         table = gen_xmlHashTablePtr(n_table, 0);
 9831:         name = gen_const_xmlChar_ptr(n_name, 1);
 9832:         name2 = gen_const_xmlChar_ptr(n_name2, 2);
 9833:         userdata = gen_userdata(n_userdata, 3);
 9834: 
 9835:         ret_val = xmlHashAddEntry2(table, (const xmlChar *)name, (const xmlChar *)name2, userdata);
 9836:         desret_int(ret_val);
 9837:         call_tests++;
 9838:         des_xmlHashTablePtr(n_table, table, 0);
 9839:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 9840:         des_const_xmlChar_ptr(n_name2, (const xmlChar *)name2, 2);
 9841:         des_userdata(n_userdata, userdata, 3);
 9842:         xmlResetLastError();
 9843:         if (mem_base != xmlMemBlocks()) {
 9844:             printf("Leak of %d blocks found in xmlHashAddEntry2",
 9845: 	           xmlMemBlocks() - mem_base);
 9846: 	    test_ret++;
 9847:             printf(" %d", n_table);
 9848:             printf(" %d", n_name);
 9849:             printf(" %d", n_name2);
 9850:             printf(" %d", n_userdata);
 9851:             printf("\n");
 9852:         }
 9853:     }
 9854:     }
 9855:     }
 9856:     }
 9857:     function_tests++;
 9858: 
 9859:     return(test_ret);
 9860: }
 9861: 
 9862: 
 9863: static int
 9864: test_xmlHashAddEntry3(void) {
 9865:     int test_ret = 0;
 9866: 
 9867:     int mem_base;
 9868:     int ret_val;
 9869:     xmlHashTablePtr table; /* the hash table */
 9870:     int n_table;
 9871:     xmlChar * name; /* the name of the userdata */
 9872:     int n_name;
 9873:     xmlChar * name2; /* a second name of the userdata */
 9874:     int n_name2;
 9875:     xmlChar * name3; /* a third name of the userdata */
 9876:     int n_name3;
 9877:     void * userdata; /* a pointer to the userdata */
 9878:     int n_userdata;
 9879: 
 9880:     for (n_table = 0;n_table < gen_nb_xmlHashTablePtr;n_table++) {
 9881:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 9882:     for (n_name2 = 0;n_name2 < gen_nb_const_xmlChar_ptr;n_name2++) {
 9883:     for (n_name3 = 0;n_name3 < gen_nb_const_xmlChar_ptr;n_name3++) {
 9884:     for (n_userdata = 0;n_userdata < gen_nb_userdata;n_userdata++) {
 9885:         mem_base = xmlMemBlocks();
 9886:         table = gen_xmlHashTablePtr(n_table, 0);
 9887:         name = gen_const_xmlChar_ptr(n_name, 1);
 9888:         name2 = gen_const_xmlChar_ptr(n_name2, 2);
 9889:         name3 = gen_const_xmlChar_ptr(n_name3, 3);
 9890:         userdata = gen_userdata(n_userdata, 4);
 9891: 
 9892:         ret_val = xmlHashAddEntry3(table, (const xmlChar *)name, (const xmlChar *)name2, (const xmlChar *)name3, userdata);
 9893:         desret_int(ret_val);
 9894:         call_tests++;
 9895:         des_xmlHashTablePtr(n_table, table, 0);
 9896:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 9897:         des_const_xmlChar_ptr(n_name2, (const xmlChar *)name2, 2);
 9898:         des_const_xmlChar_ptr(n_name3, (const xmlChar *)name3, 3);
 9899:         des_userdata(n_userdata, userdata, 4);
 9900:         xmlResetLastError();
 9901:         if (mem_base != xmlMemBlocks()) {
 9902:             printf("Leak of %d blocks found in xmlHashAddEntry3",
 9903: 	           xmlMemBlocks() - mem_base);
 9904: 	    test_ret++;
 9905:             printf(" %d", n_table);
 9906:             printf(" %d", n_name);
 9907:             printf(" %d", n_name2);
 9908:             printf(" %d", n_name3);
 9909:             printf(" %d", n_userdata);
 9910:             printf("\n");
 9911:         }
 9912:     }
 9913:     }
 9914:     }
 9915:     }
 9916:     }
 9917:     function_tests++;
 9918: 
 9919:     return(test_ret);
 9920: }
 9921: 
 9922: 
 9923: static int
 9924: test_xmlHashCopy(void) {
 9925:     int test_ret = 0;
 9926: 
 9927: 
 9928:     /* missing type support */
 9929:     return(test_ret);
 9930: }
 9931: 
 9932: 
 9933: static int
 9934: test_xmlHashCreate(void) {
 9935:     int test_ret = 0;
 9936: 
 9937: 
 9938:     /* missing type support */
 9939:     return(test_ret);
 9940: }
 9941: 
 9942: 
 9943: static int
 9944: test_xmlHashCreateDict(void) {
 9945:     int test_ret = 0;
 9946: 
 9947: 
 9948:     /* missing type support */
 9949:     return(test_ret);
 9950: }
 9951: 
 9952: 
 9953: static int
 9954: test_xmlHashLookup(void) {
 9955:     int test_ret = 0;
 9956: 
 9957:     int mem_base;
 9958:     void * ret_val;
 9959:     xmlHashTablePtr table; /* the hash table */
 9960:     int n_table;
 9961:     xmlChar * name; /* the name of the userdata */
 9962:     int n_name;
 9963: 
 9964:     for (n_table = 0;n_table < gen_nb_xmlHashTablePtr;n_table++) {
 9965:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
 9966:         mem_base = xmlMemBlocks();
 9967:         table = gen_xmlHashTablePtr(n_table, 0);
 9968:         name = gen_const_xmlChar_ptr(n_name, 1);
 9969: 
 9970:         ret_val = xmlHashLookup(table, (const xmlChar *)name);
 9971:         desret_void_ptr(ret_val);
 9972:         call_tests++;
 9973:         des_xmlHashTablePtr(n_table, table, 0);
 9974:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
 9975:         xmlResetLastError();
 9976:         if (mem_base != xmlMemBlocks()) {
 9977:             printf("Leak of %d blocks found in xmlHashLookup",
 9978: 	           xmlMemBlocks() - mem_base);
 9979: 	    test_ret++;
 9980:             printf(" %d", n_table);
 9981:             printf(" %d", n_name);
 9982:             printf("\n");
 9983:         }
 9984:     }
 9985:     }
 9986:     function_tests++;
 9987: 
 9988:     return(test_ret);
 9989: }
 9990: 
 9991: 
 9992: static int
 9993: test_xmlHashLookup2(void) {
 9994:     int test_ret = 0;
 9995: 
 9996:     int mem_base;
 9997:     void * ret_val;
 9998:     xmlHashTablePtr table; /* the hash table */
 9999:     int n_table;
10000:     xmlChar * name; /* the name of the userdata */
10001:     int n_name;
10002:     xmlChar * name2; /* a second name of the userdata */
10003:     int n_name2;
10004: 
10005:     for (n_table = 0;n_table < gen_nb_xmlHashTablePtr;n_table++) {
10006:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
10007:     for (n_name2 = 0;n_name2 < gen_nb_const_xmlChar_ptr;n_name2++) {
10008:         mem_base = xmlMemBlocks();
10009:         table = gen_xmlHashTablePtr(n_table, 0);
10010:         name = gen_const_xmlChar_ptr(n_name, 1);
10011:         name2 = gen_const_xmlChar_ptr(n_name2, 2);
10012: 
10013:         ret_val = xmlHashLookup2(table, (const xmlChar *)name, (const xmlChar *)name2);
10014:         desret_void_ptr(ret_val);
10015:         call_tests++;
10016:         des_xmlHashTablePtr(n_table, table, 0);
10017:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
10018:         des_const_xmlChar_ptr(n_name2, (const xmlChar *)name2, 2);
10019:         xmlResetLastError();
10020:         if (mem_base != xmlMemBlocks()) {
10021:             printf("Leak of %d blocks found in xmlHashLookup2",
10022: 	           xmlMemBlocks() - mem_base);
10023: 	    test_ret++;
10024:             printf(" %d", n_table);
10025:             printf(" %d", n_name);
10026:             printf(" %d", n_name2);
10027:             printf("\n");
10028:         }
10029:     }
10030:     }
10031:     }
10032:     function_tests++;
10033: 
10034:     return(test_ret);
10035: }
10036: 
10037: 
10038: static int
10039: test_xmlHashLookup3(void) {
10040:     int test_ret = 0;
10041: 
10042:     int mem_base;
10043:     void * ret_val;
10044:     xmlHashTablePtr table; /* the hash table */
10045:     int n_table;
10046:     xmlChar * name; /* the name of the userdata */
10047:     int n_name;
10048:     xmlChar * name2; /* a second name of the userdata */
10049:     int n_name2;
10050:     xmlChar * name3; /* a third name of the userdata */
10051:     int n_name3;
10052: 
10053:     for (n_table = 0;n_table < gen_nb_xmlHashTablePtr;n_table++) {
10054:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
10055:     for (n_name2 = 0;n_name2 < gen_nb_const_xmlChar_ptr;n_name2++) {
10056:     for (n_name3 = 0;n_name3 < gen_nb_const_xmlChar_ptr;n_name3++) {
10057:         mem_base = xmlMemBlocks();
10058:         table = gen_xmlHashTablePtr(n_table, 0);
10059:         name = gen_const_xmlChar_ptr(n_name, 1);
10060:         name2 = gen_const_xmlChar_ptr(n_name2, 2);
10061:         name3 = gen_const_xmlChar_ptr(n_name3, 3);
10062: 
10063:         ret_val = xmlHashLookup3(table, (const xmlChar *)name, (const xmlChar *)name2, (const xmlChar *)name3);
10064:         desret_void_ptr(ret_val);
10065:         call_tests++;
10066:         des_xmlHashTablePtr(n_table, table, 0);
10067:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
10068:         des_const_xmlChar_ptr(n_name2, (const xmlChar *)name2, 2);
10069:         des_const_xmlChar_ptr(n_name3, (const xmlChar *)name3, 3);
10070:         xmlResetLastError();
10071:         if (mem_base != xmlMemBlocks()) {
10072:             printf("Leak of %d blocks found in xmlHashLookup3",
10073: 	           xmlMemBlocks() - mem_base);
10074: 	    test_ret++;
10075:             printf(" %d", n_table);
10076:             printf(" %d", n_name);
10077:             printf(" %d", n_name2);
10078:             printf(" %d", n_name3);
10079:             printf("\n");
10080:         }
10081:     }
10082:     }
10083:     }
10084:     }
10085:     function_tests++;
10086: 
10087:     return(test_ret);
10088: }
10089: 
10090: 
10091: static int
10092: test_xmlHashQLookup(void) {
10093:     int test_ret = 0;
10094: 
10095:     int mem_base;
10096:     void * ret_val;
10097:     xmlHashTablePtr table; /* the hash table */
10098:     int n_table;
10099:     xmlChar * prefix; /* the prefix of the userdata */
10100:     int n_prefix;
10101:     xmlChar * name; /* the name of the userdata */
10102:     int n_name;
10103: 
10104:     for (n_table = 0;n_table < gen_nb_xmlHashTablePtr;n_table++) {
10105:     for (n_prefix = 0;n_prefix < gen_nb_const_xmlChar_ptr;n_prefix++) {
10106:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
10107:         mem_base = xmlMemBlocks();
10108:         table = gen_xmlHashTablePtr(n_table, 0);
10109:         prefix = gen_const_xmlChar_ptr(n_prefix, 1);
10110:         name = gen_const_xmlChar_ptr(n_name, 2);
10111: 
10112:         ret_val = xmlHashQLookup(table, (const xmlChar *)prefix, (const xmlChar *)name);
10113:         desret_void_ptr(ret_val);
10114:         call_tests++;
10115:         des_xmlHashTablePtr(n_table, table, 0);
10116:         des_const_xmlChar_ptr(n_prefix, (const xmlChar *)prefix, 1);
10117:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
10118:         xmlResetLastError();
10119:         if (mem_base != xmlMemBlocks()) {
10120:             printf("Leak of %d blocks found in xmlHashQLookup",
10121: 	           xmlMemBlocks() - mem_base);
10122: 	    test_ret++;
10123:             printf(" %d", n_table);
10124:             printf(" %d", n_prefix);
10125:             printf(" %d", n_name);
10126:             printf("\n");
10127:         }
10128:     }
10129:     }
10130:     }
10131:     function_tests++;
10132: 
10133:     return(test_ret);
10134: }
10135: 
10136: 
10137: static int
10138: test_xmlHashQLookup2(void) {
10139:     int test_ret = 0;
10140: 
10141:     int mem_base;
10142:     void * ret_val;
10143:     xmlHashTablePtr table; /* the hash table */
10144:     int n_table;
10145:     xmlChar * prefix; /* the prefix of the userdata */
10146:     int n_prefix;
10147:     xmlChar * name; /* the name of the userdata */
10148:     int n_name;
10149:     xmlChar * prefix2; /* the second prefix of the userdata */
10150:     int n_prefix2;
10151:     xmlChar * name2; /* a second name of the userdata */
10152:     int n_name2;
10153: 
10154:     for (n_table = 0;n_table < gen_nb_xmlHashTablePtr;n_table++) {
10155:     for (n_prefix = 0;n_prefix < gen_nb_const_xmlChar_ptr;n_prefix++) {
10156:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
10157:     for (n_prefix2 = 0;n_prefix2 < gen_nb_const_xmlChar_ptr;n_prefix2++) {
10158:     for (n_name2 = 0;n_name2 < gen_nb_const_xmlChar_ptr;n_name2++) {
10159:         mem_base = xmlMemBlocks();
10160:         table = gen_xmlHashTablePtr(n_table, 0);
10161:         prefix = gen_const_xmlChar_ptr(n_prefix, 1);
10162:         name = gen_const_xmlChar_ptr(n_name, 2);
10163:         prefix2 = gen_const_xmlChar_ptr(n_prefix2, 3);
10164:         name2 = gen_const_xmlChar_ptr(n_name2, 4);
10165: 
10166:         ret_val = xmlHashQLookup2(table, (const xmlChar *)prefix, (const xmlChar *)name, (const xmlChar *)prefix2, (const xmlChar *)name2);
10167:         desret_void_ptr(ret_val);
10168:         call_tests++;
10169:         des_xmlHashTablePtr(n_table, table, 0);
10170:         des_const_xmlChar_ptr(n_prefix, (const xmlChar *)prefix, 1);
10171:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
10172:         des_const_xmlChar_ptr(n_prefix2, (const xmlChar *)prefix2, 3);
10173:         des_const_xmlChar_ptr(n_name2, (const xmlChar *)name2, 4);
10174:         xmlResetLastError();
10175:         if (mem_base != xmlMemBlocks()) {
10176:             printf("Leak of %d blocks found in xmlHashQLookup2",
10177: 	           xmlMemBlocks() - mem_base);
10178: 	    test_ret++;
10179:             printf(" %d", n_table);
10180:             printf(" %d", n_prefix);
10181:             printf(" %d", n_name);
10182:             printf(" %d", n_prefix2);
10183:             printf(" %d", n_name2);
10184:             printf("\n");
10185:         }
10186:     }
10187:     }
10188:     }
10189:     }
10190:     }
10191:     function_tests++;
10192: 
10193:     return(test_ret);
10194: }
10195: 
10196: 
10197: static int
10198: test_xmlHashQLookup3(void) {
10199:     int test_ret = 0;
10200: 
10201:     int mem_base;
10202:     void * ret_val;
10203:     xmlHashTablePtr table; /* the hash table */
10204:     int n_table;
10205:     xmlChar * prefix; /* the prefix of the userdata */
10206:     int n_prefix;
10207:     xmlChar * name; /* the name of the userdata */
10208:     int n_name;
10209:     xmlChar * prefix2; /* the second prefix of the userdata */
10210:     int n_prefix2;
10211:     xmlChar * name2; /* a second name of the userdata */
10212:     int n_name2;
10213:     xmlChar * prefix3; /* the third prefix of the userdata */
10214:     int n_prefix3;
10215:     xmlChar * name3; /* a third name of the userdata */
10216:     int n_name3;
10217: 
10218:     for (n_table = 0;n_table < gen_nb_xmlHashTablePtr;n_table++) {
10219:     for (n_prefix = 0;n_prefix < gen_nb_const_xmlChar_ptr;n_prefix++) {
10220:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
10221:     for (n_prefix2 = 0;n_prefix2 < gen_nb_const_xmlChar_ptr;n_prefix2++) {
10222:     for (n_name2 = 0;n_name2 < gen_nb_const_xmlChar_ptr;n_name2++) {
10223:     for (n_prefix3 = 0;n_prefix3 < gen_nb_const_xmlChar_ptr;n_prefix3++) {
10224:     for (n_name3 = 0;n_name3 < gen_nb_const_xmlChar_ptr;n_name3++) {
10225:         mem_base = xmlMemBlocks();
10226:         table = gen_xmlHashTablePtr(n_table, 0);
10227:         prefix = gen_const_xmlChar_ptr(n_prefix, 1);
10228:         name = gen_const_xmlChar_ptr(n_name, 2);
10229:         prefix2 = gen_const_xmlChar_ptr(n_prefix2, 3);
10230:         name2 = gen_const_xmlChar_ptr(n_name2, 4);
10231:         prefix3 = gen_const_xmlChar_ptr(n_prefix3, 5);
10232:         name3 = gen_const_xmlChar_ptr(n_name3, 6);
10233: 
10234:         ret_val = xmlHashQLookup3(table, (const xmlChar *)prefix, (const xmlChar *)name, (const xmlChar *)prefix2, (const xmlChar *)name2, (const xmlChar *)prefix3, (const xmlChar *)name3);
10235:         desret_void_ptr(ret_val);
10236:         call_tests++;
10237:         des_xmlHashTablePtr(n_table, table, 0);
10238:         des_const_xmlChar_ptr(n_prefix, (const xmlChar *)prefix, 1);
10239:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
10240:         des_const_xmlChar_ptr(n_prefix2, (const xmlChar *)prefix2, 3);
10241:         des_const_xmlChar_ptr(n_name2, (const xmlChar *)name2, 4);
10242:         des_const_xmlChar_ptr(n_prefix3, (const xmlChar *)prefix3, 5);
10243:         des_const_xmlChar_ptr(n_name3, (const xmlChar *)name3, 6);
10244:         xmlResetLastError();
10245:         if (mem_base != xmlMemBlocks()) {
10246:             printf("Leak of %d blocks found in xmlHashQLookup3",
10247: 	           xmlMemBlocks() - mem_base);
10248: 	    test_ret++;
10249:             printf(" %d", n_table);
10250:             printf(" %d", n_prefix);
10251:             printf(" %d", n_name);
10252:             printf(" %d", n_prefix2);
10253:             printf(" %d", n_name2);
10254:             printf(" %d", n_prefix3);
10255:             printf(" %d", n_name3);
10256:             printf("\n");
10257:         }
10258:     }
10259:     }
10260:     }
10261:     }
10262:     }
10263:     }
10264:     }
10265:     function_tests++;
10266: 
10267:     return(test_ret);
10268: }
10269: 
10270: 
10271: static int
10272: test_xmlHashRemoveEntry(void) {
10273:     int test_ret = 0;
10274: 
10275:     int mem_base;
10276:     int ret_val;
10277:     xmlHashTablePtr table; /* the hash table */
10278:     int n_table;
10279:     xmlChar * name; /* the name of the userdata */
10280:     int n_name;
10281:     xmlHashDeallocator f; /* the deallocator function for removed item (if any) */
10282:     int n_f;
10283: 
10284:     for (n_table = 0;n_table < gen_nb_xmlHashTablePtr;n_table++) {
10285:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
10286:     for (n_f = 0;n_f < gen_nb_xmlHashDeallocator;n_f++) {
10287:         mem_base = xmlMemBlocks();
10288:         table = gen_xmlHashTablePtr(n_table, 0);
10289:         name = gen_const_xmlChar_ptr(n_name, 1);
10290:         f = gen_xmlHashDeallocator(n_f, 2);
10291: 
10292:         ret_val = xmlHashRemoveEntry(table, (const xmlChar *)name, f);
10293:         desret_int(ret_val);
10294:         call_tests++;
10295:         des_xmlHashTablePtr(n_table, table, 0);
10296:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
10297:         des_xmlHashDeallocator(n_f, f, 2);
10298:         xmlResetLastError();
10299:         if (mem_base != xmlMemBlocks()) {
10300:             printf("Leak of %d blocks found in xmlHashRemoveEntry",
10301: 	           xmlMemBlocks() - mem_base);
10302: 	    test_ret++;
10303:             printf(" %d", n_table);
10304:             printf(" %d", n_name);
10305:             printf(" %d", n_f);
10306:             printf("\n");
10307:         }
10308:     }
10309:     }
10310:     }
10311:     function_tests++;
10312: 
10313:     return(test_ret);
10314: }
10315: 
10316: 
10317: static int
10318: test_xmlHashRemoveEntry2(void) {
10319:     int test_ret = 0;
10320: 
10321:     int mem_base;
10322:     int ret_val;
10323:     xmlHashTablePtr table; /* the hash table */
10324:     int n_table;
10325:     xmlChar * name; /* the name of the userdata */
10326:     int n_name;
10327:     xmlChar * name2; /* a second name of the userdata */
10328:     int n_name2;
10329:     xmlHashDeallocator f; /* the deallocator function for removed item (if any) */
10330:     int n_f;
10331: 
10332:     for (n_table = 0;n_table < gen_nb_xmlHashTablePtr;n_table++) {
10333:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
10334:     for (n_name2 = 0;n_name2 < gen_nb_const_xmlChar_ptr;n_name2++) {
10335:     for (n_f = 0;n_f < gen_nb_xmlHashDeallocator;n_f++) {
10336:         mem_base = xmlMemBlocks();
10337:         table = gen_xmlHashTablePtr(n_table, 0);
10338:         name = gen_const_xmlChar_ptr(n_name, 1);
10339:         name2 = gen_const_xmlChar_ptr(n_name2, 2);
10340:         f = gen_xmlHashDeallocator(n_f, 3);
10341: 
10342:         ret_val = xmlHashRemoveEntry2(table, (const xmlChar *)name, (const xmlChar *)name2, f);
10343:         desret_int(ret_val);
10344:         call_tests++;
10345:         des_xmlHashTablePtr(n_table, table, 0);
10346:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
10347:         des_const_xmlChar_ptr(n_name2, (const xmlChar *)name2, 2);
10348:         des_xmlHashDeallocator(n_f, f, 3);
10349:         xmlResetLastError();
10350:         if (mem_base != xmlMemBlocks()) {
10351:             printf("Leak of %d blocks found in xmlHashRemoveEntry2",
10352: 	           xmlMemBlocks() - mem_base);
10353: 	    test_ret++;
10354:             printf(" %d", n_table);
10355:             printf(" %d", n_name);
10356:             printf(" %d", n_name2);
10357:             printf(" %d", n_f);
10358:             printf("\n");
10359:         }
10360:     }
10361:     }
10362:     }
10363:     }
10364:     function_tests++;
10365: 
10366:     return(test_ret);
10367: }
10368: 
10369: 
10370: static int
10371: test_xmlHashRemoveEntry3(void) {
10372:     int test_ret = 0;
10373: 
10374:     int mem_base;
10375:     int ret_val;
10376:     xmlHashTablePtr table; /* the hash table */
10377:     int n_table;
10378:     xmlChar * name; /* the name of the userdata */
10379:     int n_name;
10380:     xmlChar * name2; /* a second name of the userdata */
10381:     int n_name2;
10382:     xmlChar * name3; /* a third name of the userdata */
10383:     int n_name3;
10384:     xmlHashDeallocator f; /* the deallocator function for removed item (if any) */
10385:     int n_f;
10386: 
10387:     for (n_table = 0;n_table < gen_nb_xmlHashTablePtr;n_table++) {
10388:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
10389:     for (n_name2 = 0;n_name2 < gen_nb_const_xmlChar_ptr;n_name2++) {
10390:     for (n_name3 = 0;n_name3 < gen_nb_const_xmlChar_ptr;n_name3++) {
10391:     for (n_f = 0;n_f < gen_nb_xmlHashDeallocator;n_f++) {
10392:         mem_base = xmlMemBlocks();
10393:         table = gen_xmlHashTablePtr(n_table, 0);
10394:         name = gen_const_xmlChar_ptr(n_name, 1);
10395:         name2 = gen_const_xmlChar_ptr(n_name2, 2);
10396:         name3 = gen_const_xmlChar_ptr(n_name3, 3);
10397:         f = gen_xmlHashDeallocator(n_f, 4);
10398: 
10399:         ret_val = xmlHashRemoveEntry3(table, (const xmlChar *)name, (const xmlChar *)name2, (const xmlChar *)name3, f);
10400:         desret_int(ret_val);
10401:         call_tests++;
10402:         des_xmlHashTablePtr(n_table, table, 0);
10403:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
10404:         des_const_xmlChar_ptr(n_name2, (const xmlChar *)name2, 2);
10405:         des_const_xmlChar_ptr(n_name3, (const xmlChar *)name3, 3);
10406:         des_xmlHashDeallocator(n_f, f, 4);
10407:         xmlResetLastError();
10408:         if (mem_base != xmlMemBlocks()) {
10409:             printf("Leak of %d blocks found in xmlHashRemoveEntry3",
10410: 	           xmlMemBlocks() - mem_base);
10411: 	    test_ret++;
10412:             printf(" %d", n_table);
10413:             printf(" %d", n_name);
10414:             printf(" %d", n_name2);
10415:             printf(" %d", n_name3);
10416:             printf(" %d", n_f);
10417:             printf("\n");
10418:         }
10419:     }
10420:     }
10421:     }
10422:     }
10423:     }
10424:     function_tests++;
10425: 
10426:     return(test_ret);
10427: }
10428: 
10429: 
10430: static int
10431: test_xmlHashScan(void) {
10432:     int test_ret = 0;
10433: 
10434: 
10435:     /* missing type support */
10436:     return(test_ret);
10437: }
10438: 
10439: 
10440: static int
10441: test_xmlHashScan3(void) {
10442:     int test_ret = 0;
10443: 
10444: 
10445:     /* missing type support */
10446:     return(test_ret);
10447: }
10448: 
10449: 
10450: static int
10451: test_xmlHashScanFull(void) {
10452:     int test_ret = 0;
10453: 
10454: 
10455:     /* missing type support */
10456:     return(test_ret);
10457: }
10458: 
10459: 
10460: static int
10461: test_xmlHashScanFull3(void) {
10462:     int test_ret = 0;
10463: 
10464: 
10465:     /* missing type support */
10466:     return(test_ret);
10467: }
10468: 
10469: 
10470: static int
10471: test_xmlHashSize(void) {
10472:     int test_ret = 0;
10473: 
10474:     int mem_base;
10475:     int ret_val;
10476:     xmlHashTablePtr table; /* the hash table */
10477:     int n_table;
10478: 
10479:     for (n_table = 0;n_table < gen_nb_xmlHashTablePtr;n_table++) {
10480:         mem_base = xmlMemBlocks();
10481:         table = gen_xmlHashTablePtr(n_table, 0);
10482: 
10483:         ret_val = xmlHashSize(table);
10484:         desret_int(ret_val);
10485:         call_tests++;
10486:         des_xmlHashTablePtr(n_table, table, 0);
10487:         xmlResetLastError();
10488:         if (mem_base != xmlMemBlocks()) {
10489:             printf("Leak of %d blocks found in xmlHashSize",
10490: 	           xmlMemBlocks() - mem_base);
10491: 	    test_ret++;
10492:             printf(" %d", n_table);
10493:             printf("\n");
10494:         }
10495:     }
10496:     function_tests++;
10497: 
10498:     return(test_ret);
10499: }
10500: 
10501: 
10502: static int
10503: test_xmlHashUpdateEntry(void) {
10504:     int test_ret = 0;
10505: 
10506:     int mem_base;
10507:     int ret_val;
10508:     xmlHashTablePtr table; /* the hash table */
10509:     int n_table;
10510:     xmlChar * name; /* the name of the userdata */
10511:     int n_name;
10512:     void * userdata; /* a pointer to the userdata */
10513:     int n_userdata;
10514:     xmlHashDeallocator f; /* the deallocator function for replaced item (if any) */
10515:     int n_f;
10516: 
10517:     for (n_table = 0;n_table < gen_nb_xmlHashTablePtr;n_table++) {
10518:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
10519:     for (n_userdata = 0;n_userdata < gen_nb_userdata;n_userdata++) {
10520:     for (n_f = 0;n_f < gen_nb_xmlHashDeallocator;n_f++) {
10521:         mem_base = xmlMemBlocks();
10522:         table = gen_xmlHashTablePtr(n_table, 0);
10523:         name = gen_const_xmlChar_ptr(n_name, 1);
10524:         userdata = gen_userdata(n_userdata, 2);
10525:         f = gen_xmlHashDeallocator(n_f, 3);
10526: 
10527:         ret_val = xmlHashUpdateEntry(table, (const xmlChar *)name, userdata, f);
10528:         desret_int(ret_val);
10529:         call_tests++;
10530:         des_xmlHashTablePtr(n_table, table, 0);
10531:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
10532:         des_userdata(n_userdata, userdata, 2);
10533:         des_xmlHashDeallocator(n_f, f, 3);
10534:         xmlResetLastError();
10535:         if (mem_base != xmlMemBlocks()) {
10536:             printf("Leak of %d blocks found in xmlHashUpdateEntry",
10537: 	           xmlMemBlocks() - mem_base);
10538: 	    test_ret++;
10539:             printf(" %d", n_table);
10540:             printf(" %d", n_name);
10541:             printf(" %d", n_userdata);
10542:             printf(" %d", n_f);
10543:             printf("\n");
10544:         }
10545:     }
10546:     }
10547:     }
10548:     }
10549:     function_tests++;
10550: 
10551:     return(test_ret);
10552: }
10553: 
10554: 
10555: static int
10556: test_xmlHashUpdateEntry2(void) {
10557:     int test_ret = 0;
10558: 
10559:     int mem_base;
10560:     int ret_val;
10561:     xmlHashTablePtr table; /* the hash table */
10562:     int n_table;
10563:     xmlChar * name; /* the name of the userdata */
10564:     int n_name;
10565:     xmlChar * name2; /* a second name of the userdata */
10566:     int n_name2;
10567:     void * userdata; /* a pointer to the userdata */
10568:     int n_userdata;
10569:     xmlHashDeallocator f; /* the deallocator function for replaced item (if any) */
10570:     int n_f;
10571: 
10572:     for (n_table = 0;n_table < gen_nb_xmlHashTablePtr;n_table++) {
10573:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
10574:     for (n_name2 = 0;n_name2 < gen_nb_const_xmlChar_ptr;n_name2++) {
10575:     for (n_userdata = 0;n_userdata < gen_nb_userdata;n_userdata++) {
10576:     for (n_f = 0;n_f < gen_nb_xmlHashDeallocator;n_f++) {
10577:         mem_base = xmlMemBlocks();
10578:         table = gen_xmlHashTablePtr(n_table, 0);
10579:         name = gen_const_xmlChar_ptr(n_name, 1);
10580:         name2 = gen_const_xmlChar_ptr(n_name2, 2);
10581:         userdata = gen_userdata(n_userdata, 3);
10582:         f = gen_xmlHashDeallocator(n_f, 4);
10583: 
10584:         ret_val = xmlHashUpdateEntry2(table, (const xmlChar *)name, (const xmlChar *)name2, userdata, f);
10585:         desret_int(ret_val);
10586:         call_tests++;
10587:         des_xmlHashTablePtr(n_table, table, 0);
10588:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
10589:         des_const_xmlChar_ptr(n_name2, (const xmlChar *)name2, 2);
10590:         des_userdata(n_userdata, userdata, 3);
10591:         des_xmlHashDeallocator(n_f, f, 4);
10592:         xmlResetLastError();
10593:         if (mem_base != xmlMemBlocks()) {
10594:             printf("Leak of %d blocks found in xmlHashUpdateEntry2",
10595: 	           xmlMemBlocks() - mem_base);
10596: 	    test_ret++;
10597:             printf(" %d", n_table);
10598:             printf(" %d", n_name);
10599:             printf(" %d", n_name2);
10600:             printf(" %d", n_userdata);
10601:             printf(" %d", n_f);
10602:             printf("\n");
10603:         }
10604:     }
10605:     }
10606:     }
10607:     }
10608:     }
10609:     function_tests++;
10610: 
10611:     return(test_ret);
10612: }
10613: 
10614: 
10615: static int
10616: test_xmlHashUpdateEntry3(void) {
10617:     int test_ret = 0;
10618: 
10619:     int mem_base;
10620:     int ret_val;
10621:     xmlHashTablePtr table; /* the hash table */
10622:     int n_table;
10623:     xmlChar * name; /* the name of the userdata */
10624:     int n_name;
10625:     xmlChar * name2; /* a second name of the userdata */
10626:     int n_name2;
10627:     xmlChar * name3; /* a third name of the userdata */
10628:     int n_name3;
10629:     void * userdata; /* a pointer to the userdata */
10630:     int n_userdata;
10631:     xmlHashDeallocator f; /* the deallocator function for replaced item (if any) */
10632:     int n_f;
10633: 
10634:     for (n_table = 0;n_table < gen_nb_xmlHashTablePtr;n_table++) {
10635:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
10636:     for (n_name2 = 0;n_name2 < gen_nb_const_xmlChar_ptr;n_name2++) {
10637:     for (n_name3 = 0;n_name3 < gen_nb_const_xmlChar_ptr;n_name3++) {
10638:     for (n_userdata = 0;n_userdata < gen_nb_userdata;n_userdata++) {
10639:     for (n_f = 0;n_f < gen_nb_xmlHashDeallocator;n_f++) {
10640:         mem_base = xmlMemBlocks();
10641:         table = gen_xmlHashTablePtr(n_table, 0);
10642:         name = gen_const_xmlChar_ptr(n_name, 1);
10643:         name2 = gen_const_xmlChar_ptr(n_name2, 2);
10644:         name3 = gen_const_xmlChar_ptr(n_name3, 3);
10645:         userdata = gen_userdata(n_userdata, 4);
10646:         f = gen_xmlHashDeallocator(n_f, 5);
10647: 
10648:         ret_val = xmlHashUpdateEntry3(table, (const xmlChar *)name, (const xmlChar *)name2, (const xmlChar *)name3, userdata, f);
10649:         desret_int(ret_val);
10650:         call_tests++;
10651:         des_xmlHashTablePtr(n_table, table, 0);
10652:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
10653:         des_const_xmlChar_ptr(n_name2, (const xmlChar *)name2, 2);
10654:         des_const_xmlChar_ptr(n_name3, (const xmlChar *)name3, 3);
10655:         des_userdata(n_userdata, userdata, 4);
10656:         des_xmlHashDeallocator(n_f, f, 5);
10657:         xmlResetLastError();
10658:         if (mem_base != xmlMemBlocks()) {
10659:             printf("Leak of %d blocks found in xmlHashUpdateEntry3",
10660: 	           xmlMemBlocks() - mem_base);
10661: 	    test_ret++;
10662:             printf(" %d", n_table);
10663:             printf(" %d", n_name);
10664:             printf(" %d", n_name2);
10665:             printf(" %d", n_name3);
10666:             printf(" %d", n_userdata);
10667:             printf(" %d", n_f);
10668:             printf("\n");
10669:         }
10670:     }
10671:     }
10672:     }
10673:     }
10674:     }
10675:     }
10676:     function_tests++;
10677: 
10678:     return(test_ret);
10679: }
10680: 
10681: static int
10682: test_hash(void) {
10683:     int test_ret = 0;
10684: 
10685:     if (quiet == 0) printf("Testing hash : 16 of 24 functions ...\n");
10686:     test_ret += test_xmlHashAddEntry();
10687:     test_ret += test_xmlHashAddEntry2();
10688:     test_ret += test_xmlHashAddEntry3();
10689:     test_ret += test_xmlHashCopy();
10690:     test_ret += test_xmlHashCreate();
10691:     test_ret += test_xmlHashCreateDict();
10692:     test_ret += test_xmlHashLookup();
10693:     test_ret += test_xmlHashLookup2();
10694:     test_ret += test_xmlHashLookup3();
10695:     test_ret += test_xmlHashQLookup();
10696:     test_ret += test_xmlHashQLookup2();
10697:     test_ret += test_xmlHashQLookup3();
10698:     test_ret += test_xmlHashRemoveEntry();
10699:     test_ret += test_xmlHashRemoveEntry2();
10700:     test_ret += test_xmlHashRemoveEntry3();
10701:     test_ret += test_xmlHashScan();
10702:     test_ret += test_xmlHashScan3();
10703:     test_ret += test_xmlHashScanFull();
10704:     test_ret += test_xmlHashScanFull3();
10705:     test_ret += test_xmlHashSize();
10706:     test_ret += test_xmlHashUpdateEntry();
10707:     test_ret += test_xmlHashUpdateEntry2();
10708:     test_ret += test_xmlHashUpdateEntry3();
10709: 
10710:     if (test_ret != 0)
10711: 	printf("Module hash: %d errors\n", test_ret);
10712:     return(test_ret);
10713: }
10714: 
10715: #define gen_nb_xmlLinkPtr 1
10716: static xmlLinkPtr gen_xmlLinkPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
10717:     return(NULL);
10718: }
10719: static void des_xmlLinkPtr(int no ATTRIBUTE_UNUSED, xmlLinkPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
10720: }
10721: 
10722: static int
10723: test_xmlLinkGetData(void) {
10724:     int test_ret = 0;
10725: 
10726:     int mem_base;
10727:     void * ret_val;
10728:     xmlLinkPtr lk; /* a link */
10729:     int n_lk;
10730: 
10731:     for (n_lk = 0;n_lk < gen_nb_xmlLinkPtr;n_lk++) {
10732:         mem_base = xmlMemBlocks();
10733:         lk = gen_xmlLinkPtr(n_lk, 0);
10734: 
10735:         ret_val = xmlLinkGetData(lk);
10736:         desret_void_ptr(ret_val);
10737:         call_tests++;
10738:         des_xmlLinkPtr(n_lk, lk, 0);
10739:         xmlResetLastError();
10740:         if (mem_base != xmlMemBlocks()) {
10741:             printf("Leak of %d blocks found in xmlLinkGetData",
10742: 	           xmlMemBlocks() - mem_base);
10743: 	    test_ret++;
10744:             printf(" %d", n_lk);
10745:             printf("\n");
10746:         }
10747:     }
10748:     function_tests++;
10749: 
10750:     return(test_ret);
10751: }
10752: 
10753: 
10754: static int
10755: test_xmlListAppend(void) {
10756:     int test_ret = 0;
10757: 
10758:     int mem_base;
10759:     int ret_val;
10760:     xmlListPtr l; /* a list */
10761:     int n_l;
10762:     void * data; /* the data */
10763:     int n_data;
10764: 
10765:     for (n_l = 0;n_l < gen_nb_xmlListPtr;n_l++) {
10766:     for (n_data = 0;n_data < gen_nb_userdata;n_data++) {
10767:         mem_base = xmlMemBlocks();
10768:         l = gen_xmlListPtr(n_l, 0);
10769:         data = gen_userdata(n_data, 1);
10770: 
10771:         ret_val = xmlListAppend(l, data);
10772:         desret_int(ret_val);
10773:         call_tests++;
10774:         des_xmlListPtr(n_l, l, 0);
10775:         des_userdata(n_data, data, 1);
10776:         xmlResetLastError();
10777:         if (mem_base != xmlMemBlocks()) {
10778:             printf("Leak of %d blocks found in xmlListAppend",
10779: 	           xmlMemBlocks() - mem_base);
10780: 	    test_ret++;
10781:             printf(" %d", n_l);
10782:             printf(" %d", n_data);
10783:             printf("\n");
10784:         }
10785:     }
10786:     }
10787:     function_tests++;
10788: 
10789:     return(test_ret);
10790: }
10791: 
10792: 
10793: static int
10794: test_xmlListClear(void) {
10795:     int test_ret = 0;
10796: 
10797:     int mem_base;
10798:     xmlListPtr l; /* a list */
10799:     int n_l;
10800: 
10801:     for (n_l = 0;n_l < gen_nb_xmlListPtr;n_l++) {
10802:         mem_base = xmlMemBlocks();
10803:         l = gen_xmlListPtr(n_l, 0);
10804: 
10805:         xmlListClear(l);
10806:         call_tests++;
10807:         des_xmlListPtr(n_l, l, 0);
10808:         xmlResetLastError();
10809:         if (mem_base != xmlMemBlocks()) {
10810:             printf("Leak of %d blocks found in xmlListClear",
10811: 	           xmlMemBlocks() - mem_base);
10812: 	    test_ret++;
10813:             printf(" %d", n_l);
10814:             printf("\n");
10815:         }
10816:     }
10817:     function_tests++;
10818: 
10819:     return(test_ret);
10820: }
10821: 
10822: 
10823: #define gen_nb_const_xmlListPtr 1
10824: static xmlListPtr gen_const_xmlListPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
10825:     return(NULL);
10826: }
10827: static void des_const_xmlListPtr(int no ATTRIBUTE_UNUSED, const xmlListPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
10828: }
10829: 
10830: static int
10831: test_xmlListCopy(void) {
10832:     int test_ret = 0;
10833: 
10834:     int mem_base;
10835:     int ret_val;
10836:     xmlListPtr cur; /* the new list */
10837:     int n_cur;
10838:     xmlListPtr old; /* the old list */
10839:     int n_old;
10840: 
10841:     for (n_cur = 0;n_cur < gen_nb_xmlListPtr;n_cur++) {
10842:     for (n_old = 0;n_old < gen_nb_const_xmlListPtr;n_old++) {
10843:         mem_base = xmlMemBlocks();
10844:         cur = gen_xmlListPtr(n_cur, 0);
10845:         old = gen_const_xmlListPtr(n_old, 1);
10846: 
10847:         ret_val = xmlListCopy(cur, (const xmlListPtr)old);
10848:         desret_int(ret_val);
10849:         call_tests++;
10850:         des_xmlListPtr(n_cur, cur, 0);
10851:         des_const_xmlListPtr(n_old, (const xmlListPtr)old, 1);
10852:         xmlResetLastError();
10853:         if (mem_base != xmlMemBlocks()) {
10854:             printf("Leak of %d blocks found in xmlListCopy",
10855: 	           xmlMemBlocks() - mem_base);
10856: 	    test_ret++;
10857:             printf(" %d", n_cur);
10858:             printf(" %d", n_old);
10859:             printf("\n");
10860:         }
10861:     }
10862:     }
10863:     function_tests++;
10864: 
10865:     return(test_ret);
10866: }
10867: 
10868: 
10869: static int
10870: test_xmlListCreate(void) {
10871:     int test_ret = 0;
10872: 
10873: 
10874:     /* missing type support */
10875:     return(test_ret);
10876: }
10877: 
10878: 
10879: static int
10880: test_xmlListDup(void) {
10881:     int test_ret = 0;
10882: 
10883: 
10884:     /* missing type support */
10885:     return(test_ret);
10886: }
10887: 
10888: 
10889: static int
10890: test_xmlListEmpty(void) {
10891:     int test_ret = 0;
10892: 
10893:     int mem_base;
10894:     int ret_val;
10895:     xmlListPtr l; /* a list */
10896:     int n_l;
10897: 
10898:     for (n_l = 0;n_l < gen_nb_xmlListPtr;n_l++) {
10899:         mem_base = xmlMemBlocks();
10900:         l = gen_xmlListPtr(n_l, 0);
10901: 
10902:         ret_val = xmlListEmpty(l);
10903:         desret_int(ret_val);
10904:         call_tests++;
10905:         des_xmlListPtr(n_l, l, 0);
10906:         xmlResetLastError();
10907:         if (mem_base != xmlMemBlocks()) {
10908:             printf("Leak of %d blocks found in xmlListEmpty",
10909: 	           xmlMemBlocks() - mem_base);
10910: 	    test_ret++;
10911:             printf(" %d", n_l);
10912:             printf("\n");
10913:         }
10914:     }
10915:     function_tests++;
10916: 
10917:     return(test_ret);
10918: }
10919: 
10920: 
10921: static int
10922: test_xmlListEnd(void) {
10923:     int test_ret = 0;
10924: 
10925: 
10926:     /* missing type support */
10927:     return(test_ret);
10928: }
10929: 
10930: 
10931: static int
10932: test_xmlListFront(void) {
10933:     int test_ret = 0;
10934: 
10935: 
10936:     /* missing type support */
10937:     return(test_ret);
10938: }
10939: 
10940: 
10941: static int
10942: test_xmlListInsert(void) {
10943:     int test_ret = 0;
10944: 
10945:     int mem_base;
10946:     int ret_val;
10947:     xmlListPtr l; /* a list */
10948:     int n_l;
10949:     void * data; /* the data */
10950:     int n_data;
10951: 
10952:     for (n_l = 0;n_l < gen_nb_xmlListPtr;n_l++) {
10953:     for (n_data = 0;n_data < gen_nb_userdata;n_data++) {
10954:         mem_base = xmlMemBlocks();
10955:         l = gen_xmlListPtr(n_l, 0);
10956:         data = gen_userdata(n_data, 1);
10957: 
10958:         ret_val = xmlListInsert(l, data);
10959:         desret_int(ret_val);
10960:         call_tests++;
10961:         des_xmlListPtr(n_l, l, 0);
10962:         des_userdata(n_data, data, 1);
10963:         xmlResetLastError();
10964:         if (mem_base != xmlMemBlocks()) {
10965:             printf("Leak of %d blocks found in xmlListInsert",
10966: 	           xmlMemBlocks() - mem_base);
10967: 	    test_ret++;
10968:             printf(" %d", n_l);
10969:             printf(" %d", n_data);
10970:             printf("\n");
10971:         }
10972:     }
10973:     }
10974:     function_tests++;
10975: 
10976:     return(test_ret);
10977: }
10978: 
10979: 
10980: static int
10981: test_xmlListMerge(void) {
10982:     int test_ret = 0;
10983: 
10984:     int mem_base;
10985:     xmlListPtr l1; /* the original list */
10986:     int n_l1;
10987:     xmlListPtr l2; /* the new list */
10988:     int n_l2;
10989: 
10990:     for (n_l1 = 0;n_l1 < gen_nb_xmlListPtr;n_l1++) {
10991:     for (n_l2 = 0;n_l2 < gen_nb_xmlListPtr;n_l2++) {
10992:         mem_base = xmlMemBlocks();
10993:         l1 = gen_xmlListPtr(n_l1, 0);
10994:         l2 = gen_xmlListPtr(n_l2, 1);
10995: 
10996:         xmlListMerge(l1, l2);
10997:         call_tests++;
10998:         des_xmlListPtr(n_l1, l1, 0);
10999:         des_xmlListPtr(n_l2, l2, 1);
11000:         xmlResetLastError();
11001:         if (mem_base != xmlMemBlocks()) {
11002:             printf("Leak of %d blocks found in xmlListMerge",
11003: 	           xmlMemBlocks() - mem_base);
11004: 	    test_ret++;
11005:             printf(" %d", n_l1);
11006:             printf(" %d", n_l2);
11007:             printf("\n");
11008:         }
11009:     }
11010:     }
11011:     function_tests++;
11012: 
11013:     return(test_ret);
11014: }
11015: 
11016: 
11017: static int
11018: test_xmlListPopBack(void) {
11019:     int test_ret = 0;
11020: 
11021:     int mem_base;
11022:     xmlListPtr l; /* a list */
11023:     int n_l;
11024: 
11025:     for (n_l = 0;n_l < gen_nb_xmlListPtr;n_l++) {
11026:         mem_base = xmlMemBlocks();
11027:         l = gen_xmlListPtr(n_l, 0);
11028: 
11029:         xmlListPopBack(l);
11030:         call_tests++;
11031:         des_xmlListPtr(n_l, l, 0);
11032:         xmlResetLastError();
11033:         if (mem_base != xmlMemBlocks()) {
11034:             printf("Leak of %d blocks found in xmlListPopBack",
11035: 	           xmlMemBlocks() - mem_base);
11036: 	    test_ret++;
11037:             printf(" %d", n_l);
11038:             printf("\n");
11039:         }
11040:     }
11041:     function_tests++;
11042: 
11043:     return(test_ret);
11044: }
11045: 
11046: 
11047: static int
11048: test_xmlListPopFront(void) {
11049:     int test_ret = 0;
11050: 
11051:     int mem_base;
11052:     xmlListPtr l; /* a list */
11053:     int n_l;
11054: 
11055:     for (n_l = 0;n_l < gen_nb_xmlListPtr;n_l++) {
11056:         mem_base = xmlMemBlocks();
11057:         l = gen_xmlListPtr(n_l, 0);
11058: 
11059:         xmlListPopFront(l);
11060:         call_tests++;
11061:         des_xmlListPtr(n_l, l, 0);
11062:         xmlResetLastError();
11063:         if (mem_base != xmlMemBlocks()) {
11064:             printf("Leak of %d blocks found in xmlListPopFront",
11065: 	           xmlMemBlocks() - mem_base);
11066: 	    test_ret++;
11067:             printf(" %d", n_l);
11068:             printf("\n");
11069:         }
11070:     }
11071:     function_tests++;
11072: 
11073:     return(test_ret);
11074: }
11075: 
11076: 
11077: static int
11078: test_xmlListPushBack(void) {
11079:     int test_ret = 0;
11080: 
11081:     int mem_base;
11082:     int ret_val;
11083:     xmlListPtr l; /* a list */
11084:     int n_l;
11085:     void * data; /* new data */
11086:     int n_data;
11087: 
11088:     for (n_l = 0;n_l < gen_nb_xmlListPtr;n_l++) {
11089:     for (n_data = 0;n_data < gen_nb_userdata;n_data++) {
11090:         mem_base = xmlMemBlocks();
11091:         l = gen_xmlListPtr(n_l, 0);
11092:         data = gen_userdata(n_data, 1);
11093: 
11094:         ret_val = xmlListPushBack(l, data);
11095:         desret_int(ret_val);
11096:         call_tests++;
11097:         des_xmlListPtr(n_l, l, 0);
11098:         des_userdata(n_data, data, 1);
11099:         xmlResetLastError();
11100:         if (mem_base != xmlMemBlocks()) {
11101:             printf("Leak of %d blocks found in xmlListPushBack",
11102: 	           xmlMemBlocks() - mem_base);
11103: 	    test_ret++;
11104:             printf(" %d", n_l);
11105:             printf(" %d", n_data);
11106:             printf("\n");
11107:         }
11108:     }
11109:     }
11110:     function_tests++;
11111: 
11112:     return(test_ret);
11113: }
11114: 
11115: 
11116: static int
11117: test_xmlListPushFront(void) {
11118:     int test_ret = 0;
11119: 
11120:     int mem_base;
11121:     int ret_val;
11122:     xmlListPtr l; /* a list */
11123:     int n_l;
11124:     void * data; /* new data */
11125:     int n_data;
11126: 
11127:     for (n_l = 0;n_l < gen_nb_xmlListPtr;n_l++) {
11128:     for (n_data = 0;n_data < gen_nb_userdata;n_data++) {
11129:         mem_base = xmlMemBlocks();
11130:         l = gen_xmlListPtr(n_l, 0);
11131:         data = gen_userdata(n_data, 1);
11132: 
11133:         ret_val = xmlListPushFront(l, data);
11134:         desret_int(ret_val);
11135:         call_tests++;
11136:         des_xmlListPtr(n_l, l, 0);
11137:         des_userdata(n_data, data, 1);
11138:         xmlResetLastError();
11139:         if (mem_base != xmlMemBlocks()) {
11140:             printf("Leak of %d blocks found in xmlListPushFront",
11141: 	           xmlMemBlocks() - mem_base);
11142: 	    test_ret++;
11143:             printf(" %d", n_l);
11144:             printf(" %d", n_data);
11145:             printf("\n");
11146:         }
11147:     }
11148:     }
11149:     function_tests++;
11150: 
11151:     return(test_ret);
11152: }
11153: 
11154: 
11155: static int
11156: test_xmlListRemoveAll(void) {
11157:     int test_ret = 0;
11158: 
11159:     int mem_base;
11160:     int ret_val;
11161:     xmlListPtr l; /* a list */
11162:     int n_l;
11163:     void * data; /* list data */
11164:     int n_data;
11165: 
11166:     for (n_l = 0;n_l < gen_nb_xmlListPtr;n_l++) {
11167:     for (n_data = 0;n_data < gen_nb_userdata;n_data++) {
11168:         mem_base = xmlMemBlocks();
11169:         l = gen_xmlListPtr(n_l, 0);
11170:         data = gen_userdata(n_data, 1);
11171: 
11172:         ret_val = xmlListRemoveAll(l, data);
11173:         desret_int(ret_val);
11174:         call_tests++;
11175:         des_xmlListPtr(n_l, l, 0);
11176:         des_userdata(n_data, data, 1);
11177:         xmlResetLastError();
11178:         if (mem_base != xmlMemBlocks()) {
11179:             printf("Leak of %d blocks found in xmlListRemoveAll",
11180: 	           xmlMemBlocks() - mem_base);
11181: 	    test_ret++;
11182:             printf(" %d", n_l);
11183:             printf(" %d", n_data);
11184:             printf("\n");
11185:         }
11186:     }
11187:     }
11188:     function_tests++;
11189: 
11190:     return(test_ret);
11191: }
11192: 
11193: 
11194: static int
11195: test_xmlListRemoveFirst(void) {
11196:     int test_ret = 0;
11197: 
11198:     int mem_base;
11199:     int ret_val;
11200:     xmlListPtr l; /* a list */
11201:     int n_l;
11202:     void * data; /* list data */
11203:     int n_data;
11204: 
11205:     for (n_l = 0;n_l < gen_nb_xmlListPtr;n_l++) {
11206:     for (n_data = 0;n_data < gen_nb_userdata;n_data++) {
11207:         mem_base = xmlMemBlocks();
11208:         l = gen_xmlListPtr(n_l, 0);
11209:         data = gen_userdata(n_data, 1);
11210: 
11211:         ret_val = xmlListRemoveFirst(l, data);
11212:         desret_int(ret_val);
11213:         call_tests++;
11214:         des_xmlListPtr(n_l, l, 0);
11215:         des_userdata(n_data, data, 1);
11216:         xmlResetLastError();
11217:         if (mem_base != xmlMemBlocks()) {
11218:             printf("Leak of %d blocks found in xmlListRemoveFirst",
11219: 	           xmlMemBlocks() - mem_base);
11220: 	    test_ret++;
11221:             printf(" %d", n_l);
11222:             printf(" %d", n_data);
11223:             printf("\n");
11224:         }
11225:     }
11226:     }
11227:     function_tests++;
11228: 
11229:     return(test_ret);
11230: }
11231: 
11232: 
11233: static int
11234: test_xmlListRemoveLast(void) {
11235:     int test_ret = 0;
11236: 
11237:     int mem_base;
11238:     int ret_val;
11239:     xmlListPtr l; /* a list */
11240:     int n_l;
11241:     void * data; /* list data */
11242:     int n_data;
11243: 
11244:     for (n_l = 0;n_l < gen_nb_xmlListPtr;n_l++) {
11245:     for (n_data = 0;n_data < gen_nb_userdata;n_data++) {
11246:         mem_base = xmlMemBlocks();
11247:         l = gen_xmlListPtr(n_l, 0);
11248:         data = gen_userdata(n_data, 1);
11249: 
11250:         ret_val = xmlListRemoveLast(l, data);
11251:         desret_int(ret_val);
11252:         call_tests++;
11253:         des_xmlListPtr(n_l, l, 0);
11254:         des_userdata(n_data, data, 1);
11255:         xmlResetLastError();
11256:         if (mem_base != xmlMemBlocks()) {
11257:             printf("Leak of %d blocks found in xmlListRemoveLast",
11258: 	           xmlMemBlocks() - mem_base);
11259: 	    test_ret++;
11260:             printf(" %d", n_l);
11261:             printf(" %d", n_data);
11262:             printf("\n");
11263:         }
11264:     }
11265:     }
11266:     function_tests++;
11267: 
11268:     return(test_ret);
11269: }
11270: 
11271: 
11272: static int
11273: test_xmlListReverse(void) {
11274:     int test_ret = 0;
11275: 
11276:     int mem_base;
11277:     xmlListPtr l; /* a list */
11278:     int n_l;
11279: 
11280:     for (n_l = 0;n_l < gen_nb_xmlListPtr;n_l++) {
11281:         mem_base = xmlMemBlocks();
11282:         l = gen_xmlListPtr(n_l, 0);
11283: 
11284:         xmlListReverse(l);
11285:         call_tests++;
11286:         des_xmlListPtr(n_l, l, 0);
11287:         xmlResetLastError();
11288:         if (mem_base != xmlMemBlocks()) {
11289:             printf("Leak of %d blocks found in xmlListReverse",
11290: 	           xmlMemBlocks() - mem_base);
11291: 	    test_ret++;
11292:             printf(" %d", n_l);
11293:             printf("\n");
11294:         }
11295:     }
11296:     function_tests++;
11297: 
11298:     return(test_ret);
11299: }
11300: 
11301: 
11302: static int
11303: test_xmlListReverseSearch(void) {
11304:     int test_ret = 0;
11305: 
11306:     int mem_base;
11307:     void * ret_val;
11308:     xmlListPtr l; /* a list */
11309:     int n_l;
11310:     void * data; /* a search value */
11311:     int n_data;
11312: 
11313:     for (n_l = 0;n_l < gen_nb_xmlListPtr;n_l++) {
11314:     for (n_data = 0;n_data < gen_nb_userdata;n_data++) {
11315:         mem_base = xmlMemBlocks();
11316:         l = gen_xmlListPtr(n_l, 0);
11317:         data = gen_userdata(n_data, 1);
11318: 
11319:         ret_val = xmlListReverseSearch(l, data);
11320:         desret_void_ptr(ret_val);
11321:         call_tests++;
11322:         des_xmlListPtr(n_l, l, 0);
11323:         des_userdata(n_data, data, 1);
11324:         xmlResetLastError();
11325:         if (mem_base != xmlMemBlocks()) {
11326:             printf("Leak of %d blocks found in xmlListReverseSearch",
11327: 	           xmlMemBlocks() - mem_base);
11328: 	    test_ret++;
11329:             printf(" %d", n_l);
11330:             printf(" %d", n_data);
11331:             printf("\n");
11332:         }
11333:     }
11334:     }
11335:     function_tests++;
11336: 
11337:     return(test_ret);
11338: }
11339: 
11340: 
11341: static int
11342: test_xmlListReverseWalk(void) {
11343:     int test_ret = 0;
11344: 
11345: 
11346:     /* missing type support */
11347:     return(test_ret);
11348: }
11349: 
11350: 
11351: static int
11352: test_xmlListSearch(void) {
11353:     int test_ret = 0;
11354: 
11355:     int mem_base;
11356:     void * ret_val;
11357:     xmlListPtr l; /* a list */
11358:     int n_l;
11359:     void * data; /* a search value */
11360:     int n_data;
11361: 
11362:     for (n_l = 0;n_l < gen_nb_xmlListPtr;n_l++) {
11363:     for (n_data = 0;n_data < gen_nb_userdata;n_data++) {
11364:         mem_base = xmlMemBlocks();
11365:         l = gen_xmlListPtr(n_l, 0);
11366:         data = gen_userdata(n_data, 1);
11367: 
11368:         ret_val = xmlListSearch(l, data);
11369:         desret_void_ptr(ret_val);
11370:         call_tests++;
11371:         des_xmlListPtr(n_l, l, 0);
11372:         des_userdata(n_data, data, 1);
11373:         xmlResetLastError();
11374:         if (mem_base != xmlMemBlocks()) {
11375:             printf("Leak of %d blocks found in xmlListSearch",
11376: 	           xmlMemBlocks() - mem_base);
11377: 	    test_ret++;
11378:             printf(" %d", n_l);
11379:             printf(" %d", n_data);
11380:             printf("\n");
11381:         }
11382:     }
11383:     }
11384:     function_tests++;
11385: 
11386:     return(test_ret);
11387: }
11388: 
11389: 
11390: static int
11391: test_xmlListSize(void) {
11392:     int test_ret = 0;
11393: 
11394:     int mem_base;
11395:     int ret_val;
11396:     xmlListPtr l; /* a list */
11397:     int n_l;
11398: 
11399:     for (n_l = 0;n_l < gen_nb_xmlListPtr;n_l++) {
11400:         mem_base = xmlMemBlocks();
11401:         l = gen_xmlListPtr(n_l, 0);
11402: 
11403:         ret_val = xmlListSize(l);
11404:         desret_int(ret_val);
11405:         call_tests++;
11406:         des_xmlListPtr(n_l, l, 0);
11407:         xmlResetLastError();
11408:         if (mem_base != xmlMemBlocks()) {
11409:             printf("Leak of %d blocks found in xmlListSize",
11410: 	           xmlMemBlocks() - mem_base);
11411: 	    test_ret++;
11412:             printf(" %d", n_l);
11413:             printf("\n");
11414:         }
11415:     }
11416:     function_tests++;
11417: 
11418:     return(test_ret);
11419: }
11420: 
11421: 
11422: static int
11423: test_xmlListSort(void) {
11424:     int test_ret = 0;
11425: 
11426:     int mem_base;
11427:     xmlListPtr l; /* a list */
11428:     int n_l;
11429: 
11430:     for (n_l = 0;n_l < gen_nb_xmlListPtr;n_l++) {
11431:         mem_base = xmlMemBlocks();
11432:         l = gen_xmlListPtr(n_l, 0);
11433: 
11434:         xmlListSort(l);
11435:         call_tests++;
11436:         des_xmlListPtr(n_l, l, 0);
11437:         xmlResetLastError();
11438:         if (mem_base != xmlMemBlocks()) {
11439:             printf("Leak of %d blocks found in xmlListSort",
11440: 	           xmlMemBlocks() - mem_base);
11441: 	    test_ret++;
11442:             printf(" %d", n_l);
11443:             printf("\n");
11444:         }
11445:     }
11446:     function_tests++;
11447: 
11448:     return(test_ret);
11449: }
11450: 
11451: 
11452: static int
11453: test_xmlListWalk(void) {
11454:     int test_ret = 0;
11455: 
11456: 
11457:     /* missing type support */
11458:     return(test_ret);
11459: }
11460: 
11461: static int
11462: test_list(void) {
11463:     int test_ret = 0;
11464: 
11465:     if (quiet == 0) printf("Testing list : 19 of 26 functions ...\n");
11466:     test_ret += test_xmlLinkGetData();
11467:     test_ret += test_xmlListAppend();
11468:     test_ret += test_xmlListClear();
11469:     test_ret += test_xmlListCopy();
11470:     test_ret += test_xmlListCreate();
11471:     test_ret += test_xmlListDup();
11472:     test_ret += test_xmlListEmpty();
11473:     test_ret += test_xmlListEnd();
11474:     test_ret += test_xmlListFront();
11475:     test_ret += test_xmlListInsert();
11476:     test_ret += test_xmlListMerge();
11477:     test_ret += test_xmlListPopBack();
11478:     test_ret += test_xmlListPopFront();
11479:     test_ret += test_xmlListPushBack();
11480:     test_ret += test_xmlListPushFront();
11481:     test_ret += test_xmlListRemoveAll();
11482:     test_ret += test_xmlListRemoveFirst();
11483:     test_ret += test_xmlListRemoveLast();
11484:     test_ret += test_xmlListReverse();
11485:     test_ret += test_xmlListReverseSearch();
11486:     test_ret += test_xmlListReverseWalk();
11487:     test_ret += test_xmlListSearch();
11488:     test_ret += test_xmlListSize();
11489:     test_ret += test_xmlListSort();
11490:     test_ret += test_xmlListWalk();
11491: 
11492:     if (test_ret != 0)
11493: 	printf("Module list: %d errors\n", test_ret);
11494:     return(test_ret);
11495: }
11496: 
11497: static int
11498: test_xmlNanoFTPCheckResponse(void) {
11499:     int test_ret = 0;
11500: 
11501: #if defined(LIBXML_FTP_ENABLED)
11502:     int mem_base;
11503:     int ret_val;
11504:     void * ctx; /* an FTP context */
11505:     int n_ctx;
11506: 
11507:     for (n_ctx = 0;n_ctx < gen_nb_xmlNanoFTPCtxtPtr;n_ctx++) {
11508:         mem_base = xmlMemBlocks();
11509:         ctx = gen_xmlNanoFTPCtxtPtr(n_ctx, 0);
11510: 
11511:         ret_val = xmlNanoFTPCheckResponse(ctx);
11512:         desret_int(ret_val);
11513:         call_tests++;
11514:         des_xmlNanoFTPCtxtPtr(n_ctx, ctx, 0);
11515:         xmlResetLastError();
11516:         if (mem_base != xmlMemBlocks()) {
11517:             printf("Leak of %d blocks found in xmlNanoFTPCheckResponse",
11518: 	           xmlMemBlocks() - mem_base);
11519: 	    test_ret++;
11520:             printf(" %d", n_ctx);
11521:             printf("\n");
11522:         }
11523:     }
11524:     function_tests++;
11525: #endif
11526: 
11527:     return(test_ret);
11528: }
11529: 
11530: 
11531: static int
11532: test_xmlNanoFTPCleanup(void) {
11533:     int test_ret = 0;
11534: 
11535: #if defined(LIBXML_FTP_ENABLED)
11536:     int mem_base;
11537: 
11538:         mem_base = xmlMemBlocks();
11539: 
11540:         xmlNanoFTPCleanup();
11541:         call_tests++;
11542:         xmlResetLastError();
11543:         if (mem_base != xmlMemBlocks()) {
11544:             printf("Leak of %d blocks found in xmlNanoFTPCleanup",
11545: 	           xmlMemBlocks() - mem_base);
11546: 	    test_ret++;
11547:             printf("\n");
11548:         }
11549:     function_tests++;
11550: #endif
11551: 
11552:     return(test_ret);
11553: }
11554: 
11555: 
11556: static int
11557: test_xmlNanoFTPCloseConnection(void) {
11558:     int test_ret = 0;
11559: 
11560: #if defined(LIBXML_FTP_ENABLED)
11561:     int mem_base;
11562:     int ret_val;
11563:     void * ctx; /* an FTP context */
11564:     int n_ctx;
11565: 
11566:     for (n_ctx = 0;n_ctx < gen_nb_xmlNanoFTPCtxtPtr;n_ctx++) {
11567:         mem_base = xmlMemBlocks();
11568:         ctx = gen_xmlNanoFTPCtxtPtr(n_ctx, 0);
11569: 
11570:         ret_val = xmlNanoFTPCloseConnection(ctx);
11571:         desret_int(ret_val);
11572:         call_tests++;
11573:         des_xmlNanoFTPCtxtPtr(n_ctx, ctx, 0);
11574:         xmlResetLastError();
11575:         if (mem_base != xmlMemBlocks()) {
11576:             printf("Leak of %d blocks found in xmlNanoFTPCloseConnection",
11577: 	           xmlMemBlocks() - mem_base);
11578: 	    test_ret++;
11579:             printf(" %d", n_ctx);
11580:             printf("\n");
11581:         }
11582:     }
11583:     function_tests++;
11584: #endif
11585: 
11586:     return(test_ret);
11587: }
11588: 
11589: 
11590: static int
11591: test_xmlNanoFTPCwd(void) {
11592:     int test_ret = 0;
11593: 
11594: #if defined(LIBXML_FTP_ENABLED)
11595:     int mem_base;
11596:     int ret_val;
11597:     void * ctx; /* an FTP context */
11598:     int n_ctx;
11599:     char * directory; /* a directory on the server */
11600:     int n_directory;
11601: 
11602:     for (n_ctx = 0;n_ctx < gen_nb_xmlNanoFTPCtxtPtr;n_ctx++) {
11603:     for (n_directory = 0;n_directory < gen_nb_const_char_ptr;n_directory++) {
11604:         mem_base = xmlMemBlocks();
11605:         ctx = gen_xmlNanoFTPCtxtPtr(n_ctx, 0);
11606:         directory = gen_const_char_ptr(n_directory, 1);
11607: 
11608:         ret_val = xmlNanoFTPCwd(ctx, (const char *)directory);
11609:         desret_int(ret_val);
11610:         call_tests++;
11611:         des_xmlNanoFTPCtxtPtr(n_ctx, ctx, 0);
11612:         des_const_char_ptr(n_directory, (const char *)directory, 1);
11613:         xmlResetLastError();
11614:         if (mem_base != xmlMemBlocks()) {
11615:             printf("Leak of %d blocks found in xmlNanoFTPCwd",
11616: 	           xmlMemBlocks() - mem_base);
11617: 	    test_ret++;
11618:             printf(" %d", n_ctx);
11619:             printf(" %d", n_directory);
11620:             printf("\n");
11621:         }
11622:     }
11623:     }
11624:     function_tests++;
11625: #endif
11626: 
11627:     return(test_ret);
11628: }
11629: 
11630: 
11631: static int
11632: test_xmlNanoFTPDele(void) {
11633:     int test_ret = 0;
11634: 
11635: #if defined(LIBXML_FTP_ENABLED)
11636:     int mem_base;
11637:     int ret_val;
11638:     void * ctx; /* an FTP context */
11639:     int n_ctx;
11640:     const char * file; /* a file or directory on the server */
11641:     int n_file;
11642: 
11643:     for (n_ctx = 0;n_ctx < gen_nb_xmlNanoFTPCtxtPtr;n_ctx++) {
11644:     for (n_file = 0;n_file < gen_nb_filepath;n_file++) {
11645:         mem_base = xmlMemBlocks();
11646:         ctx = gen_xmlNanoFTPCtxtPtr(n_ctx, 0);
11647:         file = gen_filepath(n_file, 1);
11648: 
11649:         ret_val = xmlNanoFTPDele(ctx, file);
11650:         desret_int(ret_val);
11651:         call_tests++;
11652:         des_xmlNanoFTPCtxtPtr(n_ctx, ctx, 0);
11653:         des_filepath(n_file, file, 1);
11654:         xmlResetLastError();
11655:         if (mem_base != xmlMemBlocks()) {
11656:             printf("Leak of %d blocks found in xmlNanoFTPDele",
11657: 	           xmlMemBlocks() - mem_base);
11658: 	    test_ret++;
11659:             printf(" %d", n_ctx);
11660:             printf(" %d", n_file);
11661:             printf("\n");
11662:         }
11663:     }
11664:     }
11665:     function_tests++;
11666: #endif
11667: 
11668:     return(test_ret);
11669: }
11670: 
11671: 
11672: static int
11673: test_xmlNanoFTPGet(void) {
11674:     int test_ret = 0;
11675: 
11676: 
11677:     /* missing type support */
11678:     return(test_ret);
11679: }
11680: 
11681: 
11682: static int
11683: test_xmlNanoFTPGetConnection(void) {
11684:     int test_ret = 0;
11685: 
11686: 
11687:     /* missing type support */
11688:     return(test_ret);
11689: }
11690: 
11691: 
11692: static int
11693: test_xmlNanoFTPGetResponse(void) {
11694:     int test_ret = 0;
11695: 
11696: #if defined(LIBXML_FTP_ENABLED)
11697:     int mem_base;
11698:     int ret_val;
11699:     void * ctx; /* an FTP context */
11700:     int n_ctx;
11701: 
11702:     for (n_ctx = 0;n_ctx < gen_nb_xmlNanoFTPCtxtPtr;n_ctx++) {
11703:         mem_base = xmlMemBlocks();
11704:         ctx = gen_xmlNanoFTPCtxtPtr(n_ctx, 0);
11705: 
11706:         ret_val = xmlNanoFTPGetResponse(ctx);
11707:         desret_int(ret_val);
11708:         call_tests++;
11709:         des_xmlNanoFTPCtxtPtr(n_ctx, ctx, 0);
11710:         xmlResetLastError();
11711:         if (mem_base != xmlMemBlocks()) {
11712:             printf("Leak of %d blocks found in xmlNanoFTPGetResponse",
11713: 	           xmlMemBlocks() - mem_base);
11714: 	    test_ret++;
11715:             printf(" %d", n_ctx);
11716:             printf("\n");
11717:         }
11718:     }
11719:     function_tests++;
11720: #endif
11721: 
11722:     return(test_ret);
11723: }
11724: 
11725: 
11726: static int
11727: test_xmlNanoFTPGetSocket(void) {
11728:     int test_ret = 0;
11729: 
11730: 
11731:     /* missing type support */
11732:     return(test_ret);
11733: }
11734: 
11735: 
11736: static int
11737: test_xmlNanoFTPInit(void) {
11738:     int test_ret = 0;
11739: 
11740: #if defined(LIBXML_FTP_ENABLED)
11741:     int mem_base;
11742: 
11743:         mem_base = xmlMemBlocks();
11744: 
11745:         xmlNanoFTPInit();
11746:         call_tests++;
11747:         xmlResetLastError();
11748:         if (mem_base != xmlMemBlocks()) {
11749:             printf("Leak of %d blocks found in xmlNanoFTPInit",
11750: 	           xmlMemBlocks() - mem_base);
11751: 	    test_ret++;
11752:             printf("\n");
11753:         }
11754:     function_tests++;
11755: #endif
11756: 
11757:     return(test_ret);
11758: }
11759: 
11760: 
11761: static int
11762: test_xmlNanoFTPList(void) {
11763:     int test_ret = 0;
11764: 
11765: 
11766:     /* missing type support */
11767:     return(test_ret);
11768: }
11769: 
11770: 
11771: static int
11772: test_xmlNanoFTPNewCtxt(void) {
11773:     int test_ret = 0;
11774: 
11775: #if defined(LIBXML_FTP_ENABLED)
11776:     int mem_base;
11777:     void * ret_val;
11778:     const char * URL; /* The URL used to initialize the context */
11779:     int n_URL;
11780: 
11781:     for (n_URL = 0;n_URL < gen_nb_filepath;n_URL++) {
11782:         mem_base = xmlMemBlocks();
11783:         URL = gen_filepath(n_URL, 0);
11784: 
11785:         ret_val = xmlNanoFTPNewCtxt(URL);
11786:         desret_xmlNanoFTPCtxtPtr(ret_val);
11787:         call_tests++;
11788:         des_filepath(n_URL, URL, 0);
11789:         xmlResetLastError();
11790:         if (mem_base != xmlMemBlocks()) {
11791:             printf("Leak of %d blocks found in xmlNanoFTPNewCtxt",
11792: 	           xmlMemBlocks() - mem_base);
11793: 	    test_ret++;
11794:             printf(" %d", n_URL);
11795:             printf("\n");
11796:         }
11797:     }
11798:     function_tests++;
11799: #endif
11800: 
11801:     return(test_ret);
11802: }
11803: 
11804: 
11805: static int
11806: test_xmlNanoFTPOpen(void) {
11807:     int test_ret = 0;
11808: 
11809: #if defined(LIBXML_FTP_ENABLED)
11810:     int mem_base;
11811:     void * ret_val;
11812:     const char * URL; /* the URL to the resource */
11813:     int n_URL;
11814: 
11815:     for (n_URL = 0;n_URL < gen_nb_filepath;n_URL++) {
11816:         mem_base = xmlMemBlocks();
11817:         URL = gen_filepath(n_URL, 0);
11818: 
11819:         ret_val = xmlNanoFTPOpen(URL);
11820:         desret_xmlNanoFTPCtxtPtr(ret_val);
11821:         call_tests++;
11822:         des_filepath(n_URL, URL, 0);
11823:         xmlResetLastError();
11824:         if (mem_base != xmlMemBlocks()) {
11825:             printf("Leak of %d blocks found in xmlNanoFTPOpen",
11826: 	           xmlMemBlocks() - mem_base);
11827: 	    test_ret++;
11828:             printf(" %d", n_URL);
11829:             printf("\n");
11830:         }
11831:     }
11832:     function_tests++;
11833: #endif
11834: 
11835:     return(test_ret);
11836: }
11837: 
11838: 
11839: static int
11840: test_xmlNanoFTPProxy(void) {
11841:     int test_ret = 0;
11842: 
11843: #if defined(LIBXML_FTP_ENABLED)
11844:     char * host; /* the proxy host name */
11845:     int n_host;
11846:     int port; /* the proxy port */
11847:     int n_port;
11848:     char * user; /* the proxy user name */
11849:     int n_user;
11850:     char * passwd; /* the proxy password */
11851:     int n_passwd;
11852:     int type; /* the type of proxy 1 for using SITE, 2 for USER a@b */
11853:     int n_type;
11854: 
11855:     for (n_host = 0;n_host < gen_nb_const_char_ptr;n_host++) {
11856:     for (n_port = 0;n_port < gen_nb_int;n_port++) {
11857:     for (n_user = 0;n_user < gen_nb_const_char_ptr;n_user++) {
11858:     for (n_passwd = 0;n_passwd < gen_nb_const_char_ptr;n_passwd++) {
11859:     for (n_type = 0;n_type < gen_nb_int;n_type++) {
11860:         host = gen_const_char_ptr(n_host, 0);
11861:         port = gen_int(n_port, 1);
11862:         user = gen_const_char_ptr(n_user, 2);
11863:         passwd = gen_const_char_ptr(n_passwd, 3);
11864:         type = gen_int(n_type, 4);
11865: 
11866:         xmlNanoFTPProxy((const char *)host, port, (const char *)user, (const char *)passwd, type);
11867:         call_tests++;
11868:         des_const_char_ptr(n_host, (const char *)host, 0);
11869:         des_int(n_port, port, 1);
11870:         des_const_char_ptr(n_user, (const char *)user, 2);
11871:         des_const_char_ptr(n_passwd, (const char *)passwd, 3);
11872:         des_int(n_type, type, 4);
11873:         xmlResetLastError();
11874:     }
11875:     }
11876:     }
11877:     }
11878:     }
11879:     function_tests++;
11880: #endif
11881: 
11882:     return(test_ret);
11883: }
11884: 
11885: 
11886: static int
11887: test_xmlNanoFTPQuit(void) {
11888:     int test_ret = 0;
11889: 
11890: #if defined(LIBXML_FTP_ENABLED)
11891:     int mem_base;
11892:     int ret_val;
11893:     void * ctx; /* an FTP context */
11894:     int n_ctx;
11895: 
11896:     for (n_ctx = 0;n_ctx < gen_nb_xmlNanoFTPCtxtPtr;n_ctx++) {
11897:         mem_base = xmlMemBlocks();
11898:         ctx = gen_xmlNanoFTPCtxtPtr(n_ctx, 0);
11899: 
11900:         ret_val = xmlNanoFTPQuit(ctx);
11901:         desret_int(ret_val);
11902:         call_tests++;
11903:         des_xmlNanoFTPCtxtPtr(n_ctx, ctx, 0);
11904:         xmlResetLastError();
11905:         if (mem_base != xmlMemBlocks()) {
11906:             printf("Leak of %d blocks found in xmlNanoFTPQuit",
11907: 	           xmlMemBlocks() - mem_base);
11908: 	    test_ret++;
11909:             printf(" %d", n_ctx);
11910:             printf("\n");
11911:         }
11912:     }
11913:     function_tests++;
11914: #endif
11915: 
11916:     return(test_ret);
11917: }
11918: 
11919: 
11920: static int
11921: test_xmlNanoFTPRead(void) {
11922:     int test_ret = 0;
11923: 
11924: #if defined(LIBXML_FTP_ENABLED)
11925:     int mem_base;
11926:     int ret_val;
11927:     void * ctx; /* the FTP context */
11928:     int n_ctx;
11929:     void * dest; /* a buffer */
11930:     int n_dest;
11931:     int len; /* the buffer length */
11932:     int n_len;
11933: 
11934:     for (n_ctx = 0;n_ctx < gen_nb_xmlNanoFTPCtxtPtr;n_ctx++) {
11935:     for (n_dest = 0;n_dest < gen_nb_void_ptr;n_dest++) {
11936:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
11937:         mem_base = xmlMemBlocks();
11938:         ctx = gen_xmlNanoFTPCtxtPtr(n_ctx, 0);
11939:         dest = gen_void_ptr(n_dest, 1);
11940:         len = gen_int(n_len, 2);
11941: 
11942:         ret_val = xmlNanoFTPRead(ctx, dest, len);
11943:         desret_int(ret_val);
11944:         call_tests++;
11945:         des_xmlNanoFTPCtxtPtr(n_ctx, ctx, 0);
11946:         des_void_ptr(n_dest, dest, 1);
11947:         des_int(n_len, len, 2);
11948:         xmlResetLastError();
11949:         if (mem_base != xmlMemBlocks()) {
11950:             printf("Leak of %d blocks found in xmlNanoFTPRead",
11951: 	           xmlMemBlocks() - mem_base);
11952: 	    test_ret++;
11953:             printf(" %d", n_ctx);
11954:             printf(" %d", n_dest);
11955:             printf(" %d", n_len);
11956:             printf("\n");
11957:         }
11958:     }
11959:     }
11960:     }
11961:     function_tests++;
11962: #endif
11963: 
11964:     return(test_ret);
11965: }
11966: 
11967: 
11968: static int
11969: test_xmlNanoFTPScanProxy(void) {
11970:     int test_ret = 0;
11971: 
11972: #if defined(LIBXML_FTP_ENABLED)
11973:     const char * URL; /* The proxy URL used to initialize the proxy context */
11974:     int n_URL;
11975: 
11976:     for (n_URL = 0;n_URL < gen_nb_filepath;n_URL++) {
11977:         URL = gen_filepath(n_URL, 0);
11978: 
11979:         xmlNanoFTPScanProxy(URL);
11980:         call_tests++;
11981:         des_filepath(n_URL, URL, 0);
11982:         xmlResetLastError();
11983:     }
11984:     function_tests++;
11985: #endif
11986: 
11987:     return(test_ret);
11988: }
11989: 
11990: 
11991: static int
11992: test_xmlNanoFTPUpdateURL(void) {
11993:     int test_ret = 0;
11994: 
11995: #if defined(LIBXML_FTP_ENABLED)
11996:     int mem_base;
11997:     int ret_val;
11998:     void * ctx; /* an FTP context */
11999:     int n_ctx;
12000:     const char * URL; /* The URL used to update the context */
12001:     int n_URL;
12002: 
12003:     for (n_ctx = 0;n_ctx < gen_nb_xmlNanoFTPCtxtPtr;n_ctx++) {
12004:     for (n_URL = 0;n_URL < gen_nb_filepath;n_URL++) {
12005:         mem_base = xmlMemBlocks();
12006:         ctx = gen_xmlNanoFTPCtxtPtr(n_ctx, 0);
12007:         URL = gen_filepath(n_URL, 1);
12008: 
12009:         ret_val = xmlNanoFTPUpdateURL(ctx, URL);
12010:         desret_int(ret_val);
12011:         call_tests++;
12012:         des_xmlNanoFTPCtxtPtr(n_ctx, ctx, 0);
12013:         des_filepath(n_URL, URL, 1);
12014:         xmlResetLastError();
12015:         if (mem_base != xmlMemBlocks()) {
12016:             printf("Leak of %d blocks found in xmlNanoFTPUpdateURL",
12017: 	           xmlMemBlocks() - mem_base);
12018: 	    test_ret++;
12019:             printf(" %d", n_ctx);
12020:             printf(" %d", n_URL);
12021:             printf("\n");
12022:         }
12023:     }
12024:     }
12025:     function_tests++;
12026: #endif
12027: 
12028:     return(test_ret);
12029: }
12030: 
12031: static int
12032: test_nanoftp(void) {
12033:     int test_ret = 0;
12034: 
12035:     if (quiet == 0) printf("Testing nanoftp : 14 of 22 functions ...\n");
12036:     test_ret += test_xmlNanoFTPCheckResponse();
12037:     test_ret += test_xmlNanoFTPCleanup();
12038:     test_ret += test_xmlNanoFTPCloseConnection();
12039:     test_ret += test_xmlNanoFTPCwd();
12040:     test_ret += test_xmlNanoFTPDele();
12041:     test_ret += test_xmlNanoFTPGet();
12042:     test_ret += test_xmlNanoFTPGetConnection();
12043:     test_ret += test_xmlNanoFTPGetResponse();
12044:     test_ret += test_xmlNanoFTPGetSocket();
12045:     test_ret += test_xmlNanoFTPInit();
12046:     test_ret += test_xmlNanoFTPList();
12047:     test_ret += test_xmlNanoFTPNewCtxt();
12048:     test_ret += test_xmlNanoFTPOpen();
12049:     test_ret += test_xmlNanoFTPProxy();
12050:     test_ret += test_xmlNanoFTPQuit();
12051:     test_ret += test_xmlNanoFTPRead();
12052:     test_ret += test_xmlNanoFTPScanProxy();
12053:     test_ret += test_xmlNanoFTPUpdateURL();
12054: 
12055:     if (test_ret != 0)
12056: 	printf("Module nanoftp: %d errors\n", test_ret);
12057:     return(test_ret);
12058: }
12059: 
12060: static int
12061: test_xmlNanoHTTPAuthHeader(void) {
12062:     int test_ret = 0;
12063: 
12064: #if defined(LIBXML_HTTP_ENABLED)
12065:     int mem_base;
12066:     const char * ret_val;
12067:     void * ctx; /* the HTTP context */
12068:     int n_ctx;
12069: 
12070:     for (n_ctx = 0;n_ctx < gen_nb_xmlNanoHTTPCtxtPtr;n_ctx++) {
12071:         mem_base = xmlMemBlocks();
12072:         ctx = gen_xmlNanoHTTPCtxtPtr(n_ctx, 0);
12073: 
12074:         ret_val = xmlNanoHTTPAuthHeader(ctx);
12075:         desret_const_char_ptr(ret_val);
12076:         call_tests++;
12077:         des_xmlNanoHTTPCtxtPtr(n_ctx, ctx, 0);
12078:         xmlResetLastError();
12079:         if (mem_base != xmlMemBlocks()) {
12080:             printf("Leak of %d blocks found in xmlNanoHTTPAuthHeader",
12081: 	           xmlMemBlocks() - mem_base);
12082: 	    test_ret++;
12083:             printf(" %d", n_ctx);
12084:             printf("\n");
12085:         }
12086:     }
12087:     function_tests++;
12088: #endif
12089: 
12090:     return(test_ret);
12091: }
12092: 
12093: 
12094: static int
12095: test_xmlNanoHTTPCleanup(void) {
12096:     int test_ret = 0;
12097: 
12098: #if defined(LIBXML_HTTP_ENABLED)
12099:     int mem_base;
12100: 
12101:         mem_base = xmlMemBlocks();
12102: 
12103:         xmlNanoHTTPCleanup();
12104:         call_tests++;
12105:         xmlResetLastError();
12106:         if (mem_base != xmlMemBlocks()) {
12107:             printf("Leak of %d blocks found in xmlNanoHTTPCleanup",
12108: 	           xmlMemBlocks() - mem_base);
12109: 	    test_ret++;
12110:             printf("\n");
12111:         }
12112:     function_tests++;
12113: #endif
12114: 
12115:     return(test_ret);
12116: }
12117: 
12118: 
12119: static int
12120: test_xmlNanoHTTPContentLength(void) {
12121:     int test_ret = 0;
12122: 
12123: #if defined(LIBXML_HTTP_ENABLED)
12124:     int mem_base;
12125:     int ret_val;
12126:     void * ctx; /* the HTTP context */
12127:     int n_ctx;
12128: 
12129:     for (n_ctx = 0;n_ctx < gen_nb_xmlNanoHTTPCtxtPtr;n_ctx++) {
12130:         mem_base = xmlMemBlocks();
12131:         ctx = gen_xmlNanoHTTPCtxtPtr(n_ctx, 0);
12132: 
12133:         ret_val = xmlNanoHTTPContentLength(ctx);
12134:         desret_int(ret_val);
12135:         call_tests++;
12136:         des_xmlNanoHTTPCtxtPtr(n_ctx, ctx, 0);
12137:         xmlResetLastError();
12138:         if (mem_base != xmlMemBlocks()) {
12139:             printf("Leak of %d blocks found in xmlNanoHTTPContentLength",
12140: 	           xmlMemBlocks() - mem_base);
12141: 	    test_ret++;
12142:             printf(" %d", n_ctx);
12143:             printf("\n");
12144:         }
12145:     }
12146:     function_tests++;
12147: #endif
12148: 
12149:     return(test_ret);
12150: }
12151: 
12152: 
12153: static int
12154: test_xmlNanoHTTPEncoding(void) {
12155:     int test_ret = 0;
12156: 
12157: #if defined(LIBXML_HTTP_ENABLED)
12158:     int mem_base;
12159:     const char * ret_val;
12160:     void * ctx; /* the HTTP context */
12161:     int n_ctx;
12162: 
12163:     for (n_ctx = 0;n_ctx < gen_nb_xmlNanoHTTPCtxtPtr;n_ctx++) {
12164:         mem_base = xmlMemBlocks();
12165:         ctx = gen_xmlNanoHTTPCtxtPtr(n_ctx, 0);
12166: 
12167:         ret_val = xmlNanoHTTPEncoding(ctx);
12168:         desret_const_char_ptr(ret_val);
12169:         call_tests++;
12170:         des_xmlNanoHTTPCtxtPtr(n_ctx, ctx, 0);
12171:         xmlResetLastError();
12172:         if (mem_base != xmlMemBlocks()) {
12173:             printf("Leak of %d blocks found in xmlNanoHTTPEncoding",
12174: 	           xmlMemBlocks() - mem_base);
12175: 	    test_ret++;
12176:             printf(" %d", n_ctx);
12177:             printf("\n");
12178:         }
12179:     }
12180:     function_tests++;
12181: #endif
12182: 
12183:     return(test_ret);
12184: }
12185: 
12186: 
12187: #define gen_nb_char_ptr_ptr 1
12188: static char ** gen_char_ptr_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
12189:     return(NULL);
12190: }
12191: static void des_char_ptr_ptr(int no ATTRIBUTE_UNUSED, char ** val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
12192: }
12193: 
12194: static int
12195: test_xmlNanoHTTPFetch(void) {
12196:     int test_ret = 0;
12197: 
12198: #if defined(LIBXML_HTTP_ENABLED)
12199:     int mem_base;
12200:     int ret_val;
12201:     const char * URL; /* The URL to load */
12202:     int n_URL;
12203:     const char * filename; /* the filename where the content should be saved */
12204:     int n_filename;
12205:     char ** contentType; /* if available the Content-Type information will be returned at that location */
12206:     int n_contentType;
12207: 
12208:     for (n_URL = 0;n_URL < gen_nb_fileoutput;n_URL++) {
12209:     for (n_filename = 0;n_filename < gen_nb_fileoutput;n_filename++) {
12210:     for (n_contentType = 0;n_contentType < gen_nb_char_ptr_ptr;n_contentType++) {
12211:         mem_base = xmlMemBlocks();
12212:         URL = gen_fileoutput(n_URL, 0);
12213:         filename = gen_fileoutput(n_filename, 1);
12214:         contentType = gen_char_ptr_ptr(n_contentType, 2);
12215: 
12216:         ret_val = xmlNanoHTTPFetch(URL, filename, contentType);
12217:         desret_int(ret_val);
12218:         call_tests++;
12219:         des_fileoutput(n_URL, URL, 0);
12220:         des_fileoutput(n_filename, filename, 1);
12221:         des_char_ptr_ptr(n_contentType, contentType, 2);
12222:         xmlResetLastError();
12223:         if (mem_base != xmlMemBlocks()) {
12224:             printf("Leak of %d blocks found in xmlNanoHTTPFetch",
12225: 	           xmlMemBlocks() - mem_base);
12226: 	    test_ret++;
12227:             printf(" %d", n_URL);
12228:             printf(" %d", n_filename);
12229:             printf(" %d", n_contentType);
12230:             printf("\n");
12231:         }
12232:     }
12233:     }
12234:     }
12235:     function_tests++;
12236: #endif
12237: 
12238:     return(test_ret);
12239: }
12240: 
12241: 
12242: static int
12243: test_xmlNanoHTTPInit(void) {
12244:     int test_ret = 0;
12245: 
12246: #if defined(LIBXML_HTTP_ENABLED)
12247:     int mem_base;
12248: 
12249:         mem_base = xmlMemBlocks();
12250: 
12251:         xmlNanoHTTPInit();
12252:         call_tests++;
12253:         xmlResetLastError();
12254:         if (mem_base != xmlMemBlocks()) {
12255:             printf("Leak of %d blocks found in xmlNanoHTTPInit",
12256: 	           xmlMemBlocks() - mem_base);
12257: 	    test_ret++;
12258:             printf("\n");
12259:         }
12260:     function_tests++;
12261: #endif
12262: 
12263:     return(test_ret);
12264: }
12265: 
12266: 
12267: static int
12268: test_xmlNanoHTTPMimeType(void) {
12269:     int test_ret = 0;
12270: 
12271: #if defined(LIBXML_HTTP_ENABLED)
12272:     int mem_base;
12273:     const char * ret_val;
12274:     void * ctx; /* the HTTP context */
12275:     int n_ctx;
12276: 
12277:     for (n_ctx = 0;n_ctx < gen_nb_xmlNanoHTTPCtxtPtr;n_ctx++) {
12278:         mem_base = xmlMemBlocks();
12279:         ctx = gen_xmlNanoHTTPCtxtPtr(n_ctx, 0);
12280: 
12281:         ret_val = xmlNanoHTTPMimeType(ctx);
12282:         desret_const_char_ptr(ret_val);
12283:         call_tests++;
12284:         des_xmlNanoHTTPCtxtPtr(n_ctx, ctx, 0);
12285:         xmlResetLastError();
12286:         if (mem_base != xmlMemBlocks()) {
12287:             printf("Leak of %d blocks found in xmlNanoHTTPMimeType",
12288: 	           xmlMemBlocks() - mem_base);
12289: 	    test_ret++;
12290:             printf(" %d", n_ctx);
12291:             printf("\n");
12292:         }
12293:     }
12294:     function_tests++;
12295: #endif
12296: 
12297:     return(test_ret);
12298: }
12299: 
12300: 
12301: static int
12302: test_xmlNanoHTTPOpen(void) {
12303:     int test_ret = 0;
12304: 
12305: #if defined(LIBXML_HTTP_ENABLED)
12306:     int mem_base;
12307:     void * ret_val;
12308:     const char * URL; /* The URL to load */
12309:     int n_URL;
12310:     char ** contentType; /* if available the Content-Type information will be returned at that location */
12311:     int n_contentType;
12312: 
12313:     for (n_URL = 0;n_URL < gen_nb_filepath;n_URL++) {
12314:     for (n_contentType = 0;n_contentType < gen_nb_char_ptr_ptr;n_contentType++) {
12315:         mem_base = xmlMemBlocks();
12316:         URL = gen_filepath(n_URL, 0);
12317:         contentType = gen_char_ptr_ptr(n_contentType, 1);
12318: 
12319:         ret_val = xmlNanoHTTPOpen(URL, contentType);
12320:         desret_xmlNanoHTTPCtxtPtr(ret_val);
12321:         call_tests++;
12322:         des_filepath(n_URL, URL, 0);
12323:         des_char_ptr_ptr(n_contentType, contentType, 1);
12324:         xmlResetLastError();
12325:         if (mem_base != xmlMemBlocks()) {
12326:             printf("Leak of %d blocks found in xmlNanoHTTPOpen",
12327: 	           xmlMemBlocks() - mem_base);
12328: 	    test_ret++;
12329:             printf(" %d", n_URL);
12330:             printf(" %d", n_contentType);
12331:             printf("\n");
12332:         }
12333:     }
12334:     }
12335:     function_tests++;
12336: #endif
12337: 
12338:     return(test_ret);
12339: }
12340: 
12341: 
12342: static int
12343: test_xmlNanoHTTPOpenRedir(void) {
12344:     int test_ret = 0;
12345: 
12346: #if defined(LIBXML_HTTP_ENABLED)
12347:     int mem_base;
12348:     void * ret_val;
12349:     const char * URL; /* The URL to load */
12350:     int n_URL;
12351:     char ** contentType; /* if available the Content-Type information will be returned at that location */
12352:     int n_contentType;
12353:     char ** redir; /* if available the redirected URL will be returned */
12354:     int n_redir;
12355: 
12356:     for (n_URL = 0;n_URL < gen_nb_filepath;n_URL++) {
12357:     for (n_contentType = 0;n_contentType < gen_nb_char_ptr_ptr;n_contentType++) {
12358:     for (n_redir = 0;n_redir < gen_nb_char_ptr_ptr;n_redir++) {
12359:         mem_base = xmlMemBlocks();
12360:         URL = gen_filepath(n_URL, 0);
12361:         contentType = gen_char_ptr_ptr(n_contentType, 1);
12362:         redir = gen_char_ptr_ptr(n_redir, 2);
12363: 
12364:         ret_val = xmlNanoHTTPOpenRedir(URL, contentType, redir);
12365:         desret_xmlNanoHTTPCtxtPtr(ret_val);
12366:         call_tests++;
12367:         des_filepath(n_URL, URL, 0);
12368:         des_char_ptr_ptr(n_contentType, contentType, 1);
12369:         des_char_ptr_ptr(n_redir, redir, 2);
12370:         xmlResetLastError();
12371:         if (mem_base != xmlMemBlocks()) {
12372:             printf("Leak of %d blocks found in xmlNanoHTTPOpenRedir",
12373: 	           xmlMemBlocks() - mem_base);
12374: 	    test_ret++;
12375:             printf(" %d", n_URL);
12376:             printf(" %d", n_contentType);
12377:             printf(" %d", n_redir);
12378:             printf("\n");
12379:         }
12380:     }
12381:     }
12382:     }
12383:     function_tests++;
12384: #endif
12385: 
12386:     return(test_ret);
12387: }
12388: 
12389: 
12390: static int
12391: test_xmlNanoHTTPRead(void) {
12392:     int test_ret = 0;
12393: 
12394: #if defined(LIBXML_HTTP_ENABLED)
12395:     int mem_base;
12396:     int ret_val;
12397:     void * ctx; /* the HTTP context */
12398:     int n_ctx;
12399:     void * dest; /* a buffer */
12400:     int n_dest;
12401:     int len; /* the buffer length */
12402:     int n_len;
12403: 
12404:     for (n_ctx = 0;n_ctx < gen_nb_xmlNanoHTTPCtxtPtr;n_ctx++) {
12405:     for (n_dest = 0;n_dest < gen_nb_void_ptr;n_dest++) {
12406:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
12407:         mem_base = xmlMemBlocks();
12408:         ctx = gen_xmlNanoHTTPCtxtPtr(n_ctx, 0);
12409:         dest = gen_void_ptr(n_dest, 1);
12410:         len = gen_int(n_len, 2);
12411: 
12412:         ret_val = xmlNanoHTTPRead(ctx, dest, len);
12413:         desret_int(ret_val);
12414:         call_tests++;
12415:         des_xmlNanoHTTPCtxtPtr(n_ctx, ctx, 0);
12416:         des_void_ptr(n_dest, dest, 1);
12417:         des_int(n_len, len, 2);
12418:         xmlResetLastError();
12419:         if (mem_base != xmlMemBlocks()) {
12420:             printf("Leak of %d blocks found in xmlNanoHTTPRead",
12421: 	           xmlMemBlocks() - mem_base);
12422: 	    test_ret++;
12423:             printf(" %d", n_ctx);
12424:             printf(" %d", n_dest);
12425:             printf(" %d", n_len);
12426:             printf("\n");
12427:         }
12428:     }
12429:     }
12430:     }
12431:     function_tests++;
12432: #endif
12433: 
12434:     return(test_ret);
12435: }
12436: 
12437: 
12438: static int
12439: test_xmlNanoHTTPRedir(void) {
12440:     int test_ret = 0;
12441: 
12442: 
12443:     /* missing type support */
12444:     return(test_ret);
12445: }
12446: 
12447: 
12448: static int
12449: test_xmlNanoHTTPReturnCode(void) {
12450:     int test_ret = 0;
12451: 
12452: #if defined(LIBXML_HTTP_ENABLED)
12453:     int mem_base;
12454:     int ret_val;
12455:     void * ctx; /* the HTTP context */
12456:     int n_ctx;
12457: 
12458:     for (n_ctx = 0;n_ctx < gen_nb_xmlNanoHTTPCtxtPtr;n_ctx++) {
12459:         mem_base = xmlMemBlocks();
12460:         ctx = gen_xmlNanoHTTPCtxtPtr(n_ctx, 0);
12461: 
12462:         ret_val = xmlNanoHTTPReturnCode(ctx);
12463:         desret_int(ret_val);
12464:         call_tests++;
12465:         des_xmlNanoHTTPCtxtPtr(n_ctx, ctx, 0);
12466:         xmlResetLastError();
12467:         if (mem_base != xmlMemBlocks()) {
12468:             printf("Leak of %d blocks found in xmlNanoHTTPReturnCode",
12469: 	           xmlMemBlocks() - mem_base);
12470: 	    test_ret++;
12471:             printf(" %d", n_ctx);
12472:             printf("\n");
12473:         }
12474:     }
12475:     function_tests++;
12476: #endif
12477: 
12478:     return(test_ret);
12479: }
12480: 
12481: 
12482: static int
12483: test_xmlNanoHTTPSave(void) {
12484:     int test_ret = 0;
12485: 
12486: #if defined(LIBXML_HTTP_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
12487:     int mem_base;
12488:     int ret_val;
12489:     void * ctxt; /* the HTTP context */
12490:     int n_ctxt;
12491:     const char * filename; /* the filename where the content should be saved */
12492:     int n_filename;
12493: 
12494:     for (n_ctxt = 0;n_ctxt < gen_nb_void_ptr;n_ctxt++) {
12495:     for (n_filename = 0;n_filename < gen_nb_fileoutput;n_filename++) {
12496:         mem_base = xmlMemBlocks();
12497:         ctxt = gen_void_ptr(n_ctxt, 0);
12498:         filename = gen_fileoutput(n_filename, 1);
12499: 
12500:         ret_val = xmlNanoHTTPSave(ctxt, filename);
12501:         desret_int(ret_val);
12502:         call_tests++;
12503:         des_void_ptr(n_ctxt, ctxt, 0);
12504:         des_fileoutput(n_filename, filename, 1);
12505:         xmlResetLastError();
12506:         if (mem_base != xmlMemBlocks()) {
12507:             printf("Leak of %d blocks found in xmlNanoHTTPSave",
12508: 	           xmlMemBlocks() - mem_base);
12509: 	    test_ret++;
12510:             printf(" %d", n_ctxt);
12511:             printf(" %d", n_filename);
12512:             printf("\n");
12513:         }
12514:     }
12515:     }
12516:     function_tests++;
12517: #endif
12518: 
12519:     return(test_ret);
12520: }
12521: 
12522: 
12523: static int
12524: test_xmlNanoHTTPScanProxy(void) {
12525:     int test_ret = 0;
12526: 
12527: #if defined(LIBXML_HTTP_ENABLED)
12528:     const char * URL; /* The proxy URL used to initialize the proxy context */
12529:     int n_URL;
12530: 
12531:     for (n_URL = 0;n_URL < gen_nb_filepath;n_URL++) {
12532:         URL = gen_filepath(n_URL, 0);
12533: 
12534:         xmlNanoHTTPScanProxy(URL);
12535:         call_tests++;
12536:         des_filepath(n_URL, URL, 0);
12537:         xmlResetLastError();
12538:     }
12539:     function_tests++;
12540: #endif
12541: 
12542:     return(test_ret);
12543: }
12544: 
12545: static int
12546: test_nanohttp(void) {
12547:     int test_ret = 0;
12548: 
12549:     if (quiet == 0) printf("Testing nanohttp : 13 of 17 functions ...\n");
12550:     test_ret += test_xmlNanoHTTPAuthHeader();
12551:     test_ret += test_xmlNanoHTTPCleanup();
12552:     test_ret += test_xmlNanoHTTPContentLength();
12553:     test_ret += test_xmlNanoHTTPEncoding();
12554:     test_ret += test_xmlNanoHTTPFetch();
12555:     test_ret += test_xmlNanoHTTPInit();
12556:     test_ret += test_xmlNanoHTTPMimeType();
12557:     test_ret += test_xmlNanoHTTPOpen();
12558:     test_ret += test_xmlNanoHTTPOpenRedir();
12559:     test_ret += test_xmlNanoHTTPRead();
12560:     test_ret += test_xmlNanoHTTPRedir();
12561:     test_ret += test_xmlNanoHTTPReturnCode();
12562:     test_ret += test_xmlNanoHTTPSave();
12563:     test_ret += test_xmlNanoHTTPScanProxy();
12564: 
12565:     if (test_ret != 0)
12566: 	printf("Module nanohttp: %d errors\n", test_ret);
12567:     return(test_ret);
12568: }
12569: 
12570: static int
12571: test_xmlByteConsumed(void) {
12572:     int test_ret = 0;
12573: 
12574:     int mem_base;
12575:     long ret_val;
12576:     xmlParserCtxtPtr ctxt; /* an XML parser context */
12577:     int n_ctxt;
12578: 
12579:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
12580:         mem_base = xmlMemBlocks();
12581:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
12582: 
12583:         ret_val = xmlByteConsumed(ctxt);
12584:         desret_long(ret_val);
12585:         call_tests++;
12586:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
12587:         xmlResetLastError();
12588:         if (mem_base != xmlMemBlocks()) {
12589:             printf("Leak of %d blocks found in xmlByteConsumed",
12590: 	           xmlMemBlocks() - mem_base);
12591: 	    test_ret++;
12592:             printf(" %d", n_ctxt);
12593:             printf("\n");
12594:         }
12595:     }
12596:     function_tests++;
12597: 
12598:     return(test_ret);
12599: }
12600: 
12601: 
12602: static int
12603: test_xmlClearNodeInfoSeq(void) {
12604:     int test_ret = 0;
12605: 
12606:     int mem_base;
12607:     xmlParserNodeInfoSeqPtr seq; /* a node info sequence pointer */
12608:     int n_seq;
12609: 
12610:     for (n_seq = 0;n_seq < gen_nb_xmlParserNodeInfoSeqPtr;n_seq++) {
12611:         mem_base = xmlMemBlocks();
12612:         seq = gen_xmlParserNodeInfoSeqPtr(n_seq, 0);
12613: 
12614:         xmlClearNodeInfoSeq(seq);
12615:         call_tests++;
12616:         des_xmlParserNodeInfoSeqPtr(n_seq, seq, 0);
12617:         xmlResetLastError();
12618:         if (mem_base != xmlMemBlocks()) {
12619:             printf("Leak of %d blocks found in xmlClearNodeInfoSeq",
12620: 	           xmlMemBlocks() - mem_base);
12621: 	    test_ret++;
12622:             printf(" %d", n_seq);
12623:             printf("\n");
12624:         }
12625:     }
12626:     function_tests++;
12627: 
12628:     return(test_ret);
12629: }
12630: 
12631: 
12632: static int
12633: test_xmlClearParserCtxt(void) {
12634:     int test_ret = 0;
12635: 
12636:     int mem_base;
12637:     xmlParserCtxtPtr ctxt; /* an XML parser context */
12638:     int n_ctxt;
12639: 
12640:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
12641:         mem_base = xmlMemBlocks();
12642:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
12643: 
12644:         xmlClearParserCtxt(ctxt);
12645:         call_tests++;
12646:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
12647:         xmlResetLastError();
12648:         if (mem_base != xmlMemBlocks()) {
12649:             printf("Leak of %d blocks found in xmlClearParserCtxt",
12650: 	           xmlMemBlocks() - mem_base);
12651: 	    test_ret++;
12652:             printf(" %d", n_ctxt);
12653:             printf("\n");
12654:         }
12655:     }
12656:     function_tests++;
12657: 
12658:     return(test_ret);
12659: }
12660: 
12661: 
12662: static int
12663: test_xmlCreateDocParserCtxt(void) {
12664:     int test_ret = 0;
12665: 
12666:     int mem_base;
12667:     xmlParserCtxtPtr ret_val;
12668:     xmlChar * cur; /* a pointer to an array of xmlChar */
12669:     int n_cur;
12670: 
12671:     for (n_cur = 0;n_cur < gen_nb_const_xmlChar_ptr;n_cur++) {
12672:         mem_base = xmlMemBlocks();
12673:         cur = gen_const_xmlChar_ptr(n_cur, 0);
12674: 
12675:         ret_val = xmlCreateDocParserCtxt((const xmlChar *)cur);
12676:         desret_xmlParserCtxtPtr(ret_val);
12677:         call_tests++;
12678:         des_const_xmlChar_ptr(n_cur, (const xmlChar *)cur, 0);
12679:         xmlResetLastError();
12680:         if (mem_base != xmlMemBlocks()) {
12681:             printf("Leak of %d blocks found in xmlCreateDocParserCtxt",
12682: 	           xmlMemBlocks() - mem_base);
12683: 	    test_ret++;
12684:             printf(" %d", n_cur);
12685:             printf("\n");
12686:         }
12687:     }
12688:     function_tests++;
12689: 
12690:     return(test_ret);
12691: }
12692: 
12693: 
12694: static int
12695: test_xmlCreatePushParserCtxt(void) {
12696:     int test_ret = 0;
12697: 
12698: #if defined(LIBXML_PUSH_ENABLED)
12699:     int mem_base;
12700:     xmlParserCtxtPtr ret_val;
12701:     xmlSAXHandlerPtr sax; /* a SAX handler */
12702:     int n_sax;
12703:     void * user_data; /* The user data returned on SAX callbacks */
12704:     int n_user_data;
12705:     char * chunk; /* a pointer to an array of chars */
12706:     int n_chunk;
12707:     int size; /* number of chars in the array */
12708:     int n_size;
12709:     const char * filename; /* an optional file name or URI */
12710:     int n_filename;
12711: 
12712:     for (n_sax = 0;n_sax < gen_nb_xmlSAXHandlerPtr;n_sax++) {
12713:     for (n_user_data = 0;n_user_data < gen_nb_userdata;n_user_data++) {
12714:     for (n_chunk = 0;n_chunk < gen_nb_const_char_ptr;n_chunk++) {
12715:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
12716:     for (n_filename = 0;n_filename < gen_nb_fileoutput;n_filename++) {
12717:         mem_base = xmlMemBlocks();
12718:         sax = gen_xmlSAXHandlerPtr(n_sax, 0);
12719:         user_data = gen_userdata(n_user_data, 1);
12720:         chunk = gen_const_char_ptr(n_chunk, 2);
12721:         size = gen_int(n_size, 3);
12722:         filename = gen_fileoutput(n_filename, 4);
12723: 
12724:         ret_val = xmlCreatePushParserCtxt(sax, user_data, (const char *)chunk, size, filename);
12725:         desret_xmlParserCtxtPtr(ret_val);
12726:         call_tests++;
12727:         des_xmlSAXHandlerPtr(n_sax, sax, 0);
12728:         des_userdata(n_user_data, user_data, 1);
12729:         des_const_char_ptr(n_chunk, (const char *)chunk, 2);
12730:         des_int(n_size, size, 3);
12731:         des_fileoutput(n_filename, filename, 4);
12732:         xmlResetLastError();
12733:         if (mem_base != xmlMemBlocks()) {
12734:             printf("Leak of %d blocks found in xmlCreatePushParserCtxt",
12735: 	           xmlMemBlocks() - mem_base);
12736: 	    test_ret++;
12737:             printf(" %d", n_sax);
12738:             printf(" %d", n_user_data);
12739:             printf(" %d", n_chunk);
12740:             printf(" %d", n_size);
12741:             printf(" %d", n_filename);
12742:             printf("\n");
12743:         }
12744:     }
12745:     }
12746:     }
12747:     }
12748:     }
12749:     function_tests++;
12750: #endif
12751: 
12752:     return(test_ret);
12753: }
12754: 
12755: 
12756: static int
12757: test_xmlCtxtReadDoc(void) {
12758:     int test_ret = 0;
12759: 
12760:     int mem_base;
12761:     xmlDocPtr ret_val;
12762:     xmlParserCtxtPtr ctxt; /* an XML parser context */
12763:     int n_ctxt;
12764:     xmlChar * cur; /* a pointer to a zero terminated string */
12765:     int n_cur;
12766:     const char * URL; /* the base URL to use for the document */
12767:     int n_URL;
12768:     char * encoding; /* the document encoding, or NULL */
12769:     int n_encoding;
12770:     int options; /* a combination of xmlParserOption */
12771:     int n_options;
12772: 
12773:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
12774:     for (n_cur = 0;n_cur < gen_nb_const_xmlChar_ptr;n_cur++) {
12775:     for (n_URL = 0;n_URL < gen_nb_filepath;n_URL++) {
12776:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
12777:     for (n_options = 0;n_options < gen_nb_parseroptions;n_options++) {
12778:         mem_base = xmlMemBlocks();
12779:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
12780:         cur = gen_const_xmlChar_ptr(n_cur, 1);
12781:         URL = gen_filepath(n_URL, 2);
12782:         encoding = gen_const_char_ptr(n_encoding, 3);
12783:         options = gen_parseroptions(n_options, 4);
12784: 
12785:         ret_val = xmlCtxtReadDoc(ctxt, (const xmlChar *)cur, URL, (const char *)encoding, options);
12786:         desret_xmlDocPtr(ret_val);
12787:         call_tests++;
12788:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
12789:         des_const_xmlChar_ptr(n_cur, (const xmlChar *)cur, 1);
12790:         des_filepath(n_URL, URL, 2);
12791:         des_const_char_ptr(n_encoding, (const char *)encoding, 3);
12792:         des_parseroptions(n_options, options, 4);
12793:         xmlResetLastError();
12794:         if (mem_base != xmlMemBlocks()) {
12795:             printf("Leak of %d blocks found in xmlCtxtReadDoc",
12796: 	           xmlMemBlocks() - mem_base);
12797: 	    test_ret++;
12798:             printf(" %d", n_ctxt);
12799:             printf(" %d", n_cur);
12800:             printf(" %d", n_URL);
12801:             printf(" %d", n_encoding);
12802:             printf(" %d", n_options);
12803:             printf("\n");
12804:         }
12805:     }
12806:     }
12807:     }
12808:     }
12809:     }
12810:     function_tests++;
12811: 
12812:     return(test_ret);
12813: }
12814: 
12815: 
12816: static int
12817: test_xmlCtxtReadFile(void) {
12818:     int test_ret = 0;
12819: 
12820:     int mem_base;
12821:     xmlDocPtr ret_val;
12822:     xmlParserCtxtPtr ctxt; /* an XML parser context */
12823:     int n_ctxt;
12824:     const char * filename; /* a file or URL */
12825:     int n_filename;
12826:     char * encoding; /* the document encoding, or NULL */
12827:     int n_encoding;
12828:     int options; /* a combination of xmlParserOption */
12829:     int n_options;
12830: 
12831:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
12832:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
12833:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
12834:     for (n_options = 0;n_options < gen_nb_parseroptions;n_options++) {
12835:         mem_base = xmlMemBlocks();
12836:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
12837:         filename = gen_filepath(n_filename, 1);
12838:         encoding = gen_const_char_ptr(n_encoding, 2);
12839:         options = gen_parseroptions(n_options, 3);
12840: 
12841:         ret_val = xmlCtxtReadFile(ctxt, filename, (const char *)encoding, options);
12842:         desret_xmlDocPtr(ret_val);
12843:         call_tests++;
12844:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
12845:         des_filepath(n_filename, filename, 1);
12846:         des_const_char_ptr(n_encoding, (const char *)encoding, 2);
12847:         des_parseroptions(n_options, options, 3);
12848:         xmlResetLastError();
12849:         if (mem_base != xmlMemBlocks()) {
12850:             printf("Leak of %d blocks found in xmlCtxtReadFile",
12851: 	           xmlMemBlocks() - mem_base);
12852: 	    test_ret++;
12853:             printf(" %d", n_ctxt);
12854:             printf(" %d", n_filename);
12855:             printf(" %d", n_encoding);
12856:             printf(" %d", n_options);
12857:             printf("\n");
12858:         }
12859:     }
12860:     }
12861:     }
12862:     }
12863:     function_tests++;
12864: 
12865:     return(test_ret);
12866: }
12867: 
12868: 
12869: static int
12870: test_xmlCtxtReadMemory(void) {
12871:     int test_ret = 0;
12872: 
12873:     int mem_base;
12874:     xmlDocPtr ret_val;
12875:     xmlParserCtxtPtr ctxt; /* an XML parser context */
12876:     int n_ctxt;
12877:     char * buffer; /* a pointer to a char array */
12878:     int n_buffer;
12879:     int size; /* the size of the array */
12880:     int n_size;
12881:     const char * URL; /* the base URL to use for the document */
12882:     int n_URL;
12883:     char * encoding; /* the document encoding, or NULL */
12884:     int n_encoding;
12885:     int options; /* a combination of xmlParserOption */
12886:     int n_options;
12887: 
12888:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
12889:     for (n_buffer = 0;n_buffer < gen_nb_const_char_ptr;n_buffer++) {
12890:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
12891:     for (n_URL = 0;n_URL < gen_nb_filepath;n_URL++) {
12892:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
12893:     for (n_options = 0;n_options < gen_nb_parseroptions;n_options++) {
12894:         mem_base = xmlMemBlocks();
12895:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
12896:         buffer = gen_const_char_ptr(n_buffer, 1);
12897:         size = gen_int(n_size, 2);
12898:         URL = gen_filepath(n_URL, 3);
12899:         encoding = gen_const_char_ptr(n_encoding, 4);
12900:         options = gen_parseroptions(n_options, 5);
12901: 
12902:         ret_val = xmlCtxtReadMemory(ctxt, (const char *)buffer, size, URL, (const char *)encoding, options);
12903:         desret_xmlDocPtr(ret_val);
12904:         call_tests++;
12905:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
12906:         des_const_char_ptr(n_buffer, (const char *)buffer, 1);
12907:         des_int(n_size, size, 2);
12908:         des_filepath(n_URL, URL, 3);
12909:         des_const_char_ptr(n_encoding, (const char *)encoding, 4);
12910:         des_parseroptions(n_options, options, 5);
12911:         xmlResetLastError();
12912:         if (mem_base != xmlMemBlocks()) {
12913:             printf("Leak of %d blocks found in xmlCtxtReadMemory",
12914: 	           xmlMemBlocks() - mem_base);
12915: 	    test_ret++;
12916:             printf(" %d", n_ctxt);
12917:             printf(" %d", n_buffer);
12918:             printf(" %d", n_size);
12919:             printf(" %d", n_URL);
12920:             printf(" %d", n_encoding);
12921:             printf(" %d", n_options);
12922:             printf("\n");
12923:         }
12924:     }
12925:     }
12926:     }
12927:     }
12928:     }
12929:     }
12930:     function_tests++;
12931: 
12932:     return(test_ret);
12933: }
12934: 
12935: 
12936: static int
12937: test_xmlCtxtReset(void) {
12938:     int test_ret = 0;
12939: 
12940:     int mem_base;
12941:     xmlParserCtxtPtr ctxt; /* an XML parser context */
12942:     int n_ctxt;
12943: 
12944:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
12945:         mem_base = xmlMemBlocks();
12946:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
12947: 
12948:         xmlCtxtReset(ctxt);
12949:         call_tests++;
12950:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
12951:         xmlResetLastError();
12952:         if (mem_base != xmlMemBlocks()) {
12953:             printf("Leak of %d blocks found in xmlCtxtReset",
12954: 	           xmlMemBlocks() - mem_base);
12955: 	    test_ret++;
12956:             printf(" %d", n_ctxt);
12957:             printf("\n");
12958:         }
12959:     }
12960:     function_tests++;
12961: 
12962:     return(test_ret);
12963: }
12964: 
12965: 
12966: static int
12967: test_xmlCtxtResetPush(void) {
12968:     int test_ret = 0;
12969: 
12970:     int mem_base;
12971:     int ret_val;
12972:     xmlParserCtxtPtr ctxt; /* an XML parser context */
12973:     int n_ctxt;
12974:     char * chunk; /* a pointer to an array of chars */
12975:     int n_chunk;
12976:     int size; /* number of chars in the array */
12977:     int n_size;
12978:     const char * filename; /* an optional file name or URI */
12979:     int n_filename;
12980:     char * encoding; /* the document encoding, or NULL */
12981:     int n_encoding;
12982: 
12983:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
12984:     for (n_chunk = 0;n_chunk < gen_nb_const_char_ptr;n_chunk++) {
12985:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
12986:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
12987:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
12988:         mem_base = xmlMemBlocks();
12989:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
12990:         chunk = gen_const_char_ptr(n_chunk, 1);
12991:         size = gen_int(n_size, 2);
12992:         filename = gen_filepath(n_filename, 3);
12993:         encoding = gen_const_char_ptr(n_encoding, 4);
12994: 
12995:         ret_val = xmlCtxtResetPush(ctxt, (const char *)chunk, size, filename, (const char *)encoding);
12996:         desret_int(ret_val);
12997:         call_tests++;
12998:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
12999:         des_const_char_ptr(n_chunk, (const char *)chunk, 1);
13000:         des_int(n_size, size, 2);
13001:         des_filepath(n_filename, filename, 3);
13002:         des_const_char_ptr(n_encoding, (const char *)encoding, 4);
13003:         xmlResetLastError();
13004:         if (mem_base != xmlMemBlocks()) {
13005:             printf("Leak of %d blocks found in xmlCtxtResetPush",
13006: 	           xmlMemBlocks() - mem_base);
13007: 	    test_ret++;
13008:             printf(" %d", n_ctxt);
13009:             printf(" %d", n_chunk);
13010:             printf(" %d", n_size);
13011:             printf(" %d", n_filename);
13012:             printf(" %d", n_encoding);
13013:             printf("\n");
13014:         }
13015:     }
13016:     }
13017:     }
13018:     }
13019:     }
13020:     function_tests++;
13021: 
13022:     return(test_ret);
13023: }
13024: 
13025: 
13026: static int
13027: test_xmlCtxtUseOptions(void) {
13028:     int test_ret = 0;
13029: 
13030:     int mem_base;
13031:     int ret_val;
13032:     xmlParserCtxtPtr ctxt; /* an XML parser context */
13033:     int n_ctxt;
13034:     int options; /* a combination of xmlParserOption */
13035:     int n_options;
13036: 
13037:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
13038:     for (n_options = 0;n_options < gen_nb_parseroptions;n_options++) {
13039:         mem_base = xmlMemBlocks();
13040:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
13041:         options = gen_parseroptions(n_options, 1);
13042: 
13043:         ret_val = xmlCtxtUseOptions(ctxt, options);
13044:         desret_int(ret_val);
13045:         call_tests++;
13046:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
13047:         des_parseroptions(n_options, options, 1);
13048:         xmlResetLastError();
13049:         if (mem_base != xmlMemBlocks()) {
13050:             printf("Leak of %d blocks found in xmlCtxtUseOptions",
13051: 	           xmlMemBlocks() - mem_base);
13052: 	    test_ret++;
13053:             printf(" %d", n_ctxt);
13054:             printf(" %d", n_options);
13055:             printf("\n");
13056:         }
13057:     }
13058:     }
13059:     function_tests++;
13060: 
13061:     return(test_ret);
13062: }
13063: 
13064: 
13065: static int
13066: test_xmlGetExternalEntityLoader(void) {
13067:     int test_ret = 0;
13068: 
13069: 
13070:     /* missing type support */
13071:     return(test_ret);
13072: }
13073: 
13074: 
13075: static int
13076: test_xmlGetFeature(void) {
13077:     int test_ret = 0;
13078: 
13079: #if defined(LIBXML_LEGACY_ENABLED)
13080: #ifdef LIBXML_LEGACY_ENABLED
13081:     int mem_base;
13082:     int ret_val;
13083:     xmlParserCtxtPtr ctxt; /* an XML/HTML parser context */
13084:     int n_ctxt;
13085:     char * name; /* the feature name */
13086:     int n_name;
13087:     void * result; /* location to store the result */
13088:     int n_result;
13089: 
13090:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
13091:     for (n_name = 0;n_name < gen_nb_const_char_ptr;n_name++) {
13092:     for (n_result = 0;n_result < gen_nb_void_ptr;n_result++) {
13093:         mem_base = xmlMemBlocks();
13094:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
13095:         name = gen_const_char_ptr(n_name, 1);
13096:         result = gen_void_ptr(n_result, 2);
13097: 
13098:         ret_val = xmlGetFeature(ctxt, (const char *)name, result);
13099:         desret_int(ret_val);
13100:         call_tests++;
13101:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
13102:         des_const_char_ptr(n_name, (const char *)name, 1);
13103:         des_void_ptr(n_result, result, 2);
13104:         xmlResetLastError();
13105:         if (mem_base != xmlMemBlocks()) {
13106:             printf("Leak of %d blocks found in xmlGetFeature",
13107: 	           xmlMemBlocks() - mem_base);
13108: 	    test_ret++;
13109:             printf(" %d", n_ctxt);
13110:             printf(" %d", n_name);
13111:             printf(" %d", n_result);
13112:             printf("\n");
13113:         }
13114:     }
13115:     }
13116:     }
13117:     function_tests++;
13118: #endif
13119: #endif
13120: 
13121:     return(test_ret);
13122: }
13123: 
13124: 
13125: #define gen_nb_const_char_ptr_ptr 1
13126: static char ** gen_const_char_ptr_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
13127:     return(NULL);
13128: }
13129: static void des_const_char_ptr_ptr(int no ATTRIBUTE_UNUSED, const char ** val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
13130: }
13131: 
13132: static int
13133: test_xmlGetFeaturesList(void) {
13134:     int test_ret = 0;
13135: 
13136: #if defined(LIBXML_LEGACY_ENABLED)
13137: #ifdef LIBXML_LEGACY_ENABLED
13138:     int mem_base;
13139:     int ret_val;
13140:     int * len; /* the length of the features name array (input/output) */
13141:     int n_len;
13142:     char ** result; /* an array of string to be filled with the features name. */
13143:     int n_result;
13144: 
13145:     for (n_len = 0;n_len < gen_nb_int_ptr;n_len++) {
13146:     for (n_result = 0;n_result < gen_nb_const_char_ptr_ptr;n_result++) {
13147:         mem_base = xmlMemBlocks();
13148:         len = gen_int_ptr(n_len, 0);
13149:         result = gen_const_char_ptr_ptr(n_result, 1);
13150: 
13151:         ret_val = xmlGetFeaturesList(len, (const char **)result);
13152:         desret_int(ret_val);
13153:         call_tests++;
13154:         des_int_ptr(n_len, len, 0);
13155:         des_const_char_ptr_ptr(n_result, (const char **)result, 1);
13156:         xmlResetLastError();
13157:         if (mem_base != xmlMemBlocks()) {
13158:             printf("Leak of %d blocks found in xmlGetFeaturesList",
13159: 	           xmlMemBlocks() - mem_base);
13160: 	    test_ret++;
13161:             printf(" %d", n_len);
13162:             printf(" %d", n_result);
13163:             printf("\n");
13164:         }
13165:     }
13166:     }
13167:     function_tests++;
13168: #endif
13169: #endif
13170: 
13171:     return(test_ret);
13172: }
13173: 
13174: 
13175: static int
13176: test_xmlHasFeature(void) {
13177:     int test_ret = 0;
13178: 
13179:     int mem_base;
13180:     int ret_val;
13181:     xmlFeature feature; /* the feature to be examined */
13182:     int n_feature;
13183: 
13184:     for (n_feature = 0;n_feature < gen_nb_xmlFeature;n_feature++) {
13185:         mem_base = xmlMemBlocks();
13186:         feature = gen_xmlFeature(n_feature, 0);
13187: 
13188:         ret_val = xmlHasFeature(feature);
13189:         desret_int(ret_val);
13190:         call_tests++;
13191:         des_xmlFeature(n_feature, feature, 0);
13192:         xmlResetLastError();
13193:         if (mem_base != xmlMemBlocks()) {
13194:             printf("Leak of %d blocks found in xmlHasFeature",
13195: 	           xmlMemBlocks() - mem_base);
13196: 	    test_ret++;
13197:             printf(" %d", n_feature);
13198:             printf("\n");
13199:         }
13200:     }
13201:     function_tests++;
13202: 
13203:     return(test_ret);
13204: }
13205: 
13206: 
13207: static int
13208: test_xmlIOParseDTD(void) {
13209:     int test_ret = 0;
13210: 
13211: #if defined(LIBXML_VALID_ENABLED)
13212: #ifdef LIBXML_VALID_ENABLED
13213:     xmlDtdPtr ret_val;
13214:     xmlSAXHandlerPtr sax; /* the SAX handler block or NULL */
13215:     int n_sax;
13216:     xmlParserInputBufferPtr input; /* an Input Buffer */
13217:     int n_input;
13218:     xmlCharEncoding enc; /* the charset encoding if known */
13219:     int n_enc;
13220: 
13221:     for (n_sax = 0;n_sax < gen_nb_xmlSAXHandlerPtr;n_sax++) {
13222:     for (n_input = 0;n_input < gen_nb_xmlParserInputBufferPtr;n_input++) {
13223:     for (n_enc = 0;n_enc < gen_nb_xmlCharEncoding;n_enc++) {
13224:         sax = gen_xmlSAXHandlerPtr(n_sax, 0);
13225:         input = gen_xmlParserInputBufferPtr(n_input, 1);
13226:         enc = gen_xmlCharEncoding(n_enc, 2);
13227: 
13228:         ret_val = xmlIOParseDTD(sax, input, enc);
13229:         input = NULL;
13230:         desret_xmlDtdPtr(ret_val);
13231:         call_tests++;
13232:         des_xmlSAXHandlerPtr(n_sax, sax, 0);
13233:         des_xmlParserInputBufferPtr(n_input, input, 1);
13234:         des_xmlCharEncoding(n_enc, enc, 2);
13235:         xmlResetLastError();
13236:     }
13237:     }
13238:     }
13239:     function_tests++;
13240: #endif
13241: #endif
13242: 
13243:     return(test_ret);
13244: }
13245: 
13246: 
13247: static int
13248: test_xmlInitNodeInfoSeq(void) {
13249:     int test_ret = 0;
13250: 
13251:     int mem_base;
13252:     xmlParserNodeInfoSeqPtr seq; /* a node info sequence pointer */
13253:     int n_seq;
13254: 
13255:     for (n_seq = 0;n_seq < gen_nb_xmlParserNodeInfoSeqPtr;n_seq++) {
13256:         mem_base = xmlMemBlocks();
13257:         seq = gen_xmlParserNodeInfoSeqPtr(n_seq, 0);
13258: 
13259:         xmlInitNodeInfoSeq(seq);
13260:         call_tests++;
13261:         des_xmlParserNodeInfoSeqPtr(n_seq, seq, 0);
13262:         xmlResetLastError();
13263:         if (mem_base != xmlMemBlocks()) {
13264:             printf("Leak of %d blocks found in xmlInitNodeInfoSeq",
13265: 	           xmlMemBlocks() - mem_base);
13266: 	    test_ret++;
13267:             printf(" %d", n_seq);
13268:             printf("\n");
13269:         }
13270:     }
13271:     function_tests++;
13272: 
13273:     return(test_ret);
13274: }
13275: 
13276: 
13277: static int
13278: test_xmlInitParser(void) {
13279:     int test_ret = 0;
13280: 
13281:     int mem_base;
13282: 
13283:         mem_base = xmlMemBlocks();
13284: 
13285:         xmlInitParser();
13286:         call_tests++;
13287:         xmlResetLastError();
13288:         if (mem_base != xmlMemBlocks()) {
13289:             printf("Leak of %d blocks found in xmlInitParser",
13290: 	           xmlMemBlocks() - mem_base);
13291: 	    test_ret++;
13292:             printf("\n");
13293:         }
13294:     function_tests++;
13295: 
13296:     return(test_ret);
13297: }
13298: 
13299: 
13300: static int
13301: test_xmlInitParserCtxt(void) {
13302:     int test_ret = 0;
13303: 
13304:     int mem_base;
13305:     int ret_val;
13306:     xmlParserCtxtPtr ctxt; /* an XML parser context */
13307:     int n_ctxt;
13308: 
13309:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
13310:         mem_base = xmlMemBlocks();
13311:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
13312: 
13313:         ret_val = xmlInitParserCtxt(ctxt);
13314:         desret_int(ret_val);
13315:         call_tests++;
13316:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
13317:         xmlResetLastError();
13318:         if (mem_base != xmlMemBlocks()) {
13319:             printf("Leak of %d blocks found in xmlInitParserCtxt",
13320: 	           xmlMemBlocks() - mem_base);
13321: 	    test_ret++;
13322:             printf(" %d", n_ctxt);
13323:             printf("\n");
13324:         }
13325:     }
13326:     function_tests++;
13327: 
13328:     return(test_ret);
13329: }
13330: 
13331: 
13332: static int
13333: test_xmlKeepBlanksDefault(void) {
13334:     int test_ret = 0;
13335: 
13336:     int mem_base;
13337:     int ret_val;
13338:     int val; /* int 0 or 1 */
13339:     int n_val;
13340: 
13341:     for (n_val = 0;n_val < gen_nb_int;n_val++) {
13342:         mem_base = xmlMemBlocks();
13343:         val = gen_int(n_val, 0);
13344: 
13345:         ret_val = xmlKeepBlanksDefault(val);
13346:         desret_int(ret_val);
13347:         call_tests++;
13348:         des_int(n_val, val, 0);
13349:         xmlResetLastError();
13350:         if (mem_base != xmlMemBlocks()) {
13351:             printf("Leak of %d blocks found in xmlKeepBlanksDefault",
13352: 	           xmlMemBlocks() - mem_base);
13353: 	    test_ret++;
13354:             printf(" %d", n_val);
13355:             printf("\n");
13356:         }
13357:     }
13358:     function_tests++;
13359: 
13360:     return(test_ret);
13361: }
13362: 
13363: 
13364: static int
13365: test_xmlLineNumbersDefault(void) {
13366:     int test_ret = 0;
13367: 
13368:     int mem_base;
13369:     int ret_val;
13370:     int val; /* int 0 or 1 */
13371:     int n_val;
13372: 
13373:     for (n_val = 0;n_val < gen_nb_int;n_val++) {
13374:         mem_base = xmlMemBlocks();
13375:         val = gen_int(n_val, 0);
13376: 
13377:         ret_val = xmlLineNumbersDefault(val);
13378:         desret_int(ret_val);
13379:         call_tests++;
13380:         des_int(n_val, val, 0);
13381:         xmlResetLastError();
13382:         if (mem_base != xmlMemBlocks()) {
13383:             printf("Leak of %d blocks found in xmlLineNumbersDefault",
13384: 	           xmlMemBlocks() - mem_base);
13385: 	    test_ret++;
13386:             printf(" %d", n_val);
13387:             printf("\n");
13388:         }
13389:     }
13390:     function_tests++;
13391: 
13392:     return(test_ret);
13393: }
13394: 
13395: 
13396: static int
13397: test_xmlLoadExternalEntity(void) {
13398:     int test_ret = 0;
13399: 
13400:     int mem_base;
13401:     xmlParserInputPtr ret_val;
13402:     const char * URL; /* the URL for the entity to load */
13403:     int n_URL;
13404:     char * ID; /* the Public ID for the entity to load */
13405:     int n_ID;
13406:     xmlParserCtxtPtr ctxt; /* the context in which the entity is called or NULL */
13407:     int n_ctxt;
13408: 
13409:     for (n_URL = 0;n_URL < gen_nb_filepath;n_URL++) {
13410:     for (n_ID = 0;n_ID < gen_nb_const_char_ptr;n_ID++) {
13411:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
13412:         mem_base = xmlMemBlocks();
13413:         URL = gen_filepath(n_URL, 0);
13414:         ID = gen_const_char_ptr(n_ID, 1);
13415:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 2);
13416: 
13417:         ret_val = xmlLoadExternalEntity(URL, (const char *)ID, ctxt);
13418:         desret_xmlParserInputPtr(ret_val);
13419:         call_tests++;
13420:         des_filepath(n_URL, URL, 0);
13421:         des_const_char_ptr(n_ID, (const char *)ID, 1);
13422:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 2);
13423:         xmlResetLastError();
13424:         if (mem_base != xmlMemBlocks()) {
13425:             printf("Leak of %d blocks found in xmlLoadExternalEntity",
13426: 	           xmlMemBlocks() - mem_base);
13427: 	    test_ret++;
13428:             printf(" %d", n_URL);
13429:             printf(" %d", n_ID);
13430:             printf(" %d", n_ctxt);
13431:             printf("\n");
13432:         }
13433:     }
13434:     }
13435:     }
13436:     function_tests++;
13437: 
13438:     return(test_ret);
13439: }
13440: 
13441: 
13442: static int
13443: test_xmlNewIOInputStream(void) {
13444:     int test_ret = 0;
13445: 
13446:     int mem_base;
13447:     xmlParserInputPtr ret_val;
13448:     xmlParserCtxtPtr ctxt; /* an XML parser context */
13449:     int n_ctxt;
13450:     xmlParserInputBufferPtr input; /* an I/O Input */
13451:     int n_input;
13452:     xmlCharEncoding enc; /* the charset encoding if known */
13453:     int n_enc;
13454: 
13455:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
13456:     for (n_input = 0;n_input < gen_nb_xmlParserInputBufferPtr;n_input++) {
13457:     for (n_enc = 0;n_enc < gen_nb_xmlCharEncoding;n_enc++) {
13458:         mem_base = xmlMemBlocks();
13459:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
13460:         input = gen_xmlParserInputBufferPtr(n_input, 1);
13461:         enc = gen_xmlCharEncoding(n_enc, 2);
13462: 
13463:         ret_val = xmlNewIOInputStream(ctxt, input, enc);
13464:         if (ret_val != NULL) input = NULL;
13465:         desret_xmlParserInputPtr(ret_val);
13466:         call_tests++;
13467:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
13468:         des_xmlParserInputBufferPtr(n_input, input, 1);
13469:         des_xmlCharEncoding(n_enc, enc, 2);
13470:         xmlResetLastError();
13471:         if (mem_base != xmlMemBlocks()) {
13472:             printf("Leak of %d blocks found in xmlNewIOInputStream",
13473: 	           xmlMemBlocks() - mem_base);
13474: 	    test_ret++;
13475:             printf(" %d", n_ctxt);
13476:             printf(" %d", n_input);
13477:             printf(" %d", n_enc);
13478:             printf("\n");
13479:         }
13480:     }
13481:     }
13482:     }
13483:     function_tests++;
13484: 
13485:     return(test_ret);
13486: }
13487: 
13488: 
13489: static int
13490: test_xmlNewParserCtxt(void) {
13491:     int test_ret = 0;
13492: 
13493:     int mem_base;
13494:     xmlParserCtxtPtr ret_val;
13495: 
13496:         mem_base = xmlMemBlocks();
13497: 
13498:         ret_val = xmlNewParserCtxt();
13499:         desret_xmlParserCtxtPtr(ret_val);
13500:         call_tests++;
13501:         xmlResetLastError();
13502:         if (mem_base != xmlMemBlocks()) {
13503:             printf("Leak of %d blocks found in xmlNewParserCtxt",
13504: 	           xmlMemBlocks() - mem_base);
13505: 	    test_ret++;
13506:             printf("\n");
13507:         }
13508:     function_tests++;
13509: 
13510:     return(test_ret);
13511: }
13512: 
13513: 
13514: #define gen_nb_xmlNodePtr_ptr 1
13515: static xmlNodePtr * gen_xmlNodePtr_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
13516:     return(NULL);
13517: }
13518: static void des_xmlNodePtr_ptr(int no ATTRIBUTE_UNUSED, xmlNodePtr * val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
13519: }
13520: 
13521: static int
13522: test_xmlParseBalancedChunkMemory(void) {
13523:     int test_ret = 0;
13524: 
13525: #if defined(LIBXML_SAX1_ENABLED)
13526: #ifdef LIBXML_SAX1_ENABLED
13527:     int mem_base;
13528:     int ret_val;
13529:     xmlDocPtr doc; /* the document the chunk pertains to */
13530:     int n_doc;
13531:     xmlSAXHandlerPtr sax; /* the SAX handler bloc (possibly NULL) */
13532:     int n_sax;
13533:     void * user_data; /* The user data returned on SAX callbacks (possibly NULL) */
13534:     int n_user_data;
13535:     int depth; /* Used for loop detection, use 0 */
13536:     int n_depth;
13537:     xmlChar * string; /* the input string in UTF8 or ISO-Latin (zero terminated) */
13538:     int n_string;
13539:     xmlNodePtr * lst; /* the return value for the set of parsed nodes */
13540:     int n_lst;
13541: 
13542:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
13543:     for (n_sax = 0;n_sax < gen_nb_xmlSAXHandlerPtr;n_sax++) {
13544:     for (n_user_data = 0;n_user_data < gen_nb_userdata;n_user_data++) {
13545:     for (n_depth = 0;n_depth < gen_nb_int;n_depth++) {
13546:     for (n_string = 0;n_string < gen_nb_const_xmlChar_ptr;n_string++) {
13547:     for (n_lst = 0;n_lst < gen_nb_xmlNodePtr_ptr;n_lst++) {
13548:         mem_base = xmlMemBlocks();
13549:         doc = gen_xmlDocPtr(n_doc, 0);
13550:         sax = gen_xmlSAXHandlerPtr(n_sax, 1);
13551:         user_data = gen_userdata(n_user_data, 2);
13552:         depth = gen_int(n_depth, 3);
13553:         string = gen_const_xmlChar_ptr(n_string, 4);
13554:         lst = gen_xmlNodePtr_ptr(n_lst, 5);
13555:         
13556: #ifdef LIBXML_SAX1_ENABLED
13557:         if (sax == (xmlSAXHandlerPtr)&xmlDefaultSAXHandler) user_data = NULL;
13558: #endif
13559: 
13560: 
13561:         ret_val = xmlParseBalancedChunkMemory(doc, sax, user_data, depth, (const xmlChar *)string, lst);
13562:         desret_int(ret_val);
13563:         call_tests++;
13564:         des_xmlDocPtr(n_doc, doc, 0);
13565:         des_xmlSAXHandlerPtr(n_sax, sax, 1);
13566:         des_userdata(n_user_data, user_data, 2);
13567:         des_int(n_depth, depth, 3);
13568:         des_const_xmlChar_ptr(n_string, (const xmlChar *)string, 4);
13569:         des_xmlNodePtr_ptr(n_lst, lst, 5);
13570:         xmlResetLastError();
13571:         if (mem_base != xmlMemBlocks()) {
13572:             printf("Leak of %d blocks found in xmlParseBalancedChunkMemory",
13573: 	           xmlMemBlocks() - mem_base);
13574: 	    test_ret++;
13575:             printf(" %d", n_doc);
13576:             printf(" %d", n_sax);
13577:             printf(" %d", n_user_data);
13578:             printf(" %d", n_depth);
13579:             printf(" %d", n_string);
13580:             printf(" %d", n_lst);
13581:             printf("\n");
13582:         }
13583:     }
13584:     }
13585:     }
13586:     }
13587:     }
13588:     }
13589:     function_tests++;
13590: #endif
13591: #endif
13592: 
13593:     return(test_ret);
13594: }
13595: 
13596: 
13597: static int
13598: test_xmlParseBalancedChunkMemoryRecover(void) {
13599:     int test_ret = 0;
13600: 
13601: #if defined(LIBXML_SAX1_ENABLED)
13602: #ifdef LIBXML_SAX1_ENABLED
13603:     int mem_base;
13604:     int ret_val;
13605:     xmlDocPtr doc; /* the document the chunk pertains to */
13606:     int n_doc;
13607:     xmlSAXHandlerPtr sax; /* the SAX handler bloc (possibly NULL) */
13608:     int n_sax;
13609:     void * user_data; /* The user data returned on SAX callbacks (possibly NULL) */
13610:     int n_user_data;
13611:     int depth; /* Used for loop detection, use 0 */
13612:     int n_depth;
13613:     xmlChar * string; /* the input string in UTF8 or ISO-Latin (zero terminated) */
13614:     int n_string;
13615:     xmlNodePtr * lst; /* the return value for the set of parsed nodes */
13616:     int n_lst;
13617:     int recover; /* return nodes even if the data is broken (use 0) */
13618:     int n_recover;
13619: 
13620:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
13621:     for (n_sax = 0;n_sax < gen_nb_xmlSAXHandlerPtr;n_sax++) {
13622:     for (n_user_data = 0;n_user_data < gen_nb_userdata;n_user_data++) {
13623:     for (n_depth = 0;n_depth < gen_nb_int;n_depth++) {
13624:     for (n_string = 0;n_string < gen_nb_const_xmlChar_ptr;n_string++) {
13625:     for (n_lst = 0;n_lst < gen_nb_xmlNodePtr_ptr;n_lst++) {
13626:     for (n_recover = 0;n_recover < gen_nb_int;n_recover++) {
13627:         mem_base = xmlMemBlocks();
13628:         doc = gen_xmlDocPtr(n_doc, 0);
13629:         sax = gen_xmlSAXHandlerPtr(n_sax, 1);
13630:         user_data = gen_userdata(n_user_data, 2);
13631:         depth = gen_int(n_depth, 3);
13632:         string = gen_const_xmlChar_ptr(n_string, 4);
13633:         lst = gen_xmlNodePtr_ptr(n_lst, 5);
13634:         recover = gen_int(n_recover, 6);
13635:         
13636: #ifdef LIBXML_SAX1_ENABLED
13637:         if (sax == (xmlSAXHandlerPtr)&xmlDefaultSAXHandler) user_data = NULL;
13638: #endif
13639: 
13640: 
13641:         ret_val = xmlParseBalancedChunkMemoryRecover(doc, sax, user_data, depth, (const xmlChar *)string, lst, recover);
13642:         desret_int(ret_val);
13643:         call_tests++;
13644:         des_xmlDocPtr(n_doc, doc, 0);
13645:         des_xmlSAXHandlerPtr(n_sax, sax, 1);
13646:         des_userdata(n_user_data, user_data, 2);
13647:         des_int(n_depth, depth, 3);
13648:         des_const_xmlChar_ptr(n_string, (const xmlChar *)string, 4);
13649:         des_xmlNodePtr_ptr(n_lst, lst, 5);
13650:         des_int(n_recover, recover, 6);
13651:         xmlResetLastError();
13652:         if (mem_base != xmlMemBlocks()) {
13653:             printf("Leak of %d blocks found in xmlParseBalancedChunkMemoryRecover",
13654: 	           xmlMemBlocks() - mem_base);
13655: 	    test_ret++;
13656:             printf(" %d", n_doc);
13657:             printf(" %d", n_sax);
13658:             printf(" %d", n_user_data);
13659:             printf(" %d", n_depth);
13660:             printf(" %d", n_string);
13661:             printf(" %d", n_lst);
13662:             printf(" %d", n_recover);
13663:             printf("\n");
13664:         }
13665:     }
13666:     }
13667:     }
13668:     }
13669:     }
13670:     }
13671:     }
13672:     function_tests++;
13673: #endif
13674: #endif
13675: 
13676:     return(test_ret);
13677: }
13678: 
13679: 
13680: static int
13681: test_xmlParseChunk(void) {
13682:     int test_ret = 0;
13683: 
13684: #if defined(LIBXML_PUSH_ENABLED)
13685:     int mem_base;
13686:     int ret_val;
13687:     xmlParserCtxtPtr ctxt; /* an XML parser context */
13688:     int n_ctxt;
13689:     char * chunk; /* an char array */
13690:     int n_chunk;
13691:     int size; /* the size in byte of the chunk */
13692:     int n_size;
13693:     int terminate; /* last chunk indicator */
13694:     int n_terminate;
13695: 
13696:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
13697:     for (n_chunk = 0;n_chunk < gen_nb_const_char_ptr;n_chunk++) {
13698:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
13699:     for (n_terminate = 0;n_terminate < gen_nb_int;n_terminate++) {
13700:         mem_base = xmlMemBlocks();
13701:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
13702:         chunk = gen_const_char_ptr(n_chunk, 1);
13703:         size = gen_int(n_size, 2);
13704:         terminate = gen_int(n_terminate, 3);
13705: 
13706:         ret_val = xmlParseChunk(ctxt, (const char *)chunk, size, terminate);
13707:         if (ctxt != NULL) {xmlFreeDoc(ctxt->myDoc); ctxt->myDoc = NULL;}
13708:         desret_int(ret_val);
13709:         call_tests++;
13710:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
13711:         des_const_char_ptr(n_chunk, (const char *)chunk, 1);
13712:         des_int(n_size, size, 2);
13713:         des_int(n_terminate, terminate, 3);
13714:         xmlResetLastError();
13715:         if (mem_base != xmlMemBlocks()) {
13716:             printf("Leak of %d blocks found in xmlParseChunk",
13717: 	           xmlMemBlocks() - mem_base);
13718: 	    test_ret++;
13719:             printf(" %d", n_ctxt);
13720:             printf(" %d", n_chunk);
13721:             printf(" %d", n_size);
13722:             printf(" %d", n_terminate);
13723:             printf("\n");
13724:         }
13725:     }
13726:     }
13727:     }
13728:     }
13729:     function_tests++;
13730: #endif
13731: 
13732:     return(test_ret);
13733: }
13734: 
13735: 
13736: static int
13737: test_xmlParseCtxtExternalEntity(void) {
13738:     int test_ret = 0;
13739: 
13740:     int mem_base;
13741:     int ret_val;
13742:     xmlParserCtxtPtr ctx; /* the existing parsing context */
13743:     int n_ctx;
13744:     xmlChar * URL; /* the URL for the entity to load */
13745:     int n_URL;
13746:     xmlChar * ID; /* the System ID for the entity to load */
13747:     int n_ID;
13748:     xmlNodePtr * lst; /* the return value for the set of parsed nodes */
13749:     int n_lst;
13750: 
13751:     for (n_ctx = 0;n_ctx < gen_nb_xmlParserCtxtPtr;n_ctx++) {
13752:     for (n_URL = 0;n_URL < gen_nb_const_xmlChar_ptr;n_URL++) {
13753:     for (n_ID = 0;n_ID < gen_nb_const_xmlChar_ptr;n_ID++) {
13754:     for (n_lst = 0;n_lst < gen_nb_xmlNodePtr_ptr;n_lst++) {
13755:         mem_base = xmlMemBlocks();
13756:         ctx = gen_xmlParserCtxtPtr(n_ctx, 0);
13757:         URL = gen_const_xmlChar_ptr(n_URL, 1);
13758:         ID = gen_const_xmlChar_ptr(n_ID, 2);
13759:         lst = gen_xmlNodePtr_ptr(n_lst, 3);
13760: 
13761:         ret_val = xmlParseCtxtExternalEntity(ctx, (const xmlChar *)URL, (const xmlChar *)ID, lst);
13762:         desret_int(ret_val);
13763:         call_tests++;
13764:         des_xmlParserCtxtPtr(n_ctx, ctx, 0);
13765:         des_const_xmlChar_ptr(n_URL, (const xmlChar *)URL, 1);
13766:         des_const_xmlChar_ptr(n_ID, (const xmlChar *)ID, 2);
13767:         des_xmlNodePtr_ptr(n_lst, lst, 3);
13768:         xmlResetLastError();
13769:         if (mem_base != xmlMemBlocks()) {
13770:             printf("Leak of %d blocks found in xmlParseCtxtExternalEntity",
13771: 	           xmlMemBlocks() - mem_base);
13772: 	    test_ret++;
13773:             printf(" %d", n_ctx);
13774:             printf(" %d", n_URL);
13775:             printf(" %d", n_ID);
13776:             printf(" %d", n_lst);
13777:             printf("\n");
13778:         }
13779:     }
13780:     }
13781:     }
13782:     }
13783:     function_tests++;
13784: 
13785:     return(test_ret);
13786: }
13787: 
13788: 
13789: static int
13790: test_xmlParseDTD(void) {
13791:     int test_ret = 0;
13792: 
13793: #if defined(LIBXML_VALID_ENABLED)
13794: #ifdef LIBXML_VALID_ENABLED
13795:     int mem_base;
13796:     xmlDtdPtr ret_val;
13797:     xmlChar * ExternalID; /* a NAME* containing the External ID of the DTD */
13798:     int n_ExternalID;
13799:     xmlChar * SystemID; /* a NAME* containing the URL to the DTD */
13800:     int n_SystemID;
13801: 
13802:     for (n_ExternalID = 0;n_ExternalID < gen_nb_const_xmlChar_ptr;n_ExternalID++) {
13803:     for (n_SystemID = 0;n_SystemID < gen_nb_const_xmlChar_ptr;n_SystemID++) {
13804:         mem_base = xmlMemBlocks();
13805:         ExternalID = gen_const_xmlChar_ptr(n_ExternalID, 0);
13806:         SystemID = gen_const_xmlChar_ptr(n_SystemID, 1);
13807: 
13808:         ret_val = xmlParseDTD((const xmlChar *)ExternalID, (const xmlChar *)SystemID);
13809:         desret_xmlDtdPtr(ret_val);
13810:         call_tests++;
13811:         des_const_xmlChar_ptr(n_ExternalID, (const xmlChar *)ExternalID, 0);
13812:         des_const_xmlChar_ptr(n_SystemID, (const xmlChar *)SystemID, 1);
13813:         xmlResetLastError();
13814:         if (mem_base != xmlMemBlocks()) {
13815:             printf("Leak of %d blocks found in xmlParseDTD",
13816: 	           xmlMemBlocks() - mem_base);
13817: 	    test_ret++;
13818:             printf(" %d", n_ExternalID);
13819:             printf(" %d", n_SystemID);
13820:             printf("\n");
13821:         }
13822:     }
13823:     }
13824:     function_tests++;
13825: #endif
13826: #endif
13827: 
13828:     return(test_ret);
13829: }
13830: 
13831: 
13832: static int
13833: test_xmlParseDoc(void) {
13834:     int test_ret = 0;
13835: 
13836: #if defined(LIBXML_SAX1_ENABLED)
13837: #ifdef LIBXML_SAX1_ENABLED
13838:     int mem_base;
13839:     xmlDocPtr ret_val;
13840:     xmlChar * cur; /* a pointer to an array of xmlChar */
13841:     int n_cur;
13842: 
13843:     for (n_cur = 0;n_cur < gen_nb_const_xmlChar_ptr;n_cur++) {
13844:         mem_base = xmlMemBlocks();
13845:         cur = gen_const_xmlChar_ptr(n_cur, 0);
13846: 
13847:         ret_val = xmlParseDoc((const xmlChar *)cur);
13848:         desret_xmlDocPtr(ret_val);
13849:         call_tests++;
13850:         des_const_xmlChar_ptr(n_cur, (const xmlChar *)cur, 0);
13851:         xmlResetLastError();
13852:         if (mem_base != xmlMemBlocks()) {
13853:             printf("Leak of %d blocks found in xmlParseDoc",
13854: 	           xmlMemBlocks() - mem_base);
13855: 	    test_ret++;
13856:             printf(" %d", n_cur);
13857:             printf("\n");
13858:         }
13859:     }
13860:     function_tests++;
13861: #endif
13862: #endif
13863: 
13864:     return(test_ret);
13865: }
13866: 
13867: 
13868: static int
13869: test_xmlParseDocument(void) {
13870:     int test_ret = 0;
13871: 
13872:     int mem_base;
13873:     int ret_val;
13874:     xmlParserCtxtPtr ctxt; /* an XML parser context */
13875:     int n_ctxt;
13876: 
13877:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
13878:         mem_base = xmlMemBlocks();
13879:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
13880: 
13881:         ret_val = xmlParseDocument(ctxt);
13882:         if (ctxt != NULL) {xmlFreeDoc(ctxt->myDoc); ctxt->myDoc = NULL;}
13883:         desret_int(ret_val);
13884:         call_tests++;
13885:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
13886:         xmlResetLastError();
13887:         if (mem_base != xmlMemBlocks()) {
13888:             printf("Leak of %d blocks found in xmlParseDocument",
13889: 	           xmlMemBlocks() - mem_base);
13890: 	    test_ret++;
13891:             printf(" %d", n_ctxt);
13892:             printf("\n");
13893:         }
13894:     }
13895:     function_tests++;
13896: 
13897:     return(test_ret);
13898: }
13899: 
13900: 
13901: static int
13902: test_xmlParseEntity(void) {
13903:     int test_ret = 0;
13904: 
13905: #if defined(LIBXML_SAX1_ENABLED)
13906: #ifdef LIBXML_SAX1_ENABLED
13907:     int mem_base;
13908:     xmlDocPtr ret_val;
13909:     const char * filename; /* the filename */
13910:     int n_filename;
13911: 
13912:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
13913:         mem_base = xmlMemBlocks();
13914:         filename = gen_filepath(n_filename, 0);
13915: 
13916:         ret_val = xmlParseEntity(filename);
13917:         desret_xmlDocPtr(ret_val);
13918:         call_tests++;
13919:         des_filepath(n_filename, filename, 0);
13920:         xmlResetLastError();
13921:         if (mem_base != xmlMemBlocks()) {
13922:             printf("Leak of %d blocks found in xmlParseEntity",
13923: 	           xmlMemBlocks() - mem_base);
13924: 	    test_ret++;
13925:             printf(" %d", n_filename);
13926:             printf("\n");
13927:         }
13928:     }
13929:     function_tests++;
13930: #endif
13931: #endif
13932: 
13933:     return(test_ret);
13934: }
13935: 
13936: 
13937: static int
13938: test_xmlParseExtParsedEnt(void) {
13939:     int test_ret = 0;
13940: 
13941:     int mem_base;
13942:     int ret_val;
13943:     xmlParserCtxtPtr ctxt; /* an XML parser context */
13944:     int n_ctxt;
13945: 
13946:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
13947:         mem_base = xmlMemBlocks();
13948:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
13949: 
13950:         ret_val = xmlParseExtParsedEnt(ctxt);
13951:         if (ctxt != NULL) {xmlFreeDoc(ctxt->myDoc); ctxt->myDoc = NULL;}
13952:         desret_int(ret_val);
13953:         call_tests++;
13954:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
13955:         xmlResetLastError();
13956:         if (mem_base != xmlMemBlocks()) {
13957:             printf("Leak of %d blocks found in xmlParseExtParsedEnt",
13958: 	           xmlMemBlocks() - mem_base);
13959: 	    test_ret++;
13960:             printf(" %d", n_ctxt);
13961:             printf("\n");
13962:         }
13963:     }
13964:     function_tests++;
13965: 
13966:     return(test_ret);
13967: }
13968: 
13969: 
13970: static int
13971: test_xmlParseExternalEntity(void) {
13972:     int test_ret = 0;
13973: 
13974: #if defined(LIBXML_SAX1_ENABLED)
13975: #ifdef LIBXML_SAX1_ENABLED
13976:     int mem_base;
13977:     int ret_val;
13978:     xmlDocPtr doc; /* the document the chunk pertains to */
13979:     int n_doc;
13980:     xmlSAXHandlerPtr sax; /* the SAX handler bloc (possibly NULL) */
13981:     int n_sax;
13982:     void * user_data; /* The user data returned on SAX callbacks (possibly NULL) */
13983:     int n_user_data;
13984:     int depth; /* Used for loop detection, use 0 */
13985:     int n_depth;
13986:     xmlChar * URL; /* the URL for the entity to load */
13987:     int n_URL;
13988:     xmlChar * ID; /* the System ID for the entity to load */
13989:     int n_ID;
13990:     xmlNodePtr * lst; /* the return value for the set of parsed nodes */
13991:     int n_lst;
13992: 
13993:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
13994:     for (n_sax = 0;n_sax < gen_nb_xmlSAXHandlerPtr;n_sax++) {
13995:     for (n_user_data = 0;n_user_data < gen_nb_userdata;n_user_data++) {
13996:     for (n_depth = 0;n_depth < gen_nb_int;n_depth++) {
13997:     for (n_URL = 0;n_URL < gen_nb_const_xmlChar_ptr;n_URL++) {
13998:     for (n_ID = 0;n_ID < gen_nb_const_xmlChar_ptr;n_ID++) {
13999:     for (n_lst = 0;n_lst < gen_nb_xmlNodePtr_ptr;n_lst++) {
14000:         mem_base = xmlMemBlocks();
14001:         doc = gen_xmlDocPtr(n_doc, 0);
14002:         sax = gen_xmlSAXHandlerPtr(n_sax, 1);
14003:         user_data = gen_userdata(n_user_data, 2);
14004:         depth = gen_int(n_depth, 3);
14005:         URL = gen_const_xmlChar_ptr(n_URL, 4);
14006:         ID = gen_const_xmlChar_ptr(n_ID, 5);
14007:         lst = gen_xmlNodePtr_ptr(n_lst, 6);
14008: 
14009:         ret_val = xmlParseExternalEntity(doc, sax, user_data, depth, (const xmlChar *)URL, (const xmlChar *)ID, lst);
14010:         desret_int(ret_val);
14011:         call_tests++;
14012:         des_xmlDocPtr(n_doc, doc, 0);
14013:         des_xmlSAXHandlerPtr(n_sax, sax, 1);
14014:         des_userdata(n_user_data, user_data, 2);
14015:         des_int(n_depth, depth, 3);
14016:         des_const_xmlChar_ptr(n_URL, (const xmlChar *)URL, 4);
14017:         des_const_xmlChar_ptr(n_ID, (const xmlChar *)ID, 5);
14018:         des_xmlNodePtr_ptr(n_lst, lst, 6);
14019:         xmlResetLastError();
14020:         if (mem_base != xmlMemBlocks()) {
14021:             printf("Leak of %d blocks found in xmlParseExternalEntity",
14022: 	           xmlMemBlocks() - mem_base);
14023: 	    test_ret++;
14024:             printf(" %d", n_doc);
14025:             printf(" %d", n_sax);
14026:             printf(" %d", n_user_data);
14027:             printf(" %d", n_depth);
14028:             printf(" %d", n_URL);
14029:             printf(" %d", n_ID);
14030:             printf(" %d", n_lst);
14031:             printf("\n");
14032:         }
14033:     }
14034:     }
14035:     }
14036:     }
14037:     }
14038:     }
14039:     }
14040:     function_tests++;
14041: #endif
14042: #endif
14043: 
14044:     return(test_ret);
14045: }
14046: 
14047: 
14048: static int
14049: test_xmlParseFile(void) {
14050:     int test_ret = 0;
14051: 
14052: #if defined(LIBXML_SAX1_ENABLED)
14053: #ifdef LIBXML_SAX1_ENABLED
14054:     int mem_base;
14055:     xmlDocPtr ret_val;
14056:     const char * filename; /* the filename */
14057:     int n_filename;
14058: 
14059:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
14060:         mem_base = xmlMemBlocks();
14061:         filename = gen_filepath(n_filename, 0);
14062: 
14063:         ret_val = xmlParseFile(filename);
14064:         desret_xmlDocPtr(ret_val);
14065:         call_tests++;
14066:         des_filepath(n_filename, filename, 0);
14067:         xmlResetLastError();
14068:         if (mem_base != xmlMemBlocks()) {
14069:             printf("Leak of %d blocks found in xmlParseFile",
14070: 	           xmlMemBlocks() - mem_base);
14071: 	    test_ret++;
14072:             printf(" %d", n_filename);
14073:             printf("\n");
14074:         }
14075:     }
14076:     function_tests++;
14077: #endif
14078: #endif
14079: 
14080:     return(test_ret);
14081: }
14082: 
14083: 
14084: static int
14085: test_xmlParseInNodeContext(void) {
14086:     int test_ret = 0;
14087: 
14088:     int mem_base;
14089:     xmlParserErrors ret_val;
14090:     xmlNodePtr node; /* the context node */
14091:     int n_node;
14092:     char * data; /* the input string */
14093:     int n_data;
14094:     int datalen; /* the input string length in bytes */
14095:     int n_datalen;
14096:     int options; /* a combination of xmlParserOption */
14097:     int n_options;
14098:     xmlNodePtr * lst; /* the return value for the set of parsed nodes */
14099:     int n_lst;
14100: 
14101:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
14102:     for (n_data = 0;n_data < gen_nb_const_char_ptr;n_data++) {
14103:     for (n_datalen = 0;n_datalen < gen_nb_int;n_datalen++) {
14104:     for (n_options = 0;n_options < gen_nb_parseroptions;n_options++) {
14105:     for (n_lst = 0;n_lst < gen_nb_xmlNodePtr_ptr;n_lst++) {
14106:         mem_base = xmlMemBlocks();
14107:         node = gen_xmlNodePtr(n_node, 0);
14108:         data = gen_const_char_ptr(n_data, 1);
14109:         datalen = gen_int(n_datalen, 2);
14110:         options = gen_parseroptions(n_options, 3);
14111:         lst = gen_xmlNodePtr_ptr(n_lst, 4);
14112: 
14113:         ret_val = xmlParseInNodeContext(node, (const char *)data, datalen, options, lst);
14114:         desret_xmlParserErrors(ret_val);
14115:         call_tests++;
14116:         des_xmlNodePtr(n_node, node, 0);
14117:         des_const_char_ptr(n_data, (const char *)data, 1);
14118:         des_int(n_datalen, datalen, 2);
14119:         des_parseroptions(n_options, options, 3);
14120:         des_xmlNodePtr_ptr(n_lst, lst, 4);
14121:         xmlResetLastError();
14122:         if (mem_base != xmlMemBlocks()) {
14123:             printf("Leak of %d blocks found in xmlParseInNodeContext",
14124: 	           xmlMemBlocks() - mem_base);
14125: 	    test_ret++;
14126:             printf(" %d", n_node);
14127:             printf(" %d", n_data);
14128:             printf(" %d", n_datalen);
14129:             printf(" %d", n_options);
14130:             printf(" %d", n_lst);
14131:             printf("\n");
14132:         }
14133:     }
14134:     }
14135:     }
14136:     }
14137:     }
14138:     function_tests++;
14139: 
14140:     return(test_ret);
14141: }
14142: 
14143: 
14144: static int
14145: test_xmlParseMemory(void) {
14146:     int test_ret = 0;
14147: 
14148: #if defined(LIBXML_SAX1_ENABLED)
14149: #ifdef LIBXML_SAX1_ENABLED
14150:     int mem_base;
14151:     xmlDocPtr ret_val;
14152:     char * buffer; /* an pointer to a char array */
14153:     int n_buffer;
14154:     int size; /* the size of the array */
14155:     int n_size;
14156: 
14157:     for (n_buffer = 0;n_buffer < gen_nb_const_char_ptr;n_buffer++) {
14158:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
14159:         mem_base = xmlMemBlocks();
14160:         buffer = gen_const_char_ptr(n_buffer, 0);
14161:         size = gen_int(n_size, 1);
14162: 
14163:         ret_val = xmlParseMemory((const char *)buffer, size);
14164:         desret_xmlDocPtr(ret_val);
14165:         call_tests++;
14166:         des_const_char_ptr(n_buffer, (const char *)buffer, 0);
14167:         des_int(n_size, size, 1);
14168:         xmlResetLastError();
14169:         if (mem_base != xmlMemBlocks()) {
14170:             printf("Leak of %d blocks found in xmlParseMemory",
14171: 	           xmlMemBlocks() - mem_base);
14172: 	    test_ret++;
14173:             printf(" %d", n_buffer);
14174:             printf(" %d", n_size);
14175:             printf("\n");
14176:         }
14177:     }
14178:     }
14179:     function_tests++;
14180: #endif
14181: #endif
14182: 
14183:     return(test_ret);
14184: }
14185: 
14186: 
14187: #define gen_nb_const_xmlParserNodeInfoPtr 1
14188: static xmlParserNodeInfoPtr gen_const_xmlParserNodeInfoPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
14189:     return(NULL);
14190: }
14191: static void des_const_xmlParserNodeInfoPtr(int no ATTRIBUTE_UNUSED, const xmlParserNodeInfoPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
14192: }
14193: 
14194: static int
14195: test_xmlParserAddNodeInfo(void) {
14196:     int test_ret = 0;
14197: 
14198:     int mem_base;
14199:     xmlParserCtxtPtr ctxt; /* an XML parser context */
14200:     int n_ctxt;
14201:     xmlParserNodeInfoPtr info; /* a node info sequence pointer */
14202:     int n_info;
14203: 
14204:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
14205:     for (n_info = 0;n_info < gen_nb_const_xmlParserNodeInfoPtr;n_info++) {
14206:         mem_base = xmlMemBlocks();
14207:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
14208:         info = gen_const_xmlParserNodeInfoPtr(n_info, 1);
14209: 
14210:         xmlParserAddNodeInfo(ctxt, (const xmlParserNodeInfoPtr)info);
14211:         call_tests++;
14212:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
14213:         des_const_xmlParserNodeInfoPtr(n_info, (const xmlParserNodeInfoPtr)info, 1);
14214:         xmlResetLastError();
14215:         if (mem_base != xmlMemBlocks()) {
14216:             printf("Leak of %d blocks found in xmlParserAddNodeInfo",
14217: 	           xmlMemBlocks() - mem_base);
14218: 	    test_ret++;
14219:             printf(" %d", n_ctxt);
14220:             printf(" %d", n_info);
14221:             printf("\n");
14222:         }
14223:     }
14224:     }
14225:     function_tests++;
14226: 
14227:     return(test_ret);
14228: }
14229: 
14230: 
14231: #define gen_nb_const_xmlParserCtxtPtr 1
14232: static xmlParserCtxtPtr gen_const_xmlParserCtxtPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
14233:     return(NULL);
14234: }
14235: static void des_const_xmlParserCtxtPtr(int no ATTRIBUTE_UNUSED, const xmlParserCtxtPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
14236: }
14237: 
14238: #define gen_nb_const_xmlNodePtr 1
14239: static xmlNodePtr gen_const_xmlNodePtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
14240:     return(NULL);
14241: }
14242: static void des_const_xmlNodePtr(int no ATTRIBUTE_UNUSED, const xmlNodePtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
14243: }
14244: 
14245: static int
14246: test_xmlParserFindNodeInfo(void) {
14247:     int test_ret = 0;
14248: 
14249:     int mem_base;
14250:     const xmlParserNodeInfo * ret_val;
14251:     xmlParserCtxtPtr ctx; /* an XML parser context */
14252:     int n_ctx;
14253:     xmlNodePtr node; /* an XML node within the tree */
14254:     int n_node;
14255: 
14256:     for (n_ctx = 0;n_ctx < gen_nb_const_xmlParserCtxtPtr;n_ctx++) {
14257:     for (n_node = 0;n_node < gen_nb_const_xmlNodePtr;n_node++) {
14258:         mem_base = xmlMemBlocks();
14259:         ctx = gen_const_xmlParserCtxtPtr(n_ctx, 0);
14260:         node = gen_const_xmlNodePtr(n_node, 1);
14261: 
14262:         ret_val = xmlParserFindNodeInfo((const xmlParserCtxtPtr)ctx, (const xmlNodePtr)node);
14263:         desret_const_xmlParserNodeInfo_ptr(ret_val);
14264:         call_tests++;
14265:         des_const_xmlParserCtxtPtr(n_ctx, (const xmlParserCtxtPtr)ctx, 0);
14266:         des_const_xmlNodePtr(n_node, (const xmlNodePtr)node, 1);
14267:         xmlResetLastError();
14268:         if (mem_base != xmlMemBlocks()) {
14269:             printf("Leak of %d blocks found in xmlParserFindNodeInfo",
14270: 	           xmlMemBlocks() - mem_base);
14271: 	    test_ret++;
14272:             printf(" %d", n_ctx);
14273:             printf(" %d", n_node);
14274:             printf("\n");
14275:         }
14276:     }
14277:     }
14278:     function_tests++;
14279: 
14280:     return(test_ret);
14281: }
14282: 
14283: 
14284: #define gen_nb_const_xmlParserNodeInfoSeqPtr 1
14285: static xmlParserNodeInfoSeqPtr gen_const_xmlParserNodeInfoSeqPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
14286:     return(NULL);
14287: }
14288: static void des_const_xmlParserNodeInfoSeqPtr(int no ATTRIBUTE_UNUSED, const xmlParserNodeInfoSeqPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
14289: }
14290: 
14291: static int
14292: test_xmlParserFindNodeInfoIndex(void) {
14293:     int test_ret = 0;
14294: 
14295:     int mem_base;
14296:     unsigned long ret_val;
14297:     xmlParserNodeInfoSeqPtr seq; /* a node info sequence pointer */
14298:     int n_seq;
14299:     xmlNodePtr node; /* an XML node pointer */
14300:     int n_node;
14301: 
14302:     for (n_seq = 0;n_seq < gen_nb_const_xmlParserNodeInfoSeqPtr;n_seq++) {
14303:     for (n_node = 0;n_node < gen_nb_const_xmlNodePtr;n_node++) {
14304:         mem_base = xmlMemBlocks();
14305:         seq = gen_const_xmlParserNodeInfoSeqPtr(n_seq, 0);
14306:         node = gen_const_xmlNodePtr(n_node, 1);
14307: 
14308:         ret_val = xmlParserFindNodeInfoIndex((const xmlParserNodeInfoSeqPtr)seq, (const xmlNodePtr)node);
14309:         desret_unsigned_long(ret_val);
14310:         call_tests++;
14311:         des_const_xmlParserNodeInfoSeqPtr(n_seq, (const xmlParserNodeInfoSeqPtr)seq, 0);
14312:         des_const_xmlNodePtr(n_node, (const xmlNodePtr)node, 1);
14313:         xmlResetLastError();
14314:         if (mem_base != xmlMemBlocks()) {
14315:             printf("Leak of %d blocks found in xmlParserFindNodeInfoIndex",
14316: 	           xmlMemBlocks() - mem_base);
14317: 	    test_ret++;
14318:             printf(" %d", n_seq);
14319:             printf(" %d", n_node);
14320:             printf("\n");
14321:         }
14322:     }
14323:     }
14324:     function_tests++;
14325: 
14326:     return(test_ret);
14327: }
14328: 
14329: 
14330: #define gen_nb_xmlParserInputPtr 1
14331: static xmlParserInputPtr gen_xmlParserInputPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
14332:     return(NULL);
14333: }
14334: static void des_xmlParserInputPtr(int no ATTRIBUTE_UNUSED, xmlParserInputPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
14335: }
14336: 
14337: static int
14338: test_xmlParserInputGrow(void) {
14339:     int test_ret = 0;
14340: 
14341:     int mem_base;
14342:     int ret_val;
14343:     xmlParserInputPtr in; /* an XML parser input */
14344:     int n_in;
14345:     int len; /* an indicative size for the lookahead */
14346:     int n_len;
14347: 
14348:     for (n_in = 0;n_in < gen_nb_xmlParserInputPtr;n_in++) {
14349:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
14350:         mem_base = xmlMemBlocks();
14351:         in = gen_xmlParserInputPtr(n_in, 0);
14352:         len = gen_int(n_len, 1);
14353: 
14354:         ret_val = xmlParserInputGrow(in, len);
14355:         desret_int(ret_val);
14356:         call_tests++;
14357:         des_xmlParserInputPtr(n_in, in, 0);
14358:         des_int(n_len, len, 1);
14359:         xmlResetLastError();
14360:         if (mem_base != xmlMemBlocks()) {
14361:             printf("Leak of %d blocks found in xmlParserInputGrow",
14362: 	           xmlMemBlocks() - mem_base);
14363: 	    test_ret++;
14364:             printf(" %d", n_in);
14365:             printf(" %d", n_len);
14366:             printf("\n");
14367:         }
14368:     }
14369:     }
14370:     function_tests++;
14371: 
14372:     return(test_ret);
14373: }
14374: 
14375: 
14376: static int
14377: test_xmlParserInputRead(void) {
14378:     int test_ret = 0;
14379: 
14380:     int mem_base;
14381:     int ret_val;
14382:     xmlParserInputPtr in; /* an XML parser input */
14383:     int n_in;
14384:     int len; /* an indicative size for the lookahead */
14385:     int n_len;
14386: 
14387:     for (n_in = 0;n_in < gen_nb_xmlParserInputPtr;n_in++) {
14388:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
14389:         mem_base = xmlMemBlocks();
14390:         in = gen_xmlParserInputPtr(n_in, 0);
14391:         len = gen_int(n_len, 1);
14392: 
14393:         ret_val = xmlParserInputRead(in, len);
14394:         desret_int(ret_val);
14395:         call_tests++;
14396:         des_xmlParserInputPtr(n_in, in, 0);
14397:         des_int(n_len, len, 1);
14398:         xmlResetLastError();
14399:         if (mem_base != xmlMemBlocks()) {
14400:             printf("Leak of %d blocks found in xmlParserInputRead",
14401: 	           xmlMemBlocks() - mem_base);
14402: 	    test_ret++;
14403:             printf(" %d", n_in);
14404:             printf(" %d", n_len);
14405:             printf("\n");
14406:         }
14407:     }
14408:     }
14409:     function_tests++;
14410: 
14411:     return(test_ret);
14412: }
14413: 
14414: 
14415: static int
14416: test_xmlPedanticParserDefault(void) {
14417:     int test_ret = 0;
14418: 
14419:     int mem_base;
14420:     int ret_val;
14421:     int val; /* int 0 or 1 */
14422:     int n_val;
14423: 
14424:     for (n_val = 0;n_val < gen_nb_int;n_val++) {
14425:         mem_base = xmlMemBlocks();
14426:         val = gen_int(n_val, 0);
14427: 
14428:         ret_val = xmlPedanticParserDefault(val);
14429:         desret_int(ret_val);
14430:         call_tests++;
14431:         des_int(n_val, val, 0);
14432:         xmlResetLastError();
14433:         if (mem_base != xmlMemBlocks()) {
14434:             printf("Leak of %d blocks found in xmlPedanticParserDefault",
14435: 	           xmlMemBlocks() - mem_base);
14436: 	    test_ret++;
14437:             printf(" %d", n_val);
14438:             printf("\n");
14439:         }
14440:     }
14441:     function_tests++;
14442: 
14443:     return(test_ret);
14444: }
14445: 
14446: 
14447: static int
14448: test_xmlReadDoc(void) {
14449:     int test_ret = 0;
14450: 
14451:     int mem_base;
14452:     xmlDocPtr ret_val;
14453:     xmlChar * cur; /* a pointer to a zero terminated string */
14454:     int n_cur;
14455:     const char * URL; /* the base URL to use for the document */
14456:     int n_URL;
14457:     char * encoding; /* the document encoding, or NULL */
14458:     int n_encoding;
14459:     int options; /* a combination of xmlParserOption */
14460:     int n_options;
14461: 
14462:     for (n_cur = 0;n_cur < gen_nb_const_xmlChar_ptr;n_cur++) {
14463:     for (n_URL = 0;n_URL < gen_nb_filepath;n_URL++) {
14464:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
14465:     for (n_options = 0;n_options < gen_nb_parseroptions;n_options++) {
14466:         mem_base = xmlMemBlocks();
14467:         cur = gen_const_xmlChar_ptr(n_cur, 0);
14468:         URL = gen_filepath(n_URL, 1);
14469:         encoding = gen_const_char_ptr(n_encoding, 2);
14470:         options = gen_parseroptions(n_options, 3);
14471: 
14472:         ret_val = xmlReadDoc((const xmlChar *)cur, URL, (const char *)encoding, options);
14473:         desret_xmlDocPtr(ret_val);
14474:         call_tests++;
14475:         des_const_xmlChar_ptr(n_cur, (const xmlChar *)cur, 0);
14476:         des_filepath(n_URL, URL, 1);
14477:         des_const_char_ptr(n_encoding, (const char *)encoding, 2);
14478:         des_parseroptions(n_options, options, 3);
14479:         xmlResetLastError();
14480:         if (mem_base != xmlMemBlocks()) {
14481:             printf("Leak of %d blocks found in xmlReadDoc",
14482: 	           xmlMemBlocks() - mem_base);
14483: 	    test_ret++;
14484:             printf(" %d", n_cur);
14485:             printf(" %d", n_URL);
14486:             printf(" %d", n_encoding);
14487:             printf(" %d", n_options);
14488:             printf("\n");
14489:         }
14490:     }
14491:     }
14492:     }
14493:     }
14494:     function_tests++;
14495: 
14496:     return(test_ret);
14497: }
14498: 
14499: 
14500: static int
14501: test_xmlReadFile(void) {
14502:     int test_ret = 0;
14503: 
14504:     int mem_base;
14505:     xmlDocPtr ret_val;
14506:     const char * filename; /* a file or URL */
14507:     int n_filename;
14508:     char * encoding; /* the document encoding, or NULL */
14509:     int n_encoding;
14510:     int options; /* a combination of xmlParserOption */
14511:     int n_options;
14512: 
14513:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
14514:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
14515:     for (n_options = 0;n_options < gen_nb_parseroptions;n_options++) {
14516:         mem_base = xmlMemBlocks();
14517:         filename = gen_filepath(n_filename, 0);
14518:         encoding = gen_const_char_ptr(n_encoding, 1);
14519:         options = gen_parseroptions(n_options, 2);
14520: 
14521:         ret_val = xmlReadFile(filename, (const char *)encoding, options);
14522:         desret_xmlDocPtr(ret_val);
14523:         call_tests++;
14524:         des_filepath(n_filename, filename, 0);
14525:         des_const_char_ptr(n_encoding, (const char *)encoding, 1);
14526:         des_parseroptions(n_options, options, 2);
14527:         xmlResetLastError();
14528:         if (mem_base != xmlMemBlocks()) {
14529:             printf("Leak of %d blocks found in xmlReadFile",
14530: 	           xmlMemBlocks() - mem_base);
14531: 	    test_ret++;
14532:             printf(" %d", n_filename);
14533:             printf(" %d", n_encoding);
14534:             printf(" %d", n_options);
14535:             printf("\n");
14536:         }
14537:     }
14538:     }
14539:     }
14540:     function_tests++;
14541: 
14542:     return(test_ret);
14543: }
14544: 
14545: 
14546: static int
14547: test_xmlReadMemory(void) {
14548:     int test_ret = 0;
14549: 
14550:     int mem_base;
14551:     xmlDocPtr ret_val;
14552:     char * buffer; /* a pointer to a char array */
14553:     int n_buffer;
14554:     int size; /* the size of the array */
14555:     int n_size;
14556:     const char * URL; /* the base URL to use for the document */
14557:     int n_URL;
14558:     char * encoding; /* the document encoding, or NULL */
14559:     int n_encoding;
14560:     int options; /* a combination of xmlParserOption */
14561:     int n_options;
14562: 
14563:     for (n_buffer = 0;n_buffer < gen_nb_const_char_ptr;n_buffer++) {
14564:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
14565:     for (n_URL = 0;n_URL < gen_nb_filepath;n_URL++) {
14566:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
14567:     for (n_options = 0;n_options < gen_nb_parseroptions;n_options++) {
14568:         mem_base = xmlMemBlocks();
14569:         buffer = gen_const_char_ptr(n_buffer, 0);
14570:         size = gen_int(n_size, 1);
14571:         URL = gen_filepath(n_URL, 2);
14572:         encoding = gen_const_char_ptr(n_encoding, 3);
14573:         options = gen_parseroptions(n_options, 4);
14574: 
14575:         ret_val = xmlReadMemory((const char *)buffer, size, URL, (const char *)encoding, options);
14576:         desret_xmlDocPtr(ret_val);
14577:         call_tests++;
14578:         des_const_char_ptr(n_buffer, (const char *)buffer, 0);
14579:         des_int(n_size, size, 1);
14580:         des_filepath(n_URL, URL, 2);
14581:         des_const_char_ptr(n_encoding, (const char *)encoding, 3);
14582:         des_parseroptions(n_options, options, 4);
14583:         xmlResetLastError();
14584:         if (mem_base != xmlMemBlocks()) {
14585:             printf("Leak of %d blocks found in xmlReadMemory",
14586: 	           xmlMemBlocks() - mem_base);
14587: 	    test_ret++;
14588:             printf(" %d", n_buffer);
14589:             printf(" %d", n_size);
14590:             printf(" %d", n_URL);
14591:             printf(" %d", n_encoding);
14592:             printf(" %d", n_options);
14593:             printf("\n");
14594:         }
14595:     }
14596:     }
14597:     }
14598:     }
14599:     }
14600:     function_tests++;
14601: 
14602:     return(test_ret);
14603: }
14604: 
14605: 
14606: static int
14607: test_xmlRecoverDoc(void) {
14608:     int test_ret = 0;
14609: 
14610: #if defined(LIBXML_SAX1_ENABLED)
14611: #ifdef LIBXML_SAX1_ENABLED
14612:     int mem_base;
14613:     xmlDocPtr ret_val;
14614:     xmlChar * cur; /* a pointer to an array of xmlChar */
14615:     int n_cur;
14616: 
14617:     for (n_cur = 0;n_cur < gen_nb_const_xmlChar_ptr;n_cur++) {
14618:         mem_base = xmlMemBlocks();
14619:         cur = gen_const_xmlChar_ptr(n_cur, 0);
14620: 
14621:         ret_val = xmlRecoverDoc((const xmlChar *)cur);
14622:         desret_xmlDocPtr(ret_val);
14623:         call_tests++;
14624:         des_const_xmlChar_ptr(n_cur, (const xmlChar *)cur, 0);
14625:         xmlResetLastError();
14626:         if (mem_base != xmlMemBlocks()) {
14627:             printf("Leak of %d blocks found in xmlRecoverDoc",
14628: 	           xmlMemBlocks() - mem_base);
14629: 	    test_ret++;
14630:             printf(" %d", n_cur);
14631:             printf("\n");
14632:         }
14633:     }
14634:     function_tests++;
14635: #endif
14636: #endif
14637: 
14638:     return(test_ret);
14639: }
14640: 
14641: 
14642: static int
14643: test_xmlRecoverFile(void) {
14644:     int test_ret = 0;
14645: 
14646: #if defined(LIBXML_SAX1_ENABLED)
14647: #ifdef LIBXML_SAX1_ENABLED
14648:     int mem_base;
14649:     xmlDocPtr ret_val;
14650:     const char * filename; /* the filename */
14651:     int n_filename;
14652: 
14653:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
14654:         mem_base = xmlMemBlocks();
14655:         filename = gen_filepath(n_filename, 0);
14656: 
14657:         ret_val = xmlRecoverFile(filename);
14658:         desret_xmlDocPtr(ret_val);
14659:         call_tests++;
14660:         des_filepath(n_filename, filename, 0);
14661:         xmlResetLastError();
14662:         if (mem_base != xmlMemBlocks()) {
14663:             printf("Leak of %d blocks found in xmlRecoverFile",
14664: 	           xmlMemBlocks() - mem_base);
14665: 	    test_ret++;
14666:             printf(" %d", n_filename);
14667:             printf("\n");
14668:         }
14669:     }
14670:     function_tests++;
14671: #endif
14672: #endif
14673: 
14674:     return(test_ret);
14675: }
14676: 
14677: 
14678: static int
14679: test_xmlRecoverMemory(void) {
14680:     int test_ret = 0;
14681: 
14682: #if defined(LIBXML_SAX1_ENABLED)
14683: #ifdef LIBXML_SAX1_ENABLED
14684:     int mem_base;
14685:     xmlDocPtr ret_val;
14686:     char * buffer; /* an pointer to a char array */
14687:     int n_buffer;
14688:     int size; /* the size of the array */
14689:     int n_size;
14690: 
14691:     for (n_buffer = 0;n_buffer < gen_nb_const_char_ptr;n_buffer++) {
14692:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
14693:         mem_base = xmlMemBlocks();
14694:         buffer = gen_const_char_ptr(n_buffer, 0);
14695:         size = gen_int(n_size, 1);
14696: 
14697:         ret_val = xmlRecoverMemory((const char *)buffer, size);
14698:         desret_xmlDocPtr(ret_val);
14699:         call_tests++;
14700:         des_const_char_ptr(n_buffer, (const char *)buffer, 0);
14701:         des_int(n_size, size, 1);
14702:         xmlResetLastError();
14703:         if (mem_base != xmlMemBlocks()) {
14704:             printf("Leak of %d blocks found in xmlRecoverMemory",
14705: 	           xmlMemBlocks() - mem_base);
14706: 	    test_ret++;
14707:             printf(" %d", n_buffer);
14708:             printf(" %d", n_size);
14709:             printf("\n");
14710:         }
14711:     }
14712:     }
14713:     function_tests++;
14714: #endif
14715: #endif
14716: 
14717:     return(test_ret);
14718: }
14719: 
14720: 
14721: static int
14722: test_xmlSAXParseDTD(void) {
14723:     int test_ret = 0;
14724: 
14725: #if defined(LIBXML_VALID_ENABLED)
14726: #ifdef LIBXML_SAX1_ENABLED
14727:     int mem_base;
14728:     xmlDtdPtr ret_val;
14729:     xmlSAXHandlerPtr sax; /* the SAX handler block */
14730:     int n_sax;
14731:     xmlChar * ExternalID; /* a NAME* containing the External ID of the DTD */
14732:     int n_ExternalID;
14733:     xmlChar * SystemID; /* a NAME* containing the URL to the DTD */
14734:     int n_SystemID;
14735: 
14736:     for (n_sax = 0;n_sax < gen_nb_xmlSAXHandlerPtr;n_sax++) {
14737:     for (n_ExternalID = 0;n_ExternalID < gen_nb_const_xmlChar_ptr;n_ExternalID++) {
14738:     for (n_SystemID = 0;n_SystemID < gen_nb_const_xmlChar_ptr;n_SystemID++) {
14739:         mem_base = xmlMemBlocks();
14740:         sax = gen_xmlSAXHandlerPtr(n_sax, 0);
14741:         ExternalID = gen_const_xmlChar_ptr(n_ExternalID, 1);
14742:         SystemID = gen_const_xmlChar_ptr(n_SystemID, 2);
14743: 
14744:         ret_val = xmlSAXParseDTD(sax, (const xmlChar *)ExternalID, (const xmlChar *)SystemID);
14745:         desret_xmlDtdPtr(ret_val);
14746:         call_tests++;
14747:         des_xmlSAXHandlerPtr(n_sax, sax, 0);
14748:         des_const_xmlChar_ptr(n_ExternalID, (const xmlChar *)ExternalID, 1);
14749:         des_const_xmlChar_ptr(n_SystemID, (const xmlChar *)SystemID, 2);
14750:         xmlResetLastError();
14751:         if (mem_base != xmlMemBlocks()) {
14752:             printf("Leak of %d blocks found in xmlSAXParseDTD",
14753: 	           xmlMemBlocks() - mem_base);
14754: 	    test_ret++;
14755:             printf(" %d", n_sax);
14756:             printf(" %d", n_ExternalID);
14757:             printf(" %d", n_SystemID);
14758:             printf("\n");
14759:         }
14760:     }
14761:     }
14762:     }
14763:     function_tests++;
14764: #endif
14765: #endif
14766: 
14767:     return(test_ret);
14768: }
14769: 
14770: 
14771: static int
14772: test_xmlSAXParseDoc(void) {
14773:     int test_ret = 0;
14774: 
14775: #if defined(LIBXML_SAX1_ENABLED)
14776: #ifdef LIBXML_SAX1_ENABLED
14777:     int mem_base;
14778:     xmlDocPtr ret_val;
14779:     xmlSAXHandlerPtr sax; /* the SAX handler block */
14780:     int n_sax;
14781:     xmlChar * cur; /* a pointer to an array of xmlChar */
14782:     int n_cur;
14783:     int recovery; /* work in recovery mode, i.e. tries to read no Well Formed documents */
14784:     int n_recovery;
14785: 
14786:     for (n_sax = 0;n_sax < gen_nb_xmlSAXHandlerPtr;n_sax++) {
14787:     for (n_cur = 0;n_cur < gen_nb_const_xmlChar_ptr;n_cur++) {
14788:     for (n_recovery = 0;n_recovery < gen_nb_int;n_recovery++) {
14789:         mem_base = xmlMemBlocks();
14790:         sax = gen_xmlSAXHandlerPtr(n_sax, 0);
14791:         cur = gen_const_xmlChar_ptr(n_cur, 1);
14792:         recovery = gen_int(n_recovery, 2);
14793: 
14794:         ret_val = xmlSAXParseDoc(sax, (const xmlChar *)cur, recovery);
14795:         desret_xmlDocPtr(ret_val);
14796:         call_tests++;
14797:         des_xmlSAXHandlerPtr(n_sax, sax, 0);
14798:         des_const_xmlChar_ptr(n_cur, (const xmlChar *)cur, 1);
14799:         des_int(n_recovery, recovery, 2);
14800:         xmlResetLastError();
14801:         if (mem_base != xmlMemBlocks()) {
14802:             printf("Leak of %d blocks found in xmlSAXParseDoc",
14803: 	           xmlMemBlocks() - mem_base);
14804: 	    test_ret++;
14805:             printf(" %d", n_sax);
14806:             printf(" %d", n_cur);
14807:             printf(" %d", n_recovery);
14808:             printf("\n");
14809:         }
14810:     }
14811:     }
14812:     }
14813:     function_tests++;
14814: #endif
14815: #endif
14816: 
14817:     return(test_ret);
14818: }
14819: 
14820: 
14821: static int
14822: test_xmlSAXParseEntity(void) {
14823:     int test_ret = 0;
14824: 
14825: #if defined(LIBXML_SAX1_ENABLED)
14826: #ifdef LIBXML_SAX1_ENABLED
14827:     int mem_base;
14828:     xmlDocPtr ret_val;
14829:     xmlSAXHandlerPtr sax; /* the SAX handler block */
14830:     int n_sax;
14831:     const char * filename; /* the filename */
14832:     int n_filename;
14833: 
14834:     for (n_sax = 0;n_sax < gen_nb_xmlSAXHandlerPtr;n_sax++) {
14835:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
14836:         mem_base = xmlMemBlocks();
14837:         sax = gen_xmlSAXHandlerPtr(n_sax, 0);
14838:         filename = gen_filepath(n_filename, 1);
14839: 
14840:         ret_val = xmlSAXParseEntity(sax, filename);
14841:         desret_xmlDocPtr(ret_val);
14842:         call_tests++;
14843:         des_xmlSAXHandlerPtr(n_sax, sax, 0);
14844:         des_filepath(n_filename, filename, 1);
14845:         xmlResetLastError();
14846:         if (mem_base != xmlMemBlocks()) {
14847:             printf("Leak of %d blocks found in xmlSAXParseEntity",
14848: 	           xmlMemBlocks() - mem_base);
14849: 	    test_ret++;
14850:             printf(" %d", n_sax);
14851:             printf(" %d", n_filename);
14852:             printf("\n");
14853:         }
14854:     }
14855:     }
14856:     function_tests++;
14857: #endif
14858: #endif
14859: 
14860:     return(test_ret);
14861: }
14862: 
14863: 
14864: static int
14865: test_xmlSAXParseFile(void) {
14866:     int test_ret = 0;
14867: 
14868: #if defined(LIBXML_SAX1_ENABLED)
14869: #ifdef LIBXML_SAX1_ENABLED
14870:     int mem_base;
14871:     xmlDocPtr ret_val;
14872:     xmlSAXHandlerPtr sax; /* the SAX handler block */
14873:     int n_sax;
14874:     const char * filename; /* the filename */
14875:     int n_filename;
14876:     int recovery; /* work in recovery mode, i.e. tries to read no Well Formed documents */
14877:     int n_recovery;
14878: 
14879:     for (n_sax = 0;n_sax < gen_nb_xmlSAXHandlerPtr;n_sax++) {
14880:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
14881:     for (n_recovery = 0;n_recovery < gen_nb_int;n_recovery++) {
14882:         mem_base = xmlMemBlocks();
14883:         sax = gen_xmlSAXHandlerPtr(n_sax, 0);
14884:         filename = gen_filepath(n_filename, 1);
14885:         recovery = gen_int(n_recovery, 2);
14886: 
14887:         ret_val = xmlSAXParseFile(sax, filename, recovery);
14888:         desret_xmlDocPtr(ret_val);
14889:         call_tests++;
14890:         des_xmlSAXHandlerPtr(n_sax, sax, 0);
14891:         des_filepath(n_filename, filename, 1);
14892:         des_int(n_recovery, recovery, 2);
14893:         xmlResetLastError();
14894:         if (mem_base != xmlMemBlocks()) {
14895:             printf("Leak of %d blocks found in xmlSAXParseFile",
14896: 	           xmlMemBlocks() - mem_base);
14897: 	    test_ret++;
14898:             printf(" %d", n_sax);
14899:             printf(" %d", n_filename);
14900:             printf(" %d", n_recovery);
14901:             printf("\n");
14902:         }
14903:     }
14904:     }
14905:     }
14906:     function_tests++;
14907: #endif
14908: #endif
14909: 
14910:     return(test_ret);
14911: }
14912: 
14913: 
14914: static int
14915: test_xmlSAXParseFileWithData(void) {
14916:     int test_ret = 0;
14917: 
14918: #if defined(LIBXML_SAX1_ENABLED)
14919: #ifdef LIBXML_SAX1_ENABLED
14920:     int mem_base;
14921:     xmlDocPtr ret_val;
14922:     xmlSAXHandlerPtr sax; /* the SAX handler block */
14923:     int n_sax;
14924:     const char * filename; /* the filename */
14925:     int n_filename;
14926:     int recovery; /* work in recovery mode, i.e. tries to read no Well Formed documents */
14927:     int n_recovery;
14928:     void * data; /* the userdata */
14929:     int n_data;
14930: 
14931:     for (n_sax = 0;n_sax < gen_nb_xmlSAXHandlerPtr;n_sax++) {
14932:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
14933:     for (n_recovery = 0;n_recovery < gen_nb_int;n_recovery++) {
14934:     for (n_data = 0;n_data < gen_nb_userdata;n_data++) {
14935:         mem_base = xmlMemBlocks();
14936:         sax = gen_xmlSAXHandlerPtr(n_sax, 0);
14937:         filename = gen_filepath(n_filename, 1);
14938:         recovery = gen_int(n_recovery, 2);
14939:         data = gen_userdata(n_data, 3);
14940: 
14941:         ret_val = xmlSAXParseFileWithData(sax, filename, recovery, data);
14942:         desret_xmlDocPtr(ret_val);
14943:         call_tests++;
14944:         des_xmlSAXHandlerPtr(n_sax, sax, 0);
14945:         des_filepath(n_filename, filename, 1);
14946:         des_int(n_recovery, recovery, 2);
14947:         des_userdata(n_data, data, 3);
14948:         xmlResetLastError();
14949:         if (mem_base != xmlMemBlocks()) {
14950:             printf("Leak of %d blocks found in xmlSAXParseFileWithData",
14951: 	           xmlMemBlocks() - mem_base);
14952: 	    test_ret++;
14953:             printf(" %d", n_sax);
14954:             printf(" %d", n_filename);
14955:             printf(" %d", n_recovery);
14956:             printf(" %d", n_data);
14957:             printf("\n");
14958:         }
14959:     }
14960:     }
14961:     }
14962:     }
14963:     function_tests++;
14964: #endif
14965: #endif
14966: 
14967:     return(test_ret);
14968: }
14969: 
14970: 
14971: static int
14972: test_xmlSAXParseMemory(void) {
14973:     int test_ret = 0;
14974: 
14975: #if defined(LIBXML_SAX1_ENABLED)
14976: #ifdef LIBXML_SAX1_ENABLED
14977:     int mem_base;
14978:     xmlDocPtr ret_val;
14979:     xmlSAXHandlerPtr sax; /* the SAX handler block */
14980:     int n_sax;
14981:     char * buffer; /* an pointer to a char array */
14982:     int n_buffer;
14983:     int size; /* the size of the array */
14984:     int n_size;
14985:     int recovery; /* work in recovery mode, i.e. tries to read not Well Formed documents */
14986:     int n_recovery;
14987: 
14988:     for (n_sax = 0;n_sax < gen_nb_xmlSAXHandlerPtr;n_sax++) {
14989:     for (n_buffer = 0;n_buffer < gen_nb_const_char_ptr;n_buffer++) {
14990:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
14991:     for (n_recovery = 0;n_recovery < gen_nb_int;n_recovery++) {
14992:         mem_base = xmlMemBlocks();
14993:         sax = gen_xmlSAXHandlerPtr(n_sax, 0);
14994:         buffer = gen_const_char_ptr(n_buffer, 1);
14995:         size = gen_int(n_size, 2);
14996:         recovery = gen_int(n_recovery, 3);
14997: 
14998:         ret_val = xmlSAXParseMemory(sax, (const char *)buffer, size, recovery);
14999:         desret_xmlDocPtr(ret_val);
15000:         call_tests++;
15001:         des_xmlSAXHandlerPtr(n_sax, sax, 0);
15002:         des_const_char_ptr(n_buffer, (const char *)buffer, 1);
15003:         des_int(n_size, size, 2);
15004:         des_int(n_recovery, recovery, 3);
15005:         xmlResetLastError();
15006:         if (mem_base != xmlMemBlocks()) {
15007:             printf("Leak of %d blocks found in xmlSAXParseMemory",
15008: 	           xmlMemBlocks() - mem_base);
15009: 	    test_ret++;
15010:             printf(" %d", n_sax);
15011:             printf(" %d", n_buffer);
15012:             printf(" %d", n_size);
15013:             printf(" %d", n_recovery);
15014:             printf("\n");
15015:         }
15016:     }
15017:     }
15018:     }
15019:     }
15020:     function_tests++;
15021: #endif
15022: #endif
15023: 
15024:     return(test_ret);
15025: }
15026: 
15027: 
15028: static int
15029: test_xmlSAXParseMemoryWithData(void) {
15030:     int test_ret = 0;
15031: 
15032: #if defined(LIBXML_SAX1_ENABLED)
15033: #ifdef LIBXML_SAX1_ENABLED
15034:     int mem_base;
15035:     xmlDocPtr ret_val;
15036:     xmlSAXHandlerPtr sax; /* the SAX handler block */
15037:     int n_sax;
15038:     char * buffer; /* an pointer to a char array */
15039:     int n_buffer;
15040:     int size; /* the size of the array */
15041:     int n_size;
15042:     int recovery; /* work in recovery mode, i.e. tries to read no Well Formed documents */
15043:     int n_recovery;
15044:     void * data; /* the userdata */
15045:     int n_data;
15046: 
15047:     for (n_sax = 0;n_sax < gen_nb_xmlSAXHandlerPtr;n_sax++) {
15048:     for (n_buffer = 0;n_buffer < gen_nb_const_char_ptr;n_buffer++) {
15049:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
15050:     for (n_recovery = 0;n_recovery < gen_nb_int;n_recovery++) {
15051:     for (n_data = 0;n_data < gen_nb_userdata;n_data++) {
15052:         mem_base = xmlMemBlocks();
15053:         sax = gen_xmlSAXHandlerPtr(n_sax, 0);
15054:         buffer = gen_const_char_ptr(n_buffer, 1);
15055:         size = gen_int(n_size, 2);
15056:         recovery = gen_int(n_recovery, 3);
15057:         data = gen_userdata(n_data, 4);
15058: 
15059:         ret_val = xmlSAXParseMemoryWithData(sax, (const char *)buffer, size, recovery, data);
15060:         desret_xmlDocPtr(ret_val);
15061:         call_tests++;
15062:         des_xmlSAXHandlerPtr(n_sax, sax, 0);
15063:         des_const_char_ptr(n_buffer, (const char *)buffer, 1);
15064:         des_int(n_size, size, 2);
15065:         des_int(n_recovery, recovery, 3);
15066:         des_userdata(n_data, data, 4);
15067:         xmlResetLastError();
15068:         if (mem_base != xmlMemBlocks()) {
15069:             printf("Leak of %d blocks found in xmlSAXParseMemoryWithData",
15070: 	           xmlMemBlocks() - mem_base);
15071: 	    test_ret++;
15072:             printf(" %d", n_sax);
15073:             printf(" %d", n_buffer);
15074:             printf(" %d", n_size);
15075:             printf(" %d", n_recovery);
15076:             printf(" %d", n_data);
15077:             printf("\n");
15078:         }
15079:     }
15080:     }
15081:     }
15082:     }
15083:     }
15084:     function_tests++;
15085: #endif
15086: #endif
15087: 
15088:     return(test_ret);
15089: }
15090: 
15091: 
15092: static int
15093: test_xmlSAXUserParseFile(void) {
15094:     int test_ret = 0;
15095: 
15096: #if defined(LIBXML_SAX1_ENABLED)
15097: #ifdef LIBXML_SAX1_ENABLED
15098:     int mem_base;
15099:     int ret_val;
15100:     xmlSAXHandlerPtr sax; /* a SAX handler */
15101:     int n_sax;
15102:     void * user_data; /* The user data returned on SAX callbacks */
15103:     int n_user_data;
15104:     const char * filename; /* a file name */
15105:     int n_filename;
15106: 
15107:     for (n_sax = 0;n_sax < gen_nb_xmlSAXHandlerPtr;n_sax++) {
15108:     for (n_user_data = 0;n_user_data < gen_nb_userdata;n_user_data++) {
15109:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
15110:         mem_base = xmlMemBlocks();
15111:         sax = gen_xmlSAXHandlerPtr(n_sax, 0);
15112:         user_data = gen_userdata(n_user_data, 1);
15113:         filename = gen_filepath(n_filename, 2);
15114:         
15115: #ifdef LIBXML_SAX1_ENABLED
15116:         if (sax == (xmlSAXHandlerPtr)&xmlDefaultSAXHandler) user_data = NULL;
15117: #endif
15118: 
15119: 
15120:         ret_val = xmlSAXUserParseFile(sax, user_data, filename);
15121:         desret_int(ret_val);
15122:         call_tests++;
15123:         des_xmlSAXHandlerPtr(n_sax, sax, 0);
15124:         des_userdata(n_user_data, user_data, 1);
15125:         des_filepath(n_filename, filename, 2);
15126:         xmlResetLastError();
15127:         if (mem_base != xmlMemBlocks()) {
15128:             printf("Leak of %d blocks found in xmlSAXUserParseFile",
15129: 	           xmlMemBlocks() - mem_base);
15130: 	    test_ret++;
15131:             printf(" %d", n_sax);
15132:             printf(" %d", n_user_data);
15133:             printf(" %d", n_filename);
15134:             printf("\n");
15135:         }
15136:     }
15137:     }
15138:     }
15139:     function_tests++;
15140: #endif
15141: #endif
15142: 
15143:     return(test_ret);
15144: }
15145: 
15146: 
15147: static int
15148: test_xmlSAXUserParseMemory(void) {
15149:     int test_ret = 0;
15150: 
15151: #if defined(LIBXML_SAX1_ENABLED)
15152: #ifdef LIBXML_SAX1_ENABLED
15153:     int mem_base;
15154:     int ret_val;
15155:     xmlSAXHandlerPtr sax; /* a SAX handler */
15156:     int n_sax;
15157:     void * user_data; /* The user data returned on SAX callbacks */
15158:     int n_user_data;
15159:     char * buffer; /* an in-memory XML document input */
15160:     int n_buffer;
15161:     int size; /* the length of the XML document in bytes */
15162:     int n_size;
15163: 
15164:     for (n_sax = 0;n_sax < gen_nb_xmlSAXHandlerPtr;n_sax++) {
15165:     for (n_user_data = 0;n_user_data < gen_nb_userdata;n_user_data++) {
15166:     for (n_buffer = 0;n_buffer < gen_nb_const_char_ptr;n_buffer++) {
15167:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
15168:         mem_base = xmlMemBlocks();
15169:         sax = gen_xmlSAXHandlerPtr(n_sax, 0);
15170:         user_data = gen_userdata(n_user_data, 1);
15171:         buffer = gen_const_char_ptr(n_buffer, 2);
15172:         size = gen_int(n_size, 3);
15173:         
15174: #ifdef LIBXML_SAX1_ENABLED
15175:         if (sax == (xmlSAXHandlerPtr)&xmlDefaultSAXHandler) user_data = NULL;
15176: #endif
15177: 
15178: 
15179:         ret_val = xmlSAXUserParseMemory(sax, user_data, (const char *)buffer, size);
15180:         desret_int(ret_val);
15181:         call_tests++;
15182:         des_xmlSAXHandlerPtr(n_sax, sax, 0);
15183:         des_userdata(n_user_data, user_data, 1);
15184:         des_const_char_ptr(n_buffer, (const char *)buffer, 2);
15185:         des_int(n_size, size, 3);
15186:         xmlResetLastError();
15187:         if (mem_base != xmlMemBlocks()) {
15188:             printf("Leak of %d blocks found in xmlSAXUserParseMemory",
15189: 	           xmlMemBlocks() - mem_base);
15190: 	    test_ret++;
15191:             printf(" %d", n_sax);
15192:             printf(" %d", n_user_data);
15193:             printf(" %d", n_buffer);
15194:             printf(" %d", n_size);
15195:             printf("\n");
15196:         }
15197:     }
15198:     }
15199:     }
15200:     }
15201:     function_tests++;
15202: #endif
15203: #endif
15204: 
15205:     return(test_ret);
15206: }
15207: 
15208: 
15209: static int
15210: test_xmlSetExternalEntityLoader(void) {
15211:     int test_ret = 0;
15212: 
15213: 
15214:     /* missing type support */
15215:     return(test_ret);
15216: }
15217: 
15218: 
15219: static int
15220: test_xmlSetFeature(void) {
15221:     int test_ret = 0;
15222: 
15223: #if defined(LIBXML_LEGACY_ENABLED)
15224: #ifdef LIBXML_LEGACY_ENABLED
15225:     int mem_base;
15226:     int ret_val;
15227:     xmlParserCtxtPtr ctxt; /* an XML/HTML parser context */
15228:     int n_ctxt;
15229:     char * name; /* the feature name */
15230:     int n_name;
15231:     void * value; /* pointer to the location of the new value */
15232:     int n_value;
15233: 
15234:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
15235:     for (n_name = 0;n_name < gen_nb_const_char_ptr;n_name++) {
15236:     for (n_value = 0;n_value < gen_nb_void_ptr;n_value++) {
15237:         mem_base = xmlMemBlocks();
15238:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
15239:         name = gen_const_char_ptr(n_name, 1);
15240:         value = gen_void_ptr(n_value, 2);
15241: 
15242:         ret_val = xmlSetFeature(ctxt, (const char *)name, value);
15243:         desret_int(ret_val);
15244:         call_tests++;
15245:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
15246:         des_const_char_ptr(n_name, (const char *)name, 1);
15247:         des_void_ptr(n_value, value, 2);
15248:         xmlResetLastError();
15249:         if (mem_base != xmlMemBlocks()) {
15250:             printf("Leak of %d blocks found in xmlSetFeature",
15251: 	           xmlMemBlocks() - mem_base);
15252: 	    test_ret++;
15253:             printf(" %d", n_ctxt);
15254:             printf(" %d", n_name);
15255:             printf(" %d", n_value);
15256:             printf("\n");
15257:         }
15258:     }
15259:     }
15260:     }
15261:     function_tests++;
15262: #endif
15263: #endif
15264: 
15265:     return(test_ret);
15266: }
15267: 
15268: 
15269: static int
15270: test_xmlSetupParserForBuffer(void) {
15271:     int test_ret = 0;
15272: 
15273: #if defined(LIBXML_SAX1_ENABLED)
15274: #ifdef LIBXML_SAX1_ENABLED
15275:     int mem_base;
15276:     xmlParserCtxtPtr ctxt; /* an XML parser context */
15277:     int n_ctxt;
15278:     xmlChar * buffer; /* a xmlChar * buffer */
15279:     int n_buffer;
15280:     const char * filename; /* a file name */
15281:     int n_filename;
15282: 
15283:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
15284:     for (n_buffer = 0;n_buffer < gen_nb_const_xmlChar_ptr;n_buffer++) {
15285:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
15286:         mem_base = xmlMemBlocks();
15287:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
15288:         buffer = gen_const_xmlChar_ptr(n_buffer, 1);
15289:         filename = gen_filepath(n_filename, 2);
15290: 
15291:         xmlSetupParserForBuffer(ctxt, (const xmlChar *)buffer, filename);
15292:         call_tests++;
15293:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
15294:         des_const_xmlChar_ptr(n_buffer, (const xmlChar *)buffer, 1);
15295:         des_filepath(n_filename, filename, 2);
15296:         xmlResetLastError();
15297:         if (mem_base != xmlMemBlocks()) {
15298:             printf("Leak of %d blocks found in xmlSetupParserForBuffer",
15299: 	           xmlMemBlocks() - mem_base);
15300: 	    test_ret++;
15301:             printf(" %d", n_ctxt);
15302:             printf(" %d", n_buffer);
15303:             printf(" %d", n_filename);
15304:             printf("\n");
15305:         }
15306:     }
15307:     }
15308:     }
15309:     function_tests++;
15310: #endif
15311: #endif
15312: 
15313:     return(test_ret);
15314: }
15315: 
15316: 
15317: static int
15318: test_xmlStopParser(void) {
15319:     int test_ret = 0;
15320: 
15321: #ifdef LIBXML_PUSH_ENABLED
15322:     int mem_base;
15323:     xmlParserCtxtPtr ctxt; /* an XML parser context */
15324:     int n_ctxt;
15325: 
15326:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
15327:         mem_base = xmlMemBlocks();
15328:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
15329: 
15330:         xmlStopParser(ctxt);
15331:         call_tests++;
15332:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
15333:         xmlResetLastError();
15334:         if (mem_base != xmlMemBlocks()) {
15335:             printf("Leak of %d blocks found in xmlStopParser",
15336: 	           xmlMemBlocks() - mem_base);
15337: 	    test_ret++;
15338:             printf(" %d", n_ctxt);
15339:             printf("\n");
15340:         }
15341:     }
15342:     function_tests++;
15343: #endif
15344: 
15345:     return(test_ret);
15346: }
15347: 
15348: 
15349: static int
15350: test_xmlSubstituteEntitiesDefault(void) {
15351:     int test_ret = 0;
15352: 
15353:     int mem_base;
15354:     int ret_val;
15355:     int val; /* int 0 or 1 */
15356:     int n_val;
15357: 
15358:     for (n_val = 0;n_val < gen_nb_int;n_val++) {
15359:         mem_base = xmlMemBlocks();
15360:         val = gen_int(n_val, 0);
15361: 
15362:         ret_val = xmlSubstituteEntitiesDefault(val);
15363:         desret_int(ret_val);
15364:         call_tests++;
15365:         des_int(n_val, val, 0);
15366:         xmlResetLastError();
15367:         if (mem_base != xmlMemBlocks()) {
15368:             printf("Leak of %d blocks found in xmlSubstituteEntitiesDefault",
15369: 	           xmlMemBlocks() - mem_base);
15370: 	    test_ret++;
15371:             printf(" %d", n_val);
15372:             printf("\n");
15373:         }
15374:     }
15375:     function_tests++;
15376: 
15377:     return(test_ret);
15378: }
15379: 
15380: static int
15381: test_parser(void) {
15382:     int test_ret = 0;
15383: 
15384:     if (quiet == 0) printf("Testing parser : 61 of 70 functions ...\n");
15385:     test_ret += test_xmlByteConsumed();
15386:     test_ret += test_xmlClearNodeInfoSeq();
15387:     test_ret += test_xmlClearParserCtxt();
15388:     test_ret += test_xmlCreateDocParserCtxt();
15389:     test_ret += test_xmlCreatePushParserCtxt();
15390:     test_ret += test_xmlCtxtReadDoc();
15391:     test_ret += test_xmlCtxtReadFile();
15392:     test_ret += test_xmlCtxtReadMemory();
15393:     test_ret += test_xmlCtxtReset();
15394:     test_ret += test_xmlCtxtResetPush();
15395:     test_ret += test_xmlCtxtUseOptions();
15396:     test_ret += test_xmlGetExternalEntityLoader();
15397:     test_ret += test_xmlGetFeature();
15398:     test_ret += test_xmlGetFeaturesList();
15399:     test_ret += test_xmlHasFeature();
15400:     test_ret += test_xmlIOParseDTD();
15401:     test_ret += test_xmlInitNodeInfoSeq();
15402:     test_ret += test_xmlInitParser();
15403:     test_ret += test_xmlInitParserCtxt();
15404:     test_ret += test_xmlKeepBlanksDefault();
15405:     test_ret += test_xmlLineNumbersDefault();
15406:     test_ret += test_xmlLoadExternalEntity();
15407:     test_ret += test_xmlNewIOInputStream();
15408:     test_ret += test_xmlNewParserCtxt();
15409:     test_ret += test_xmlParseBalancedChunkMemory();
15410:     test_ret += test_xmlParseBalancedChunkMemoryRecover();
15411:     test_ret += test_xmlParseChunk();
15412:     test_ret += test_xmlParseCtxtExternalEntity();
15413:     test_ret += test_xmlParseDTD();
15414:     test_ret += test_xmlParseDoc();
15415:     test_ret += test_xmlParseDocument();
15416:     test_ret += test_xmlParseEntity();
15417:     test_ret += test_xmlParseExtParsedEnt();
15418:     test_ret += test_xmlParseExternalEntity();
15419:     test_ret += test_xmlParseFile();
15420:     test_ret += test_xmlParseInNodeContext();
15421:     test_ret += test_xmlParseMemory();
15422:     test_ret += test_xmlParserAddNodeInfo();
15423:     test_ret += test_xmlParserFindNodeInfo();
15424:     test_ret += test_xmlParserFindNodeInfoIndex();
15425:     test_ret += test_xmlParserInputGrow();
15426:     test_ret += test_xmlParserInputRead();
15427:     test_ret += test_xmlPedanticParserDefault();
15428:     test_ret += test_xmlReadDoc();
15429:     test_ret += test_xmlReadFile();
15430:     test_ret += test_xmlReadMemory();
15431:     test_ret += test_xmlRecoverDoc();
15432:     test_ret += test_xmlRecoverFile();
15433:     test_ret += test_xmlRecoverMemory();
15434:     test_ret += test_xmlSAXParseDTD();
15435:     test_ret += test_xmlSAXParseDoc();
15436:     test_ret += test_xmlSAXParseEntity();
15437:     test_ret += test_xmlSAXParseFile();
15438:     test_ret += test_xmlSAXParseFileWithData();
15439:     test_ret += test_xmlSAXParseMemory();
15440:     test_ret += test_xmlSAXParseMemoryWithData();
15441:     test_ret += test_xmlSAXUserParseFile();
15442:     test_ret += test_xmlSAXUserParseMemory();
15443:     test_ret += test_xmlSetExternalEntityLoader();
15444:     test_ret += test_xmlSetFeature();
15445:     test_ret += test_xmlSetupParserForBuffer();
15446:     test_ret += test_xmlStopParser();
15447:     test_ret += test_xmlSubstituteEntitiesDefault();
15448: 
15449:     if (test_ret != 0)
15450: 	printf("Module parser: %d errors\n", test_ret);
15451:     return(test_ret);
15452: }
15453: 
15454: static int
15455: test_htmlCreateFileParserCtxt(void) {
15456:     int test_ret = 0;
15457: 
15458: #if defined(LIBXML_HTML_ENABLED)
15459:     int mem_base;
15460:     htmlParserCtxtPtr ret_val;
15461:     const char * filename; /* the filename */
15462:     int n_filename;
15463:     char * encoding; /* a free form C string describing the HTML document encoding, or NULL */
15464:     int n_encoding;
15465: 
15466:     for (n_filename = 0;n_filename < gen_nb_fileoutput;n_filename++) {
15467:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
15468:         mem_base = xmlMemBlocks();
15469:         filename = gen_fileoutput(n_filename, 0);
15470:         encoding = gen_const_char_ptr(n_encoding, 1);
15471: 
15472:         ret_val = htmlCreateFileParserCtxt(filename, (const char *)encoding);
15473:         desret_htmlParserCtxtPtr(ret_val);
15474:         call_tests++;
15475:         des_fileoutput(n_filename, filename, 0);
15476:         des_const_char_ptr(n_encoding, (const char *)encoding, 1);
15477:         xmlResetLastError();
15478:         if (mem_base != xmlMemBlocks()) {
15479:             printf("Leak of %d blocks found in htmlCreateFileParserCtxt",
15480: 	           xmlMemBlocks() - mem_base);
15481: 	    test_ret++;
15482:             printf(" %d", n_filename);
15483:             printf(" %d", n_encoding);
15484:             printf("\n");
15485:         }
15486:     }
15487:     }
15488:     function_tests++;
15489: #endif
15490: 
15491:     return(test_ret);
15492: }
15493: 
15494: 
15495: static int
15496: test_htmlInitAutoClose(void) {
15497:     int test_ret = 0;
15498: 
15499: #if defined(LIBXML_HTML_ENABLED)
15500:     int mem_base;
15501: 
15502:         mem_base = xmlMemBlocks();
15503: 
15504:         htmlInitAutoClose();
15505:         call_tests++;
15506:         xmlResetLastError();
15507:         if (mem_base != xmlMemBlocks()) {
15508:             printf("Leak of %d blocks found in htmlInitAutoClose",
15509: 	           xmlMemBlocks() - mem_base);
15510: 	    test_ret++;
15511:             printf("\n");
15512:         }
15513:     function_tests++;
15514: #endif
15515: 
15516:     return(test_ret);
15517: }
15518: 
15519: 
15520: static int
15521: test_inputPop(void) {
15522:     int test_ret = 0;
15523: 
15524:     int mem_base;
15525:     xmlParserInputPtr ret_val;
15526:     xmlParserCtxtPtr ctxt; /* an XML parser context */
15527:     int n_ctxt;
15528: 
15529:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
15530:         mem_base = xmlMemBlocks();
15531:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
15532: 
15533:         ret_val = inputPop(ctxt);
15534:         desret_xmlParserInputPtr(ret_val);
15535:         call_tests++;
15536:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
15537:         xmlResetLastError();
15538:         if (mem_base != xmlMemBlocks()) {
15539:             printf("Leak of %d blocks found in inputPop",
15540: 	           xmlMemBlocks() - mem_base);
15541: 	    test_ret++;
15542:             printf(" %d", n_ctxt);
15543:             printf("\n");
15544:         }
15545:     }
15546:     function_tests++;
15547: 
15548:     return(test_ret);
15549: }
15550: 
15551: 
15552: static int
15553: test_inputPush(void) {
15554:     int test_ret = 0;
15555: 
15556:     int mem_base;
15557:     int ret_val;
15558:     xmlParserCtxtPtr ctxt; /* an XML parser context */
15559:     int n_ctxt;
15560:     xmlParserInputPtr value; /* the parser input */
15561:     int n_value;
15562: 
15563:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
15564:     for (n_value = 0;n_value < gen_nb_xmlParserInputPtr;n_value++) {
15565:         mem_base = xmlMemBlocks();
15566:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
15567:         value = gen_xmlParserInputPtr(n_value, 1);
15568: 
15569:         ret_val = inputPush(ctxt, value);
15570:         desret_int(ret_val);
15571:         call_tests++;
15572:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
15573:         des_xmlParserInputPtr(n_value, value, 1);
15574:         xmlResetLastError();
15575:         if (mem_base != xmlMemBlocks()) {
15576:             printf("Leak of %d blocks found in inputPush",
15577: 	           xmlMemBlocks() - mem_base);
15578: 	    test_ret++;
15579:             printf(" %d", n_ctxt);
15580:             printf(" %d", n_value);
15581:             printf("\n");
15582:         }
15583:     }
15584:     }
15585:     function_tests++;
15586: 
15587:     return(test_ret);
15588: }
15589: 
15590: 
15591: static int
15592: test_namePop(void) {
15593:     int test_ret = 0;
15594: 
15595:     int mem_base;
15596:     const xmlChar * ret_val;
15597:     xmlParserCtxtPtr ctxt; /* an XML parser context */
15598:     int n_ctxt;
15599: 
15600:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
15601:         mem_base = xmlMemBlocks();
15602:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
15603: 
15604:         ret_val = namePop(ctxt);
15605:         desret_const_xmlChar_ptr(ret_val);
15606:         call_tests++;
15607:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
15608:         xmlResetLastError();
15609:         if (mem_base != xmlMemBlocks()) {
15610:             printf("Leak of %d blocks found in namePop",
15611: 	           xmlMemBlocks() - mem_base);
15612: 	    test_ret++;
15613:             printf(" %d", n_ctxt);
15614:             printf("\n");
15615:         }
15616:     }
15617:     function_tests++;
15618: 
15619:     return(test_ret);
15620: }
15621: 
15622: 
15623: static int
15624: test_namePush(void) {
15625:     int test_ret = 0;
15626: 
15627:     int mem_base;
15628:     int ret_val;
15629:     xmlParserCtxtPtr ctxt; /* an XML parser context */
15630:     int n_ctxt;
15631:     xmlChar * value; /* the element name */
15632:     int n_value;
15633: 
15634:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
15635:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
15636:         mem_base = xmlMemBlocks();
15637:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
15638:         value = gen_const_xmlChar_ptr(n_value, 1);
15639: 
15640:         ret_val = namePush(ctxt, (const xmlChar *)value);
15641:         desret_int(ret_val);
15642:         call_tests++;
15643:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
15644:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 1);
15645:         xmlResetLastError();
15646:         if (mem_base != xmlMemBlocks()) {
15647:             printf("Leak of %d blocks found in namePush",
15648: 	           xmlMemBlocks() - mem_base);
15649: 	    test_ret++;
15650:             printf(" %d", n_ctxt);
15651:             printf(" %d", n_value);
15652:             printf("\n");
15653:         }
15654:     }
15655:     }
15656:     function_tests++;
15657: 
15658:     return(test_ret);
15659: }
15660: 
15661: 
15662: static int
15663: test_nodePop(void) {
15664:     int test_ret = 0;
15665: 
15666:     int mem_base;
15667:     xmlNodePtr ret_val;
15668:     xmlParserCtxtPtr ctxt; /* an XML parser context */
15669:     int n_ctxt;
15670: 
15671:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
15672:         mem_base = xmlMemBlocks();
15673:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
15674: 
15675:         ret_val = nodePop(ctxt);
15676:         desret_xmlNodePtr(ret_val);
15677:         call_tests++;
15678:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
15679:         xmlResetLastError();
15680:         if (mem_base != xmlMemBlocks()) {
15681:             printf("Leak of %d blocks found in nodePop",
15682: 	           xmlMemBlocks() - mem_base);
15683: 	    test_ret++;
15684:             printf(" %d", n_ctxt);
15685:             printf("\n");
15686:         }
15687:     }
15688:     function_tests++;
15689: 
15690:     return(test_ret);
15691: }
15692: 
15693: 
15694: static int
15695: test_nodePush(void) {
15696:     int test_ret = 0;
15697: 
15698:     int mem_base;
15699:     int ret_val;
15700:     xmlParserCtxtPtr ctxt; /* an XML parser context */
15701:     int n_ctxt;
15702:     xmlNodePtr value; /* the element node */
15703:     int n_value;
15704: 
15705:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
15706:     for (n_value = 0;n_value < gen_nb_xmlNodePtr;n_value++) {
15707:         mem_base = xmlMemBlocks();
15708:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
15709:         value = gen_xmlNodePtr(n_value, 1);
15710: 
15711:         ret_val = nodePush(ctxt, value);
15712:         desret_int(ret_val);
15713:         call_tests++;
15714:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
15715:         des_xmlNodePtr(n_value, value, 1);
15716:         xmlResetLastError();
15717:         if (mem_base != xmlMemBlocks()) {
15718:             printf("Leak of %d blocks found in nodePush",
15719: 	           xmlMemBlocks() - mem_base);
15720: 	    test_ret++;
15721:             printf(" %d", n_ctxt);
15722:             printf(" %d", n_value);
15723:             printf("\n");
15724:         }
15725:     }
15726:     }
15727:     function_tests++;
15728: 
15729:     return(test_ret);
15730: }
15731: 
15732: 
15733: static int
15734: test_xmlCheckLanguageID(void) {
15735:     int test_ret = 0;
15736: 
15737:     int mem_base;
15738:     int ret_val;
15739:     xmlChar * lang; /* pointer to the string value */
15740:     int n_lang;
15741: 
15742:     for (n_lang = 0;n_lang < gen_nb_const_xmlChar_ptr;n_lang++) {
15743:         mem_base = xmlMemBlocks();
15744:         lang = gen_const_xmlChar_ptr(n_lang, 0);
15745: 
15746:         ret_val = xmlCheckLanguageID((const xmlChar *)lang);
15747:         desret_int(ret_val);
15748:         call_tests++;
15749:         des_const_xmlChar_ptr(n_lang, (const xmlChar *)lang, 0);
15750:         xmlResetLastError();
15751:         if (mem_base != xmlMemBlocks()) {
15752:             printf("Leak of %d blocks found in xmlCheckLanguageID",
15753: 	           xmlMemBlocks() - mem_base);
15754: 	    test_ret++;
15755:             printf(" %d", n_lang);
15756:             printf("\n");
15757:         }
15758:     }
15759:     function_tests++;
15760: 
15761:     return(test_ret);
15762: }
15763: 
15764: 
15765: static int
15766: test_xmlCopyChar(void) {
15767:     int test_ret = 0;
15768: 
15769:     int mem_base;
15770:     int ret_val;
15771:     int len; /* Ignored, compatibility */
15772:     int n_len;
15773:     xmlChar * out; /* pointer to an array of xmlChar */
15774:     int n_out;
15775:     int val; /* the char value */
15776:     int n_val;
15777: 
15778:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
15779:     for (n_out = 0;n_out < gen_nb_xmlChar_ptr;n_out++) {
15780:     for (n_val = 0;n_val < gen_nb_int;n_val++) {
15781:         mem_base = xmlMemBlocks();
15782:         len = gen_int(n_len, 0);
15783:         out = gen_xmlChar_ptr(n_out, 1);
15784:         val = gen_int(n_val, 2);
15785: 
15786:         ret_val = xmlCopyChar(len, out, val);
15787:         desret_int(ret_val);
15788:         call_tests++;
15789:         des_int(n_len, len, 0);
15790:         des_xmlChar_ptr(n_out, out, 1);
15791:         des_int(n_val, val, 2);
15792:         xmlResetLastError();
15793:         if (mem_base != xmlMemBlocks()) {
15794:             printf("Leak of %d blocks found in xmlCopyChar",
15795: 	           xmlMemBlocks() - mem_base);
15796: 	    test_ret++;
15797:             printf(" %d", n_len);
15798:             printf(" %d", n_out);
15799:             printf(" %d", n_val);
15800:             printf("\n");
15801:         }
15802:     }
15803:     }
15804:     }
15805:     function_tests++;
15806: 
15807:     return(test_ret);
15808: }
15809: 
15810: 
15811: static int
15812: test_xmlCopyCharMultiByte(void) {
15813:     int test_ret = 0;
15814: 
15815:     int mem_base;
15816:     int ret_val;
15817:     xmlChar * out; /* pointer to an array of xmlChar */
15818:     int n_out;
15819:     int val; /* the char value */
15820:     int n_val;
15821: 
15822:     for (n_out = 0;n_out < gen_nb_xmlChar_ptr;n_out++) {
15823:     for (n_val = 0;n_val < gen_nb_int;n_val++) {
15824:         mem_base = xmlMemBlocks();
15825:         out = gen_xmlChar_ptr(n_out, 0);
15826:         val = gen_int(n_val, 1);
15827: 
15828:         ret_val = xmlCopyCharMultiByte(out, val);
15829:         desret_int(ret_val);
15830:         call_tests++;
15831:         des_xmlChar_ptr(n_out, out, 0);
15832:         des_int(n_val, val, 1);
15833:         xmlResetLastError();
15834:         if (mem_base != xmlMemBlocks()) {
15835:             printf("Leak of %d blocks found in xmlCopyCharMultiByte",
15836: 	           xmlMemBlocks() - mem_base);
15837: 	    test_ret++;
15838:             printf(" %d", n_out);
15839:             printf(" %d", n_val);
15840:             printf("\n");
15841:         }
15842:     }
15843:     }
15844:     function_tests++;
15845: 
15846:     return(test_ret);
15847: }
15848: 
15849: 
15850: static int
15851: test_xmlCreateEntityParserCtxt(void) {
15852:     int test_ret = 0;
15853: 
15854:     int mem_base;
15855:     xmlParserCtxtPtr ret_val;
15856:     xmlChar * URL; /* the entity URL */
15857:     int n_URL;
15858:     xmlChar * ID; /* the entity PUBLIC ID */
15859:     int n_ID;
15860:     xmlChar * base; /* a possible base for the target URI */
15861:     int n_base;
15862: 
15863:     for (n_URL = 0;n_URL < gen_nb_const_xmlChar_ptr;n_URL++) {
15864:     for (n_ID = 0;n_ID < gen_nb_const_xmlChar_ptr;n_ID++) {
15865:     for (n_base = 0;n_base < gen_nb_const_xmlChar_ptr;n_base++) {
15866:         mem_base = xmlMemBlocks();
15867:         URL = gen_const_xmlChar_ptr(n_URL, 0);
15868:         ID = gen_const_xmlChar_ptr(n_ID, 1);
15869:         base = gen_const_xmlChar_ptr(n_base, 2);
15870: 
15871:         ret_val = xmlCreateEntityParserCtxt((const xmlChar *)URL, (const xmlChar *)ID, (const xmlChar *)base);
15872:         desret_xmlParserCtxtPtr(ret_val);
15873:         call_tests++;
15874:         des_const_xmlChar_ptr(n_URL, (const xmlChar *)URL, 0);
15875:         des_const_xmlChar_ptr(n_ID, (const xmlChar *)ID, 1);
15876:         des_const_xmlChar_ptr(n_base, (const xmlChar *)base, 2);
15877:         xmlResetLastError();
15878:         if (mem_base != xmlMemBlocks()) {
15879:             printf("Leak of %d blocks found in xmlCreateEntityParserCtxt",
15880: 	           xmlMemBlocks() - mem_base);
15881: 	    test_ret++;
15882:             printf(" %d", n_URL);
15883:             printf(" %d", n_ID);
15884:             printf(" %d", n_base);
15885:             printf("\n");
15886:         }
15887:     }
15888:     }
15889:     }
15890:     function_tests++;
15891: 
15892:     return(test_ret);
15893: }
15894: 
15895: 
15896: static int
15897: test_xmlCreateFileParserCtxt(void) {
15898:     int test_ret = 0;
15899: 
15900:     int mem_base;
15901:     xmlParserCtxtPtr ret_val;
15902:     const char * filename; /* the filename */
15903:     int n_filename;
15904: 
15905:     for (n_filename = 0;n_filename < gen_nb_fileoutput;n_filename++) {
15906:         mem_base = xmlMemBlocks();
15907:         filename = gen_fileoutput(n_filename, 0);
15908: 
15909:         ret_val = xmlCreateFileParserCtxt(filename);
15910:         desret_xmlParserCtxtPtr(ret_val);
15911:         call_tests++;
15912:         des_fileoutput(n_filename, filename, 0);
15913:         xmlResetLastError();
15914:         if (mem_base != xmlMemBlocks()) {
15915:             printf("Leak of %d blocks found in xmlCreateFileParserCtxt",
15916: 	           xmlMemBlocks() - mem_base);
15917: 	    test_ret++;
15918:             printf(" %d", n_filename);
15919:             printf("\n");
15920:         }
15921:     }
15922:     function_tests++;
15923: 
15924:     return(test_ret);
15925: }
15926: 
15927: 
15928: static int
15929: test_xmlCreateMemoryParserCtxt(void) {
15930:     int test_ret = 0;
15931: 
15932:     int mem_base;
15933:     xmlParserCtxtPtr ret_val;
15934:     char * buffer; /* a pointer to a char array */
15935:     int n_buffer;
15936:     int size; /* the size of the array */
15937:     int n_size;
15938: 
15939:     for (n_buffer = 0;n_buffer < gen_nb_const_char_ptr;n_buffer++) {
15940:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
15941:         mem_base = xmlMemBlocks();
15942:         buffer = gen_const_char_ptr(n_buffer, 0);
15943:         size = gen_int(n_size, 1);
15944: 
15945:         ret_val = xmlCreateMemoryParserCtxt((const char *)buffer, size);
15946:         desret_xmlParserCtxtPtr(ret_val);
15947:         call_tests++;
15948:         des_const_char_ptr(n_buffer, (const char *)buffer, 0);
15949:         des_int(n_size, size, 1);
15950:         xmlResetLastError();
15951:         if (mem_base != xmlMemBlocks()) {
15952:             printf("Leak of %d blocks found in xmlCreateMemoryParserCtxt",
15953: 	           xmlMemBlocks() - mem_base);
15954: 	    test_ret++;
15955:             printf(" %d", n_buffer);
15956:             printf(" %d", n_size);
15957:             printf("\n");
15958:         }
15959:     }
15960:     }
15961:     function_tests++;
15962: 
15963:     return(test_ret);
15964: }
15965: 
15966: 
15967: static int
15968: test_xmlCreateURLParserCtxt(void) {
15969:     int test_ret = 0;
15970: 
15971:     int mem_base;
15972:     xmlParserCtxtPtr ret_val;
15973:     const char * filename; /* the filename or URL */
15974:     int n_filename;
15975:     int options; /* a combination of xmlParserOption */
15976:     int n_options;
15977: 
15978:     for (n_filename = 0;n_filename < gen_nb_fileoutput;n_filename++) {
15979:     for (n_options = 0;n_options < gen_nb_int;n_options++) {
15980:         mem_base = xmlMemBlocks();
15981:         filename = gen_fileoutput(n_filename, 0);
15982:         options = gen_int(n_options, 1);
15983: 
15984:         ret_val = xmlCreateURLParserCtxt(filename, options);
15985:         desret_xmlParserCtxtPtr(ret_val);
15986:         call_tests++;
15987:         des_fileoutput(n_filename, filename, 0);
15988:         des_int(n_options, options, 1);
15989:         xmlResetLastError();
15990:         if (mem_base != xmlMemBlocks()) {
15991:             printf("Leak of %d blocks found in xmlCreateURLParserCtxt",
15992: 	           xmlMemBlocks() - mem_base);
15993: 	    test_ret++;
15994:             printf(" %d", n_filename);
15995:             printf(" %d", n_options);
15996:             printf("\n");
15997:         }
15998:     }
15999:     }
16000:     function_tests++;
16001: 
16002:     return(test_ret);
16003: }
16004: 
16005: 
16006: static int
16007: test_xmlCurrentChar(void) {
16008:     int test_ret = 0;
16009: 
16010:     int mem_base;
16011:     int ret_val;
16012:     xmlParserCtxtPtr ctxt; /* the XML parser context */
16013:     int n_ctxt;
16014:     int * len; /* pointer to the length of the char read */
16015:     int n_len;
16016: 
16017:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
16018:     for (n_len = 0;n_len < gen_nb_int_ptr;n_len++) {
16019:         mem_base = xmlMemBlocks();
16020:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
16021:         len = gen_int_ptr(n_len, 1);
16022: 
16023:         ret_val = xmlCurrentChar(ctxt, len);
16024:         desret_int(ret_val);
16025:         call_tests++;
16026:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
16027:         des_int_ptr(n_len, len, 1);
16028:         xmlResetLastError();
16029:         if (mem_base != xmlMemBlocks()) {
16030:             printf("Leak of %d blocks found in xmlCurrentChar",
16031: 	           xmlMemBlocks() - mem_base);
16032: 	    test_ret++;
16033:             printf(" %d", n_ctxt);
16034:             printf(" %d", n_len);
16035:             printf("\n");
16036:         }
16037:     }
16038:     }
16039:     function_tests++;
16040: 
16041:     return(test_ret);
16042: }
16043: 
16044: 
16045: static int
16046: test_xmlErrMemory(void) {
16047:     int test_ret = 0;
16048: 
16049:     int mem_base;
16050:     xmlParserCtxtPtr ctxt; /* an XML parser context */
16051:     int n_ctxt;
16052:     char * extra; /* extra informations */
16053:     int n_extra;
16054: 
16055:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
16056:     for (n_extra = 0;n_extra < gen_nb_const_char_ptr;n_extra++) {
16057:         mem_base = xmlMemBlocks();
16058:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
16059:         extra = gen_const_char_ptr(n_extra, 1);
16060: 
16061:         xmlErrMemory(ctxt, (const char *)extra);
16062:         call_tests++;
16063:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
16064:         des_const_char_ptr(n_extra, (const char *)extra, 1);
16065:         xmlResetLastError();
16066:         if (mem_base != xmlMemBlocks()) {
16067:             printf("Leak of %d blocks found in xmlErrMemory",
16068: 	           xmlMemBlocks() - mem_base);
16069: 	    test_ret++;
16070:             printf(" %d", n_ctxt);
16071:             printf(" %d", n_extra);
16072:             printf("\n");
16073:         }
16074:     }
16075:     }
16076:     function_tests++;
16077: 
16078:     return(test_ret);
16079: }
16080: 
16081: 
16082: static int
16083: test_xmlIsLetter(void) {
16084:     int test_ret = 0;
16085: 
16086:     int mem_base;
16087:     int ret_val;
16088:     int c; /* an unicode character (int) */
16089:     int n_c;
16090: 
16091:     for (n_c = 0;n_c < gen_nb_int;n_c++) {
16092:         mem_base = xmlMemBlocks();
16093:         c = gen_int(n_c, 0);
16094: 
16095:         ret_val = xmlIsLetter(c);
16096:         desret_int(ret_val);
16097:         call_tests++;
16098:         des_int(n_c, c, 0);
16099:         xmlResetLastError();
16100:         if (mem_base != xmlMemBlocks()) {
16101:             printf("Leak of %d blocks found in xmlIsLetter",
16102: 	           xmlMemBlocks() - mem_base);
16103: 	    test_ret++;
16104:             printf(" %d", n_c);
16105:             printf("\n");
16106:         }
16107:     }
16108:     function_tests++;
16109: 
16110:     return(test_ret);
16111: }
16112: 
16113: 
16114: static int
16115: test_xmlNewEntityInputStream(void) {
16116:     int test_ret = 0;
16117: 
16118:     int mem_base;
16119:     xmlParserInputPtr ret_val;
16120:     xmlParserCtxtPtr ctxt; /* an XML parser context */
16121:     int n_ctxt;
16122:     xmlEntityPtr entity; /* an Entity pointer */
16123:     int n_entity;
16124: 
16125:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
16126:     for (n_entity = 0;n_entity < gen_nb_xmlEntityPtr;n_entity++) {
16127:         mem_base = xmlMemBlocks();
16128:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
16129:         entity = gen_xmlEntityPtr(n_entity, 1);
16130: 
16131:         ret_val = xmlNewEntityInputStream(ctxt, entity);
16132:         desret_xmlParserInputPtr(ret_val);
16133:         call_tests++;
16134:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
16135:         des_xmlEntityPtr(n_entity, entity, 1);
16136:         xmlResetLastError();
16137:         if (mem_base != xmlMemBlocks()) {
16138:             printf("Leak of %d blocks found in xmlNewEntityInputStream",
16139: 	           xmlMemBlocks() - mem_base);
16140: 	    test_ret++;
16141:             printf(" %d", n_ctxt);
16142:             printf(" %d", n_entity);
16143:             printf("\n");
16144:         }
16145:     }
16146:     }
16147:     function_tests++;
16148: 
16149:     return(test_ret);
16150: }
16151: 
16152: 
16153: static int
16154: test_xmlNewInputFromFile(void) {
16155:     int test_ret = 0;
16156: 
16157:     int mem_base;
16158:     xmlParserInputPtr ret_val;
16159:     xmlParserCtxtPtr ctxt; /* an XML parser context */
16160:     int n_ctxt;
16161:     const char * filename; /* the filename to use as entity */
16162:     int n_filename;
16163: 
16164:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
16165:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
16166:         mem_base = xmlMemBlocks();
16167:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
16168:         filename = gen_filepath(n_filename, 1);
16169: 
16170:         ret_val = xmlNewInputFromFile(ctxt, filename);
16171:         desret_xmlParserInputPtr(ret_val);
16172:         call_tests++;
16173:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
16174:         des_filepath(n_filename, filename, 1);
16175:         xmlResetLastError();
16176:         if (mem_base != xmlMemBlocks()) {
16177:             printf("Leak of %d blocks found in xmlNewInputFromFile",
16178: 	           xmlMemBlocks() - mem_base);
16179: 	    test_ret++;
16180:             printf(" %d", n_ctxt);
16181:             printf(" %d", n_filename);
16182:             printf("\n");
16183:         }
16184:     }
16185:     }
16186:     function_tests++;
16187: 
16188:     return(test_ret);
16189: }
16190: 
16191: 
16192: static int
16193: test_xmlNewInputStream(void) {
16194:     int test_ret = 0;
16195: 
16196:     int mem_base;
16197:     xmlParserInputPtr ret_val;
16198:     xmlParserCtxtPtr ctxt; /* an XML parser context */
16199:     int n_ctxt;
16200: 
16201:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
16202:         mem_base = xmlMemBlocks();
16203:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
16204: 
16205:         ret_val = xmlNewInputStream(ctxt);
16206:         desret_xmlParserInputPtr(ret_val);
16207:         call_tests++;
16208:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
16209:         xmlResetLastError();
16210:         if (mem_base != xmlMemBlocks()) {
16211:             printf("Leak of %d blocks found in xmlNewInputStream",
16212: 	           xmlMemBlocks() - mem_base);
16213: 	    test_ret++;
16214:             printf(" %d", n_ctxt);
16215:             printf("\n");
16216:         }
16217:     }
16218:     function_tests++;
16219: 
16220:     return(test_ret);
16221: }
16222: 
16223: 
16224: static int
16225: test_xmlNewStringInputStream(void) {
16226:     int test_ret = 0;
16227: 
16228:     int mem_base;
16229:     xmlParserInputPtr ret_val;
16230:     xmlParserCtxtPtr ctxt; /* an XML parser context */
16231:     int n_ctxt;
16232:     xmlChar * buffer; /* an memory buffer */
16233:     int n_buffer;
16234: 
16235:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
16236:     for (n_buffer = 0;n_buffer < gen_nb_const_xmlChar_ptr;n_buffer++) {
16237:         mem_base = xmlMemBlocks();
16238:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
16239:         buffer = gen_const_xmlChar_ptr(n_buffer, 1);
16240: 
16241:         ret_val = xmlNewStringInputStream(ctxt, (const xmlChar *)buffer);
16242:         desret_xmlParserInputPtr(ret_val);
16243:         call_tests++;
16244:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
16245:         des_const_xmlChar_ptr(n_buffer, (const xmlChar *)buffer, 1);
16246:         xmlResetLastError();
16247:         if (mem_base != xmlMemBlocks()) {
16248:             printf("Leak of %d blocks found in xmlNewStringInputStream",
16249: 	           xmlMemBlocks() - mem_base);
16250: 	    test_ret++;
16251:             printf(" %d", n_ctxt);
16252:             printf(" %d", n_buffer);
16253:             printf("\n");
16254:         }
16255:     }
16256:     }
16257:     function_tests++;
16258: 
16259:     return(test_ret);
16260: }
16261: 
16262: 
16263: static int
16264: test_xmlNextChar(void) {
16265:     int test_ret = 0;
16266: 
16267:     int mem_base;
16268:     xmlParserCtxtPtr ctxt; /* the XML parser context */
16269:     int n_ctxt;
16270: 
16271:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
16272:         mem_base = xmlMemBlocks();
16273:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
16274: 
16275:         xmlNextChar(ctxt);
16276:         call_tests++;
16277:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
16278:         xmlResetLastError();
16279:         if (mem_base != xmlMemBlocks()) {
16280:             printf("Leak of %d blocks found in xmlNextChar",
16281: 	           xmlMemBlocks() - mem_base);
16282: 	    test_ret++;
16283:             printf(" %d", n_ctxt);
16284:             printf("\n");
16285:         }
16286:     }
16287:     function_tests++;
16288: 
16289:     return(test_ret);
16290: }
16291: 
16292: 
16293: static int
16294: test_xmlParserInputShrink(void) {
16295:     int test_ret = 0;
16296: 
16297:     int mem_base;
16298:     xmlParserInputPtr in; /* an XML parser input */
16299:     int n_in;
16300: 
16301:     for (n_in = 0;n_in < gen_nb_xmlParserInputPtr;n_in++) {
16302:         mem_base = xmlMemBlocks();
16303:         in = gen_xmlParserInputPtr(n_in, 0);
16304: 
16305:         xmlParserInputShrink(in);
16306:         call_tests++;
16307:         des_xmlParserInputPtr(n_in, in, 0);
16308:         xmlResetLastError();
16309:         if (mem_base != xmlMemBlocks()) {
16310:             printf("Leak of %d blocks found in xmlParserInputShrink",
16311: 	           xmlMemBlocks() - mem_base);
16312: 	    test_ret++;
16313:             printf(" %d", n_in);
16314:             printf("\n");
16315:         }
16316:     }
16317:     function_tests++;
16318: 
16319:     return(test_ret);
16320: }
16321: 
16322: 
16323: static int
16324: test_xmlPopInput(void) {
16325:     int test_ret = 0;
16326: 
16327:     int mem_base;
16328:     xmlChar ret_val;
16329:     xmlParserCtxtPtr ctxt; /* an XML parser context */
16330:     int n_ctxt;
16331: 
16332:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
16333:         mem_base = xmlMemBlocks();
16334:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
16335: 
16336:         ret_val = xmlPopInput(ctxt);
16337:         desret_xmlChar(ret_val);
16338:         call_tests++;
16339:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
16340:         xmlResetLastError();
16341:         if (mem_base != xmlMemBlocks()) {
16342:             printf("Leak of %d blocks found in xmlPopInput",
16343: 	           xmlMemBlocks() - mem_base);
16344: 	    test_ret++;
16345:             printf(" %d", n_ctxt);
16346:             printf("\n");
16347:         }
16348:     }
16349:     function_tests++;
16350: 
16351:     return(test_ret);
16352: }
16353: 
16354: 
16355: static int
16356: test_xmlPushInput(void) {
16357:     int test_ret = 0;
16358: 
16359:     int mem_base;
16360:     int ret_val;
16361:     xmlParserCtxtPtr ctxt; /* an XML parser context */
16362:     int n_ctxt;
16363:     xmlParserInputPtr input; /* an XML parser input fragment (entity, XML fragment ...). */
16364:     int n_input;
16365: 
16366:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
16367:     for (n_input = 0;n_input < gen_nb_xmlParserInputPtr;n_input++) {
16368:         mem_base = xmlMemBlocks();
16369:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
16370:         input = gen_xmlParserInputPtr(n_input, 1);
16371: 
16372:         ret_val = xmlPushInput(ctxt, input);
16373:         desret_int(ret_val);
16374:         call_tests++;
16375:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
16376:         des_xmlParserInputPtr(n_input, input, 1);
16377:         xmlResetLastError();
16378:         if (mem_base != xmlMemBlocks()) {
16379:             printf("Leak of %d blocks found in xmlPushInput",
16380: 	           xmlMemBlocks() - mem_base);
16381: 	    test_ret++;
16382:             printf(" %d", n_ctxt);
16383:             printf(" %d", n_input);
16384:             printf("\n");
16385:         }
16386:     }
16387:     }
16388:     function_tests++;
16389: 
16390:     return(test_ret);
16391: }
16392: 
16393: 
16394: static int
16395: test_xmlSetEntityReferenceFunc(void) {
16396:     int test_ret = 0;
16397: 
16398: 
16399:     /* missing type support */
16400:     return(test_ret);
16401: }
16402: 
16403: 
16404: static int
16405: test_xmlSplitQName(void) {
16406:     int test_ret = 0;
16407: 
16408:     int mem_base;
16409:     xmlChar * ret_val;
16410:     xmlParserCtxtPtr ctxt; /* an XML parser context */
16411:     int n_ctxt;
16412:     xmlChar * name; /* an XML parser context */
16413:     int n_name;
16414:     xmlChar ** prefix; /* a xmlChar ** */
16415:     int n_prefix;
16416: 
16417:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
16418:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
16419:     for (n_prefix = 0;n_prefix < gen_nb_xmlChar_ptr_ptr;n_prefix++) {
16420:         mem_base = xmlMemBlocks();
16421:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
16422:         name = gen_const_xmlChar_ptr(n_name, 1);
16423:         prefix = gen_xmlChar_ptr_ptr(n_prefix, 2);
16424: 
16425:         ret_val = xmlSplitQName(ctxt, (const xmlChar *)name, prefix);
16426:         desret_xmlChar_ptr(ret_val);
16427:         call_tests++;
16428:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
16429:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
16430:         des_xmlChar_ptr_ptr(n_prefix, prefix, 2);
16431:         xmlResetLastError();
16432:         if (mem_base != xmlMemBlocks()) {
16433:             printf("Leak of %d blocks found in xmlSplitQName",
16434: 	           xmlMemBlocks() - mem_base);
16435: 	    test_ret++;
16436:             printf(" %d", n_ctxt);
16437:             printf(" %d", n_name);
16438:             printf(" %d", n_prefix);
16439:             printf("\n");
16440:         }
16441:     }
16442:     }
16443:     }
16444:     function_tests++;
16445: 
16446:     return(test_ret);
16447: }
16448: 
16449: 
16450: static int
16451: test_xmlStringCurrentChar(void) {
16452:     int test_ret = 0;
16453: 
16454:     int mem_base;
16455:     int ret_val;
16456:     xmlParserCtxtPtr ctxt; /* the XML parser context */
16457:     int n_ctxt;
16458:     xmlChar * cur; /* pointer to the beginning of the char */
16459:     int n_cur;
16460:     int * len; /* pointer to the length of the char read */
16461:     int n_len;
16462: 
16463:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
16464:     for (n_cur = 0;n_cur < gen_nb_const_xmlChar_ptr;n_cur++) {
16465:     for (n_len = 0;n_len < gen_nb_int_ptr;n_len++) {
16466:         mem_base = xmlMemBlocks();
16467:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
16468:         cur = gen_const_xmlChar_ptr(n_cur, 1);
16469:         len = gen_int_ptr(n_len, 2);
16470: 
16471:         ret_val = xmlStringCurrentChar(ctxt, (const xmlChar *)cur, len);
16472:         desret_int(ret_val);
16473:         call_tests++;
16474:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
16475:         des_const_xmlChar_ptr(n_cur, (const xmlChar *)cur, 1);
16476:         des_int_ptr(n_len, len, 2);
16477:         xmlResetLastError();
16478:         if (mem_base != xmlMemBlocks()) {
16479:             printf("Leak of %d blocks found in xmlStringCurrentChar",
16480: 	           xmlMemBlocks() - mem_base);
16481: 	    test_ret++;
16482:             printf(" %d", n_ctxt);
16483:             printf(" %d", n_cur);
16484:             printf(" %d", n_len);
16485:             printf("\n");
16486:         }
16487:     }
16488:     }
16489:     }
16490:     function_tests++;
16491: 
16492:     return(test_ret);
16493: }
16494: 
16495: 
16496: static int
16497: test_xmlStringDecodeEntities(void) {
16498:     int test_ret = 0;
16499: 
16500:     int mem_base;
16501:     xmlChar * ret_val;
16502:     xmlParserCtxtPtr ctxt; /* the parser context */
16503:     int n_ctxt;
16504:     xmlChar * str; /* the input string */
16505:     int n_str;
16506:     int what; /* combination of XML_SUBSTITUTE_REF and XML_SUBSTITUTE_PEREF */
16507:     int n_what;
16508:     xmlChar end; /* an end marker xmlChar, 0 if none */
16509:     int n_end;
16510:     xmlChar end2; /* an end marker xmlChar, 0 if none */
16511:     int n_end2;
16512:     xmlChar end3; /* an end marker xmlChar, 0 if none */
16513:     int n_end3;
16514: 
16515:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
16516:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
16517:     for (n_what = 0;n_what < gen_nb_int;n_what++) {
16518:     for (n_end = 0;n_end < gen_nb_xmlChar;n_end++) {
16519:     for (n_end2 = 0;n_end2 < gen_nb_xmlChar;n_end2++) {
16520:     for (n_end3 = 0;n_end3 < gen_nb_xmlChar;n_end3++) {
16521:         mem_base = xmlMemBlocks();
16522:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
16523:         str = gen_const_xmlChar_ptr(n_str, 1);
16524:         what = gen_int(n_what, 2);
16525:         end = gen_xmlChar(n_end, 3);
16526:         end2 = gen_xmlChar(n_end2, 4);
16527:         end3 = gen_xmlChar(n_end3, 5);
16528: 
16529:         ret_val = xmlStringDecodeEntities(ctxt, (const xmlChar *)str, what, end, end2, end3);
16530:         desret_xmlChar_ptr(ret_val);
16531:         call_tests++;
16532:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
16533:         des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 1);
16534:         des_int(n_what, what, 2);
16535:         des_xmlChar(n_end, end, 3);
16536:         des_xmlChar(n_end2, end2, 4);
16537:         des_xmlChar(n_end3, end3, 5);
16538:         xmlResetLastError();
16539:         if (mem_base != xmlMemBlocks()) {
16540:             printf("Leak of %d blocks found in xmlStringDecodeEntities",
16541: 	           xmlMemBlocks() - mem_base);
16542: 	    test_ret++;
16543:             printf(" %d", n_ctxt);
16544:             printf(" %d", n_str);
16545:             printf(" %d", n_what);
16546:             printf(" %d", n_end);
16547:             printf(" %d", n_end2);
16548:             printf(" %d", n_end3);
16549:             printf("\n");
16550:         }
16551:     }
16552:     }
16553:     }
16554:     }
16555:     }
16556:     }
16557:     function_tests++;
16558: 
16559:     return(test_ret);
16560: }
16561: 
16562: 
16563: static int
16564: test_xmlStringLenDecodeEntities(void) {
16565:     int test_ret = 0;
16566: 
16567:     int mem_base;
16568:     xmlChar * ret_val;
16569:     xmlParserCtxtPtr ctxt; /* the parser context */
16570:     int n_ctxt;
16571:     xmlChar * str; /* the input string */
16572:     int n_str;
16573:     int len; /* the string length */
16574:     int n_len;
16575:     int what; /* combination of XML_SUBSTITUTE_REF and XML_SUBSTITUTE_PEREF */
16576:     int n_what;
16577:     xmlChar end; /* an end marker xmlChar, 0 if none */
16578:     int n_end;
16579:     xmlChar end2; /* an end marker xmlChar, 0 if none */
16580:     int n_end2;
16581:     xmlChar end3; /* an end marker xmlChar, 0 if none */
16582:     int n_end3;
16583: 
16584:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
16585:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
16586:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
16587:     for (n_what = 0;n_what < gen_nb_int;n_what++) {
16588:     for (n_end = 0;n_end < gen_nb_xmlChar;n_end++) {
16589:     for (n_end2 = 0;n_end2 < gen_nb_xmlChar;n_end2++) {
16590:     for (n_end3 = 0;n_end3 < gen_nb_xmlChar;n_end3++) {
16591:         mem_base = xmlMemBlocks();
16592:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
16593:         str = gen_const_xmlChar_ptr(n_str, 1);
16594:         len = gen_int(n_len, 2);
16595:         what = gen_int(n_what, 3);
16596:         end = gen_xmlChar(n_end, 4);
16597:         end2 = gen_xmlChar(n_end2, 5);
16598:         end3 = gen_xmlChar(n_end3, 6);
16599: 
16600:         ret_val = xmlStringLenDecodeEntities(ctxt, (const xmlChar *)str, len, what, end, end2, end3);
16601:         desret_xmlChar_ptr(ret_val);
16602:         call_tests++;
16603:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
16604:         des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 1);
16605:         des_int(n_len, len, 2);
16606:         des_int(n_what, what, 3);
16607:         des_xmlChar(n_end, end, 4);
16608:         des_xmlChar(n_end2, end2, 5);
16609:         des_xmlChar(n_end3, end3, 6);
16610:         xmlResetLastError();
16611:         if (mem_base != xmlMemBlocks()) {
16612:             printf("Leak of %d blocks found in xmlStringLenDecodeEntities",
16613: 	           xmlMemBlocks() - mem_base);
16614: 	    test_ret++;
16615:             printf(" %d", n_ctxt);
16616:             printf(" %d", n_str);
16617:             printf(" %d", n_len);
16618:             printf(" %d", n_what);
16619:             printf(" %d", n_end);
16620:             printf(" %d", n_end2);
16621:             printf(" %d", n_end3);
16622:             printf("\n");
16623:         }
16624:     }
16625:     }
16626:     }
16627:     }
16628:     }
16629:     }
16630:     }
16631:     function_tests++;
16632: 
16633:     return(test_ret);
16634: }
16635: 
16636: 
16637: static int
16638: test_xmlSwitchEncoding(void) {
16639:     int test_ret = 0;
16640: 
16641:     int mem_base;
16642:     int ret_val;
16643:     xmlParserCtxtPtr ctxt; /* the parser context */
16644:     int n_ctxt;
16645:     xmlCharEncoding enc; /* the encoding value (number) */
16646:     int n_enc;
16647: 
16648:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
16649:     for (n_enc = 0;n_enc < gen_nb_xmlCharEncoding;n_enc++) {
16650:         mem_base = xmlMemBlocks();
16651:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
16652:         enc = gen_xmlCharEncoding(n_enc, 1);
16653: 
16654:         ret_val = xmlSwitchEncoding(ctxt, enc);
16655:         desret_int(ret_val);
16656:         call_tests++;
16657:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
16658:         des_xmlCharEncoding(n_enc, enc, 1);
16659:         xmlResetLastError();
16660:         if (mem_base != xmlMemBlocks()) {
16661:             printf("Leak of %d blocks found in xmlSwitchEncoding",
16662: 	           xmlMemBlocks() - mem_base);
16663: 	    test_ret++;
16664:             printf(" %d", n_ctxt);
16665:             printf(" %d", n_enc);
16666:             printf("\n");
16667:         }
16668:     }
16669:     }
16670:     function_tests++;
16671: 
16672:     return(test_ret);
16673: }
16674: 
16675: 
16676: static int
16677: test_xmlSwitchInputEncoding(void) {
16678:     int test_ret = 0;
16679: 
16680:     int mem_base;
16681:     int ret_val;
16682:     xmlParserCtxtPtr ctxt; /* the parser context */
16683:     int n_ctxt;
16684:     xmlParserInputPtr input; /* the input stream */
16685:     int n_input;
16686:     xmlCharEncodingHandlerPtr handler; /* the encoding handler */
16687:     int n_handler;
16688: 
16689:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
16690:     for (n_input = 0;n_input < gen_nb_xmlParserInputPtr;n_input++) {
16691:     for (n_handler = 0;n_handler < gen_nb_xmlCharEncodingHandlerPtr;n_handler++) {
16692:         mem_base = xmlMemBlocks();
16693:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
16694:         input = gen_xmlParserInputPtr(n_input, 1);
16695:         handler = gen_xmlCharEncodingHandlerPtr(n_handler, 2);
16696: 
16697:         ret_val = xmlSwitchInputEncoding(ctxt, input, handler);
16698:         desret_int(ret_val);
16699:         call_tests++;
16700:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
16701:         des_xmlParserInputPtr(n_input, input, 1);
16702:         des_xmlCharEncodingHandlerPtr(n_handler, handler, 2);
16703:         xmlResetLastError();
16704:         if (mem_base != xmlMemBlocks()) {
16705:             printf("Leak of %d blocks found in xmlSwitchInputEncoding",
16706: 	           xmlMemBlocks() - mem_base);
16707: 	    test_ret++;
16708:             printf(" %d", n_ctxt);
16709:             printf(" %d", n_input);
16710:             printf(" %d", n_handler);
16711:             printf("\n");
16712:         }
16713:     }
16714:     }
16715:     }
16716:     function_tests++;
16717: 
16718:     return(test_ret);
16719: }
16720: 
16721: 
16722: static int
16723: test_xmlSwitchToEncoding(void) {
16724:     int test_ret = 0;
16725: 
16726:     int mem_base;
16727:     int ret_val;
16728:     xmlParserCtxtPtr ctxt; /* the parser context */
16729:     int n_ctxt;
16730:     xmlCharEncodingHandlerPtr handler; /* the encoding handler */
16731:     int n_handler;
16732: 
16733:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
16734:     for (n_handler = 0;n_handler < gen_nb_xmlCharEncodingHandlerPtr;n_handler++) {
16735:         mem_base = xmlMemBlocks();
16736:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
16737:         handler = gen_xmlCharEncodingHandlerPtr(n_handler, 1);
16738: 
16739:         ret_val = xmlSwitchToEncoding(ctxt, handler);
16740:         desret_int(ret_val);
16741:         call_tests++;
16742:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
16743:         des_xmlCharEncodingHandlerPtr(n_handler, handler, 1);
16744:         xmlResetLastError();
16745:         if (mem_base != xmlMemBlocks()) {
16746:             printf("Leak of %d blocks found in xmlSwitchToEncoding",
16747: 	           xmlMemBlocks() - mem_base);
16748: 	    test_ret++;
16749:             printf(" %d", n_ctxt);
16750:             printf(" %d", n_handler);
16751:             printf("\n");
16752:         }
16753:     }
16754:     }
16755:     function_tests++;
16756: 
16757:     return(test_ret);
16758: }
16759: 
16760: static int
16761: test_parserInternals(void) {
16762:     int test_ret = 0;
16763: 
16764:     if (quiet == 0) printf("Testing parserInternals : 33 of 90 functions ...\n");
16765:     test_ret += test_htmlCreateFileParserCtxt();
16766:     test_ret += test_htmlInitAutoClose();
16767:     test_ret += test_inputPop();
16768:     test_ret += test_inputPush();
16769:     test_ret += test_namePop();
16770:     test_ret += test_namePush();
16771:     test_ret += test_nodePop();
16772:     test_ret += test_nodePush();
16773:     test_ret += test_xmlCheckLanguageID();
16774:     test_ret += test_xmlCopyChar();
16775:     test_ret += test_xmlCopyCharMultiByte();
16776:     test_ret += test_xmlCreateEntityParserCtxt();
16777:     test_ret += test_xmlCreateFileParserCtxt();
16778:     test_ret += test_xmlCreateMemoryParserCtxt();
16779:     test_ret += test_xmlCreateURLParserCtxt();
16780:     test_ret += test_xmlCurrentChar();
16781:     test_ret += test_xmlErrMemory();
16782:     test_ret += test_xmlIsLetter();
16783:     test_ret += test_xmlNewEntityInputStream();
16784:     test_ret += test_xmlNewInputFromFile();
16785:     test_ret += test_xmlNewInputStream();
16786:     test_ret += test_xmlNewStringInputStream();
16787:     test_ret += test_xmlNextChar();
16788:     test_ret += test_xmlParserInputShrink();
16789:     test_ret += test_xmlPopInput();
16790:     test_ret += test_xmlPushInput();
16791:     test_ret += test_xmlSetEntityReferenceFunc();
16792:     test_ret += test_xmlSplitQName();
16793:     test_ret += test_xmlStringCurrentChar();
16794:     test_ret += test_xmlStringDecodeEntities();
16795:     test_ret += test_xmlStringLenDecodeEntities();
16796:     test_ret += test_xmlSwitchEncoding();
16797:     test_ret += test_xmlSwitchInputEncoding();
16798:     test_ret += test_xmlSwitchToEncoding();
16799: 
16800:     if (test_ret != 0)
16801: 	printf("Module parserInternals: %d errors\n", test_ret);
16802:     return(test_ret);
16803: }
16804: 
16805: static int
16806: test_xmlPatternFromRoot(void) {
16807:     int test_ret = 0;
16808: 
16809: #if defined(LIBXML_PATTERN_ENABLED)
16810:     int mem_base;
16811:     int ret_val;
16812:     xmlPatternPtr comp; /* the precompiled pattern */
16813:     int n_comp;
16814: 
16815:     for (n_comp = 0;n_comp < gen_nb_xmlPatternPtr;n_comp++) {
16816:         mem_base = xmlMemBlocks();
16817:         comp = gen_xmlPatternPtr(n_comp, 0);
16818: 
16819:         ret_val = xmlPatternFromRoot(comp);
16820:         desret_int(ret_val);
16821:         call_tests++;
16822:         des_xmlPatternPtr(n_comp, comp, 0);
16823:         xmlResetLastError();
16824:         if (mem_base != xmlMemBlocks()) {
16825:             printf("Leak of %d blocks found in xmlPatternFromRoot",
16826: 	           xmlMemBlocks() - mem_base);
16827: 	    test_ret++;
16828:             printf(" %d", n_comp);
16829:             printf("\n");
16830:         }
16831:     }
16832:     function_tests++;
16833: #endif
16834: 
16835:     return(test_ret);
16836: }
16837: 
16838: 
16839: static int
16840: test_xmlPatternGetStreamCtxt(void) {
16841:     int test_ret = 0;
16842: 
16843: 
16844:     /* missing type support */
16845:     return(test_ret);
16846: }
16847: 
16848: 
16849: static int
16850: test_xmlPatternMatch(void) {
16851:     int test_ret = 0;
16852: 
16853: #if defined(LIBXML_PATTERN_ENABLED)
16854:     int mem_base;
16855:     int ret_val;
16856:     xmlPatternPtr comp; /* the precompiled pattern */
16857:     int n_comp;
16858:     xmlNodePtr node; /* a node */
16859:     int n_node;
16860: 
16861:     for (n_comp = 0;n_comp < gen_nb_xmlPatternPtr;n_comp++) {
16862:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
16863:         mem_base = xmlMemBlocks();
16864:         comp = gen_xmlPatternPtr(n_comp, 0);
16865:         node = gen_xmlNodePtr(n_node, 1);
16866: 
16867:         ret_val = xmlPatternMatch(comp, node);
16868:         desret_int(ret_val);
16869:         call_tests++;
16870:         des_xmlPatternPtr(n_comp, comp, 0);
16871:         des_xmlNodePtr(n_node, node, 1);
16872:         xmlResetLastError();
16873:         if (mem_base != xmlMemBlocks()) {
16874:             printf("Leak of %d blocks found in xmlPatternMatch",
16875: 	           xmlMemBlocks() - mem_base);
16876: 	    test_ret++;
16877:             printf(" %d", n_comp);
16878:             printf(" %d", n_node);
16879:             printf("\n");
16880:         }
16881:     }
16882:     }
16883:     function_tests++;
16884: #endif
16885: 
16886:     return(test_ret);
16887: }
16888: 
16889: 
16890: static int
16891: test_xmlPatternMaxDepth(void) {
16892:     int test_ret = 0;
16893: 
16894: #if defined(LIBXML_PATTERN_ENABLED)
16895:     int mem_base;
16896:     int ret_val;
16897:     xmlPatternPtr comp; /* the precompiled pattern */
16898:     int n_comp;
16899: 
16900:     for (n_comp = 0;n_comp < gen_nb_xmlPatternPtr;n_comp++) {
16901:         mem_base = xmlMemBlocks();
16902:         comp = gen_xmlPatternPtr(n_comp, 0);
16903: 
16904:         ret_val = xmlPatternMaxDepth(comp);
16905:         desret_int(ret_val);
16906:         call_tests++;
16907:         des_xmlPatternPtr(n_comp, comp, 0);
16908:         xmlResetLastError();
16909:         if (mem_base != xmlMemBlocks()) {
16910:             printf("Leak of %d blocks found in xmlPatternMaxDepth",
16911: 	           xmlMemBlocks() - mem_base);
16912: 	    test_ret++;
16913:             printf(" %d", n_comp);
16914:             printf("\n");
16915:         }
16916:     }
16917:     function_tests++;
16918: #endif
16919: 
16920:     return(test_ret);
16921: }
16922: 
16923: 
16924: static int
16925: test_xmlPatternMinDepth(void) {
16926:     int test_ret = 0;
16927: 
16928: #if defined(LIBXML_PATTERN_ENABLED)
16929:     int mem_base;
16930:     int ret_val;
16931:     xmlPatternPtr comp; /* the precompiled pattern */
16932:     int n_comp;
16933: 
16934:     for (n_comp = 0;n_comp < gen_nb_xmlPatternPtr;n_comp++) {
16935:         mem_base = xmlMemBlocks();
16936:         comp = gen_xmlPatternPtr(n_comp, 0);
16937: 
16938:         ret_val = xmlPatternMinDepth(comp);
16939:         desret_int(ret_val);
16940:         call_tests++;
16941:         des_xmlPatternPtr(n_comp, comp, 0);
16942:         xmlResetLastError();
16943:         if (mem_base != xmlMemBlocks()) {
16944:             printf("Leak of %d blocks found in xmlPatternMinDepth",
16945: 	           xmlMemBlocks() - mem_base);
16946: 	    test_ret++;
16947:             printf(" %d", n_comp);
16948:             printf("\n");
16949:         }
16950:     }
16951:     function_tests++;
16952: #endif
16953: 
16954:     return(test_ret);
16955: }
16956: 
16957: 
16958: static int
16959: test_xmlPatternStreamable(void) {
16960:     int test_ret = 0;
16961: 
16962: #if defined(LIBXML_PATTERN_ENABLED)
16963:     int mem_base;
16964:     int ret_val;
16965:     xmlPatternPtr comp; /* the precompiled pattern */
16966:     int n_comp;
16967: 
16968:     for (n_comp = 0;n_comp < gen_nb_xmlPatternPtr;n_comp++) {
16969:         mem_base = xmlMemBlocks();
16970:         comp = gen_xmlPatternPtr(n_comp, 0);
16971: 
16972:         ret_val = xmlPatternStreamable(comp);
16973:         desret_int(ret_val);
16974:         call_tests++;
16975:         des_xmlPatternPtr(n_comp, comp, 0);
16976:         xmlResetLastError();
16977:         if (mem_base != xmlMemBlocks()) {
16978:             printf("Leak of %d blocks found in xmlPatternStreamable",
16979: 	           xmlMemBlocks() - mem_base);
16980: 	    test_ret++;
16981:             printf(" %d", n_comp);
16982:             printf("\n");
16983:         }
16984:     }
16985:     function_tests++;
16986: #endif
16987: 
16988:     return(test_ret);
16989: }
16990: 
16991: 
16992: static int
16993: test_xmlPatterncompile(void) {
16994:     int test_ret = 0;
16995: 
16996: 
16997:     /* missing type support */
16998:     return(test_ret);
16999: }
17000: 
17001: #ifdef LIBXML_PATTERN_ENABLED
17002: 
17003: #define gen_nb_xmlStreamCtxtPtr 1
17004: static xmlStreamCtxtPtr gen_xmlStreamCtxtPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
17005:     return(NULL);
17006: }
17007: static void des_xmlStreamCtxtPtr(int no ATTRIBUTE_UNUSED, xmlStreamCtxtPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
17008: }
17009: #endif
17010: 
17011: 
17012: static int
17013: test_xmlStreamPop(void) {
17014:     int test_ret = 0;
17015: 
17016: #if defined(LIBXML_PATTERN_ENABLED)
17017:     int mem_base;
17018:     int ret_val;
17019:     xmlStreamCtxtPtr stream; /* the stream context */
17020:     int n_stream;
17021: 
17022:     for (n_stream = 0;n_stream < gen_nb_xmlStreamCtxtPtr;n_stream++) {
17023:         mem_base = xmlMemBlocks();
17024:         stream = gen_xmlStreamCtxtPtr(n_stream, 0);
17025: 
17026:         ret_val = xmlStreamPop(stream);
17027:         desret_int(ret_val);
17028:         call_tests++;
17029:         des_xmlStreamCtxtPtr(n_stream, stream, 0);
17030:         xmlResetLastError();
17031:         if (mem_base != xmlMemBlocks()) {
17032:             printf("Leak of %d blocks found in xmlStreamPop",
17033: 	           xmlMemBlocks() - mem_base);
17034: 	    test_ret++;
17035:             printf(" %d", n_stream);
17036:             printf("\n");
17037:         }
17038:     }
17039:     function_tests++;
17040: #endif
17041: 
17042:     return(test_ret);
17043: }
17044: 
17045: 
17046: static int
17047: test_xmlStreamPush(void) {
17048:     int test_ret = 0;
17049: 
17050: #if defined(LIBXML_PATTERN_ENABLED)
17051:     int mem_base;
17052:     int ret_val;
17053:     xmlStreamCtxtPtr stream; /* the stream context */
17054:     int n_stream;
17055:     xmlChar * name; /* the current name */
17056:     int n_name;
17057:     xmlChar * ns; /* the namespace name */
17058:     int n_ns;
17059: 
17060:     for (n_stream = 0;n_stream < gen_nb_xmlStreamCtxtPtr;n_stream++) {
17061:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
17062:     for (n_ns = 0;n_ns < gen_nb_const_xmlChar_ptr;n_ns++) {
17063:         mem_base = xmlMemBlocks();
17064:         stream = gen_xmlStreamCtxtPtr(n_stream, 0);
17065:         name = gen_const_xmlChar_ptr(n_name, 1);
17066:         ns = gen_const_xmlChar_ptr(n_ns, 2);
17067: 
17068:         ret_val = xmlStreamPush(stream, (const xmlChar *)name, (const xmlChar *)ns);
17069:         desret_int(ret_val);
17070:         call_tests++;
17071:         des_xmlStreamCtxtPtr(n_stream, stream, 0);
17072:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
17073:         des_const_xmlChar_ptr(n_ns, (const xmlChar *)ns, 2);
17074:         xmlResetLastError();
17075:         if (mem_base != xmlMemBlocks()) {
17076:             printf("Leak of %d blocks found in xmlStreamPush",
17077: 	           xmlMemBlocks() - mem_base);
17078: 	    test_ret++;
17079:             printf(" %d", n_stream);
17080:             printf(" %d", n_name);
17081:             printf(" %d", n_ns);
17082:             printf("\n");
17083:         }
17084:     }
17085:     }
17086:     }
17087:     function_tests++;
17088: #endif
17089: 
17090:     return(test_ret);
17091: }
17092: 
17093: 
17094: static int
17095: test_xmlStreamPushAttr(void) {
17096:     int test_ret = 0;
17097: 
17098: #if defined(LIBXML_PATTERN_ENABLED)
17099:     int mem_base;
17100:     int ret_val;
17101:     xmlStreamCtxtPtr stream; /* the stream context */
17102:     int n_stream;
17103:     xmlChar * name; /* the current name */
17104:     int n_name;
17105:     xmlChar * ns; /* the namespace name */
17106:     int n_ns;
17107: 
17108:     for (n_stream = 0;n_stream < gen_nb_xmlStreamCtxtPtr;n_stream++) {
17109:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
17110:     for (n_ns = 0;n_ns < gen_nb_const_xmlChar_ptr;n_ns++) {
17111:         mem_base = xmlMemBlocks();
17112:         stream = gen_xmlStreamCtxtPtr(n_stream, 0);
17113:         name = gen_const_xmlChar_ptr(n_name, 1);
17114:         ns = gen_const_xmlChar_ptr(n_ns, 2);
17115: 
17116:         ret_val = xmlStreamPushAttr(stream, (const xmlChar *)name, (const xmlChar *)ns);
17117:         desret_int(ret_val);
17118:         call_tests++;
17119:         des_xmlStreamCtxtPtr(n_stream, stream, 0);
17120:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
17121:         des_const_xmlChar_ptr(n_ns, (const xmlChar *)ns, 2);
17122:         xmlResetLastError();
17123:         if (mem_base != xmlMemBlocks()) {
17124:             printf("Leak of %d blocks found in xmlStreamPushAttr",
17125: 	           xmlMemBlocks() - mem_base);
17126: 	    test_ret++;
17127:             printf(" %d", n_stream);
17128:             printf(" %d", n_name);
17129:             printf(" %d", n_ns);
17130:             printf("\n");
17131:         }
17132:     }
17133:     }
17134:     }
17135:     function_tests++;
17136: #endif
17137: 
17138:     return(test_ret);
17139: }
17140: 
17141: 
17142: static int
17143: test_xmlStreamPushNode(void) {
17144:     int test_ret = 0;
17145: 
17146: #if defined(LIBXML_PATTERN_ENABLED)
17147:     int mem_base;
17148:     int ret_val;
17149:     xmlStreamCtxtPtr stream; /* the stream context */
17150:     int n_stream;
17151:     xmlChar * name; /* the current name */
17152:     int n_name;
17153:     xmlChar * ns; /* the namespace name */
17154:     int n_ns;
17155:     int nodeType; /* the type of the node being pushed */
17156:     int n_nodeType;
17157: 
17158:     for (n_stream = 0;n_stream < gen_nb_xmlStreamCtxtPtr;n_stream++) {
17159:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
17160:     for (n_ns = 0;n_ns < gen_nb_const_xmlChar_ptr;n_ns++) {
17161:     for (n_nodeType = 0;n_nodeType < gen_nb_int;n_nodeType++) {
17162:         mem_base = xmlMemBlocks();
17163:         stream = gen_xmlStreamCtxtPtr(n_stream, 0);
17164:         name = gen_const_xmlChar_ptr(n_name, 1);
17165:         ns = gen_const_xmlChar_ptr(n_ns, 2);
17166:         nodeType = gen_int(n_nodeType, 3);
17167: 
17168:         ret_val = xmlStreamPushNode(stream, (const xmlChar *)name, (const xmlChar *)ns, nodeType);
17169:         desret_int(ret_val);
17170:         call_tests++;
17171:         des_xmlStreamCtxtPtr(n_stream, stream, 0);
17172:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
17173:         des_const_xmlChar_ptr(n_ns, (const xmlChar *)ns, 2);
17174:         des_int(n_nodeType, nodeType, 3);
17175:         xmlResetLastError();
17176:         if (mem_base != xmlMemBlocks()) {
17177:             printf("Leak of %d blocks found in xmlStreamPushNode",
17178: 	           xmlMemBlocks() - mem_base);
17179: 	    test_ret++;
17180:             printf(" %d", n_stream);
17181:             printf(" %d", n_name);
17182:             printf(" %d", n_ns);
17183:             printf(" %d", n_nodeType);
17184:             printf("\n");
17185:         }
17186:     }
17187:     }
17188:     }
17189:     }
17190:     function_tests++;
17191: #endif
17192: 
17193:     return(test_ret);
17194: }
17195: 
17196: 
17197: static int
17198: test_xmlStreamWantsAnyNode(void) {
17199:     int test_ret = 0;
17200: 
17201: #if defined(LIBXML_PATTERN_ENABLED)
17202:     int mem_base;
17203:     int ret_val;
17204:     xmlStreamCtxtPtr streamCtxt; /* the stream context */
17205:     int n_streamCtxt;
17206: 
17207:     for (n_streamCtxt = 0;n_streamCtxt < gen_nb_xmlStreamCtxtPtr;n_streamCtxt++) {
17208:         mem_base = xmlMemBlocks();
17209:         streamCtxt = gen_xmlStreamCtxtPtr(n_streamCtxt, 0);
17210: 
17211:         ret_val = xmlStreamWantsAnyNode(streamCtxt);
17212:         desret_int(ret_val);
17213:         call_tests++;
17214:         des_xmlStreamCtxtPtr(n_streamCtxt, streamCtxt, 0);
17215:         xmlResetLastError();
17216:         if (mem_base != xmlMemBlocks()) {
17217:             printf("Leak of %d blocks found in xmlStreamWantsAnyNode",
17218: 	           xmlMemBlocks() - mem_base);
17219: 	    test_ret++;
17220:             printf(" %d", n_streamCtxt);
17221:             printf("\n");
17222:         }
17223:     }
17224:     function_tests++;
17225: #endif
17226: 
17227:     return(test_ret);
17228: }
17229: 
17230: static int
17231: test_pattern(void) {
17232:     int test_ret = 0;
17233: 
17234:     if (quiet == 0) printf("Testing pattern : 10 of 15 functions ...\n");
17235:     test_ret += test_xmlPatternFromRoot();
17236:     test_ret += test_xmlPatternGetStreamCtxt();
17237:     test_ret += test_xmlPatternMatch();
17238:     test_ret += test_xmlPatternMaxDepth();
17239:     test_ret += test_xmlPatternMinDepth();
17240:     test_ret += test_xmlPatternStreamable();
17241:     test_ret += test_xmlPatterncompile();
17242:     test_ret += test_xmlStreamPop();
17243:     test_ret += test_xmlStreamPush();
17244:     test_ret += test_xmlStreamPushAttr();
17245:     test_ret += test_xmlStreamPushNode();
17246:     test_ret += test_xmlStreamWantsAnyNode();
17247: 
17248:     if (test_ret != 0)
17249: 	printf("Module pattern: %d errors\n", test_ret);
17250:     return(test_ret);
17251: }
17252: #ifdef LIBXML_SCHEMAS_ENABLED
17253: 
17254: #define gen_nb_xmlRelaxNGPtr 1
17255: static xmlRelaxNGPtr gen_xmlRelaxNGPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
17256:     return(NULL);
17257: }
17258: static void des_xmlRelaxNGPtr(int no ATTRIBUTE_UNUSED, xmlRelaxNGPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
17259: }
17260: #endif
17261: 
17262: 
17263: static int
17264: test_xmlRelaxNGDump(void) {
17265:     int test_ret = 0;
17266: 
17267: #if defined(LIBXML_SCHEMAS_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
17268:     int mem_base;
17269:     FILE * output; /* the file output */
17270:     int n_output;
17271:     xmlRelaxNGPtr schema; /* a schema structure */
17272:     int n_schema;
17273: 
17274:     for (n_output = 0;n_output < gen_nb_FILE_ptr;n_output++) {
17275:     for (n_schema = 0;n_schema < gen_nb_xmlRelaxNGPtr;n_schema++) {
17276:         mem_base = xmlMemBlocks();
17277:         output = gen_FILE_ptr(n_output, 0);
17278:         schema = gen_xmlRelaxNGPtr(n_schema, 1);
17279: 
17280:         xmlRelaxNGDump(output, schema);
17281:         call_tests++;
17282:         des_FILE_ptr(n_output, output, 0);
17283:         des_xmlRelaxNGPtr(n_schema, schema, 1);
17284:         xmlResetLastError();
17285:         if (mem_base != xmlMemBlocks()) {
17286:             printf("Leak of %d blocks found in xmlRelaxNGDump",
17287: 	           xmlMemBlocks() - mem_base);
17288: 	    test_ret++;
17289:             printf(" %d", n_output);
17290:             printf(" %d", n_schema);
17291:             printf("\n");
17292:         }
17293:     }
17294:     }
17295:     function_tests++;
17296: #endif
17297: 
17298:     return(test_ret);
17299: }
17300: 
17301: 
17302: static int
17303: test_xmlRelaxNGDumpTree(void) {
17304:     int test_ret = 0;
17305: 
17306: #if defined(LIBXML_SCHEMAS_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
17307:     int mem_base;
17308:     FILE * output; /* the file output */
17309:     int n_output;
17310:     xmlRelaxNGPtr schema; /* a schema structure */
17311:     int n_schema;
17312: 
17313:     for (n_output = 0;n_output < gen_nb_FILE_ptr;n_output++) {
17314:     for (n_schema = 0;n_schema < gen_nb_xmlRelaxNGPtr;n_schema++) {
17315:         mem_base = xmlMemBlocks();
17316:         output = gen_FILE_ptr(n_output, 0);
17317:         schema = gen_xmlRelaxNGPtr(n_schema, 1);
17318: 
17319:         xmlRelaxNGDumpTree(output, schema);
17320:         call_tests++;
17321:         des_FILE_ptr(n_output, output, 0);
17322:         des_xmlRelaxNGPtr(n_schema, schema, 1);
17323:         xmlResetLastError();
17324:         if (mem_base != xmlMemBlocks()) {
17325:             printf("Leak of %d blocks found in xmlRelaxNGDumpTree",
17326: 	           xmlMemBlocks() - mem_base);
17327: 	    test_ret++;
17328:             printf(" %d", n_output);
17329:             printf(" %d", n_schema);
17330:             printf("\n");
17331:         }
17332:     }
17333:     }
17334:     function_tests++;
17335: #endif
17336: 
17337:     return(test_ret);
17338: }
17339: 
17340: #ifdef LIBXML_SCHEMAS_ENABLED
17341: 
17342: #define gen_nb_xmlRelaxNGParserCtxtPtr 1
17343: static xmlRelaxNGParserCtxtPtr gen_xmlRelaxNGParserCtxtPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
17344:     return(NULL);
17345: }
17346: static void des_xmlRelaxNGParserCtxtPtr(int no ATTRIBUTE_UNUSED, xmlRelaxNGParserCtxtPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
17347: }
17348: #endif
17349: 
17350: #ifdef LIBXML_SCHEMAS_ENABLED
17351: 
17352: #define gen_nb_xmlRelaxNGValidityErrorFunc_ptr 1
17353: static xmlRelaxNGValidityErrorFunc * gen_xmlRelaxNGValidityErrorFunc_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
17354:     return(NULL);
17355: }
17356: static void des_xmlRelaxNGValidityErrorFunc_ptr(int no ATTRIBUTE_UNUSED, xmlRelaxNGValidityErrorFunc * val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
17357: }
17358: #endif
17359: 
17360: #ifdef LIBXML_SCHEMAS_ENABLED
17361: 
17362: #define gen_nb_xmlRelaxNGValidityWarningFunc_ptr 1
17363: static xmlRelaxNGValidityWarningFunc * gen_xmlRelaxNGValidityWarningFunc_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
17364:     return(NULL);
17365: }
17366: static void des_xmlRelaxNGValidityWarningFunc_ptr(int no ATTRIBUTE_UNUSED, xmlRelaxNGValidityWarningFunc * val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
17367: }
17368: #endif
17369: 
17370: 
17371: static int
17372: test_xmlRelaxNGGetParserErrors(void) {
17373:     int test_ret = 0;
17374: 
17375: #if defined(LIBXML_SCHEMAS_ENABLED)
17376:     int mem_base;
17377:     int ret_val;
17378:     xmlRelaxNGParserCtxtPtr ctxt; /* a Relax-NG validation context */
17379:     int n_ctxt;
17380:     xmlRelaxNGValidityErrorFunc * err; /* the error callback result */
17381:     int n_err;
17382:     xmlRelaxNGValidityWarningFunc * warn; /* the warning callback result */
17383:     int n_warn;
17384:     void ** ctx; /* contextual data for the callbacks result */
17385:     int n_ctx;
17386: 
17387:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlRelaxNGParserCtxtPtr;n_ctxt++) {
17388:     for (n_err = 0;n_err < gen_nb_xmlRelaxNGValidityErrorFunc_ptr;n_err++) {
17389:     for (n_warn = 0;n_warn < gen_nb_xmlRelaxNGValidityWarningFunc_ptr;n_warn++) {
17390:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr_ptr;n_ctx++) {
17391:         mem_base = xmlMemBlocks();
17392:         ctxt = gen_xmlRelaxNGParserCtxtPtr(n_ctxt, 0);
17393:         err = gen_xmlRelaxNGValidityErrorFunc_ptr(n_err, 1);
17394:         warn = gen_xmlRelaxNGValidityWarningFunc_ptr(n_warn, 2);
17395:         ctx = gen_void_ptr_ptr(n_ctx, 3);
17396: 
17397:         ret_val = xmlRelaxNGGetParserErrors(ctxt, err, warn, ctx);
17398:         desret_int(ret_val);
17399:         call_tests++;
17400:         des_xmlRelaxNGParserCtxtPtr(n_ctxt, ctxt, 0);
17401:         des_xmlRelaxNGValidityErrorFunc_ptr(n_err, err, 1);
17402:         des_xmlRelaxNGValidityWarningFunc_ptr(n_warn, warn, 2);
17403:         des_void_ptr_ptr(n_ctx, ctx, 3);
17404:         xmlResetLastError();
17405:         if (mem_base != xmlMemBlocks()) {
17406:             printf("Leak of %d blocks found in xmlRelaxNGGetParserErrors",
17407: 	           xmlMemBlocks() - mem_base);
17408: 	    test_ret++;
17409:             printf(" %d", n_ctxt);
17410:             printf(" %d", n_err);
17411:             printf(" %d", n_warn);
17412:             printf(" %d", n_ctx);
17413:             printf("\n");
17414:         }
17415:     }
17416:     }
17417:     }
17418:     }
17419:     function_tests++;
17420: #endif
17421: 
17422:     return(test_ret);
17423: }
17424: 
17425: #ifdef LIBXML_SCHEMAS_ENABLED
17426: 
17427: #define gen_nb_xmlRelaxNGValidCtxtPtr 1
17428: static xmlRelaxNGValidCtxtPtr gen_xmlRelaxNGValidCtxtPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
17429:     return(NULL);
17430: }
17431: static void des_xmlRelaxNGValidCtxtPtr(int no ATTRIBUTE_UNUSED, xmlRelaxNGValidCtxtPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
17432: }
17433: #endif
17434: 
17435: 
17436: static int
17437: test_xmlRelaxNGGetValidErrors(void) {
17438:     int test_ret = 0;
17439: 
17440: #if defined(LIBXML_SCHEMAS_ENABLED)
17441:     int mem_base;
17442:     int ret_val;
17443:     xmlRelaxNGValidCtxtPtr ctxt; /* a Relax-NG validation context */
17444:     int n_ctxt;
17445:     xmlRelaxNGValidityErrorFunc * err; /* the error function result */
17446:     int n_err;
17447:     xmlRelaxNGValidityWarningFunc * warn; /* the warning function result */
17448:     int n_warn;
17449:     void ** ctx; /* the functions context result */
17450:     int n_ctx;
17451: 
17452:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlRelaxNGValidCtxtPtr;n_ctxt++) {
17453:     for (n_err = 0;n_err < gen_nb_xmlRelaxNGValidityErrorFunc_ptr;n_err++) {
17454:     for (n_warn = 0;n_warn < gen_nb_xmlRelaxNGValidityWarningFunc_ptr;n_warn++) {
17455:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr_ptr;n_ctx++) {
17456:         mem_base = xmlMemBlocks();
17457:         ctxt = gen_xmlRelaxNGValidCtxtPtr(n_ctxt, 0);
17458:         err = gen_xmlRelaxNGValidityErrorFunc_ptr(n_err, 1);
17459:         warn = gen_xmlRelaxNGValidityWarningFunc_ptr(n_warn, 2);
17460:         ctx = gen_void_ptr_ptr(n_ctx, 3);
17461: 
17462:         ret_val = xmlRelaxNGGetValidErrors(ctxt, err, warn, ctx);
17463:         desret_int(ret_val);
17464:         call_tests++;
17465:         des_xmlRelaxNGValidCtxtPtr(n_ctxt, ctxt, 0);
17466:         des_xmlRelaxNGValidityErrorFunc_ptr(n_err, err, 1);
17467:         des_xmlRelaxNGValidityWarningFunc_ptr(n_warn, warn, 2);
17468:         des_void_ptr_ptr(n_ctx, ctx, 3);
17469:         xmlResetLastError();
17470:         if (mem_base != xmlMemBlocks()) {
17471:             printf("Leak of %d blocks found in xmlRelaxNGGetValidErrors",
17472: 	           xmlMemBlocks() - mem_base);
17473: 	    test_ret++;
17474:             printf(" %d", n_ctxt);
17475:             printf(" %d", n_err);
17476:             printf(" %d", n_warn);
17477:             printf(" %d", n_ctx);
17478:             printf("\n");
17479:         }
17480:     }
17481:     }
17482:     }
17483:     }
17484:     function_tests++;
17485: #endif
17486: 
17487:     return(test_ret);
17488: }
17489: 
17490: 
17491: static int
17492: test_xmlRelaxNGInitTypes(void) {
17493:     int test_ret = 0;
17494: 
17495: #if defined(LIBXML_SCHEMAS_ENABLED)
17496:     int mem_base;
17497:     int ret_val;
17498: 
17499:         mem_base = xmlMemBlocks();
17500: 
17501:         ret_val = xmlRelaxNGInitTypes();
17502:         desret_int(ret_val);
17503:         call_tests++;
17504:         xmlResetLastError();
17505:         if (mem_base != xmlMemBlocks()) {
17506:             printf("Leak of %d blocks found in xmlRelaxNGInitTypes",
17507: 	           xmlMemBlocks() - mem_base);
17508: 	    test_ret++;
17509:             printf("\n");
17510:         }
17511:     function_tests++;
17512: #endif
17513: 
17514:     return(test_ret);
17515: }
17516: 
17517: 
17518: static int
17519: test_xmlRelaxNGNewDocParserCtxt(void) {
17520:     int test_ret = 0;
17521: 
17522: #if defined(LIBXML_SCHEMAS_ENABLED)
17523:     int mem_base;
17524:     xmlRelaxNGParserCtxtPtr ret_val;
17525:     xmlDocPtr doc; /* a preparsed document tree */
17526:     int n_doc;
17527: 
17528:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
17529:         mem_base = xmlMemBlocks();
17530:         doc = gen_xmlDocPtr(n_doc, 0);
17531: 
17532:         ret_val = xmlRelaxNGNewDocParserCtxt(doc);
17533:         desret_xmlRelaxNGParserCtxtPtr(ret_val);
17534:         call_tests++;
17535:         des_xmlDocPtr(n_doc, doc, 0);
17536:         xmlResetLastError();
17537:         if (mem_base != xmlMemBlocks()) {
17538:             printf("Leak of %d blocks found in xmlRelaxNGNewDocParserCtxt",
17539: 	           xmlMemBlocks() - mem_base);
17540: 	    test_ret++;
17541:             printf(" %d", n_doc);
17542:             printf("\n");
17543:         }
17544:     }
17545:     function_tests++;
17546: #endif
17547: 
17548:     return(test_ret);
17549: }
17550: 
17551: 
17552: static int
17553: test_xmlRelaxNGNewMemParserCtxt(void) {
17554:     int test_ret = 0;
17555: 
17556: #if defined(LIBXML_SCHEMAS_ENABLED)
17557:     int mem_base;
17558:     xmlRelaxNGParserCtxtPtr ret_val;
17559:     char * buffer; /* a pointer to a char array containing the schemas */
17560:     int n_buffer;
17561:     int size; /* the size of the array */
17562:     int n_size;
17563: 
17564:     for (n_buffer = 0;n_buffer < gen_nb_const_char_ptr;n_buffer++) {
17565:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
17566:         mem_base = xmlMemBlocks();
17567:         buffer = gen_const_char_ptr(n_buffer, 0);
17568:         size = gen_int(n_size, 1);
17569: 
17570:         ret_val = xmlRelaxNGNewMemParserCtxt((const char *)buffer, size);
17571:         desret_xmlRelaxNGParserCtxtPtr(ret_val);
17572:         call_tests++;
17573:         des_const_char_ptr(n_buffer, (const char *)buffer, 0);
17574:         des_int(n_size, size, 1);
17575:         xmlResetLastError();
17576:         if (mem_base != xmlMemBlocks()) {
17577:             printf("Leak of %d blocks found in xmlRelaxNGNewMemParserCtxt",
17578: 	           xmlMemBlocks() - mem_base);
17579: 	    test_ret++;
17580:             printf(" %d", n_buffer);
17581:             printf(" %d", n_size);
17582:             printf("\n");
17583:         }
17584:     }
17585:     }
17586:     function_tests++;
17587: #endif
17588: 
17589:     return(test_ret);
17590: }
17591: 
17592: 
17593: static int
17594: test_xmlRelaxNGNewParserCtxt(void) {
17595:     int test_ret = 0;
17596: 
17597: #if defined(LIBXML_SCHEMAS_ENABLED)
17598:     int mem_base;
17599:     xmlRelaxNGParserCtxtPtr ret_val;
17600:     char * URL; /* the location of the schema */
17601:     int n_URL;
17602: 
17603:     for (n_URL = 0;n_URL < gen_nb_const_char_ptr;n_URL++) {
17604:         mem_base = xmlMemBlocks();
17605:         URL = gen_const_char_ptr(n_URL, 0);
17606: 
17607:         ret_val = xmlRelaxNGNewParserCtxt((const char *)URL);
17608:         desret_xmlRelaxNGParserCtxtPtr(ret_val);
17609:         call_tests++;
17610:         des_const_char_ptr(n_URL, (const char *)URL, 0);
17611:         xmlResetLastError();
17612:         if (mem_base != xmlMemBlocks()) {
17613:             printf("Leak of %d blocks found in xmlRelaxNGNewParserCtxt",
17614: 	           xmlMemBlocks() - mem_base);
17615: 	    test_ret++;
17616:             printf(" %d", n_URL);
17617:             printf("\n");
17618:         }
17619:     }
17620:     function_tests++;
17621: #endif
17622: 
17623:     return(test_ret);
17624: }
17625: 
17626: 
17627: static int
17628: test_xmlRelaxNGNewValidCtxt(void) {
17629:     int test_ret = 0;
17630: 
17631: 
17632:     /* missing type support */
17633:     return(test_ret);
17634: }
17635: 
17636: 
17637: static int
17638: test_xmlRelaxNGParse(void) {
17639:     int test_ret = 0;
17640: 
17641: 
17642:     /* missing type support */
17643:     return(test_ret);
17644: }
17645: 
17646: 
17647: static int
17648: test_xmlRelaxNGSetParserErrors(void) {
17649:     int test_ret = 0;
17650: 
17651: 
17652:     /* missing type support */
17653:     return(test_ret);
17654: }
17655: 
17656: 
17657: static int
17658: test_xmlRelaxNGSetParserStructuredErrors(void) {
17659:     int test_ret = 0;
17660: 
17661: 
17662:     /* missing type support */
17663:     return(test_ret);
17664: }
17665: 
17666: 
17667: static int
17668: test_xmlRelaxNGSetValidErrors(void) {
17669:     int test_ret = 0;
17670: 
17671: 
17672:     /* missing type support */
17673:     return(test_ret);
17674: }
17675: 
17676: 
17677: static int
17678: test_xmlRelaxNGSetValidStructuredErrors(void) {
17679:     int test_ret = 0;
17680: 
17681: 
17682:     /* missing type support */
17683:     return(test_ret);
17684: }
17685: 
17686: 
17687: static int
17688: test_xmlRelaxNGValidateDoc(void) {
17689:     int test_ret = 0;
17690: 
17691: #if defined(LIBXML_SCHEMAS_ENABLED)
17692:     int mem_base;
17693:     int ret_val;
17694:     xmlRelaxNGValidCtxtPtr ctxt; /* a Relax-NG validation context */
17695:     int n_ctxt;
17696:     xmlDocPtr doc; /* a parsed document tree */
17697:     int n_doc;
17698: 
17699:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlRelaxNGValidCtxtPtr;n_ctxt++) {
17700:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
17701:         mem_base = xmlMemBlocks();
17702:         ctxt = gen_xmlRelaxNGValidCtxtPtr(n_ctxt, 0);
17703:         doc = gen_xmlDocPtr(n_doc, 1);
17704: 
17705:         ret_val = xmlRelaxNGValidateDoc(ctxt, doc);
17706:         desret_int(ret_val);
17707:         call_tests++;
17708:         des_xmlRelaxNGValidCtxtPtr(n_ctxt, ctxt, 0);
17709:         des_xmlDocPtr(n_doc, doc, 1);
17710:         xmlResetLastError();
17711:         if (mem_base != xmlMemBlocks()) {
17712:             printf("Leak of %d blocks found in xmlRelaxNGValidateDoc",
17713: 	           xmlMemBlocks() - mem_base);
17714: 	    test_ret++;
17715:             printf(" %d", n_ctxt);
17716:             printf(" %d", n_doc);
17717:             printf("\n");
17718:         }
17719:     }
17720:     }
17721:     function_tests++;
17722: #endif
17723: 
17724:     return(test_ret);
17725: }
17726: 
17727: 
17728: static int
17729: test_xmlRelaxNGValidateFullElement(void) {
17730:     int test_ret = 0;
17731: 
17732: #if defined(LIBXML_SCHEMAS_ENABLED)
17733:     int mem_base;
17734:     int ret_val;
17735:     xmlRelaxNGValidCtxtPtr ctxt; /* the validation context */
17736:     int n_ctxt;
17737:     xmlDocPtr doc; /* a document instance */
17738:     int n_doc;
17739:     xmlNodePtr elem; /* an element instance */
17740:     int n_elem;
17741: 
17742:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlRelaxNGValidCtxtPtr;n_ctxt++) {
17743:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
17744:     for (n_elem = 0;n_elem < gen_nb_xmlNodePtr;n_elem++) {
17745:         mem_base = xmlMemBlocks();
17746:         ctxt = gen_xmlRelaxNGValidCtxtPtr(n_ctxt, 0);
17747:         doc = gen_xmlDocPtr(n_doc, 1);
17748:         elem = gen_xmlNodePtr(n_elem, 2);
17749: 
17750:         ret_val = xmlRelaxNGValidateFullElement(ctxt, doc, elem);
17751:         desret_int(ret_val);
17752:         call_tests++;
17753:         des_xmlRelaxNGValidCtxtPtr(n_ctxt, ctxt, 0);
17754:         des_xmlDocPtr(n_doc, doc, 1);
17755:         des_xmlNodePtr(n_elem, elem, 2);
17756:         xmlResetLastError();
17757:         if (mem_base != xmlMemBlocks()) {
17758:             printf("Leak of %d blocks found in xmlRelaxNGValidateFullElement",
17759: 	           xmlMemBlocks() - mem_base);
17760: 	    test_ret++;
17761:             printf(" %d", n_ctxt);
17762:             printf(" %d", n_doc);
17763:             printf(" %d", n_elem);
17764:             printf("\n");
17765:         }
17766:     }
17767:     }
17768:     }
17769:     function_tests++;
17770: #endif
17771: 
17772:     return(test_ret);
17773: }
17774: 
17775: 
17776: static int
17777: test_xmlRelaxNGValidatePopElement(void) {
17778:     int test_ret = 0;
17779: 
17780: #if defined(LIBXML_SCHEMAS_ENABLED)
17781:     int mem_base;
17782:     int ret_val;
17783:     xmlRelaxNGValidCtxtPtr ctxt; /* the RelaxNG validation context */
17784:     int n_ctxt;
17785:     xmlDocPtr doc; /* a document instance */
17786:     int n_doc;
17787:     xmlNodePtr elem; /* an element instance */
17788:     int n_elem;
17789: 
17790:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlRelaxNGValidCtxtPtr;n_ctxt++) {
17791:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
17792:     for (n_elem = 0;n_elem < gen_nb_xmlNodePtr;n_elem++) {
17793:         mem_base = xmlMemBlocks();
17794:         ctxt = gen_xmlRelaxNGValidCtxtPtr(n_ctxt, 0);
17795:         doc = gen_xmlDocPtr(n_doc, 1);
17796:         elem = gen_xmlNodePtr(n_elem, 2);
17797: 
17798:         ret_val = xmlRelaxNGValidatePopElement(ctxt, doc, elem);
17799:         desret_int(ret_val);
17800:         call_tests++;
17801:         des_xmlRelaxNGValidCtxtPtr(n_ctxt, ctxt, 0);
17802:         des_xmlDocPtr(n_doc, doc, 1);
17803:         des_xmlNodePtr(n_elem, elem, 2);
17804:         xmlResetLastError();
17805:         if (mem_base != xmlMemBlocks()) {
17806:             printf("Leak of %d blocks found in xmlRelaxNGValidatePopElement",
17807: 	           xmlMemBlocks() - mem_base);
17808: 	    test_ret++;
17809:             printf(" %d", n_ctxt);
17810:             printf(" %d", n_doc);
17811:             printf(" %d", n_elem);
17812:             printf("\n");
17813:         }
17814:     }
17815:     }
17816:     }
17817:     function_tests++;
17818: #endif
17819: 
17820:     return(test_ret);
17821: }
17822: 
17823: 
17824: static int
17825: test_xmlRelaxNGValidatePushCData(void) {
17826:     int test_ret = 0;
17827: 
17828: #if defined(LIBXML_SCHEMAS_ENABLED)
17829:     int mem_base;
17830:     int ret_val;
17831:     xmlRelaxNGValidCtxtPtr ctxt; /* the RelaxNG validation context */
17832:     int n_ctxt;
17833:     xmlChar * data; /* some character data read */
17834:     int n_data;
17835:     int len; /* the length of the data */
17836:     int n_len;
17837: 
17838:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlRelaxNGValidCtxtPtr;n_ctxt++) {
17839:     for (n_data = 0;n_data < gen_nb_const_xmlChar_ptr;n_data++) {
17840:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
17841:         mem_base = xmlMemBlocks();
17842:         ctxt = gen_xmlRelaxNGValidCtxtPtr(n_ctxt, 0);
17843:         data = gen_const_xmlChar_ptr(n_data, 1);
17844:         len = gen_int(n_len, 2);
17845: 
17846:         ret_val = xmlRelaxNGValidatePushCData(ctxt, (const xmlChar *)data, len);
17847:         desret_int(ret_val);
17848:         call_tests++;
17849:         des_xmlRelaxNGValidCtxtPtr(n_ctxt, ctxt, 0);
17850:         des_const_xmlChar_ptr(n_data, (const xmlChar *)data, 1);
17851:         des_int(n_len, len, 2);
17852:         xmlResetLastError();
17853:         if (mem_base != xmlMemBlocks()) {
17854:             printf("Leak of %d blocks found in xmlRelaxNGValidatePushCData",
17855: 	           xmlMemBlocks() - mem_base);
17856: 	    test_ret++;
17857:             printf(" %d", n_ctxt);
17858:             printf(" %d", n_data);
17859:             printf(" %d", n_len);
17860:             printf("\n");
17861:         }
17862:     }
17863:     }
17864:     }
17865:     function_tests++;
17866: #endif
17867: 
17868:     return(test_ret);
17869: }
17870: 
17871: 
17872: static int
17873: test_xmlRelaxNGValidatePushElement(void) {
17874:     int test_ret = 0;
17875: 
17876: #if defined(LIBXML_SCHEMAS_ENABLED)
17877:     int mem_base;
17878:     int ret_val;
17879:     xmlRelaxNGValidCtxtPtr ctxt; /* the validation context */
17880:     int n_ctxt;
17881:     xmlDocPtr doc; /* a document instance */
17882:     int n_doc;
17883:     xmlNodePtr elem; /* an element instance */
17884:     int n_elem;
17885: 
17886:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlRelaxNGValidCtxtPtr;n_ctxt++) {
17887:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
17888:     for (n_elem = 0;n_elem < gen_nb_xmlNodePtr;n_elem++) {
17889:         mem_base = xmlMemBlocks();
17890:         ctxt = gen_xmlRelaxNGValidCtxtPtr(n_ctxt, 0);
17891:         doc = gen_xmlDocPtr(n_doc, 1);
17892:         elem = gen_xmlNodePtr(n_elem, 2);
17893: 
17894:         ret_val = xmlRelaxNGValidatePushElement(ctxt, doc, elem);
17895:         desret_int(ret_val);
17896:         call_tests++;
17897:         des_xmlRelaxNGValidCtxtPtr(n_ctxt, ctxt, 0);
17898:         des_xmlDocPtr(n_doc, doc, 1);
17899:         des_xmlNodePtr(n_elem, elem, 2);
17900:         xmlResetLastError();
17901:         if (mem_base != xmlMemBlocks()) {
17902:             printf("Leak of %d blocks found in xmlRelaxNGValidatePushElement",
17903: 	           xmlMemBlocks() - mem_base);
17904: 	    test_ret++;
17905:             printf(" %d", n_ctxt);
17906:             printf(" %d", n_doc);
17907:             printf(" %d", n_elem);
17908:             printf("\n");
17909:         }
17910:     }
17911:     }
17912:     }
17913:     function_tests++;
17914: #endif
17915: 
17916:     return(test_ret);
17917: }
17918: 
17919: 
17920: static int
17921: test_xmlRelaxParserSetFlag(void) {
17922:     int test_ret = 0;
17923: 
17924: #if defined(LIBXML_SCHEMAS_ENABLED)
17925:     int mem_base;
17926:     int ret_val;
17927:     xmlRelaxNGParserCtxtPtr ctxt; /* a RelaxNG parser context */
17928:     int n_ctxt;
17929:     int flags; /* a set of flags values */
17930:     int n_flags;
17931: 
17932:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlRelaxNGParserCtxtPtr;n_ctxt++) {
17933:     for (n_flags = 0;n_flags < gen_nb_int;n_flags++) {
17934:         mem_base = xmlMemBlocks();
17935:         ctxt = gen_xmlRelaxNGParserCtxtPtr(n_ctxt, 0);
17936:         flags = gen_int(n_flags, 1);
17937: 
17938:         ret_val = xmlRelaxParserSetFlag(ctxt, flags);
17939:         desret_int(ret_val);
17940:         call_tests++;
17941:         des_xmlRelaxNGParserCtxtPtr(n_ctxt, ctxt, 0);
17942:         des_int(n_flags, flags, 1);
17943:         xmlResetLastError();
17944:         if (mem_base != xmlMemBlocks()) {
17945:             printf("Leak of %d blocks found in xmlRelaxParserSetFlag",
17946: 	           xmlMemBlocks() - mem_base);
17947: 	    test_ret++;
17948:             printf(" %d", n_ctxt);
17949:             printf(" %d", n_flags);
17950:             printf("\n");
17951:         }
17952:     }
17953:     }
17954:     function_tests++;
17955: #endif
17956: 
17957:     return(test_ret);
17958: }
17959: 
17960: static int
17961: test_relaxng(void) {
17962:     int test_ret = 0;
17963: 
17964:     if (quiet == 0) printf("Testing relaxng : 14 of 24 functions ...\n");
17965:     test_ret += test_xmlRelaxNGDump();
17966:     test_ret += test_xmlRelaxNGDumpTree();
17967:     test_ret += test_xmlRelaxNGGetParserErrors();
17968:     test_ret += test_xmlRelaxNGGetValidErrors();
17969:     test_ret += test_xmlRelaxNGInitTypes();
17970:     test_ret += test_xmlRelaxNGNewDocParserCtxt();
17971:     test_ret += test_xmlRelaxNGNewMemParserCtxt();
17972:     test_ret += test_xmlRelaxNGNewParserCtxt();
17973:     test_ret += test_xmlRelaxNGNewValidCtxt();
17974:     test_ret += test_xmlRelaxNGParse();
17975:     test_ret += test_xmlRelaxNGSetParserErrors();
17976:     test_ret += test_xmlRelaxNGSetParserStructuredErrors();
17977:     test_ret += test_xmlRelaxNGSetValidErrors();
17978:     test_ret += test_xmlRelaxNGSetValidStructuredErrors();
17979:     test_ret += test_xmlRelaxNGValidateDoc();
17980:     test_ret += test_xmlRelaxNGValidateFullElement();
17981:     test_ret += test_xmlRelaxNGValidatePopElement();
17982:     test_ret += test_xmlRelaxNGValidatePushCData();
17983:     test_ret += test_xmlRelaxNGValidatePushElement();
17984:     test_ret += test_xmlRelaxParserSetFlag();
17985: 
17986:     if (test_ret != 0)
17987: 	printf("Module relaxng: %d errors\n", test_ret);
17988:     return(test_ret);
17989: }
17990: static int
17991: test_schemasInternals(void) {
17992:     int test_ret = 0;
17993: 
17994:     if (quiet == 0) printf("Testing schemasInternals : 0 of 2 functions ...\n");
17995: 
17996:     if (test_ret != 0)
17997: 	printf("Module schemasInternals: %d errors\n", test_ret);
17998:     return(test_ret);
17999: }
18000: 
18001: static int
18002: test_xmlSchematronNewDocParserCtxt(void) {
18003:     int test_ret = 0;
18004: 
18005: 
18006:     /* missing type support */
18007:     return(test_ret);
18008: }
18009: 
18010: 
18011: static int
18012: test_xmlSchematronNewMemParserCtxt(void) {
18013:     int test_ret = 0;
18014: 
18015: 
18016:     /* missing type support */
18017:     return(test_ret);
18018: }
18019: 
18020: 
18021: static int
18022: test_xmlSchematronNewParserCtxt(void) {
18023:     int test_ret = 0;
18024: 
18025: 
18026:     /* missing type support */
18027:     return(test_ret);
18028: }
18029: 
18030: #ifdef LIBXML_SCHEMATRON_ENABLED
18031: 
18032: #define gen_nb_xmlSchematronPtr 1
18033: static xmlSchematronPtr gen_xmlSchematronPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
18034:     return(NULL);
18035: }
18036: static void des_xmlSchematronPtr(int no ATTRIBUTE_UNUSED, xmlSchematronPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
18037: }
18038: #endif
18039: 
18040: 
18041: static int
18042: test_xmlSchematronNewValidCtxt(void) {
18043:     int test_ret = 0;
18044: 
18045: 
18046:     /* missing type support */
18047:     return(test_ret);
18048: }
18049: 
18050: #ifdef LIBXML_SCHEMATRON_ENABLED
18051: 
18052: #define gen_nb_xmlSchematronParserCtxtPtr 1
18053: static xmlSchematronParserCtxtPtr gen_xmlSchematronParserCtxtPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
18054:     return(NULL);
18055: }
18056: static void des_xmlSchematronParserCtxtPtr(int no ATTRIBUTE_UNUSED, xmlSchematronParserCtxtPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
18057: }
18058: #endif
18059: 
18060: 
18061: static int
18062: test_xmlSchematronParse(void) {
18063:     int test_ret = 0;
18064: 
18065: 
18066:     /* missing type support */
18067:     return(test_ret);
18068: }
18069: 
18070: #ifdef LIBXML_SCHEMATRON_ENABLED
18071: 
18072: #define gen_nb_xmlSchematronValidCtxtPtr 1
18073: static xmlSchematronValidCtxtPtr gen_xmlSchematronValidCtxtPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
18074:     return(NULL);
18075: }
18076: static void des_xmlSchematronValidCtxtPtr(int no ATTRIBUTE_UNUSED, xmlSchematronValidCtxtPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
18077: }
18078: #endif
18079: 
18080: 
18081: static int
18082: test_xmlSchematronSetValidStructuredErrors(void) {
18083:     int test_ret = 0;
18084: 
18085: 
18086:     /* missing type support */
18087:     return(test_ret);
18088: }
18089: 
18090: 
18091: static int
18092: test_xmlSchematronValidateDoc(void) {
18093:     int test_ret = 0;
18094: 
18095: #if defined(LIBXML_SCHEMATRON_ENABLED)
18096:     int mem_base;
18097:     int ret_val;
18098:     xmlSchematronValidCtxtPtr ctxt; /* the schema validation context */
18099:     int n_ctxt;
18100:     xmlDocPtr instance; /* the document instace tree */
18101:     int n_instance;
18102: 
18103:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlSchematronValidCtxtPtr;n_ctxt++) {
18104:     for (n_instance = 0;n_instance < gen_nb_xmlDocPtr;n_instance++) {
18105:         mem_base = xmlMemBlocks();
18106:         ctxt = gen_xmlSchematronValidCtxtPtr(n_ctxt, 0);
18107:         instance = gen_xmlDocPtr(n_instance, 1);
18108: 
18109:         ret_val = xmlSchematronValidateDoc(ctxt, instance);
18110:         desret_int(ret_val);
18111:         call_tests++;
18112:         des_xmlSchematronValidCtxtPtr(n_ctxt, ctxt, 0);
18113:         des_xmlDocPtr(n_instance, instance, 1);
18114:         xmlResetLastError();
18115:         if (mem_base != xmlMemBlocks()) {
18116:             printf("Leak of %d blocks found in xmlSchematronValidateDoc",
18117: 	           xmlMemBlocks() - mem_base);
18118: 	    test_ret++;
18119:             printf(" %d", n_ctxt);
18120:             printf(" %d", n_instance);
18121:             printf("\n");
18122:         }
18123:     }
18124:     }
18125:     function_tests++;
18126: #endif
18127: 
18128:     return(test_ret);
18129: }
18130: 
18131: static int
18132: test_schematron(void) {
18133:     int test_ret = 0;
18134: 
18135:     if (quiet == 0) printf("Testing schematron : 1 of 10 functions ...\n");
18136:     test_ret += test_xmlSchematronNewDocParserCtxt();
18137:     test_ret += test_xmlSchematronNewMemParserCtxt();
18138:     test_ret += test_xmlSchematronNewParserCtxt();
18139:     test_ret += test_xmlSchematronNewValidCtxt();
18140:     test_ret += test_xmlSchematronParse();
18141:     test_ret += test_xmlSchematronSetValidStructuredErrors();
18142:     test_ret += test_xmlSchematronValidateDoc();
18143: 
18144:     if (test_ret != 0)
18145: 	printf("Module schematron: %d errors\n", test_ret);
18146:     return(test_ret);
18147: }
18148: 
18149: static int
18150: test_xmlAddChild(void) {
18151:     int test_ret = 0;
18152: 
18153:     int mem_base;
18154:     xmlNodePtr ret_val;
18155:     xmlNodePtr parent; /* the parent node */
18156:     int n_parent;
18157:     xmlNodePtr cur; /* the child node */
18158:     int n_cur;
18159: 
18160:     for (n_parent = 0;n_parent < gen_nb_xmlNodePtr;n_parent++) {
18161:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr_in;n_cur++) {
18162:         mem_base = xmlMemBlocks();
18163:         parent = gen_xmlNodePtr(n_parent, 0);
18164:         cur = gen_xmlNodePtr_in(n_cur, 1);
18165: 
18166:         ret_val = xmlAddChild(parent, cur);
18167:         if (ret_val == NULL) { xmlFreeNode(cur) ; cur = NULL ; }
18168:         desret_xmlNodePtr(ret_val);
18169:         call_tests++;
18170:         des_xmlNodePtr(n_parent, parent, 0);
18171:         des_xmlNodePtr_in(n_cur, cur, 1);
18172:         xmlResetLastError();
18173:         if (mem_base != xmlMemBlocks()) {
18174:             printf("Leak of %d blocks found in xmlAddChild",
18175: 	           xmlMemBlocks() - mem_base);
18176: 	    test_ret++;
18177:             printf(" %d", n_parent);
18178:             printf(" %d", n_cur);
18179:             printf("\n");
18180:         }
18181:     }
18182:     }
18183:     function_tests++;
18184: 
18185:     return(test_ret);
18186: }
18187: 
18188: 
18189: static int
18190: test_xmlAddChildList(void) {
18191:     int test_ret = 0;
18192: 
18193:     int mem_base;
18194:     xmlNodePtr ret_val;
18195:     xmlNodePtr parent; /* the parent node */
18196:     int n_parent;
18197:     xmlNodePtr cur; /* the first node in the list */
18198:     int n_cur;
18199: 
18200:     for (n_parent = 0;n_parent < gen_nb_xmlNodePtr;n_parent++) {
18201:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr_in;n_cur++) {
18202:         mem_base = xmlMemBlocks();
18203:         parent = gen_xmlNodePtr(n_parent, 0);
18204:         cur = gen_xmlNodePtr_in(n_cur, 1);
18205: 
18206:         ret_val = xmlAddChildList(parent, cur);
18207:         if (ret_val == NULL) { xmlFreeNodeList(cur) ; cur = NULL ; }
18208:         desret_xmlNodePtr(ret_val);
18209:         call_tests++;
18210:         des_xmlNodePtr(n_parent, parent, 0);
18211:         des_xmlNodePtr_in(n_cur, cur, 1);
18212:         xmlResetLastError();
18213:         if (mem_base != xmlMemBlocks()) {
18214:             printf("Leak of %d blocks found in xmlAddChildList",
18215: 	           xmlMemBlocks() - mem_base);
18216: 	    test_ret++;
18217:             printf(" %d", n_parent);
18218:             printf(" %d", n_cur);
18219:             printf("\n");
18220:         }
18221:     }
18222:     }
18223:     function_tests++;
18224: 
18225:     return(test_ret);
18226: }
18227: 
18228: 
18229: static int
18230: test_xmlAddNextSibling(void) {
18231:     int test_ret = 0;
18232: 
18233:     int mem_base;
18234:     xmlNodePtr ret_val;
18235:     xmlNodePtr cur; /* the child node */
18236:     int n_cur;
18237:     xmlNodePtr elem; /* the new node */
18238:     int n_elem;
18239: 
18240:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
18241:     for (n_elem = 0;n_elem < gen_nb_xmlNodePtr_in;n_elem++) {
18242:         mem_base = xmlMemBlocks();
18243:         cur = gen_xmlNodePtr(n_cur, 0);
18244:         elem = gen_xmlNodePtr_in(n_elem, 1);
18245: 
18246:         ret_val = xmlAddNextSibling(cur, elem);
18247:         if (ret_val == NULL) { xmlFreeNode(elem) ; elem = NULL ; }
18248:         desret_xmlNodePtr(ret_val);
18249:         call_tests++;
18250:         des_xmlNodePtr(n_cur, cur, 0);
18251:         des_xmlNodePtr_in(n_elem, elem, 1);
18252:         xmlResetLastError();
18253:         if (mem_base != xmlMemBlocks()) {
18254:             printf("Leak of %d blocks found in xmlAddNextSibling",
18255: 	           xmlMemBlocks() - mem_base);
18256: 	    test_ret++;
18257:             printf(" %d", n_cur);
18258:             printf(" %d", n_elem);
18259:             printf("\n");
18260:         }
18261:     }
18262:     }
18263:     function_tests++;
18264: 
18265:     return(test_ret);
18266: }
18267: 
18268: 
18269: static int
18270: test_xmlAddPrevSibling(void) {
18271:     int test_ret = 0;
18272: 
18273: #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
18274:     int mem_base;
18275:     xmlNodePtr ret_val;
18276:     xmlNodePtr cur; /* the child node */
18277:     int n_cur;
18278:     xmlNodePtr elem; /* the new node */
18279:     int n_elem;
18280: 
18281:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
18282:     for (n_elem = 0;n_elem < gen_nb_xmlNodePtr_in;n_elem++) {
18283:         mem_base = xmlMemBlocks();
18284:         cur = gen_xmlNodePtr(n_cur, 0);
18285:         elem = gen_xmlNodePtr_in(n_elem, 1);
18286: 
18287:         ret_val = xmlAddPrevSibling(cur, elem);
18288:         if (ret_val == NULL) { xmlFreeNode(elem) ; elem = NULL ; }
18289:         desret_xmlNodePtr(ret_val);
18290:         call_tests++;
18291:         des_xmlNodePtr(n_cur, cur, 0);
18292:         des_xmlNodePtr_in(n_elem, elem, 1);
18293:         xmlResetLastError();
18294:         if (mem_base != xmlMemBlocks()) {
18295:             printf("Leak of %d blocks found in xmlAddPrevSibling",
18296: 	           xmlMemBlocks() - mem_base);
18297: 	    test_ret++;
18298:             printf(" %d", n_cur);
18299:             printf(" %d", n_elem);
18300:             printf("\n");
18301:         }
18302:     }
18303:     }
18304:     function_tests++;
18305: #endif
18306: 
18307:     return(test_ret);
18308: }
18309: 
18310: 
18311: static int
18312: test_xmlAddSibling(void) {
18313:     int test_ret = 0;
18314: 
18315:     int mem_base;
18316:     xmlNodePtr ret_val;
18317:     xmlNodePtr cur; /* the child node */
18318:     int n_cur;
18319:     xmlNodePtr elem; /* the new node */
18320:     int n_elem;
18321: 
18322:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
18323:     for (n_elem = 0;n_elem < gen_nb_xmlNodePtr_in;n_elem++) {
18324:         mem_base = xmlMemBlocks();
18325:         cur = gen_xmlNodePtr(n_cur, 0);
18326:         elem = gen_xmlNodePtr_in(n_elem, 1);
18327: 
18328:         ret_val = xmlAddSibling(cur, elem);
18329:         if (ret_val == NULL) { xmlFreeNode(elem) ; elem = NULL ; }
18330:         desret_xmlNodePtr(ret_val);
18331:         call_tests++;
18332:         des_xmlNodePtr(n_cur, cur, 0);
18333:         des_xmlNodePtr_in(n_elem, elem, 1);
18334:         xmlResetLastError();
18335:         if (mem_base != xmlMemBlocks()) {
18336:             printf("Leak of %d blocks found in xmlAddSibling",
18337: 	           xmlMemBlocks() - mem_base);
18338: 	    test_ret++;
18339:             printf(" %d", n_cur);
18340:             printf(" %d", n_elem);
18341:             printf("\n");
18342:         }
18343:     }
18344:     }
18345:     function_tests++;
18346: 
18347:     return(test_ret);
18348: }
18349: 
18350: 
18351: static int
18352: test_xmlAttrSerializeTxtContent(void) {
18353:     int test_ret = 0;
18354: 
18355: #if defined(LIBXML_OUTPUT_ENABLED)
18356: #ifdef LIBXML_OUTPUT_ENABLED
18357:     int mem_base;
18358:     xmlBufferPtr buf; /* the XML buffer output */
18359:     int n_buf;
18360:     xmlDocPtr doc; /* the document */
18361:     int n_doc;
18362:     xmlAttrPtr attr; /* the attribute node */
18363:     int n_attr;
18364:     xmlChar * string; /* the text content */
18365:     int n_string;
18366: 
18367:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
18368:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
18369:     for (n_attr = 0;n_attr < gen_nb_xmlAttrPtr;n_attr++) {
18370:     for (n_string = 0;n_string < gen_nb_const_xmlChar_ptr;n_string++) {
18371:         mem_base = xmlMemBlocks();
18372:         buf = gen_xmlBufferPtr(n_buf, 0);
18373:         doc = gen_xmlDocPtr(n_doc, 1);
18374:         attr = gen_xmlAttrPtr(n_attr, 2);
18375:         string = gen_const_xmlChar_ptr(n_string, 3);
18376: 
18377:         xmlAttrSerializeTxtContent(buf, doc, attr, (const xmlChar *)string);
18378:         call_tests++;
18379:         des_xmlBufferPtr(n_buf, buf, 0);
18380:         des_xmlDocPtr(n_doc, doc, 1);
18381:         des_xmlAttrPtr(n_attr, attr, 2);
18382:         des_const_xmlChar_ptr(n_string, (const xmlChar *)string, 3);
18383:         xmlResetLastError();
18384:         if (mem_base != xmlMemBlocks()) {
18385:             printf("Leak of %d blocks found in xmlAttrSerializeTxtContent",
18386: 	           xmlMemBlocks() - mem_base);
18387: 	    test_ret++;
18388:             printf(" %d", n_buf);
18389:             printf(" %d", n_doc);
18390:             printf(" %d", n_attr);
18391:             printf(" %d", n_string);
18392:             printf("\n");
18393:         }
18394:     }
18395:     }
18396:     }
18397:     }
18398:     function_tests++;
18399: #endif
18400: #endif
18401: 
18402:     return(test_ret);
18403: }
18404: 
18405: 
18406: #define gen_nb_const_xmlBufPtr 1
18407: static xmlBufPtr gen_const_xmlBufPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
18408:     return(NULL);
18409: }
18410: static void des_const_xmlBufPtr(int no ATTRIBUTE_UNUSED, const xmlBufPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
18411: }
18412: 
18413: static int
18414: test_xmlBufContent(void) {
18415:     int test_ret = 0;
18416: 
18417:     int mem_base;
18418:     xmlChar * ret_val;
18419:     xmlBufPtr buf; /* the buffer */
18420:     int n_buf;
18421: 
18422:     for (n_buf = 0;n_buf < gen_nb_const_xmlBufPtr;n_buf++) {
18423:         mem_base = xmlMemBlocks();
18424:         buf = gen_const_xmlBufPtr(n_buf, 0);
18425: 
18426:         ret_val = xmlBufContent((const xmlBufPtr)buf);
18427:         desret_xmlChar_ptr(ret_val);
18428:         call_tests++;
18429:         des_const_xmlBufPtr(n_buf, (const xmlBufPtr)buf, 0);
18430:         xmlResetLastError();
18431:         if (mem_base != xmlMemBlocks()) {
18432:             printf("Leak of %d blocks found in xmlBufContent",
18433: 	           xmlMemBlocks() - mem_base);
18434: 	    test_ret++;
18435:             printf(" %d", n_buf);
18436:             printf("\n");
18437:         }
18438:     }
18439:     function_tests++;
18440: 
18441:     return(test_ret);
18442: }
18443: 
18444: 
18445: static int
18446: test_xmlBufEnd(void) {
18447:     int test_ret = 0;
18448: 
18449:     int mem_base;
18450:     xmlChar * ret_val;
18451:     xmlBufPtr buf; /* the buffer */
18452:     int n_buf;
18453: 
18454:     for (n_buf = 0;n_buf < gen_nb_const_xmlBufPtr;n_buf++) {
18455:         mem_base = xmlMemBlocks();
18456:         buf = gen_const_xmlBufPtr(n_buf, 0);
18457: 
18458:         ret_val = xmlBufEnd((const xmlBufPtr)buf);
18459:         desret_xmlChar_ptr(ret_val);
18460:         call_tests++;
18461:         des_const_xmlBufPtr(n_buf, (const xmlBufPtr)buf, 0);
18462:         xmlResetLastError();
18463:         if (mem_base != xmlMemBlocks()) {
18464:             printf("Leak of %d blocks found in xmlBufEnd",
18465: 	           xmlMemBlocks() - mem_base);
18466: 	    test_ret++;
18467:             printf(" %d", n_buf);
18468:             printf("\n");
18469:         }
18470:     }
18471:     function_tests++;
18472: 
18473:     return(test_ret);
18474: }
18475: 
18476: 
18477: #define gen_nb_xmlBufPtr 1
18478: static xmlBufPtr gen_xmlBufPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
18479:     return(NULL);
18480: }
18481: static void des_xmlBufPtr(int no ATTRIBUTE_UNUSED, xmlBufPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
18482: }
18483: 
18484: static int
18485: test_xmlBufGetNodeContent(void) {
18486:     int test_ret = 0;
18487: 
18488:     int mem_base;
18489:     int ret_val;
18490:     xmlBufPtr buf; /* a buffer xmlBufPtr */
18491:     int n_buf;
18492:     xmlNodePtr cur; /* the node being read */
18493:     int n_cur;
18494: 
18495:     for (n_buf = 0;n_buf < gen_nb_xmlBufPtr;n_buf++) {
18496:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
18497:         mem_base = xmlMemBlocks();
18498:         buf = gen_xmlBufPtr(n_buf, 0);
18499:         cur = gen_xmlNodePtr(n_cur, 1);
18500: 
18501:         ret_val = xmlBufGetNodeContent(buf, cur);
18502:         desret_int(ret_val);
18503:         call_tests++;
18504:         des_xmlBufPtr(n_buf, buf, 0);
18505:         des_xmlNodePtr(n_cur, cur, 1);
18506:         xmlResetLastError();
18507:         if (mem_base != xmlMemBlocks()) {
18508:             printf("Leak of %d blocks found in xmlBufGetNodeContent",
18509: 	           xmlMemBlocks() - mem_base);
18510: 	    test_ret++;
18511:             printf(" %d", n_buf);
18512:             printf(" %d", n_cur);
18513:             printf("\n");
18514:         }
18515:     }
18516:     }
18517:     function_tests++;
18518: 
18519:     return(test_ret);
18520: }
18521: 
18522: 
18523: static int
18524: test_xmlBufNodeDump(void) {
18525:     int test_ret = 0;
18526: 
18527: 
18528:     /* missing type support */
18529:     return(test_ret);
18530: }
18531: 
18532: 
18533: static int
18534: test_xmlBufShrink(void) {
18535:     int test_ret = 0;
18536: 
18537: 
18538:     /* missing type support */
18539:     return(test_ret);
18540: }
18541: 
18542: 
18543: static int
18544: test_xmlBufUse(void) {
18545:     int test_ret = 0;
18546: 
18547: 
18548:     /* missing type support */
18549:     return(test_ret);
18550: }
18551: 
18552: 
18553: static int
18554: test_xmlBufferAdd(void) {
18555:     int test_ret = 0;
18556: 
18557:     int mem_base;
18558:     int ret_val;
18559:     xmlBufferPtr buf; /* the buffer to dump */
18560:     int n_buf;
18561:     xmlChar * str; /* the #xmlChar string */
18562:     int n_str;
18563:     int len; /* the number of #xmlChar to add */
18564:     int n_len;
18565: 
18566:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
18567:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
18568:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
18569:         mem_base = xmlMemBlocks();
18570:         buf = gen_xmlBufferPtr(n_buf, 0);
18571:         str = gen_const_xmlChar_ptr(n_str, 1);
18572:         len = gen_int(n_len, 2);
18573: 
18574:         ret_val = xmlBufferAdd(buf, (const xmlChar *)str, len);
18575:         desret_int(ret_val);
18576:         call_tests++;
18577:         des_xmlBufferPtr(n_buf, buf, 0);
18578:         des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 1);
18579:         des_int(n_len, len, 2);
18580:         xmlResetLastError();
18581:         if (mem_base != xmlMemBlocks()) {
18582:             printf("Leak of %d blocks found in xmlBufferAdd",
18583: 	           xmlMemBlocks() - mem_base);
18584: 	    test_ret++;
18585:             printf(" %d", n_buf);
18586:             printf(" %d", n_str);
18587:             printf(" %d", n_len);
18588:             printf("\n");
18589:         }
18590:     }
18591:     }
18592:     }
18593:     function_tests++;
18594: 
18595:     return(test_ret);
18596: }
18597: 
18598: 
18599: static int
18600: test_xmlBufferAddHead(void) {
18601:     int test_ret = 0;
18602: 
18603:     int mem_base;
18604:     int ret_val;
18605:     xmlBufferPtr buf; /* the buffer */
18606:     int n_buf;
18607:     xmlChar * str; /* the #xmlChar string */
18608:     int n_str;
18609:     int len; /* the number of #xmlChar to add */
18610:     int n_len;
18611: 
18612:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
18613:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
18614:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
18615:         mem_base = xmlMemBlocks();
18616:         buf = gen_xmlBufferPtr(n_buf, 0);
18617:         str = gen_const_xmlChar_ptr(n_str, 1);
18618:         len = gen_int(n_len, 2);
18619: 
18620:         ret_val = xmlBufferAddHead(buf, (const xmlChar *)str, len);
18621:         desret_int(ret_val);
18622:         call_tests++;
18623:         des_xmlBufferPtr(n_buf, buf, 0);
18624:         des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 1);
18625:         des_int(n_len, len, 2);
18626:         xmlResetLastError();
18627:         if (mem_base != xmlMemBlocks()) {
18628:             printf("Leak of %d blocks found in xmlBufferAddHead",
18629: 	           xmlMemBlocks() - mem_base);
18630: 	    test_ret++;
18631:             printf(" %d", n_buf);
18632:             printf(" %d", n_str);
18633:             printf(" %d", n_len);
18634:             printf("\n");
18635:         }
18636:     }
18637:     }
18638:     }
18639:     function_tests++;
18640: 
18641:     return(test_ret);
18642: }
18643: 
18644: 
18645: static int
18646: test_xmlBufferCCat(void) {
18647:     int test_ret = 0;
18648: 
18649:     int mem_base;
18650:     int ret_val;
18651:     xmlBufferPtr buf; /* the buffer to dump */
18652:     int n_buf;
18653:     char * str; /* the C char string */
18654:     int n_str;
18655: 
18656:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
18657:     for (n_str = 0;n_str < gen_nb_const_char_ptr;n_str++) {
18658:         mem_base = xmlMemBlocks();
18659:         buf = gen_xmlBufferPtr(n_buf, 0);
18660:         str = gen_const_char_ptr(n_str, 1);
18661: 
18662:         ret_val = xmlBufferCCat(buf, (const char *)str);
18663:         desret_int(ret_val);
18664:         call_tests++;
18665:         des_xmlBufferPtr(n_buf, buf, 0);
18666:         des_const_char_ptr(n_str, (const char *)str, 1);
18667:         xmlResetLastError();
18668:         if (mem_base != xmlMemBlocks()) {
18669:             printf("Leak of %d blocks found in xmlBufferCCat",
18670: 	           xmlMemBlocks() - mem_base);
18671: 	    test_ret++;
18672:             printf(" %d", n_buf);
18673:             printf(" %d", n_str);
18674:             printf("\n");
18675:         }
18676:     }
18677:     }
18678:     function_tests++;
18679: 
18680:     return(test_ret);
18681: }
18682: 
18683: 
18684: static int
18685: test_xmlBufferCat(void) {
18686:     int test_ret = 0;
18687: 
18688:     int mem_base;
18689:     int ret_val;
18690:     xmlBufferPtr buf; /* the buffer to add to */
18691:     int n_buf;
18692:     xmlChar * str; /* the #xmlChar string */
18693:     int n_str;
18694: 
18695:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
18696:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
18697:         mem_base = xmlMemBlocks();
18698:         buf = gen_xmlBufferPtr(n_buf, 0);
18699:         str = gen_const_xmlChar_ptr(n_str, 1);
18700: 
18701:         ret_val = xmlBufferCat(buf, (const xmlChar *)str);
18702:         desret_int(ret_val);
18703:         call_tests++;
18704:         des_xmlBufferPtr(n_buf, buf, 0);
18705:         des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 1);
18706:         xmlResetLastError();
18707:         if (mem_base != xmlMemBlocks()) {
18708:             printf("Leak of %d blocks found in xmlBufferCat",
18709: 	           xmlMemBlocks() - mem_base);
18710: 	    test_ret++;
18711:             printf(" %d", n_buf);
18712:             printf(" %d", n_str);
18713:             printf("\n");
18714:         }
18715:     }
18716:     }
18717:     function_tests++;
18718: 
18719:     return(test_ret);
18720: }
18721: 
18722: 
18723: #define gen_nb_const_xmlBufferPtr 1
18724: static xmlBufferPtr gen_const_xmlBufferPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
18725:     return(NULL);
18726: }
18727: static void des_const_xmlBufferPtr(int no ATTRIBUTE_UNUSED, const xmlBufferPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
18728: }
18729: 
18730: static int
18731: test_xmlBufferContent(void) {
18732:     int test_ret = 0;
18733: 
18734:     int mem_base;
18735:     const xmlChar * ret_val;
18736:     xmlBufferPtr buf; /* the buffer */
18737:     int n_buf;
18738: 
18739:     for (n_buf = 0;n_buf < gen_nb_const_xmlBufferPtr;n_buf++) {
18740:         mem_base = xmlMemBlocks();
18741:         buf = gen_const_xmlBufferPtr(n_buf, 0);
18742: 
18743:         ret_val = xmlBufferContent((const xmlBufferPtr)buf);
18744:         desret_const_xmlChar_ptr(ret_val);
18745:         call_tests++;
18746:         des_const_xmlBufferPtr(n_buf, (const xmlBufferPtr)buf, 0);
18747:         xmlResetLastError();
18748:         if (mem_base != xmlMemBlocks()) {
18749:             printf("Leak of %d blocks found in xmlBufferContent",
18750: 	           xmlMemBlocks() - mem_base);
18751: 	    test_ret++;
18752:             printf(" %d", n_buf);
18753:             printf("\n");
18754:         }
18755:     }
18756:     function_tests++;
18757: 
18758:     return(test_ret);
18759: }
18760: 
18761: 
18762: static int
18763: test_xmlBufferCreate(void) {
18764:     int test_ret = 0;
18765: 
18766:     int mem_base;
18767:     xmlBufferPtr ret_val;
18768: 
18769:         mem_base = xmlMemBlocks();
18770: 
18771:         ret_val = xmlBufferCreate();
18772:         desret_xmlBufferPtr(ret_val);
18773:         call_tests++;
18774:         xmlResetLastError();
18775:         if (mem_base != xmlMemBlocks()) {
18776:             printf("Leak of %d blocks found in xmlBufferCreate",
18777: 	           xmlMemBlocks() - mem_base);
18778: 	    test_ret++;
18779:             printf("\n");
18780:         }
18781:     function_tests++;
18782: 
18783:     return(test_ret);
18784: }
18785: 
18786: 
18787: static int
18788: test_xmlBufferCreateSize(void) {
18789:     int test_ret = 0;
18790: 
18791: 
18792:     /* missing type support */
18793:     return(test_ret);
18794: }
18795: 
18796: 
18797: static int
18798: test_xmlBufferCreateStatic(void) {
18799:     int test_ret = 0;
18800: 
18801: 
18802:     /* missing type support */
18803:     return(test_ret);
18804: }
18805: 
18806: 
18807: static int
18808: test_xmlBufferDetach(void) {
18809:     int test_ret = 0;
18810: 
18811:     int mem_base;
18812:     xmlChar * ret_val;
18813:     xmlBufferPtr buf; /* the buffer */
18814:     int n_buf;
18815: 
18816:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
18817:         mem_base = xmlMemBlocks();
18818:         buf = gen_xmlBufferPtr(n_buf, 0);
18819: 
18820:         ret_val = xmlBufferDetach(buf);
18821:         desret_xmlChar_ptr(ret_val);
18822:         call_tests++;
18823:         des_xmlBufferPtr(n_buf, buf, 0);
18824:         xmlResetLastError();
18825:         if (mem_base != xmlMemBlocks()) {
18826:             printf("Leak of %d blocks found in xmlBufferDetach",
18827: 	           xmlMemBlocks() - mem_base);
18828: 	    test_ret++;
18829:             printf(" %d", n_buf);
18830:             printf("\n");
18831:         }
18832:     }
18833:     function_tests++;
18834: 
18835:     return(test_ret);
18836: }
18837: 
18838: 
18839: static int
18840: test_xmlBufferEmpty(void) {
18841:     int test_ret = 0;
18842: 
18843:     int mem_base;
18844:     xmlBufferPtr buf; /* the buffer */
18845:     int n_buf;
18846: 
18847:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
18848:         mem_base = xmlMemBlocks();
18849:         buf = gen_xmlBufferPtr(n_buf, 0);
18850: 
18851:         xmlBufferEmpty(buf);
18852:         call_tests++;
18853:         des_xmlBufferPtr(n_buf, buf, 0);
18854:         xmlResetLastError();
18855:         if (mem_base != xmlMemBlocks()) {
18856:             printf("Leak of %d blocks found in xmlBufferEmpty",
18857: 	           xmlMemBlocks() - mem_base);
18858: 	    test_ret++;
18859:             printf(" %d", n_buf);
18860:             printf("\n");
18861:         }
18862:     }
18863:     function_tests++;
18864: 
18865:     return(test_ret);
18866: }
18867: 
18868: 
18869: static int
18870: test_xmlBufferGrow(void) {
18871:     int test_ret = 0;
18872: 
18873:     int mem_base;
18874:     int ret_val;
18875:     xmlBufferPtr buf; /* the buffer */
18876:     int n_buf;
18877:     unsigned int len; /* the minimum free size to allocate */
18878:     int n_len;
18879: 
18880:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
18881:     for (n_len = 0;n_len < gen_nb_unsigned_int;n_len++) {
18882:         mem_base = xmlMemBlocks();
18883:         buf = gen_xmlBufferPtr(n_buf, 0);
18884:         len = gen_unsigned_int(n_len, 1);
18885: 
18886:         ret_val = xmlBufferGrow(buf, len);
18887:         desret_int(ret_val);
18888:         call_tests++;
18889:         des_xmlBufferPtr(n_buf, buf, 0);
18890:         des_unsigned_int(n_len, len, 1);
18891:         xmlResetLastError();
18892:         if (mem_base != xmlMemBlocks()) {
18893:             printf("Leak of %d blocks found in xmlBufferGrow",
18894: 	           xmlMemBlocks() - mem_base);
18895: 	    test_ret++;
18896:             printf(" %d", n_buf);
18897:             printf(" %d", n_len);
18898:             printf("\n");
18899:         }
18900:     }
18901:     }
18902:     function_tests++;
18903: 
18904:     return(test_ret);
18905: }
18906: 
18907: 
18908: static int
18909: test_xmlBufferLength(void) {
18910:     int test_ret = 0;
18911: 
18912:     int mem_base;
18913:     int ret_val;
18914:     xmlBufferPtr buf; /* the buffer */
18915:     int n_buf;
18916: 
18917:     for (n_buf = 0;n_buf < gen_nb_const_xmlBufferPtr;n_buf++) {
18918:         mem_base = xmlMemBlocks();
18919:         buf = gen_const_xmlBufferPtr(n_buf, 0);
18920: 
18921:         ret_val = xmlBufferLength((const xmlBufferPtr)buf);
18922:         desret_int(ret_val);
18923:         call_tests++;
18924:         des_const_xmlBufferPtr(n_buf, (const xmlBufferPtr)buf, 0);
18925:         xmlResetLastError();
18926:         if (mem_base != xmlMemBlocks()) {
18927:             printf("Leak of %d blocks found in xmlBufferLength",
18928: 	           xmlMemBlocks() - mem_base);
18929: 	    test_ret++;
18930:             printf(" %d", n_buf);
18931:             printf("\n");
18932:         }
18933:     }
18934:     function_tests++;
18935: 
18936:     return(test_ret);
18937: }
18938: 
18939: 
18940: static int
18941: test_xmlBufferResize(void) {
18942:     int test_ret = 0;
18943: 
18944:     int mem_base;
18945:     int ret_val;
18946:     xmlBufferPtr buf; /* the buffer to resize */
18947:     int n_buf;
18948:     unsigned int size; /* the desired size */
18949:     int n_size;
18950: 
18951:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
18952:     for (n_size = 0;n_size < gen_nb_unsigned_int;n_size++) {
18953:         mem_base = xmlMemBlocks();
18954:         buf = gen_xmlBufferPtr(n_buf, 0);
18955:         size = gen_unsigned_int(n_size, 1);
18956: 
18957:         ret_val = xmlBufferResize(buf, size);
18958:         desret_int(ret_val);
18959:         call_tests++;
18960:         des_xmlBufferPtr(n_buf, buf, 0);
18961:         des_unsigned_int(n_size, size, 1);
18962:         xmlResetLastError();
18963:         if (mem_base != xmlMemBlocks()) {
18964:             printf("Leak of %d blocks found in xmlBufferResize",
18965: 	           xmlMemBlocks() - mem_base);
18966: 	    test_ret++;
18967:             printf(" %d", n_buf);
18968:             printf(" %d", n_size);
18969:             printf("\n");
18970:         }
18971:     }
18972:     }
18973:     function_tests++;
18974: 
18975:     return(test_ret);
18976: }
18977: 
18978: 
18979: static int
18980: test_xmlBufferSetAllocationScheme(void) {
18981:     int test_ret = 0;
18982: 
18983:     int mem_base;
18984:     xmlBufferPtr buf; /* the buffer to tune */
18985:     int n_buf;
18986:     xmlBufferAllocationScheme scheme; /* allocation scheme to use */
18987:     int n_scheme;
18988: 
18989:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
18990:     for (n_scheme = 0;n_scheme < gen_nb_xmlBufferAllocationScheme;n_scheme++) {
18991:         mem_base = xmlMemBlocks();
18992:         buf = gen_xmlBufferPtr(n_buf, 0);
18993:         scheme = gen_xmlBufferAllocationScheme(n_scheme, 1);
18994: 
18995:         xmlBufferSetAllocationScheme(buf, scheme);
18996:         if ((buf != NULL) && (scheme == XML_BUFFER_ALLOC_IMMUTABLE) && (buf->content != NULL) && (buf->content != static_buf_content)) { xmlFree(buf->content); buf->content = NULL;}
18997:         call_tests++;
18998:         des_xmlBufferPtr(n_buf, buf, 0);
18999:         des_xmlBufferAllocationScheme(n_scheme, scheme, 1);
19000:         xmlResetLastError();
19001:         if (mem_base != xmlMemBlocks()) {
19002:             printf("Leak of %d blocks found in xmlBufferSetAllocationScheme",
19003: 	           xmlMemBlocks() - mem_base);
19004: 	    test_ret++;
19005:             printf(" %d", n_buf);
19006:             printf(" %d", n_scheme);
19007:             printf("\n");
19008:         }
19009:     }
19010:     }
19011:     function_tests++;
19012: 
19013:     return(test_ret);
19014: }
19015: 
19016: 
19017: static int
19018: test_xmlBufferShrink(void) {
19019:     int test_ret = 0;
19020: 
19021:     int mem_base;
19022:     int ret_val;
19023:     xmlBufferPtr buf; /* the buffer to dump */
19024:     int n_buf;
19025:     unsigned int len; /* the number of xmlChar to remove */
19026:     int n_len;
19027: 
19028:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
19029:     for (n_len = 0;n_len < gen_nb_unsigned_int;n_len++) {
19030:         mem_base = xmlMemBlocks();
19031:         buf = gen_xmlBufferPtr(n_buf, 0);
19032:         len = gen_unsigned_int(n_len, 1);
19033: 
19034:         ret_val = xmlBufferShrink(buf, len);
19035:         desret_int(ret_val);
19036:         call_tests++;
19037:         des_xmlBufferPtr(n_buf, buf, 0);
19038:         des_unsigned_int(n_len, len, 1);
19039:         xmlResetLastError();
19040:         if (mem_base != xmlMemBlocks()) {
19041:             printf("Leak of %d blocks found in xmlBufferShrink",
19042: 	           xmlMemBlocks() - mem_base);
19043: 	    test_ret++;
19044:             printf(" %d", n_buf);
19045:             printf(" %d", n_len);
19046:             printf("\n");
19047:         }
19048:     }
19049:     }
19050:     function_tests++;
19051: 
19052:     return(test_ret);
19053: }
19054: 
19055: 
19056: static int
19057: test_xmlBufferWriteCHAR(void) {
19058:     int test_ret = 0;
19059: 
19060:     int mem_base;
19061:     xmlBufferPtr buf; /* the XML buffer */
19062:     int n_buf;
19063:     xmlChar * string; /* the string to add */
19064:     int n_string;
19065: 
19066:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
19067:     for (n_string = 0;n_string < gen_nb_const_xmlChar_ptr;n_string++) {
19068:         mem_base = xmlMemBlocks();
19069:         buf = gen_xmlBufferPtr(n_buf, 0);
19070:         string = gen_const_xmlChar_ptr(n_string, 1);
19071: 
19072:         xmlBufferWriteCHAR(buf, (const xmlChar *)string);
19073:         call_tests++;
19074:         des_xmlBufferPtr(n_buf, buf, 0);
19075:         des_const_xmlChar_ptr(n_string, (const xmlChar *)string, 1);
19076:         xmlResetLastError();
19077:         if (mem_base != xmlMemBlocks()) {
19078:             printf("Leak of %d blocks found in xmlBufferWriteCHAR",
19079: 	           xmlMemBlocks() - mem_base);
19080: 	    test_ret++;
19081:             printf(" %d", n_buf);
19082:             printf(" %d", n_string);
19083:             printf("\n");
19084:         }
19085:     }
19086:     }
19087:     function_tests++;
19088: 
19089:     return(test_ret);
19090: }
19091: 
19092: 
19093: static int
19094: test_xmlBufferWriteChar(void) {
19095:     int test_ret = 0;
19096: 
19097:     int mem_base;
19098:     xmlBufferPtr buf; /* the XML buffer output */
19099:     int n_buf;
19100:     char * string; /* the string to add */
19101:     int n_string;
19102: 
19103:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
19104:     for (n_string = 0;n_string < gen_nb_const_char_ptr;n_string++) {
19105:         mem_base = xmlMemBlocks();
19106:         buf = gen_xmlBufferPtr(n_buf, 0);
19107:         string = gen_const_char_ptr(n_string, 1);
19108: 
19109:         xmlBufferWriteChar(buf, (const char *)string);
19110:         call_tests++;
19111:         des_xmlBufferPtr(n_buf, buf, 0);
19112:         des_const_char_ptr(n_string, (const char *)string, 1);
19113:         xmlResetLastError();
19114:         if (mem_base != xmlMemBlocks()) {
19115:             printf("Leak of %d blocks found in xmlBufferWriteChar",
19116: 	           xmlMemBlocks() - mem_base);
19117: 	    test_ret++;
19118:             printf(" %d", n_buf);
19119:             printf(" %d", n_string);
19120:             printf("\n");
19121:         }
19122:     }
19123:     }
19124:     function_tests++;
19125: 
19126:     return(test_ret);
19127: }
19128: 
19129: 
19130: static int
19131: test_xmlBufferWriteQuotedString(void) {
19132:     int test_ret = 0;
19133: 
19134:     int mem_base;
19135:     xmlBufferPtr buf; /* the XML buffer output */
19136:     int n_buf;
19137:     xmlChar * string; /* the string to add */
19138:     int n_string;
19139: 
19140:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
19141:     for (n_string = 0;n_string < gen_nb_const_xmlChar_ptr;n_string++) {
19142:         mem_base = xmlMemBlocks();
19143:         buf = gen_xmlBufferPtr(n_buf, 0);
19144:         string = gen_const_xmlChar_ptr(n_string, 1);
19145: 
19146:         xmlBufferWriteQuotedString(buf, (const xmlChar *)string);
19147:         call_tests++;
19148:         des_xmlBufferPtr(n_buf, buf, 0);
19149:         des_const_xmlChar_ptr(n_string, (const xmlChar *)string, 1);
19150:         xmlResetLastError();
19151:         if (mem_base != xmlMemBlocks()) {
19152:             printf("Leak of %d blocks found in xmlBufferWriteQuotedString",
19153: 	           xmlMemBlocks() - mem_base);
19154: 	    test_ret++;
19155:             printf(" %d", n_buf);
19156:             printf(" %d", n_string);
19157:             printf("\n");
19158:         }
19159:     }
19160:     }
19161:     function_tests++;
19162: 
19163:     return(test_ret);
19164: }
19165: 
19166: 
19167: static int
19168: test_xmlBuildQName(void) {
19169:     int test_ret = 0;
19170: 
19171:     int mem_base;
19172:     xmlChar * ret_val;
19173:     xmlChar * ncname; /* the Name */
19174:     int n_ncname;
19175:     xmlChar * prefix; /* the prefix */
19176:     int n_prefix;
19177:     xmlChar * memory; /* preallocated memory */
19178:     int n_memory;
19179:     int len; /* preallocated memory length */
19180:     int n_len;
19181: 
19182:     for (n_ncname = 0;n_ncname < gen_nb_const_xmlChar_ptr;n_ncname++) {
19183:     for (n_prefix = 0;n_prefix < gen_nb_const_xmlChar_ptr;n_prefix++) {
19184:     for (n_memory = 0;n_memory < gen_nb_xmlChar_ptr;n_memory++) {
19185:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
19186:         mem_base = xmlMemBlocks();
19187:         ncname = gen_const_xmlChar_ptr(n_ncname, 0);
19188:         prefix = gen_const_xmlChar_ptr(n_prefix, 1);
19189:         memory = gen_xmlChar_ptr(n_memory, 2);
19190:         len = gen_int(n_len, 3);
19191: 
19192:         ret_val = xmlBuildQName((const xmlChar *)ncname, (const xmlChar *)prefix, memory, len);
19193:         if ((ret_val != NULL) && (ret_val != ncname) &&
19194:               (ret_val != prefix) && (ret_val != memory))
19195:               xmlFree(ret_val);
19196: 	  ret_val = NULL;
19197:         desret_xmlChar_ptr(ret_val);
19198:         call_tests++;
19199:         des_const_xmlChar_ptr(n_ncname, (const xmlChar *)ncname, 0);
19200:         des_const_xmlChar_ptr(n_prefix, (const xmlChar *)prefix, 1);
19201:         des_xmlChar_ptr(n_memory, memory, 2);
19202:         des_int(n_len, len, 3);
19203:         xmlResetLastError();
19204:         if (mem_base != xmlMemBlocks()) {
19205:             printf("Leak of %d blocks found in xmlBuildQName",
19206: 	           xmlMemBlocks() - mem_base);
19207: 	    test_ret++;
19208:             printf(" %d", n_ncname);
19209:             printf(" %d", n_prefix);
19210:             printf(" %d", n_memory);
19211:             printf(" %d", n_len);
19212:             printf("\n");
19213:         }
19214:     }
19215:     }
19216:     }
19217:     }
19218:     function_tests++;
19219: 
19220:     return(test_ret);
19221: }
19222: 
19223: 
19224: static int
19225: test_xmlChildElementCount(void) {
19226:     int test_ret = 0;
19227: 
19228: #if defined(LIBXML_TREE_ENABLED)
19229:     int mem_base;
19230:     unsigned long ret_val;
19231:     xmlNodePtr parent; /* the parent node */
19232:     int n_parent;
19233: 
19234:     for (n_parent = 0;n_parent < gen_nb_xmlNodePtr;n_parent++) {
19235:         mem_base = xmlMemBlocks();
19236:         parent = gen_xmlNodePtr(n_parent, 0);
19237: 
19238:         ret_val = xmlChildElementCount(parent);
19239:         desret_unsigned_long(ret_val);
19240:         call_tests++;
19241:         des_xmlNodePtr(n_parent, parent, 0);
19242:         xmlResetLastError();
19243:         if (mem_base != xmlMemBlocks()) {
19244:             printf("Leak of %d blocks found in xmlChildElementCount",
19245: 	           xmlMemBlocks() - mem_base);
19246: 	    test_ret++;
19247:             printf(" %d", n_parent);
19248:             printf("\n");
19249:         }
19250:     }
19251:     function_tests++;
19252: #endif
19253: 
19254:     return(test_ret);
19255: }
19256: 
19257: 
19258: static int
19259: test_xmlCopyDoc(void) {
19260:     int test_ret = 0;
19261: 
19262: #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
19263:     int mem_base;
19264:     xmlDocPtr ret_val;
19265:     xmlDocPtr doc; /* the document */
19266:     int n_doc;
19267:     int recursive; /* if not zero do a recursive copy. */
19268:     int n_recursive;
19269: 
19270:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
19271:     for (n_recursive = 0;n_recursive < gen_nb_int;n_recursive++) {
19272:         mem_base = xmlMemBlocks();
19273:         doc = gen_xmlDocPtr(n_doc, 0);
19274:         recursive = gen_int(n_recursive, 1);
19275: 
19276:         ret_val = xmlCopyDoc(doc, recursive);
19277:         desret_xmlDocPtr(ret_val);
19278:         call_tests++;
19279:         des_xmlDocPtr(n_doc, doc, 0);
19280:         des_int(n_recursive, recursive, 1);
19281:         xmlResetLastError();
19282:         if (mem_base != xmlMemBlocks()) {
19283:             printf("Leak of %d blocks found in xmlCopyDoc",
19284: 	           xmlMemBlocks() - mem_base);
19285: 	    test_ret++;
19286:             printf(" %d", n_doc);
19287:             printf(" %d", n_recursive);
19288:             printf("\n");
19289:         }
19290:     }
19291:     }
19292:     function_tests++;
19293: #endif
19294: 
19295:     return(test_ret);
19296: }
19297: 
19298: 
19299: static int
19300: test_xmlCopyDtd(void) {
19301:     int test_ret = 0;
19302: 
19303: #if defined(LIBXML_TREE_ENABLED)
19304:     int mem_base;
19305:     xmlDtdPtr ret_val;
19306:     xmlDtdPtr dtd; /* the dtd */
19307:     int n_dtd;
19308: 
19309:     for (n_dtd = 0;n_dtd < gen_nb_xmlDtdPtr;n_dtd++) {
19310:         mem_base = xmlMemBlocks();
19311:         dtd = gen_xmlDtdPtr(n_dtd, 0);
19312: 
19313:         ret_val = xmlCopyDtd(dtd);
19314:         desret_xmlDtdPtr(ret_val);
19315:         call_tests++;
19316:         des_xmlDtdPtr(n_dtd, dtd, 0);
19317:         xmlResetLastError();
19318:         if (mem_base != xmlMemBlocks()) {
19319:             printf("Leak of %d blocks found in xmlCopyDtd",
19320: 	           xmlMemBlocks() - mem_base);
19321: 	    test_ret++;
19322:             printf(" %d", n_dtd);
19323:             printf("\n");
19324:         }
19325:     }
19326:     function_tests++;
19327: #endif
19328: 
19329:     return(test_ret);
19330: }
19331: 
19332: 
19333: static int
19334: test_xmlCopyNamespace(void) {
19335:     int test_ret = 0;
19336: 
19337:     int mem_base;
19338:     xmlNsPtr ret_val;
19339:     xmlNsPtr cur; /* the namespace */
19340:     int n_cur;
19341: 
19342:     for (n_cur = 0;n_cur < gen_nb_xmlNsPtr;n_cur++) {
19343:         mem_base = xmlMemBlocks();
19344:         cur = gen_xmlNsPtr(n_cur, 0);
19345: 
19346:         ret_val = xmlCopyNamespace(cur);
19347:         if (ret_val != NULL) xmlFreeNs(ret_val);
19348:         desret_xmlNsPtr(ret_val);
19349:         call_tests++;
19350:         des_xmlNsPtr(n_cur, cur, 0);
19351:         xmlResetLastError();
19352:         if (mem_base != xmlMemBlocks()) {
19353:             printf("Leak of %d blocks found in xmlCopyNamespace",
19354: 	           xmlMemBlocks() - mem_base);
19355: 	    test_ret++;
19356:             printf(" %d", n_cur);
19357:             printf("\n");
19358:         }
19359:     }
19360:     function_tests++;
19361: 
19362:     return(test_ret);
19363: }
19364: 
19365: 
19366: static int
19367: test_xmlCopyNamespaceList(void) {
19368:     int test_ret = 0;
19369: 
19370:     int mem_base;
19371:     xmlNsPtr ret_val;
19372:     xmlNsPtr cur; /* the first namespace */
19373:     int n_cur;
19374: 
19375:     for (n_cur = 0;n_cur < gen_nb_xmlNsPtr;n_cur++) {
19376:         mem_base = xmlMemBlocks();
19377:         cur = gen_xmlNsPtr(n_cur, 0);
19378: 
19379:         ret_val = xmlCopyNamespaceList(cur);
19380:         if (ret_val != NULL) xmlFreeNsList(ret_val);
19381:         desret_xmlNsPtr(ret_val);
19382:         call_tests++;
19383:         des_xmlNsPtr(n_cur, cur, 0);
19384:         xmlResetLastError();
19385:         if (mem_base != xmlMemBlocks()) {
19386:             printf("Leak of %d blocks found in xmlCopyNamespaceList",
19387: 	           xmlMemBlocks() - mem_base);
19388: 	    test_ret++;
19389:             printf(" %d", n_cur);
19390:             printf("\n");
19391:         }
19392:     }
19393:     function_tests++;
19394: 
19395:     return(test_ret);
19396: }
19397: 
19398: 
19399: static int
19400: test_xmlCopyNode(void) {
19401:     int test_ret = 0;
19402: 
19403:     int mem_base;
19404:     xmlNodePtr ret_val;
19405:     xmlNodePtr node; /* the node */
19406:     int n_node;
19407:     int extended; /* if 1 do a recursive copy (properties, namespaces and children when applicable) if 2 copy properties and namespaces (when applicable) */
19408:     int n_extended;
19409: 
19410:     for (n_node = 0;n_node < gen_nb_const_xmlNodePtr;n_node++) {
19411:     for (n_extended = 0;n_extended < gen_nb_int;n_extended++) {
19412:         mem_base = xmlMemBlocks();
19413:         node = gen_const_xmlNodePtr(n_node, 0);
19414:         extended = gen_int(n_extended, 1);
19415: 
19416:         ret_val = xmlCopyNode((const xmlNodePtr)node, extended);
19417:         desret_xmlNodePtr(ret_val);
19418:         call_tests++;
19419:         des_const_xmlNodePtr(n_node, (const xmlNodePtr)node, 0);
19420:         des_int(n_extended, extended, 1);
19421:         xmlResetLastError();
19422:         if (mem_base != xmlMemBlocks()) {
19423:             printf("Leak of %d blocks found in xmlCopyNode",
19424: 	           xmlMemBlocks() - mem_base);
19425: 	    test_ret++;
19426:             printf(" %d", n_node);
19427:             printf(" %d", n_extended);
19428:             printf("\n");
19429:         }
19430:     }
19431:     }
19432:     function_tests++;
19433: 
19434:     return(test_ret);
19435: }
19436: 
19437: 
19438: static int
19439: test_xmlCopyNodeList(void) {
19440:     int test_ret = 0;
19441: 
19442:     int mem_base;
19443:     xmlNodePtr ret_val;
19444:     xmlNodePtr node; /* the first node in the list. */
19445:     int n_node;
19446: 
19447:     for (n_node = 0;n_node < gen_nb_const_xmlNodePtr;n_node++) {
19448:         mem_base = xmlMemBlocks();
19449:         node = gen_const_xmlNodePtr(n_node, 0);
19450: 
19451:         ret_val = xmlCopyNodeList((const xmlNodePtr)node);
19452:         desret_xmlNodePtr(ret_val);
19453:         call_tests++;
19454:         des_const_xmlNodePtr(n_node, (const xmlNodePtr)node, 0);
19455:         xmlResetLastError();
19456:         if (mem_base != xmlMemBlocks()) {
19457:             printf("Leak of %d blocks found in xmlCopyNodeList",
19458: 	           xmlMemBlocks() - mem_base);
19459: 	    test_ret++;
19460:             printf(" %d", n_node);
19461:             printf("\n");
19462:         }
19463:     }
19464:     function_tests++;
19465: 
19466:     return(test_ret);
19467: }
19468: 
19469: 
19470: static int
19471: test_xmlCopyProp(void) {
19472:     int test_ret = 0;
19473: 
19474:     int mem_base;
19475:     xmlAttrPtr ret_val;
19476:     xmlNodePtr target; /* the element where the attribute will be grafted */
19477:     int n_target;
19478:     xmlAttrPtr cur; /* the attribute */
19479:     int n_cur;
19480: 
19481:     for (n_target = 0;n_target < gen_nb_xmlNodePtr;n_target++) {
19482:     for (n_cur = 0;n_cur < gen_nb_xmlAttrPtr;n_cur++) {
19483:         mem_base = xmlMemBlocks();
19484:         target = gen_xmlNodePtr(n_target, 0);
19485:         cur = gen_xmlAttrPtr(n_cur, 1);
19486: 
19487:         ret_val = xmlCopyProp(target, cur);
19488:         desret_xmlAttrPtr(ret_val);
19489:         call_tests++;
19490:         des_xmlNodePtr(n_target, target, 0);
19491:         des_xmlAttrPtr(n_cur, cur, 1);
19492:         xmlResetLastError();
19493:         if (mem_base != xmlMemBlocks()) {
19494:             printf("Leak of %d blocks found in xmlCopyProp",
19495: 	           xmlMemBlocks() - mem_base);
19496: 	    test_ret++;
19497:             printf(" %d", n_target);
19498:             printf(" %d", n_cur);
19499:             printf("\n");
19500:         }
19501:     }
19502:     }
19503:     function_tests++;
19504: 
19505:     return(test_ret);
19506: }
19507: 
19508: 
19509: static int
19510: test_xmlCopyPropList(void) {
19511:     int test_ret = 0;
19512: 
19513:     int mem_base;
19514:     xmlAttrPtr ret_val;
19515:     xmlNodePtr target; /* the element where the attributes will be grafted */
19516:     int n_target;
19517:     xmlAttrPtr cur; /* the first attribute */
19518:     int n_cur;
19519: 
19520:     for (n_target = 0;n_target < gen_nb_xmlNodePtr;n_target++) {
19521:     for (n_cur = 0;n_cur < gen_nb_xmlAttrPtr;n_cur++) {
19522:         mem_base = xmlMemBlocks();
19523:         target = gen_xmlNodePtr(n_target, 0);
19524:         cur = gen_xmlAttrPtr(n_cur, 1);
19525: 
19526:         ret_val = xmlCopyPropList(target, cur);
19527:         desret_xmlAttrPtr(ret_val);
19528:         call_tests++;
19529:         des_xmlNodePtr(n_target, target, 0);
19530:         des_xmlAttrPtr(n_cur, cur, 1);
19531:         xmlResetLastError();
19532:         if (mem_base != xmlMemBlocks()) {
19533:             printf("Leak of %d blocks found in xmlCopyPropList",
19534: 	           xmlMemBlocks() - mem_base);
19535: 	    test_ret++;
19536:             printf(" %d", n_target);
19537:             printf(" %d", n_cur);
19538:             printf("\n");
19539:         }
19540:     }
19541:     }
19542:     function_tests++;
19543: 
19544:     return(test_ret);
19545: }
19546: 
19547: 
19548: static int
19549: test_xmlCreateIntSubset(void) {
19550:     int test_ret = 0;
19551: 
19552:     int mem_base;
19553:     xmlDtdPtr ret_val;
19554:     xmlDocPtr doc; /* the document pointer */
19555:     int n_doc;
19556:     xmlChar * name; /* the DTD name */
19557:     int n_name;
19558:     xmlChar * ExternalID; /* the external (PUBLIC) ID */
19559:     int n_ExternalID;
19560:     xmlChar * SystemID; /* the system ID */
19561:     int n_SystemID;
19562: 
19563:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
19564:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
19565:     for (n_ExternalID = 0;n_ExternalID < gen_nb_const_xmlChar_ptr;n_ExternalID++) {
19566:     for (n_SystemID = 0;n_SystemID < gen_nb_const_xmlChar_ptr;n_SystemID++) {
19567:         mem_base = xmlMemBlocks();
19568:         doc = gen_xmlDocPtr(n_doc, 0);
19569:         name = gen_const_xmlChar_ptr(n_name, 1);
19570:         ExternalID = gen_const_xmlChar_ptr(n_ExternalID, 2);
19571:         SystemID = gen_const_xmlChar_ptr(n_SystemID, 3);
19572: 
19573:         ret_val = xmlCreateIntSubset(doc, (const xmlChar *)name, (const xmlChar *)ExternalID, (const xmlChar *)SystemID);
19574:         desret_xmlDtdPtr(ret_val);
19575:         call_tests++;
19576:         des_xmlDocPtr(n_doc, doc, 0);
19577:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
19578:         des_const_xmlChar_ptr(n_ExternalID, (const xmlChar *)ExternalID, 2);
19579:         des_const_xmlChar_ptr(n_SystemID, (const xmlChar *)SystemID, 3);
19580:         xmlResetLastError();
19581:         if (mem_base != xmlMemBlocks()) {
19582:             printf("Leak of %d blocks found in xmlCreateIntSubset",
19583: 	           xmlMemBlocks() - mem_base);
19584: 	    test_ret++;
19585:             printf(" %d", n_doc);
19586:             printf(" %d", n_name);
19587:             printf(" %d", n_ExternalID);
19588:             printf(" %d", n_SystemID);
19589:             printf("\n");
19590:         }
19591:     }
19592:     }
19593:     }
19594:     }
19595:     function_tests++;
19596: 
19597:     return(test_ret);
19598: }
19599: 
19600: 
19601: #define gen_nb_xmlDOMWrapCtxtPtr 1
19602: static xmlDOMWrapCtxtPtr gen_xmlDOMWrapCtxtPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
19603:     return(NULL);
19604: }
19605: static void des_xmlDOMWrapCtxtPtr(int no ATTRIBUTE_UNUSED, xmlDOMWrapCtxtPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
19606: }
19607: 
19608: static int
19609: test_xmlDOMWrapAdoptNode(void) {
19610:     int test_ret = 0;
19611: 
19612:     int mem_base;
19613:     int ret_val;
19614:     xmlDOMWrapCtxtPtr ctxt; /* the optional context for custom processing */
19615:     int n_ctxt;
19616:     xmlDocPtr sourceDoc; /* the optional sourceDoc */
19617:     int n_sourceDoc;
19618:     xmlNodePtr node; /* the node to start with */
19619:     int n_node;
19620:     xmlDocPtr destDoc; /* the destination doc */
19621:     int n_destDoc;
19622:     xmlNodePtr destParent; /* the optional new parent of @node in @destDoc */
19623:     int n_destParent;
19624:     int options; /* option flags */
19625:     int n_options;
19626: 
19627:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlDOMWrapCtxtPtr;n_ctxt++) {
19628:     for (n_sourceDoc = 0;n_sourceDoc < gen_nb_xmlDocPtr;n_sourceDoc++) {
19629:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
19630:     for (n_destDoc = 0;n_destDoc < gen_nb_xmlDocPtr;n_destDoc++) {
19631:     for (n_destParent = 0;n_destParent < gen_nb_xmlNodePtr;n_destParent++) {
19632:     for (n_options = 0;n_options < gen_nb_int;n_options++) {
19633:         mem_base = xmlMemBlocks();
19634:         ctxt = gen_xmlDOMWrapCtxtPtr(n_ctxt, 0);
19635:         sourceDoc = gen_xmlDocPtr(n_sourceDoc, 1);
19636:         node = gen_xmlNodePtr(n_node, 2);
19637:         destDoc = gen_xmlDocPtr(n_destDoc, 3);
19638:         destParent = gen_xmlNodePtr(n_destParent, 4);
19639:         options = gen_int(n_options, 5);
19640: 
19641:         ret_val = xmlDOMWrapAdoptNode(ctxt, sourceDoc, node, destDoc, destParent, options);
19642:         if ((node != NULL) && (node->parent == NULL)) {xmlUnlinkNode(node);xmlFreeNode(node);node = NULL;}
19643:         desret_int(ret_val);
19644:         call_tests++;
19645:         des_xmlDOMWrapCtxtPtr(n_ctxt, ctxt, 0);
19646:         des_xmlDocPtr(n_sourceDoc, sourceDoc, 1);
19647:         des_xmlNodePtr(n_node, node, 2);
19648:         des_xmlDocPtr(n_destDoc, destDoc, 3);
19649:         des_xmlNodePtr(n_destParent, destParent, 4);
19650:         des_int(n_options, options, 5);
19651:         xmlResetLastError();
19652:         if (mem_base != xmlMemBlocks()) {
19653:             printf("Leak of %d blocks found in xmlDOMWrapAdoptNode",
19654: 	           xmlMemBlocks() - mem_base);
19655: 	    test_ret++;
19656:             printf(" %d", n_ctxt);
19657:             printf(" %d", n_sourceDoc);
19658:             printf(" %d", n_node);
19659:             printf(" %d", n_destDoc);
19660:             printf(" %d", n_destParent);
19661:             printf(" %d", n_options);
19662:             printf("\n");
19663:         }
19664:     }
19665:     }
19666:     }
19667:     }
19668:     }
19669:     }
19670:     function_tests++;
19671: 
19672:     return(test_ret);
19673: }
19674: 
19675: 
19676: static int
19677: test_xmlDOMWrapCloneNode(void) {
19678:     int test_ret = 0;
19679: 
19680:     int mem_base;
19681:     int ret_val;
19682:     xmlDOMWrapCtxtPtr ctxt; /* the optional context for custom processing */
19683:     int n_ctxt;
19684:     xmlDocPtr sourceDoc; /* the optional sourceDoc */
19685:     int n_sourceDoc;
19686:     xmlNodePtr node; /* the node to start with */
19687:     int n_node;
19688:     xmlNodePtr * resNode; /* the clone of the given @node */
19689:     int n_resNode;
19690:     xmlDocPtr destDoc; /* the destination doc */
19691:     int n_destDoc;
19692:     xmlNodePtr destParent; /* the optional new parent of @node in @destDoc */
19693:     int n_destParent;
19694:     int deep; /* descend into child if set */
19695:     int n_deep;
19696:     int options; /* option flags */
19697:     int n_options;
19698: 
19699:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlDOMWrapCtxtPtr;n_ctxt++) {
19700:     for (n_sourceDoc = 0;n_sourceDoc < gen_nb_xmlDocPtr;n_sourceDoc++) {
19701:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
19702:     for (n_resNode = 0;n_resNode < gen_nb_xmlNodePtr_ptr;n_resNode++) {
19703:     for (n_destDoc = 0;n_destDoc < gen_nb_xmlDocPtr;n_destDoc++) {
19704:     for (n_destParent = 0;n_destParent < gen_nb_xmlNodePtr;n_destParent++) {
19705:     for (n_deep = 0;n_deep < gen_nb_int;n_deep++) {
19706:     for (n_options = 0;n_options < gen_nb_int;n_options++) {
19707:         mem_base = xmlMemBlocks();
19708:         ctxt = gen_xmlDOMWrapCtxtPtr(n_ctxt, 0);
19709:         sourceDoc = gen_xmlDocPtr(n_sourceDoc, 1);
19710:         node = gen_xmlNodePtr(n_node, 2);
19711:         resNode = gen_xmlNodePtr_ptr(n_resNode, 3);
19712:         destDoc = gen_xmlDocPtr(n_destDoc, 4);
19713:         destParent = gen_xmlNodePtr(n_destParent, 5);
19714:         deep = gen_int(n_deep, 6);
19715:         options = gen_int(n_options, 7);
19716: 
19717:         ret_val = xmlDOMWrapCloneNode(ctxt, sourceDoc, node, resNode, destDoc, destParent, deep, options);
19718:         desret_int(ret_val);
19719:         call_tests++;
19720:         des_xmlDOMWrapCtxtPtr(n_ctxt, ctxt, 0);
19721:         des_xmlDocPtr(n_sourceDoc, sourceDoc, 1);
19722:         des_xmlNodePtr(n_node, node, 2);
19723:         des_xmlNodePtr_ptr(n_resNode, resNode, 3);
19724:         des_xmlDocPtr(n_destDoc, destDoc, 4);
19725:         des_xmlNodePtr(n_destParent, destParent, 5);
19726:         des_int(n_deep, deep, 6);
19727:         des_int(n_options, options, 7);
19728:         xmlResetLastError();
19729:         if (mem_base != xmlMemBlocks()) {
19730:             printf("Leak of %d blocks found in xmlDOMWrapCloneNode",
19731: 	           xmlMemBlocks() - mem_base);
19732: 	    test_ret++;
19733:             printf(" %d", n_ctxt);
19734:             printf(" %d", n_sourceDoc);
19735:             printf(" %d", n_node);
19736:             printf(" %d", n_resNode);
19737:             printf(" %d", n_destDoc);
19738:             printf(" %d", n_destParent);
19739:             printf(" %d", n_deep);
19740:             printf(" %d", n_options);
19741:             printf("\n");
19742:         }
19743:     }
19744:     }
19745:     }
19746:     }
19747:     }
19748:     }
19749:     }
19750:     }
19751:     function_tests++;
19752: 
19753:     return(test_ret);
19754: }
19755: 
19756: 
19757: static int
19758: test_xmlDOMWrapNewCtxt(void) {
19759:     int test_ret = 0;
19760: 
19761: 
19762:     /* missing type support */
19763:     return(test_ret);
19764: }
19765: 
19766: 
19767: static int
19768: test_xmlDOMWrapReconcileNamespaces(void) {
19769:     int test_ret = 0;
19770: 
19771:     int mem_base;
19772:     int ret_val;
19773:     xmlDOMWrapCtxtPtr ctxt; /* DOM wrapper context, unused at the moment */
19774:     int n_ctxt;
19775:     xmlNodePtr elem; /* the element-node */
19776:     int n_elem;
19777:     int options; /* option flags */
19778:     int n_options;
19779: 
19780:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlDOMWrapCtxtPtr;n_ctxt++) {
19781:     for (n_elem = 0;n_elem < gen_nb_xmlNodePtr;n_elem++) {
19782:     for (n_options = 0;n_options < gen_nb_int;n_options++) {
19783:         mem_base = xmlMemBlocks();
19784:         ctxt = gen_xmlDOMWrapCtxtPtr(n_ctxt, 0);
19785:         elem = gen_xmlNodePtr(n_elem, 1);
19786:         options = gen_int(n_options, 2);
19787: 
19788:         ret_val = xmlDOMWrapReconcileNamespaces(ctxt, elem, options);
19789:         desret_int(ret_val);
19790:         call_tests++;
19791:         des_xmlDOMWrapCtxtPtr(n_ctxt, ctxt, 0);
19792:         des_xmlNodePtr(n_elem, elem, 1);
19793:         des_int(n_options, options, 2);
19794:         xmlResetLastError();
19795:         if (mem_base != xmlMemBlocks()) {
19796:             printf("Leak of %d blocks found in xmlDOMWrapReconcileNamespaces",
19797: 	           xmlMemBlocks() - mem_base);
19798: 	    test_ret++;
19799:             printf(" %d", n_ctxt);
19800:             printf(" %d", n_elem);
19801:             printf(" %d", n_options);
19802:             printf("\n");
19803:         }
19804:     }
19805:     }
19806:     }
19807:     function_tests++;
19808: 
19809:     return(test_ret);
19810: }
19811: 
19812: 
19813: static int
19814: test_xmlDOMWrapRemoveNode(void) {
19815:     int test_ret = 0;
19816: 
19817:     int mem_base;
19818:     int ret_val;
19819:     xmlDOMWrapCtxtPtr ctxt; /* a DOM wrapper context */
19820:     int n_ctxt;
19821:     xmlDocPtr doc; /* the doc */
19822:     int n_doc;
19823:     xmlNodePtr node; /* the node to be removed. */
19824:     int n_node;
19825:     int options; /* set of options, unused at the moment */
19826:     int n_options;
19827: 
19828:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlDOMWrapCtxtPtr;n_ctxt++) {
19829:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
19830:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
19831:     for (n_options = 0;n_options < gen_nb_int;n_options++) {
19832:         mem_base = xmlMemBlocks();
19833:         ctxt = gen_xmlDOMWrapCtxtPtr(n_ctxt, 0);
19834:         doc = gen_xmlDocPtr(n_doc, 1);
19835:         node = gen_xmlNodePtr(n_node, 2);
19836:         options = gen_int(n_options, 3);
19837: 
19838:         ret_val = xmlDOMWrapRemoveNode(ctxt, doc, node, options);
19839:         desret_int(ret_val);
19840:         call_tests++;
19841:         des_xmlDOMWrapCtxtPtr(n_ctxt, ctxt, 0);
19842:         des_xmlDocPtr(n_doc, doc, 1);
19843:         des_xmlNodePtr(n_node, node, 2);
19844:         des_int(n_options, options, 3);
19845:         xmlResetLastError();
19846:         if (mem_base != xmlMemBlocks()) {
19847:             printf("Leak of %d blocks found in xmlDOMWrapRemoveNode",
19848: 	           xmlMemBlocks() - mem_base);
19849: 	    test_ret++;
19850:             printf(" %d", n_ctxt);
19851:             printf(" %d", n_doc);
19852:             printf(" %d", n_node);
19853:             printf(" %d", n_options);
19854:             printf("\n");
19855:         }
19856:     }
19857:     }
19858:     }
19859:     }
19860:     function_tests++;
19861: 
19862:     return(test_ret);
19863: }
19864: 
19865: 
19866: static int
19867: test_xmlDocCopyNode(void) {
19868:     int test_ret = 0;
19869: 
19870:     int mem_base;
19871:     xmlNodePtr ret_val;
19872:     xmlNodePtr node; /* the node */
19873:     int n_node;
19874:     xmlDocPtr doc; /* the document */
19875:     int n_doc;
19876:     int extended; /* if 1 do a recursive copy (properties, namespaces and children when applicable) if 2 copy properties and namespaces (when applicable) */
19877:     int n_extended;
19878: 
19879:     for (n_node = 0;n_node < gen_nb_const_xmlNodePtr;n_node++) {
19880:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
19881:     for (n_extended = 0;n_extended < gen_nb_int;n_extended++) {
19882:         mem_base = xmlMemBlocks();
19883:         node = gen_const_xmlNodePtr(n_node, 0);
19884:         doc = gen_xmlDocPtr(n_doc, 1);
19885:         extended = gen_int(n_extended, 2);
19886: 
19887:         ret_val = xmlDocCopyNode((const xmlNodePtr)node, doc, extended);
19888:         desret_xmlNodePtr(ret_val);
19889:         call_tests++;
19890:         des_const_xmlNodePtr(n_node, (const xmlNodePtr)node, 0);
19891:         des_xmlDocPtr(n_doc, doc, 1);
19892:         des_int(n_extended, extended, 2);
19893:         xmlResetLastError();
19894:         if (mem_base != xmlMemBlocks()) {
19895:             printf("Leak of %d blocks found in xmlDocCopyNode",
19896: 	           xmlMemBlocks() - mem_base);
19897: 	    test_ret++;
19898:             printf(" %d", n_node);
19899:             printf(" %d", n_doc);
19900:             printf(" %d", n_extended);
19901:             printf("\n");
19902:         }
19903:     }
19904:     }
19905:     }
19906:     function_tests++;
19907: 
19908:     return(test_ret);
19909: }
19910: 
19911: 
19912: static int
19913: test_xmlDocCopyNodeList(void) {
19914:     int test_ret = 0;
19915: 
19916:     int mem_base;
19917:     xmlNodePtr ret_val;
19918:     xmlDocPtr doc; /* the target document */
19919:     int n_doc;
19920:     xmlNodePtr node; /* the first node in the list. */
19921:     int n_node;
19922: 
19923:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
19924:     for (n_node = 0;n_node < gen_nb_const_xmlNodePtr;n_node++) {
19925:         mem_base = xmlMemBlocks();
19926:         doc = gen_xmlDocPtr(n_doc, 0);
19927:         node = gen_const_xmlNodePtr(n_node, 1);
19928: 
19929:         ret_val = xmlDocCopyNodeList(doc, (const xmlNodePtr)node);
19930:         desret_xmlNodePtr(ret_val);
19931:         call_tests++;
19932:         des_xmlDocPtr(n_doc, doc, 0);
19933:         des_const_xmlNodePtr(n_node, (const xmlNodePtr)node, 1);
19934:         xmlResetLastError();
19935:         if (mem_base != xmlMemBlocks()) {
19936:             printf("Leak of %d blocks found in xmlDocCopyNodeList",
19937: 	           xmlMemBlocks() - mem_base);
19938: 	    test_ret++;
19939:             printf(" %d", n_doc);
19940:             printf(" %d", n_node);
19941:             printf("\n");
19942:         }
19943:     }
19944:     }
19945:     function_tests++;
19946: 
19947:     return(test_ret);
19948: }
19949: 
19950: 
19951: static int
19952: test_xmlDocDump(void) {
19953:     int test_ret = 0;
19954: 
19955: #if defined(LIBXML_OUTPUT_ENABLED)
19956:     int mem_base;
19957:     int ret_val;
19958:     FILE * f; /* the FILE* */
19959:     int n_f;
19960:     xmlDocPtr cur; /* the document */
19961:     int n_cur;
19962: 
19963:     for (n_f = 0;n_f < gen_nb_FILE_ptr;n_f++) {
19964:     for (n_cur = 0;n_cur < gen_nb_xmlDocPtr;n_cur++) {
19965:         mem_base = xmlMemBlocks();
19966:         f = gen_FILE_ptr(n_f, 0);
19967:         cur = gen_xmlDocPtr(n_cur, 1);
19968: 
19969:         ret_val = xmlDocDump(f, cur);
19970:         desret_int(ret_val);
19971:         call_tests++;
19972:         des_FILE_ptr(n_f, f, 0);
19973:         des_xmlDocPtr(n_cur, cur, 1);
19974:         xmlResetLastError();
19975:         if (mem_base != xmlMemBlocks()) {
19976:             printf("Leak of %d blocks found in xmlDocDump",
19977: 	           xmlMemBlocks() - mem_base);
19978: 	    test_ret++;
19979:             printf(" %d", n_f);
19980:             printf(" %d", n_cur);
19981:             printf("\n");
19982:         }
19983:     }
19984:     }
19985:     function_tests++;
19986: #endif
19987: 
19988:     return(test_ret);
19989: }
19990: 
19991: 
19992: static int
19993: test_xmlDocDumpFormatMemory(void) {
19994:     int test_ret = 0;
19995: 
19996: #if defined(LIBXML_OUTPUT_ENABLED)
19997:     int mem_base;
19998:     xmlDocPtr cur; /* the document */
19999:     int n_cur;
20000:     xmlChar ** mem; /* OUT: the memory pointer */
20001:     int n_mem;
20002:     int * size; /* OUT: the memory length */
20003:     int n_size;
20004:     int format; /* should formatting spaces been added */
20005:     int n_format;
20006: 
20007:     for (n_cur = 0;n_cur < gen_nb_xmlDocPtr;n_cur++) {
20008:     for (n_mem = 0;n_mem < gen_nb_xmlChar_ptr_ptr;n_mem++) {
20009:     for (n_size = 0;n_size < gen_nb_int_ptr;n_size++) {
20010:     for (n_format = 0;n_format < gen_nb_int;n_format++) {
20011:         mem_base = xmlMemBlocks();
20012:         cur = gen_xmlDocPtr(n_cur, 0);
20013:         mem = gen_xmlChar_ptr_ptr(n_mem, 1);
20014:         size = gen_int_ptr(n_size, 2);
20015:         format = gen_int(n_format, 3);
20016: 
20017:         xmlDocDumpFormatMemory(cur, mem, size, format);
20018:         call_tests++;
20019:         des_xmlDocPtr(n_cur, cur, 0);
20020:         des_xmlChar_ptr_ptr(n_mem, mem, 1);
20021:         des_int_ptr(n_size, size, 2);
20022:         des_int(n_format, format, 3);
20023:         xmlResetLastError();
20024:         if (mem_base != xmlMemBlocks()) {
20025:             printf("Leak of %d blocks found in xmlDocDumpFormatMemory",
20026: 	           xmlMemBlocks() - mem_base);
20027: 	    test_ret++;
20028:             printf(" %d", n_cur);
20029:             printf(" %d", n_mem);
20030:             printf(" %d", n_size);
20031:             printf(" %d", n_format);
20032:             printf("\n");
20033:         }
20034:     }
20035:     }
20036:     }
20037:     }
20038:     function_tests++;
20039: #endif
20040: 
20041:     return(test_ret);
20042: }
20043: 
20044: 
20045: static int
20046: test_xmlDocDumpFormatMemoryEnc(void) {
20047:     int test_ret = 0;
20048: 
20049: #if defined(LIBXML_OUTPUT_ENABLED)
20050:     int mem_base;
20051:     xmlDocPtr out_doc; /* Document to generate XML text from */
20052:     int n_out_doc;
20053:     xmlChar ** doc_txt_ptr; /* Memory pointer for allocated XML text */
20054:     int n_doc_txt_ptr;
20055:     int * doc_txt_len; /* Length of the generated XML text */
20056:     int n_doc_txt_len;
20057:     char * txt_encoding; /* Character encoding to use when generating XML text */
20058:     int n_txt_encoding;
20059:     int format; /* should formatting spaces been added */
20060:     int n_format;
20061: 
20062:     for (n_out_doc = 0;n_out_doc < gen_nb_xmlDocPtr;n_out_doc++) {
20063:     for (n_doc_txt_ptr = 0;n_doc_txt_ptr < gen_nb_xmlChar_ptr_ptr;n_doc_txt_ptr++) {
20064:     for (n_doc_txt_len = 0;n_doc_txt_len < gen_nb_int_ptr;n_doc_txt_len++) {
20065:     for (n_txt_encoding = 0;n_txt_encoding < gen_nb_const_char_ptr;n_txt_encoding++) {
20066:     for (n_format = 0;n_format < gen_nb_int;n_format++) {
20067:         mem_base = xmlMemBlocks();
20068:         out_doc = gen_xmlDocPtr(n_out_doc, 0);
20069:         doc_txt_ptr = gen_xmlChar_ptr_ptr(n_doc_txt_ptr, 1);
20070:         doc_txt_len = gen_int_ptr(n_doc_txt_len, 2);
20071:         txt_encoding = gen_const_char_ptr(n_txt_encoding, 3);
20072:         format = gen_int(n_format, 4);
20073: 
20074:         xmlDocDumpFormatMemoryEnc(out_doc, doc_txt_ptr, doc_txt_len, (const char *)txt_encoding, format);
20075:         call_tests++;
20076:         des_xmlDocPtr(n_out_doc, out_doc, 0);
20077:         des_xmlChar_ptr_ptr(n_doc_txt_ptr, doc_txt_ptr, 1);
20078:         des_int_ptr(n_doc_txt_len, doc_txt_len, 2);
20079:         des_const_char_ptr(n_txt_encoding, (const char *)txt_encoding, 3);
20080:         des_int(n_format, format, 4);
20081:         xmlResetLastError();
20082:         if (mem_base != xmlMemBlocks()) {
20083:             printf("Leak of %d blocks found in xmlDocDumpFormatMemoryEnc",
20084: 	           xmlMemBlocks() - mem_base);
20085: 	    test_ret++;
20086:             printf(" %d", n_out_doc);
20087:             printf(" %d", n_doc_txt_ptr);
20088:             printf(" %d", n_doc_txt_len);
20089:             printf(" %d", n_txt_encoding);
20090:             printf(" %d", n_format);
20091:             printf("\n");
20092:         }
20093:     }
20094:     }
20095:     }
20096:     }
20097:     }
20098:     function_tests++;
20099: #endif
20100: 
20101:     return(test_ret);
20102: }
20103: 
20104: 
20105: static int
20106: test_xmlDocDumpMemory(void) {
20107:     int test_ret = 0;
20108: 
20109: #if defined(LIBXML_OUTPUT_ENABLED)
20110:     int mem_base;
20111:     xmlDocPtr cur; /* the document */
20112:     int n_cur;
20113:     xmlChar ** mem; /* OUT: the memory pointer */
20114:     int n_mem;
20115:     int * size; /* OUT: the memory length */
20116:     int n_size;
20117: 
20118:     for (n_cur = 0;n_cur < gen_nb_xmlDocPtr;n_cur++) {
20119:     for (n_mem = 0;n_mem < gen_nb_xmlChar_ptr_ptr;n_mem++) {
20120:     for (n_size = 0;n_size < gen_nb_int_ptr;n_size++) {
20121:         mem_base = xmlMemBlocks();
20122:         cur = gen_xmlDocPtr(n_cur, 0);
20123:         mem = gen_xmlChar_ptr_ptr(n_mem, 1);
20124:         size = gen_int_ptr(n_size, 2);
20125: 
20126:         xmlDocDumpMemory(cur, mem, size);
20127:         call_tests++;
20128:         des_xmlDocPtr(n_cur, cur, 0);
20129:         des_xmlChar_ptr_ptr(n_mem, mem, 1);
20130:         des_int_ptr(n_size, size, 2);
20131:         xmlResetLastError();
20132:         if (mem_base != xmlMemBlocks()) {
20133:             printf("Leak of %d blocks found in xmlDocDumpMemory",
20134: 	           xmlMemBlocks() - mem_base);
20135: 	    test_ret++;
20136:             printf(" %d", n_cur);
20137:             printf(" %d", n_mem);
20138:             printf(" %d", n_size);
20139:             printf("\n");
20140:         }
20141:     }
20142:     }
20143:     }
20144:     function_tests++;
20145: #endif
20146: 
20147:     return(test_ret);
20148: }
20149: 
20150: 
20151: static int
20152: test_xmlDocDumpMemoryEnc(void) {
20153:     int test_ret = 0;
20154: 
20155: #if defined(LIBXML_OUTPUT_ENABLED)
20156:     int mem_base;
20157:     xmlDocPtr out_doc; /* Document to generate XML text from */
20158:     int n_out_doc;
20159:     xmlChar ** doc_txt_ptr; /* Memory pointer for allocated XML text */
20160:     int n_doc_txt_ptr;
20161:     int * doc_txt_len; /* Length of the generated XML text */
20162:     int n_doc_txt_len;
20163:     char * txt_encoding; /* Character encoding to use when generating XML text */
20164:     int n_txt_encoding;
20165: 
20166:     for (n_out_doc = 0;n_out_doc < gen_nb_xmlDocPtr;n_out_doc++) {
20167:     for (n_doc_txt_ptr = 0;n_doc_txt_ptr < gen_nb_xmlChar_ptr_ptr;n_doc_txt_ptr++) {
20168:     for (n_doc_txt_len = 0;n_doc_txt_len < gen_nb_int_ptr;n_doc_txt_len++) {
20169:     for (n_txt_encoding = 0;n_txt_encoding < gen_nb_const_char_ptr;n_txt_encoding++) {
20170:         mem_base = xmlMemBlocks();
20171:         out_doc = gen_xmlDocPtr(n_out_doc, 0);
20172:         doc_txt_ptr = gen_xmlChar_ptr_ptr(n_doc_txt_ptr, 1);
20173:         doc_txt_len = gen_int_ptr(n_doc_txt_len, 2);
20174:         txt_encoding = gen_const_char_ptr(n_txt_encoding, 3);
20175: 
20176:         xmlDocDumpMemoryEnc(out_doc, doc_txt_ptr, doc_txt_len, (const char *)txt_encoding);
20177:         call_tests++;
20178:         des_xmlDocPtr(n_out_doc, out_doc, 0);
20179:         des_xmlChar_ptr_ptr(n_doc_txt_ptr, doc_txt_ptr, 1);
20180:         des_int_ptr(n_doc_txt_len, doc_txt_len, 2);
20181:         des_const_char_ptr(n_txt_encoding, (const char *)txt_encoding, 3);
20182:         xmlResetLastError();
20183:         if (mem_base != xmlMemBlocks()) {
20184:             printf("Leak of %d blocks found in xmlDocDumpMemoryEnc",
20185: 	           xmlMemBlocks() - mem_base);
20186: 	    test_ret++;
20187:             printf(" %d", n_out_doc);
20188:             printf(" %d", n_doc_txt_ptr);
20189:             printf(" %d", n_doc_txt_len);
20190:             printf(" %d", n_txt_encoding);
20191:             printf("\n");
20192:         }
20193:     }
20194:     }
20195:     }
20196:     }
20197:     function_tests++;
20198: #endif
20199: 
20200:     return(test_ret);
20201: }
20202: 
20203: 
20204: static int
20205: test_xmlDocFormatDump(void) {
20206:     int test_ret = 0;
20207: 
20208: #if defined(LIBXML_OUTPUT_ENABLED)
20209:     int mem_base;
20210:     int ret_val;
20211:     FILE * f; /* the FILE* */
20212:     int n_f;
20213:     xmlDocPtr cur; /* the document */
20214:     int n_cur;
20215:     int format; /* should formatting spaces been added */
20216:     int n_format;
20217: 
20218:     for (n_f = 0;n_f < gen_nb_FILE_ptr;n_f++) {
20219:     for (n_cur = 0;n_cur < gen_nb_xmlDocPtr;n_cur++) {
20220:     for (n_format = 0;n_format < gen_nb_int;n_format++) {
20221:         mem_base = xmlMemBlocks();
20222:         f = gen_FILE_ptr(n_f, 0);
20223:         cur = gen_xmlDocPtr(n_cur, 1);
20224:         format = gen_int(n_format, 2);
20225: 
20226:         ret_val = xmlDocFormatDump(f, cur, format);
20227:         desret_int(ret_val);
20228:         call_tests++;
20229:         des_FILE_ptr(n_f, f, 0);
20230:         des_xmlDocPtr(n_cur, cur, 1);
20231:         des_int(n_format, format, 2);
20232:         xmlResetLastError();
20233:         if (mem_base != xmlMemBlocks()) {
20234:             printf("Leak of %d blocks found in xmlDocFormatDump",
20235: 	           xmlMemBlocks() - mem_base);
20236: 	    test_ret++;
20237:             printf(" %d", n_f);
20238:             printf(" %d", n_cur);
20239:             printf(" %d", n_format);
20240:             printf("\n");
20241:         }
20242:     }
20243:     }
20244:     }
20245:     function_tests++;
20246: #endif
20247: 
20248:     return(test_ret);
20249: }
20250: 
20251: 
20252: static int
20253: test_xmlDocGetRootElement(void) {
20254:     int test_ret = 0;
20255: 
20256:     int mem_base;
20257:     xmlNodePtr ret_val;
20258:     xmlDocPtr doc; /* the document */
20259:     int n_doc;
20260: 
20261:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
20262:         mem_base = xmlMemBlocks();
20263:         doc = gen_xmlDocPtr(n_doc, 0);
20264: 
20265:         ret_val = xmlDocGetRootElement(doc);
20266:         desret_xmlNodePtr(ret_val);
20267:         call_tests++;
20268:         des_xmlDocPtr(n_doc, doc, 0);
20269:         xmlResetLastError();
20270:         if (mem_base != xmlMemBlocks()) {
20271:             printf("Leak of %d blocks found in xmlDocGetRootElement",
20272: 	           xmlMemBlocks() - mem_base);
20273: 	    test_ret++;
20274:             printf(" %d", n_doc);
20275:             printf("\n");
20276:         }
20277:     }
20278:     function_tests++;
20279: 
20280:     return(test_ret);
20281: }
20282: 
20283: 
20284: static int
20285: test_xmlDocSetRootElement(void) {
20286:     int test_ret = 0;
20287: 
20288: #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED)
20289:     int mem_base;
20290:     xmlNodePtr ret_val;
20291:     xmlDocPtr doc; /* the document */
20292:     int n_doc;
20293:     xmlNodePtr root; /* the new document root element, if root is NULL no action is taken, to remove a node from a document use xmlUnlinkNode(root) instead. */
20294:     int n_root;
20295: 
20296:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
20297:     for (n_root = 0;n_root < gen_nb_xmlNodePtr_in;n_root++) {
20298:         mem_base = xmlMemBlocks();
20299:         doc = gen_xmlDocPtr(n_doc, 0);
20300:         root = gen_xmlNodePtr_in(n_root, 1);
20301: 
20302:         ret_val = xmlDocSetRootElement(doc, root);
20303:         if (doc == NULL) { xmlFreeNode(root) ; root = NULL ; }
20304:         desret_xmlNodePtr(ret_val);
20305:         call_tests++;
20306:         des_xmlDocPtr(n_doc, doc, 0);
20307:         des_xmlNodePtr_in(n_root, root, 1);
20308:         xmlResetLastError();
20309:         if (mem_base != xmlMemBlocks()) {
20310:             printf("Leak of %d blocks found in xmlDocSetRootElement",
20311: 	           xmlMemBlocks() - mem_base);
20312: 	    test_ret++;
20313:             printf(" %d", n_doc);
20314:             printf(" %d", n_root);
20315:             printf("\n");
20316:         }
20317:     }
20318:     }
20319:     function_tests++;
20320: #endif
20321: 
20322:     return(test_ret);
20323: }
20324: 
20325: 
20326: static int
20327: test_xmlElemDump(void) {
20328:     int test_ret = 0;
20329: 
20330: #if defined(LIBXML_OUTPUT_ENABLED)
20331:     int mem_base;
20332:     FILE * f; /* the FILE * for the output */
20333:     int n_f;
20334:     xmlDocPtr doc; /* the document */
20335:     int n_doc;
20336:     xmlNodePtr cur; /* the current node */
20337:     int n_cur;
20338: 
20339:     for (n_f = 0;n_f < gen_nb_FILE_ptr;n_f++) {
20340:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
20341:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
20342:         mem_base = xmlMemBlocks();
20343:         f = gen_FILE_ptr(n_f, 0);
20344:         doc = gen_xmlDocPtr(n_doc, 1);
20345:         cur = gen_xmlNodePtr(n_cur, 2);
20346: 
20347:         xmlElemDump(f, doc, cur);
20348:         call_tests++;
20349:         des_FILE_ptr(n_f, f, 0);
20350:         des_xmlDocPtr(n_doc, doc, 1);
20351:         des_xmlNodePtr(n_cur, cur, 2);
20352:         xmlResetLastError();
20353:         if (mem_base != xmlMemBlocks()) {
20354:             printf("Leak of %d blocks found in xmlElemDump",
20355: 	           xmlMemBlocks() - mem_base);
20356: 	    test_ret++;
20357:             printf(" %d", n_f);
20358:             printf(" %d", n_doc);
20359:             printf(" %d", n_cur);
20360:             printf("\n");
20361:         }
20362:     }
20363:     }
20364:     }
20365:     function_tests++;
20366: #endif
20367: 
20368:     return(test_ret);
20369: }
20370: 
20371: 
20372: static int
20373: test_xmlFirstElementChild(void) {
20374:     int test_ret = 0;
20375: 
20376: #if defined(LIBXML_TREE_ENABLED)
20377:     int mem_base;
20378:     xmlNodePtr ret_val;
20379:     xmlNodePtr parent; /* the parent node */
20380:     int n_parent;
20381: 
20382:     for (n_parent = 0;n_parent < gen_nb_xmlNodePtr;n_parent++) {
20383:         mem_base = xmlMemBlocks();
20384:         parent = gen_xmlNodePtr(n_parent, 0);
20385: 
20386:         ret_val = xmlFirstElementChild(parent);
20387:         desret_xmlNodePtr(ret_val);
20388:         call_tests++;
20389:         des_xmlNodePtr(n_parent, parent, 0);
20390:         xmlResetLastError();
20391:         if (mem_base != xmlMemBlocks()) {
20392:             printf("Leak of %d blocks found in xmlFirstElementChild",
20393: 	           xmlMemBlocks() - mem_base);
20394: 	    test_ret++;
20395:             printf(" %d", n_parent);
20396:             printf("\n");
20397:         }
20398:     }
20399:     function_tests++;
20400: #endif
20401: 
20402:     return(test_ret);
20403: }
20404: 
20405: 
20406: static int
20407: test_xmlGetBufferAllocationScheme(void) {
20408:     int test_ret = 0;
20409: 
20410:     int mem_base;
20411:     xmlBufferAllocationScheme ret_val;
20412: 
20413:         mem_base = xmlMemBlocks();
20414: 
20415:         ret_val = xmlGetBufferAllocationScheme();
20416:         desret_xmlBufferAllocationScheme(ret_val);
20417:         call_tests++;
20418:         xmlResetLastError();
20419:         if (mem_base != xmlMemBlocks()) {
20420:             printf("Leak of %d blocks found in xmlGetBufferAllocationScheme",
20421: 	           xmlMemBlocks() - mem_base);
20422: 	    test_ret++;
20423:             printf("\n");
20424:         }
20425:     function_tests++;
20426: 
20427:     return(test_ret);
20428: }
20429: 
20430: 
20431: static int
20432: test_xmlGetCompressMode(void) {
20433:     int test_ret = 0;
20434: 
20435:     int mem_base;
20436:     int ret_val;
20437: 
20438:         mem_base = xmlMemBlocks();
20439: 
20440:         ret_val = xmlGetCompressMode();
20441:         desret_int(ret_val);
20442:         call_tests++;
20443:         xmlResetLastError();
20444:         if (mem_base != xmlMemBlocks()) {
20445:             printf("Leak of %d blocks found in xmlGetCompressMode",
20446: 	           xmlMemBlocks() - mem_base);
20447: 	    test_ret++;
20448:             printf("\n");
20449:         }
20450:     function_tests++;
20451: 
20452:     return(test_ret);
20453: }
20454: 
20455: 
20456: static int
20457: test_xmlGetDocCompressMode(void) {
20458:     int test_ret = 0;
20459: 
20460:     int mem_base;
20461:     int ret_val;
20462:     xmlDocPtr doc; /* the document */
20463:     int n_doc;
20464: 
20465:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
20466:         mem_base = xmlMemBlocks();
20467:         doc = gen_xmlDocPtr(n_doc, 0);
20468: 
20469:         ret_val = xmlGetDocCompressMode(doc);
20470:         desret_int(ret_val);
20471:         call_tests++;
20472:         des_xmlDocPtr(n_doc, doc, 0);
20473:         xmlResetLastError();
20474:         if (mem_base != xmlMemBlocks()) {
20475:             printf("Leak of %d blocks found in xmlGetDocCompressMode",
20476: 	           xmlMemBlocks() - mem_base);
20477: 	    test_ret++;
20478:             printf(" %d", n_doc);
20479:             printf("\n");
20480:         }
20481:     }
20482:     function_tests++;
20483: 
20484:     return(test_ret);
20485: }
20486: 
20487: 
20488: static int
20489: test_xmlGetIntSubset(void) {
20490:     int test_ret = 0;
20491: 
20492:     int mem_base;
20493:     xmlDtdPtr ret_val;
20494:     xmlDocPtr doc; /* the document pointer */
20495:     int n_doc;
20496: 
20497:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
20498:         mem_base = xmlMemBlocks();
20499:         doc = gen_xmlDocPtr(n_doc, 0);
20500: 
20501:         ret_val = xmlGetIntSubset(doc);
20502:         desret_xmlDtdPtr(ret_val);
20503:         call_tests++;
20504:         des_xmlDocPtr(n_doc, doc, 0);
20505:         xmlResetLastError();
20506:         if (mem_base != xmlMemBlocks()) {
20507:             printf("Leak of %d blocks found in xmlGetIntSubset",
20508: 	           xmlMemBlocks() - mem_base);
20509: 	    test_ret++;
20510:             printf(" %d", n_doc);
20511:             printf("\n");
20512:         }
20513:     }
20514:     function_tests++;
20515: 
20516:     return(test_ret);
20517: }
20518: 
20519: 
20520: static int
20521: test_xmlGetLastChild(void) {
20522:     int test_ret = 0;
20523: 
20524:     int mem_base;
20525:     xmlNodePtr ret_val;
20526:     xmlNodePtr parent; /* the parent node */
20527:     int n_parent;
20528: 
20529:     for (n_parent = 0;n_parent < gen_nb_xmlNodePtr;n_parent++) {
20530:         mem_base = xmlMemBlocks();
20531:         parent = gen_xmlNodePtr(n_parent, 0);
20532: 
20533:         ret_val = xmlGetLastChild(parent);
20534:         desret_xmlNodePtr(ret_val);
20535:         call_tests++;
20536:         des_xmlNodePtr(n_parent, parent, 0);
20537:         xmlResetLastError();
20538:         if (mem_base != xmlMemBlocks()) {
20539:             printf("Leak of %d blocks found in xmlGetLastChild",
20540: 	           xmlMemBlocks() - mem_base);
20541: 	    test_ret++;
20542:             printf(" %d", n_parent);
20543:             printf("\n");
20544:         }
20545:     }
20546:     function_tests++;
20547: 
20548:     return(test_ret);
20549: }
20550: 
20551: 
20552: static int
20553: test_xmlGetLineNo(void) {
20554:     int test_ret = 0;
20555: 
20556:     int mem_base;
20557:     long ret_val;
20558:     xmlNodePtr node; /* valid node */
20559:     int n_node;
20560: 
20561:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
20562:         mem_base = xmlMemBlocks();
20563:         node = gen_xmlNodePtr(n_node, 0);
20564: 
20565:         ret_val = xmlGetLineNo(node);
20566:         desret_long(ret_val);
20567:         call_tests++;
20568:         des_xmlNodePtr(n_node, node, 0);
20569:         xmlResetLastError();
20570:         if (mem_base != xmlMemBlocks()) {
20571:             printf("Leak of %d blocks found in xmlGetLineNo",
20572: 	           xmlMemBlocks() - mem_base);
20573: 	    test_ret++;
20574:             printf(" %d", n_node);
20575:             printf("\n");
20576:         }
20577:     }
20578:     function_tests++;
20579: 
20580:     return(test_ret);
20581: }
20582: 
20583: 
20584: static int
20585: test_xmlGetNoNsProp(void) {
20586:     int test_ret = 0;
20587: 
20588:     int mem_base;
20589:     xmlChar * ret_val;
20590:     xmlNodePtr node; /* the node */
20591:     int n_node;
20592:     xmlChar * name; /* the attribute name */
20593:     int n_name;
20594: 
20595:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
20596:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
20597:         mem_base = xmlMemBlocks();
20598:         node = gen_xmlNodePtr(n_node, 0);
20599:         name = gen_const_xmlChar_ptr(n_name, 1);
20600: 
20601:         ret_val = xmlGetNoNsProp(node, (const xmlChar *)name);
20602:         desret_xmlChar_ptr(ret_val);
20603:         call_tests++;
20604:         des_xmlNodePtr(n_node, node, 0);
20605:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
20606:         xmlResetLastError();
20607:         if (mem_base != xmlMemBlocks()) {
20608:             printf("Leak of %d blocks found in xmlGetNoNsProp",
20609: 	           xmlMemBlocks() - mem_base);
20610: 	    test_ret++;
20611:             printf(" %d", n_node);
20612:             printf(" %d", n_name);
20613:             printf("\n");
20614:         }
20615:     }
20616:     }
20617:     function_tests++;
20618: 
20619:     return(test_ret);
20620: }
20621: 
20622: 
20623: static int
20624: test_xmlGetNodePath(void) {
20625:     int test_ret = 0;
20626: 
20627: #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_DEBUG_ENABLED)
20628:     int mem_base;
20629:     xmlChar * ret_val;
20630:     xmlNodePtr node; /* a node */
20631:     int n_node;
20632: 
20633:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
20634:         mem_base = xmlMemBlocks();
20635:         node = gen_xmlNodePtr(n_node, 0);
20636: 
20637:         ret_val = xmlGetNodePath(node);
20638:         desret_xmlChar_ptr(ret_val);
20639:         call_tests++;
20640:         des_xmlNodePtr(n_node, node, 0);
20641:         xmlResetLastError();
20642:         if (mem_base != xmlMemBlocks()) {
20643:             printf("Leak of %d blocks found in xmlGetNodePath",
20644: 	           xmlMemBlocks() - mem_base);
20645: 	    test_ret++;
20646:             printf(" %d", n_node);
20647:             printf("\n");
20648:         }
20649:     }
20650:     function_tests++;
20651: #endif
20652: 
20653:     return(test_ret);
20654: }
20655: 
20656: 
20657: static int
20658: test_xmlGetNsList(void) {
20659:     int test_ret = 0;
20660: 
20661: 
20662:     /* missing type support */
20663:     return(test_ret);
20664: }
20665: 
20666: 
20667: static int
20668: test_xmlGetNsProp(void) {
20669:     int test_ret = 0;
20670: 
20671:     int mem_base;
20672:     xmlChar * ret_val;
20673:     xmlNodePtr node; /* the node */
20674:     int n_node;
20675:     xmlChar * name; /* the attribute name */
20676:     int n_name;
20677:     xmlChar * nameSpace; /* the URI of the namespace */
20678:     int n_nameSpace;
20679: 
20680:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
20681:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
20682:     for (n_nameSpace = 0;n_nameSpace < gen_nb_const_xmlChar_ptr;n_nameSpace++) {
20683:         mem_base = xmlMemBlocks();
20684:         node = gen_xmlNodePtr(n_node, 0);
20685:         name = gen_const_xmlChar_ptr(n_name, 1);
20686:         nameSpace = gen_const_xmlChar_ptr(n_nameSpace, 2);
20687: 
20688:         ret_val = xmlGetNsProp(node, (const xmlChar *)name, (const xmlChar *)nameSpace);
20689:         desret_xmlChar_ptr(ret_val);
20690:         call_tests++;
20691:         des_xmlNodePtr(n_node, node, 0);
20692:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
20693:         des_const_xmlChar_ptr(n_nameSpace, (const xmlChar *)nameSpace, 2);
20694:         xmlResetLastError();
20695:         if (mem_base != xmlMemBlocks()) {
20696:             printf("Leak of %d blocks found in xmlGetNsProp",
20697: 	           xmlMemBlocks() - mem_base);
20698: 	    test_ret++;
20699:             printf(" %d", n_node);
20700:             printf(" %d", n_name);
20701:             printf(" %d", n_nameSpace);
20702:             printf("\n");
20703:         }
20704:     }
20705:     }
20706:     }
20707:     function_tests++;
20708: 
20709:     return(test_ret);
20710: }
20711: 
20712: 
20713: static int
20714: test_xmlGetProp(void) {
20715:     int test_ret = 0;
20716: 
20717:     int mem_base;
20718:     xmlChar * ret_val;
20719:     xmlNodePtr node; /* the node */
20720:     int n_node;
20721:     xmlChar * name; /* the attribute name */
20722:     int n_name;
20723: 
20724:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
20725:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
20726:         mem_base = xmlMemBlocks();
20727:         node = gen_xmlNodePtr(n_node, 0);
20728:         name = gen_const_xmlChar_ptr(n_name, 1);
20729: 
20730:         ret_val = xmlGetProp(node, (const xmlChar *)name);
20731:         desret_xmlChar_ptr(ret_val);
20732:         call_tests++;
20733:         des_xmlNodePtr(n_node, node, 0);
20734:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
20735:         xmlResetLastError();
20736:         if (mem_base != xmlMemBlocks()) {
20737:             printf("Leak of %d blocks found in xmlGetProp",
20738: 	           xmlMemBlocks() - mem_base);
20739: 	    test_ret++;
20740:             printf(" %d", n_node);
20741:             printf(" %d", n_name);
20742:             printf("\n");
20743:         }
20744:     }
20745:     }
20746:     function_tests++;
20747: 
20748:     return(test_ret);
20749: }
20750: 
20751: 
20752: static int
20753: test_xmlHasNsProp(void) {
20754:     int test_ret = 0;
20755: 
20756:     int mem_base;
20757:     xmlAttrPtr ret_val;
20758:     xmlNodePtr node; /* the node */
20759:     int n_node;
20760:     xmlChar * name; /* the attribute name */
20761:     int n_name;
20762:     xmlChar * nameSpace; /* the URI of the namespace */
20763:     int n_nameSpace;
20764: 
20765:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
20766:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
20767:     for (n_nameSpace = 0;n_nameSpace < gen_nb_const_xmlChar_ptr;n_nameSpace++) {
20768:         mem_base = xmlMemBlocks();
20769:         node = gen_xmlNodePtr(n_node, 0);
20770:         name = gen_const_xmlChar_ptr(n_name, 1);
20771:         nameSpace = gen_const_xmlChar_ptr(n_nameSpace, 2);
20772: 
20773:         ret_val = xmlHasNsProp(node, (const xmlChar *)name, (const xmlChar *)nameSpace);
20774:         desret_xmlAttrPtr(ret_val);
20775:         call_tests++;
20776:         des_xmlNodePtr(n_node, node, 0);
20777:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
20778:         des_const_xmlChar_ptr(n_nameSpace, (const xmlChar *)nameSpace, 2);
20779:         xmlResetLastError();
20780:         if (mem_base != xmlMemBlocks()) {
20781:             printf("Leak of %d blocks found in xmlHasNsProp",
20782: 	           xmlMemBlocks() - mem_base);
20783: 	    test_ret++;
20784:             printf(" %d", n_node);
20785:             printf(" %d", n_name);
20786:             printf(" %d", n_nameSpace);
20787:             printf("\n");
20788:         }
20789:     }
20790:     }
20791:     }
20792:     function_tests++;
20793: 
20794:     return(test_ret);
20795: }
20796: 
20797: 
20798: static int
20799: test_xmlHasProp(void) {
20800:     int test_ret = 0;
20801: 
20802:     int mem_base;
20803:     xmlAttrPtr ret_val;
20804:     xmlNodePtr node; /* the node */
20805:     int n_node;
20806:     xmlChar * name; /* the attribute name */
20807:     int n_name;
20808: 
20809:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
20810:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
20811:         mem_base = xmlMemBlocks();
20812:         node = gen_xmlNodePtr(n_node, 0);
20813:         name = gen_const_xmlChar_ptr(n_name, 1);
20814: 
20815:         ret_val = xmlHasProp(node, (const xmlChar *)name);
20816:         desret_xmlAttrPtr(ret_val);
20817:         call_tests++;
20818:         des_xmlNodePtr(n_node, node, 0);
20819:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
20820:         xmlResetLastError();
20821:         if (mem_base != xmlMemBlocks()) {
20822:             printf("Leak of %d blocks found in xmlHasProp",
20823: 	           xmlMemBlocks() - mem_base);
20824: 	    test_ret++;
20825:             printf(" %d", n_node);
20826:             printf(" %d", n_name);
20827:             printf("\n");
20828:         }
20829:     }
20830:     }
20831:     function_tests++;
20832: 
20833:     return(test_ret);
20834: }
20835: 
20836: 
20837: static int
20838: test_xmlIsBlankNode(void) {
20839:     int test_ret = 0;
20840: 
20841:     int mem_base;
20842:     int ret_val;
20843:     xmlNodePtr node; /* the node */
20844:     int n_node;
20845: 
20846:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
20847:         mem_base = xmlMemBlocks();
20848:         node = gen_xmlNodePtr(n_node, 0);
20849: 
20850:         ret_val = xmlIsBlankNode(node);
20851:         desret_int(ret_val);
20852:         call_tests++;
20853:         des_xmlNodePtr(n_node, node, 0);
20854:         xmlResetLastError();
20855:         if (mem_base != xmlMemBlocks()) {
20856:             printf("Leak of %d blocks found in xmlIsBlankNode",
20857: 	           xmlMemBlocks() - mem_base);
20858: 	    test_ret++;
20859:             printf(" %d", n_node);
20860:             printf("\n");
20861:         }
20862:     }
20863:     function_tests++;
20864: 
20865:     return(test_ret);
20866: }
20867: 
20868: 
20869: static int
20870: test_xmlIsXHTML(void) {
20871:     int test_ret = 0;
20872: 
20873:     int mem_base;
20874:     int ret_val;
20875:     xmlChar * systemID; /* the system identifier */
20876:     int n_systemID;
20877:     xmlChar * publicID; /* the public identifier */
20878:     int n_publicID;
20879: 
20880:     for (n_systemID = 0;n_systemID < gen_nb_const_xmlChar_ptr;n_systemID++) {
20881:     for (n_publicID = 0;n_publicID < gen_nb_const_xmlChar_ptr;n_publicID++) {
20882:         mem_base = xmlMemBlocks();
20883:         systemID = gen_const_xmlChar_ptr(n_systemID, 0);
20884:         publicID = gen_const_xmlChar_ptr(n_publicID, 1);
20885: 
20886:         ret_val = xmlIsXHTML((const xmlChar *)systemID, (const xmlChar *)publicID);
20887:         desret_int(ret_val);
20888:         call_tests++;
20889:         des_const_xmlChar_ptr(n_systemID, (const xmlChar *)systemID, 0);
20890:         des_const_xmlChar_ptr(n_publicID, (const xmlChar *)publicID, 1);
20891:         xmlResetLastError();
20892:         if (mem_base != xmlMemBlocks()) {
20893:             printf("Leak of %d blocks found in xmlIsXHTML",
20894: 	           xmlMemBlocks() - mem_base);
20895: 	    test_ret++;
20896:             printf(" %d", n_systemID);
20897:             printf(" %d", n_publicID);
20898:             printf("\n");
20899:         }
20900:     }
20901:     }
20902:     function_tests++;
20903: 
20904:     return(test_ret);
20905: }
20906: 
20907: 
20908: static int
20909: test_xmlLastElementChild(void) {
20910:     int test_ret = 0;
20911: 
20912: #if defined(LIBXML_TREE_ENABLED)
20913:     int mem_base;
20914:     xmlNodePtr ret_val;
20915:     xmlNodePtr parent; /* the parent node */
20916:     int n_parent;
20917: 
20918:     for (n_parent = 0;n_parent < gen_nb_xmlNodePtr;n_parent++) {
20919:         mem_base = xmlMemBlocks();
20920:         parent = gen_xmlNodePtr(n_parent, 0);
20921: 
20922:         ret_val = xmlLastElementChild(parent);
20923:         desret_xmlNodePtr(ret_val);
20924:         call_tests++;
20925:         des_xmlNodePtr(n_parent, parent, 0);
20926:         xmlResetLastError();
20927:         if (mem_base != xmlMemBlocks()) {
20928:             printf("Leak of %d blocks found in xmlLastElementChild",
20929: 	           xmlMemBlocks() - mem_base);
20930: 	    test_ret++;
20931:             printf(" %d", n_parent);
20932:             printf("\n");
20933:         }
20934:     }
20935:     function_tests++;
20936: #endif
20937: 
20938:     return(test_ret);
20939: }
20940: 
20941: 
20942: static int
20943: test_xmlNewCDataBlock(void) {
20944:     int test_ret = 0;
20945: 
20946:     int mem_base;
20947:     xmlNodePtr ret_val;
20948:     xmlDocPtr doc; /* the document */
20949:     int n_doc;
20950:     xmlChar * content; /* the CDATA block content content */
20951:     int n_content;
20952:     int len; /* the length of the block */
20953:     int n_len;
20954: 
20955:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
20956:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
20957:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
20958:         mem_base = xmlMemBlocks();
20959:         doc = gen_xmlDocPtr(n_doc, 0);
20960:         content = gen_const_xmlChar_ptr(n_content, 1);
20961:         len = gen_int(n_len, 2);
20962: 
20963:         ret_val = xmlNewCDataBlock(doc, (const xmlChar *)content, len);
20964:         desret_xmlNodePtr(ret_val);
20965:         call_tests++;
20966:         des_xmlDocPtr(n_doc, doc, 0);
20967:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 1);
20968:         des_int(n_len, len, 2);
20969:         xmlResetLastError();
20970:         if (mem_base != xmlMemBlocks()) {
20971:             printf("Leak of %d blocks found in xmlNewCDataBlock",
20972: 	           xmlMemBlocks() - mem_base);
20973: 	    test_ret++;
20974:             printf(" %d", n_doc);
20975:             printf(" %d", n_content);
20976:             printf(" %d", n_len);
20977:             printf("\n");
20978:         }
20979:     }
20980:     }
20981:     }
20982:     function_tests++;
20983: 
20984:     return(test_ret);
20985: }
20986: 
20987: 
20988: static int
20989: test_xmlNewCharRef(void) {
20990:     int test_ret = 0;
20991: 
20992:     int mem_base;
20993:     xmlNodePtr ret_val;
20994:     xmlDocPtr doc; /* the document */
20995:     int n_doc;
20996:     xmlChar * name; /* the char ref string, starting with # or "&# ... ;" */
20997:     int n_name;
20998: 
20999:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
21000:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
21001:         mem_base = xmlMemBlocks();
21002:         doc = gen_xmlDocPtr(n_doc, 0);
21003:         name = gen_const_xmlChar_ptr(n_name, 1);
21004: 
21005:         ret_val = xmlNewCharRef(doc, (const xmlChar *)name);
21006:         desret_xmlNodePtr(ret_val);
21007:         call_tests++;
21008:         des_xmlDocPtr(n_doc, doc, 0);
21009:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
21010:         xmlResetLastError();
21011:         if (mem_base != xmlMemBlocks()) {
21012:             printf("Leak of %d blocks found in xmlNewCharRef",
21013: 	           xmlMemBlocks() - mem_base);
21014: 	    test_ret++;
21015:             printf(" %d", n_doc);
21016:             printf(" %d", n_name);
21017:             printf("\n");
21018:         }
21019:     }
21020:     }
21021:     function_tests++;
21022: 
21023:     return(test_ret);
21024: }
21025: 
21026: 
21027: static int
21028: test_xmlNewChild(void) {
21029:     int test_ret = 0;
21030: 
21031: #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
21032: #ifdef LIBXML_TREE_ENABLED
21033:     int mem_base;
21034:     xmlNodePtr ret_val;
21035:     xmlNodePtr parent; /* the parent node */
21036:     int n_parent;
21037:     xmlNsPtr ns; /* a namespace if any */
21038:     int n_ns;
21039:     xmlChar * name; /* the name of the child */
21040:     int n_name;
21041:     xmlChar * content; /* the XML content of the child if any. */
21042:     int n_content;
21043: 
21044:     for (n_parent = 0;n_parent < gen_nb_xmlNodePtr;n_parent++) {
21045:     for (n_ns = 0;n_ns < gen_nb_xmlNsPtr;n_ns++) {
21046:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
21047:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
21048:         mem_base = xmlMemBlocks();
21049:         parent = gen_xmlNodePtr(n_parent, 0);
21050:         ns = gen_xmlNsPtr(n_ns, 1);
21051:         name = gen_const_xmlChar_ptr(n_name, 2);
21052:         content = gen_const_xmlChar_ptr(n_content, 3);
21053: 
21054:         ret_val = xmlNewChild(parent, ns, (const xmlChar *)name, (const xmlChar *)content);
21055:         desret_xmlNodePtr(ret_val);
21056:         call_tests++;
21057:         des_xmlNodePtr(n_parent, parent, 0);
21058:         des_xmlNsPtr(n_ns, ns, 1);
21059:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
21060:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 3);
21061:         xmlResetLastError();
21062:         if (mem_base != xmlMemBlocks()) {
21063:             printf("Leak of %d blocks found in xmlNewChild",
21064: 	           xmlMemBlocks() - mem_base);
21065: 	    test_ret++;
21066:             printf(" %d", n_parent);
21067:             printf(" %d", n_ns);
21068:             printf(" %d", n_name);
21069:             printf(" %d", n_content);
21070:             printf("\n");
21071:         }
21072:     }
21073:     }
21074:     }
21075:     }
21076:     function_tests++;
21077: #endif
21078: #endif
21079: 
21080:     return(test_ret);
21081: }
21082: 
21083: 
21084: static int
21085: test_xmlNewComment(void) {
21086:     int test_ret = 0;
21087: 
21088:     int mem_base;
21089:     xmlNodePtr ret_val;
21090:     xmlChar * content; /* the comment content */
21091:     int n_content;
21092: 
21093:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
21094:         mem_base = xmlMemBlocks();
21095:         content = gen_const_xmlChar_ptr(n_content, 0);
21096: 
21097:         ret_val = xmlNewComment((const xmlChar *)content);
21098:         desret_xmlNodePtr(ret_val);
21099:         call_tests++;
21100:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 0);
21101:         xmlResetLastError();
21102:         if (mem_base != xmlMemBlocks()) {
21103:             printf("Leak of %d blocks found in xmlNewComment",
21104: 	           xmlMemBlocks() - mem_base);
21105: 	    test_ret++;
21106:             printf(" %d", n_content);
21107:             printf("\n");
21108:         }
21109:     }
21110:     function_tests++;
21111: 
21112:     return(test_ret);
21113: }
21114: 
21115: 
21116: static int
21117: test_xmlNewDoc(void) {
21118:     int test_ret = 0;
21119: 
21120:     int mem_base;
21121:     xmlDocPtr ret_val;
21122:     xmlChar * version; /* xmlChar string giving the version of XML "1.0" */
21123:     int n_version;
21124: 
21125:     for (n_version = 0;n_version < gen_nb_const_xmlChar_ptr;n_version++) {
21126:         mem_base = xmlMemBlocks();
21127:         version = gen_const_xmlChar_ptr(n_version, 0);
21128: 
21129:         ret_val = xmlNewDoc((const xmlChar *)version);
21130:         desret_xmlDocPtr(ret_val);
21131:         call_tests++;
21132:         des_const_xmlChar_ptr(n_version, (const xmlChar *)version, 0);
21133:         xmlResetLastError();
21134:         if (mem_base != xmlMemBlocks()) {
21135:             printf("Leak of %d blocks found in xmlNewDoc",
21136: 	           xmlMemBlocks() - mem_base);
21137: 	    test_ret++;
21138:             printf(" %d", n_version);
21139:             printf("\n");
21140:         }
21141:     }
21142:     function_tests++;
21143: 
21144:     return(test_ret);
21145: }
21146: 
21147: 
21148: static int
21149: test_xmlNewDocComment(void) {
21150:     int test_ret = 0;
21151: 
21152:     int mem_base;
21153:     xmlNodePtr ret_val;
21154:     xmlDocPtr doc; /* the document */
21155:     int n_doc;
21156:     xmlChar * content; /* the comment content */
21157:     int n_content;
21158: 
21159:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
21160:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
21161:         mem_base = xmlMemBlocks();
21162:         doc = gen_xmlDocPtr(n_doc, 0);
21163:         content = gen_const_xmlChar_ptr(n_content, 1);
21164: 
21165:         ret_val = xmlNewDocComment(doc, (const xmlChar *)content);
21166:         desret_xmlNodePtr(ret_val);
21167:         call_tests++;
21168:         des_xmlDocPtr(n_doc, doc, 0);
21169:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 1);
21170:         xmlResetLastError();
21171:         if (mem_base != xmlMemBlocks()) {
21172:             printf("Leak of %d blocks found in xmlNewDocComment",
21173: 	           xmlMemBlocks() - mem_base);
21174: 	    test_ret++;
21175:             printf(" %d", n_doc);
21176:             printf(" %d", n_content);
21177:             printf("\n");
21178:         }
21179:     }
21180:     }
21181:     function_tests++;
21182: 
21183:     return(test_ret);
21184: }
21185: 
21186: 
21187: static int
21188: test_xmlNewDocFragment(void) {
21189:     int test_ret = 0;
21190: 
21191: #if defined(LIBXML_TREE_ENABLED)
21192:     int mem_base;
21193:     xmlNodePtr ret_val;
21194:     xmlDocPtr doc; /* the document owning the fragment */
21195:     int n_doc;
21196: 
21197:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
21198:         mem_base = xmlMemBlocks();
21199:         doc = gen_xmlDocPtr(n_doc, 0);
21200: 
21201:         ret_val = xmlNewDocFragment(doc);
21202:         desret_xmlNodePtr(ret_val);
21203:         call_tests++;
21204:         des_xmlDocPtr(n_doc, doc, 0);
21205:         xmlResetLastError();
21206:         if (mem_base != xmlMemBlocks()) {
21207:             printf("Leak of %d blocks found in xmlNewDocFragment",
21208: 	           xmlMemBlocks() - mem_base);
21209: 	    test_ret++;
21210:             printf(" %d", n_doc);
21211:             printf("\n");
21212:         }
21213:     }
21214:     function_tests++;
21215: #endif
21216: 
21217:     return(test_ret);
21218: }
21219: 
21220: 
21221: static int
21222: test_xmlNewDocNode(void) {
21223:     int test_ret = 0;
21224: 
21225:     int mem_base;
21226:     xmlNodePtr ret_val;
21227:     xmlDocPtr doc; /* the document */
21228:     int n_doc;
21229:     xmlNsPtr ns; /* namespace if any */
21230:     int n_ns;
21231:     xmlChar * name; /* the node name */
21232:     int n_name;
21233:     xmlChar * content; /* the XML text content if any */
21234:     int n_content;
21235: 
21236:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
21237:     for (n_ns = 0;n_ns < gen_nb_xmlNsPtr;n_ns++) {
21238:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
21239:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
21240:         mem_base = xmlMemBlocks();
21241:         doc = gen_xmlDocPtr(n_doc, 0);
21242:         ns = gen_xmlNsPtr(n_ns, 1);
21243:         name = gen_const_xmlChar_ptr(n_name, 2);
21244:         content = gen_const_xmlChar_ptr(n_content, 3);
21245: 
21246:         ret_val = xmlNewDocNode(doc, ns, (const xmlChar *)name, (const xmlChar *)content);
21247:         desret_xmlNodePtr(ret_val);
21248:         call_tests++;
21249:         des_xmlDocPtr(n_doc, doc, 0);
21250:         des_xmlNsPtr(n_ns, ns, 1);
21251:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
21252:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 3);
21253:         xmlResetLastError();
21254:         if (mem_base != xmlMemBlocks()) {
21255:             printf("Leak of %d blocks found in xmlNewDocNode",
21256: 	           xmlMemBlocks() - mem_base);
21257: 	    test_ret++;
21258:             printf(" %d", n_doc);
21259:             printf(" %d", n_ns);
21260:             printf(" %d", n_name);
21261:             printf(" %d", n_content);
21262:             printf("\n");
21263:         }
21264:     }
21265:     }
21266:     }
21267:     }
21268:     function_tests++;
21269: 
21270:     return(test_ret);
21271: }
21272: 
21273: 
21274: static int
21275: test_xmlNewDocNodeEatName(void) {
21276:     int test_ret = 0;
21277: 
21278:     int mem_base;
21279:     xmlNodePtr ret_val;
21280:     xmlDocPtr doc; /* the document */
21281:     int n_doc;
21282:     xmlNsPtr ns; /* namespace if any */
21283:     int n_ns;
21284:     xmlChar * name; /* the node name */
21285:     int n_name;
21286:     xmlChar * content; /* the XML text content if any */
21287:     int n_content;
21288: 
21289:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
21290:     for (n_ns = 0;n_ns < gen_nb_xmlNsPtr;n_ns++) {
21291:     for (n_name = 0;n_name < gen_nb_eaten_name;n_name++) {
21292:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
21293:         mem_base = xmlMemBlocks();
21294:         doc = gen_xmlDocPtr(n_doc, 0);
21295:         ns = gen_xmlNsPtr(n_ns, 1);
21296:         name = gen_eaten_name(n_name, 2);
21297:         content = gen_const_xmlChar_ptr(n_content, 3);
21298: 
21299:         ret_val = xmlNewDocNodeEatName(doc, ns, name, (const xmlChar *)content);
21300:         desret_xmlNodePtr(ret_val);
21301:         call_tests++;
21302:         des_xmlDocPtr(n_doc, doc, 0);
21303:         des_xmlNsPtr(n_ns, ns, 1);
21304:         des_eaten_name(n_name, name, 2);
21305:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 3);
21306:         xmlResetLastError();
21307:         if (mem_base != xmlMemBlocks()) {
21308:             printf("Leak of %d blocks found in xmlNewDocNodeEatName",
21309: 	           xmlMemBlocks() - mem_base);
21310: 	    test_ret++;
21311:             printf(" %d", n_doc);
21312:             printf(" %d", n_ns);
21313:             printf(" %d", n_name);
21314:             printf(" %d", n_content);
21315:             printf("\n");
21316:         }
21317:     }
21318:     }
21319:     }
21320:     }
21321:     function_tests++;
21322: 
21323:     return(test_ret);
21324: }
21325: 
21326: 
21327: static int
21328: test_xmlNewDocPI(void) {
21329:     int test_ret = 0;
21330: 
21331:     int mem_base;
21332:     xmlNodePtr ret_val;
21333:     xmlDocPtr doc; /* the target document */
21334:     int n_doc;
21335:     xmlChar * name; /* the processing instruction name */
21336:     int n_name;
21337:     xmlChar * content; /* the PI content */
21338:     int n_content;
21339: 
21340:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
21341:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
21342:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
21343:         mem_base = xmlMemBlocks();
21344:         doc = gen_xmlDocPtr(n_doc, 0);
21345:         name = gen_const_xmlChar_ptr(n_name, 1);
21346:         content = gen_const_xmlChar_ptr(n_content, 2);
21347: 
21348:         ret_val = xmlNewDocPI(doc, (const xmlChar *)name, (const xmlChar *)content);
21349:         desret_xmlNodePtr(ret_val);
21350:         call_tests++;
21351:         des_xmlDocPtr(n_doc, doc, 0);
21352:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
21353:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 2);
21354:         xmlResetLastError();
21355:         if (mem_base != xmlMemBlocks()) {
21356:             printf("Leak of %d blocks found in xmlNewDocPI",
21357: 	           xmlMemBlocks() - mem_base);
21358: 	    test_ret++;
21359:             printf(" %d", n_doc);
21360:             printf(" %d", n_name);
21361:             printf(" %d", n_content);
21362:             printf("\n");
21363:         }
21364:     }
21365:     }
21366:     }
21367:     function_tests++;
21368: 
21369:     return(test_ret);
21370: }
21371: 
21372: 
21373: static int
21374: test_xmlNewDocProp(void) {
21375:     int test_ret = 0;
21376: 
21377:     int mem_base;
21378:     xmlAttrPtr ret_val;
21379:     xmlDocPtr doc; /* the document */
21380:     int n_doc;
21381:     xmlChar * name; /* the name of the attribute */
21382:     int n_name;
21383:     xmlChar * value; /* the value of the attribute */
21384:     int n_value;
21385: 
21386:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
21387:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
21388:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
21389:         mem_base = xmlMemBlocks();
21390:         doc = gen_xmlDocPtr(n_doc, 0);
21391:         name = gen_const_xmlChar_ptr(n_name, 1);
21392:         value = gen_const_xmlChar_ptr(n_value, 2);
21393: 
21394:         ret_val = xmlNewDocProp(doc, (const xmlChar *)name, (const xmlChar *)value);
21395:         desret_xmlAttrPtr(ret_val);
21396:         call_tests++;
21397:         des_xmlDocPtr(n_doc, doc, 0);
21398:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
21399:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 2);
21400:         xmlResetLastError();
21401:         if (mem_base != xmlMemBlocks()) {
21402:             printf("Leak of %d blocks found in xmlNewDocProp",
21403: 	           xmlMemBlocks() - mem_base);
21404: 	    test_ret++;
21405:             printf(" %d", n_doc);
21406:             printf(" %d", n_name);
21407:             printf(" %d", n_value);
21408:             printf("\n");
21409:         }
21410:     }
21411:     }
21412:     }
21413:     function_tests++;
21414: 
21415:     return(test_ret);
21416: }
21417: 
21418: 
21419: static int
21420: test_xmlNewDocRawNode(void) {
21421:     int test_ret = 0;
21422: 
21423: #if defined(LIBXML_TREE_ENABLED)
21424: #ifdef LIBXML_TREE_ENABLED
21425:     int mem_base;
21426:     xmlNodePtr ret_val;
21427:     xmlDocPtr doc; /* the document */
21428:     int n_doc;
21429:     xmlNsPtr ns; /* namespace if any */
21430:     int n_ns;
21431:     xmlChar * name; /* the node name */
21432:     int n_name;
21433:     xmlChar * content; /* the text content if any */
21434:     int n_content;
21435: 
21436:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
21437:     for (n_ns = 0;n_ns < gen_nb_xmlNsPtr;n_ns++) {
21438:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
21439:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
21440:         mem_base = xmlMemBlocks();
21441:         doc = gen_xmlDocPtr(n_doc, 0);
21442:         ns = gen_xmlNsPtr(n_ns, 1);
21443:         name = gen_const_xmlChar_ptr(n_name, 2);
21444:         content = gen_const_xmlChar_ptr(n_content, 3);
21445: 
21446:         ret_val = xmlNewDocRawNode(doc, ns, (const xmlChar *)name, (const xmlChar *)content);
21447:         desret_xmlNodePtr(ret_val);
21448:         call_tests++;
21449:         des_xmlDocPtr(n_doc, doc, 0);
21450:         des_xmlNsPtr(n_ns, ns, 1);
21451:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
21452:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 3);
21453:         xmlResetLastError();
21454:         if (mem_base != xmlMemBlocks()) {
21455:             printf("Leak of %d blocks found in xmlNewDocRawNode",
21456: 	           xmlMemBlocks() - mem_base);
21457: 	    test_ret++;
21458:             printf(" %d", n_doc);
21459:             printf(" %d", n_ns);
21460:             printf(" %d", n_name);
21461:             printf(" %d", n_content);
21462:             printf("\n");
21463:         }
21464:     }
21465:     }
21466:     }
21467:     }
21468:     function_tests++;
21469: #endif
21470: #endif
21471: 
21472:     return(test_ret);
21473: }
21474: 
21475: 
21476: static int
21477: test_xmlNewDocText(void) {
21478:     int test_ret = 0;
21479: 
21480:     int mem_base;
21481:     xmlNodePtr ret_val;
21482:     xmlDocPtr doc; /* the document */
21483:     int n_doc;
21484:     xmlChar * content; /* the text content */
21485:     int n_content;
21486: 
21487:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
21488:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
21489:         mem_base = xmlMemBlocks();
21490:         doc = gen_xmlDocPtr(n_doc, 0);
21491:         content = gen_const_xmlChar_ptr(n_content, 1);
21492: 
21493:         ret_val = xmlNewDocText(doc, (const xmlChar *)content);
21494:         desret_xmlNodePtr(ret_val);
21495:         call_tests++;
21496:         des_xmlDocPtr(n_doc, doc, 0);
21497:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 1);
21498:         xmlResetLastError();
21499:         if (mem_base != xmlMemBlocks()) {
21500:             printf("Leak of %d blocks found in xmlNewDocText",
21501: 	           xmlMemBlocks() - mem_base);
21502: 	    test_ret++;
21503:             printf(" %d", n_doc);
21504:             printf(" %d", n_content);
21505:             printf("\n");
21506:         }
21507:     }
21508:     }
21509:     function_tests++;
21510: 
21511:     return(test_ret);
21512: }
21513: 
21514: 
21515: static int
21516: test_xmlNewDocTextLen(void) {
21517:     int test_ret = 0;
21518: 
21519:     int mem_base;
21520:     xmlNodePtr ret_val;
21521:     xmlDocPtr doc; /* the document */
21522:     int n_doc;
21523:     xmlChar * content; /* the text content */
21524:     int n_content;
21525:     int len; /* the text len. */
21526:     int n_len;
21527: 
21528:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
21529:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
21530:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
21531:         mem_base = xmlMemBlocks();
21532:         doc = gen_xmlDocPtr(n_doc, 0);
21533:         content = gen_const_xmlChar_ptr(n_content, 1);
21534:         len = gen_int(n_len, 2);
21535: 
21536:         ret_val = xmlNewDocTextLen(doc, (const xmlChar *)content, len);
21537:         desret_xmlNodePtr(ret_val);
21538:         call_tests++;
21539:         des_xmlDocPtr(n_doc, doc, 0);
21540:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 1);
21541:         des_int(n_len, len, 2);
21542:         xmlResetLastError();
21543:         if (mem_base != xmlMemBlocks()) {
21544:             printf("Leak of %d blocks found in xmlNewDocTextLen",
21545: 	           xmlMemBlocks() - mem_base);
21546: 	    test_ret++;
21547:             printf(" %d", n_doc);
21548:             printf(" %d", n_content);
21549:             printf(" %d", n_len);
21550:             printf("\n");
21551:         }
21552:     }
21553:     }
21554:     }
21555:     function_tests++;
21556: 
21557:     return(test_ret);
21558: }
21559: 
21560: 
21561: static int
21562: test_xmlNewDtd(void) {
21563:     int test_ret = 0;
21564: 
21565:     int mem_base;
21566:     xmlDtdPtr ret_val;
21567:     xmlDocPtr doc; /* the document pointer */
21568:     int n_doc;
21569:     xmlChar * name; /* the DTD name */
21570:     int n_name;
21571:     xmlChar * ExternalID; /* the external ID */
21572:     int n_ExternalID;
21573:     xmlChar * SystemID; /* the system ID */
21574:     int n_SystemID;
21575: 
21576:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
21577:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
21578:     for (n_ExternalID = 0;n_ExternalID < gen_nb_const_xmlChar_ptr;n_ExternalID++) {
21579:     for (n_SystemID = 0;n_SystemID < gen_nb_const_xmlChar_ptr;n_SystemID++) {
21580:         mem_base = xmlMemBlocks();
21581:         doc = gen_xmlDocPtr(n_doc, 0);
21582:         name = gen_const_xmlChar_ptr(n_name, 1);
21583:         ExternalID = gen_const_xmlChar_ptr(n_ExternalID, 2);
21584:         SystemID = gen_const_xmlChar_ptr(n_SystemID, 3);
21585: 
21586:         ret_val = xmlNewDtd(doc, (const xmlChar *)name, (const xmlChar *)ExternalID, (const xmlChar *)SystemID);
21587:         desret_xmlDtdPtr(ret_val);
21588:         call_tests++;
21589:         des_xmlDocPtr(n_doc, doc, 0);
21590:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
21591:         des_const_xmlChar_ptr(n_ExternalID, (const xmlChar *)ExternalID, 2);
21592:         des_const_xmlChar_ptr(n_SystemID, (const xmlChar *)SystemID, 3);
21593:         xmlResetLastError();
21594:         if (mem_base != xmlMemBlocks()) {
21595:             printf("Leak of %d blocks found in xmlNewDtd",
21596: 	           xmlMemBlocks() - mem_base);
21597: 	    test_ret++;
21598:             printf(" %d", n_doc);
21599:             printf(" %d", n_name);
21600:             printf(" %d", n_ExternalID);
21601:             printf(" %d", n_SystemID);
21602:             printf("\n");
21603:         }
21604:     }
21605:     }
21606:     }
21607:     }
21608:     function_tests++;
21609: 
21610:     return(test_ret);
21611: }
21612: 
21613: 
21614: static int
21615: test_xmlNewNode(void) {
21616:     int test_ret = 0;
21617: 
21618:     int mem_base;
21619:     xmlNodePtr ret_val;
21620:     xmlNsPtr ns; /* namespace if any */
21621:     int n_ns;
21622:     xmlChar * name; /* the node name */
21623:     int n_name;
21624: 
21625:     for (n_ns = 0;n_ns < gen_nb_xmlNsPtr;n_ns++) {
21626:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
21627:         mem_base = xmlMemBlocks();
21628:         ns = gen_xmlNsPtr(n_ns, 0);
21629:         name = gen_const_xmlChar_ptr(n_name, 1);
21630: 
21631:         ret_val = xmlNewNode(ns, (const xmlChar *)name);
21632:         desret_xmlNodePtr(ret_val);
21633:         call_tests++;
21634:         des_xmlNsPtr(n_ns, ns, 0);
21635:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
21636:         xmlResetLastError();
21637:         if (mem_base != xmlMemBlocks()) {
21638:             printf("Leak of %d blocks found in xmlNewNode",
21639: 	           xmlMemBlocks() - mem_base);
21640: 	    test_ret++;
21641:             printf(" %d", n_ns);
21642:             printf(" %d", n_name);
21643:             printf("\n");
21644:         }
21645:     }
21646:     }
21647:     function_tests++;
21648: 
21649:     return(test_ret);
21650: }
21651: 
21652: 
21653: static int
21654: test_xmlNewNodeEatName(void) {
21655:     int test_ret = 0;
21656: 
21657:     int mem_base;
21658:     xmlNodePtr ret_val;
21659:     xmlNsPtr ns; /* namespace if any */
21660:     int n_ns;
21661:     xmlChar * name; /* the node name */
21662:     int n_name;
21663: 
21664:     for (n_ns = 0;n_ns < gen_nb_xmlNsPtr;n_ns++) {
21665:     for (n_name = 0;n_name < gen_nb_eaten_name;n_name++) {
21666:         mem_base = xmlMemBlocks();
21667:         ns = gen_xmlNsPtr(n_ns, 0);
21668:         name = gen_eaten_name(n_name, 1);
21669: 
21670:         ret_val = xmlNewNodeEatName(ns, name);
21671:         desret_xmlNodePtr(ret_val);
21672:         call_tests++;
21673:         des_xmlNsPtr(n_ns, ns, 0);
21674:         des_eaten_name(n_name, name, 1);
21675:         xmlResetLastError();
21676:         if (mem_base != xmlMemBlocks()) {
21677:             printf("Leak of %d blocks found in xmlNewNodeEatName",
21678: 	           xmlMemBlocks() - mem_base);
21679: 	    test_ret++;
21680:             printf(" %d", n_ns);
21681:             printf(" %d", n_name);
21682:             printf("\n");
21683:         }
21684:     }
21685:     }
21686:     function_tests++;
21687: 
21688:     return(test_ret);
21689: }
21690: 
21691: 
21692: static int
21693: test_xmlNewNs(void) {
21694:     int test_ret = 0;
21695: 
21696:     int mem_base;
21697:     xmlNsPtr ret_val;
21698:     xmlNodePtr node; /* the element carrying the namespace */
21699:     int n_node;
21700:     xmlChar * href; /* the URI associated */
21701:     int n_href;
21702:     xmlChar * prefix; /* the prefix for the namespace */
21703:     int n_prefix;
21704: 
21705:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
21706:     for (n_href = 0;n_href < gen_nb_const_xmlChar_ptr;n_href++) {
21707:     for (n_prefix = 0;n_prefix < gen_nb_const_xmlChar_ptr;n_prefix++) {
21708:         mem_base = xmlMemBlocks();
21709:         node = gen_xmlNodePtr(n_node, 0);
21710:         href = gen_const_xmlChar_ptr(n_href, 1);
21711:         prefix = gen_const_xmlChar_ptr(n_prefix, 2);
21712: 
21713:         ret_val = xmlNewNs(node, (const xmlChar *)href, (const xmlChar *)prefix);
21714:         if ((node == NULL) && (ret_val != NULL)) xmlFreeNs(ret_val);
21715:         desret_xmlNsPtr(ret_val);
21716:         call_tests++;
21717:         des_xmlNodePtr(n_node, node, 0);
21718:         des_const_xmlChar_ptr(n_href, (const xmlChar *)href, 1);
21719:         des_const_xmlChar_ptr(n_prefix, (const xmlChar *)prefix, 2);
21720:         xmlResetLastError();
21721:         if (mem_base != xmlMemBlocks()) {
21722:             printf("Leak of %d blocks found in xmlNewNs",
21723: 	           xmlMemBlocks() - mem_base);
21724: 	    test_ret++;
21725:             printf(" %d", n_node);
21726:             printf(" %d", n_href);
21727:             printf(" %d", n_prefix);
21728:             printf("\n");
21729:         }
21730:     }
21731:     }
21732:     }
21733:     function_tests++;
21734: 
21735:     return(test_ret);
21736: }
21737: 
21738: 
21739: static int
21740: test_xmlNewNsProp(void) {
21741:     int test_ret = 0;
21742: 
21743:     int mem_base;
21744:     xmlAttrPtr ret_val;
21745:     xmlNodePtr node; /* the holding node */
21746:     int n_node;
21747:     xmlNsPtr ns; /* the namespace */
21748:     int n_ns;
21749:     xmlChar * name; /* the name of the attribute */
21750:     int n_name;
21751:     xmlChar * value; /* the value of the attribute */
21752:     int n_value;
21753: 
21754:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
21755:     for (n_ns = 0;n_ns < gen_nb_xmlNsPtr;n_ns++) {
21756:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
21757:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
21758:         mem_base = xmlMemBlocks();
21759:         node = gen_xmlNodePtr(n_node, 0);
21760:         ns = gen_xmlNsPtr(n_ns, 1);
21761:         name = gen_const_xmlChar_ptr(n_name, 2);
21762:         value = gen_const_xmlChar_ptr(n_value, 3);
21763: 
21764:         ret_val = xmlNewNsProp(node, ns, (const xmlChar *)name, (const xmlChar *)value);
21765:         desret_xmlAttrPtr(ret_val);
21766:         call_tests++;
21767:         des_xmlNodePtr(n_node, node, 0);
21768:         des_xmlNsPtr(n_ns, ns, 1);
21769:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
21770:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 3);
21771:         xmlResetLastError();
21772:         if (mem_base != xmlMemBlocks()) {
21773:             printf("Leak of %d blocks found in xmlNewNsProp",
21774: 	           xmlMemBlocks() - mem_base);
21775: 	    test_ret++;
21776:             printf(" %d", n_node);
21777:             printf(" %d", n_ns);
21778:             printf(" %d", n_name);
21779:             printf(" %d", n_value);
21780:             printf("\n");
21781:         }
21782:     }
21783:     }
21784:     }
21785:     }
21786:     function_tests++;
21787: 
21788:     return(test_ret);
21789: }
21790: 
21791: 
21792: static int
21793: test_xmlNewNsPropEatName(void) {
21794:     int test_ret = 0;
21795: 
21796:     int mem_base;
21797:     xmlAttrPtr ret_val;
21798:     xmlNodePtr node; /* the holding node */
21799:     int n_node;
21800:     xmlNsPtr ns; /* the namespace */
21801:     int n_ns;
21802:     xmlChar * name; /* the name of the attribute */
21803:     int n_name;
21804:     xmlChar * value; /* the value of the attribute */
21805:     int n_value;
21806: 
21807:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
21808:     for (n_ns = 0;n_ns < gen_nb_xmlNsPtr;n_ns++) {
21809:     for (n_name = 0;n_name < gen_nb_eaten_name;n_name++) {
21810:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
21811:         mem_base = xmlMemBlocks();
21812:         node = gen_xmlNodePtr(n_node, 0);
21813:         ns = gen_xmlNsPtr(n_ns, 1);
21814:         name = gen_eaten_name(n_name, 2);
21815:         value = gen_const_xmlChar_ptr(n_value, 3);
21816: 
21817:         ret_val = xmlNewNsPropEatName(node, ns, name, (const xmlChar *)value);
21818:         desret_xmlAttrPtr(ret_val);
21819:         call_tests++;
21820:         des_xmlNodePtr(n_node, node, 0);
21821:         des_xmlNsPtr(n_ns, ns, 1);
21822:         des_eaten_name(n_name, name, 2);
21823:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 3);
21824:         xmlResetLastError();
21825:         if (mem_base != xmlMemBlocks()) {
21826:             printf("Leak of %d blocks found in xmlNewNsPropEatName",
21827: 	           xmlMemBlocks() - mem_base);
21828: 	    test_ret++;
21829:             printf(" %d", n_node);
21830:             printf(" %d", n_ns);
21831:             printf(" %d", n_name);
21832:             printf(" %d", n_value);
21833:             printf("\n");
21834:         }
21835:     }
21836:     }
21837:     }
21838:     }
21839:     function_tests++;
21840: 
21841:     return(test_ret);
21842: }
21843: 
21844: 
21845: static int
21846: test_xmlNewPI(void) {
21847:     int test_ret = 0;
21848: 
21849:     int mem_base;
21850:     xmlNodePtr ret_val;
21851:     xmlChar * name; /* the processing instruction name */
21852:     int n_name;
21853:     xmlChar * content; /* the PI content */
21854:     int n_content;
21855: 
21856:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
21857:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
21858:         mem_base = xmlMemBlocks();
21859:         name = gen_const_xmlChar_ptr(n_name, 0);
21860:         content = gen_const_xmlChar_ptr(n_content, 1);
21861: 
21862:         ret_val = xmlNewPI((const xmlChar *)name, (const xmlChar *)content);
21863:         desret_xmlNodePtr(ret_val);
21864:         call_tests++;
21865:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 0);
21866:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 1);
21867:         xmlResetLastError();
21868:         if (mem_base != xmlMemBlocks()) {
21869:             printf("Leak of %d blocks found in xmlNewPI",
21870: 	           xmlMemBlocks() - mem_base);
21871: 	    test_ret++;
21872:             printf(" %d", n_name);
21873:             printf(" %d", n_content);
21874:             printf("\n");
21875:         }
21876:     }
21877:     }
21878:     function_tests++;
21879: 
21880:     return(test_ret);
21881: }
21882: 
21883: 
21884: static int
21885: test_xmlNewProp(void) {
21886:     int test_ret = 0;
21887: 
21888: #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
21889: #ifdef LIBXML_TREE_ENABLED
21890:     int mem_base;
21891:     xmlAttrPtr ret_val;
21892:     xmlNodePtr node; /* the holding node */
21893:     int n_node;
21894:     xmlChar * name; /* the name of the attribute */
21895:     int n_name;
21896:     xmlChar * value; /* the value of the attribute */
21897:     int n_value;
21898: 
21899:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
21900:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
21901:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
21902:         mem_base = xmlMemBlocks();
21903:         node = gen_xmlNodePtr(n_node, 0);
21904:         name = gen_const_xmlChar_ptr(n_name, 1);
21905:         value = gen_const_xmlChar_ptr(n_value, 2);
21906: 
21907:         ret_val = xmlNewProp(node, (const xmlChar *)name, (const xmlChar *)value);
21908:         desret_xmlAttrPtr(ret_val);
21909:         call_tests++;
21910:         des_xmlNodePtr(n_node, node, 0);
21911:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
21912:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 2);
21913:         xmlResetLastError();
21914:         if (mem_base != xmlMemBlocks()) {
21915:             printf("Leak of %d blocks found in xmlNewProp",
21916: 	           xmlMemBlocks() - mem_base);
21917: 	    test_ret++;
21918:             printf(" %d", n_node);
21919:             printf(" %d", n_name);
21920:             printf(" %d", n_value);
21921:             printf("\n");
21922:         }
21923:     }
21924:     }
21925:     }
21926:     function_tests++;
21927: #endif
21928: #endif
21929: 
21930:     return(test_ret);
21931: }
21932: 
21933: 
21934: static int
21935: test_xmlNewReference(void) {
21936:     int test_ret = 0;
21937: 
21938:     int mem_base;
21939:     xmlNodePtr ret_val;
21940:     xmlDocPtr doc; /* the document */
21941:     int n_doc;
21942:     xmlChar * name; /* the reference name, or the reference string with & and ; */
21943:     int n_name;
21944: 
21945:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
21946:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
21947:         mem_base = xmlMemBlocks();
21948:         doc = gen_xmlDocPtr(n_doc, 0);
21949:         name = gen_const_xmlChar_ptr(n_name, 1);
21950: 
21951:         ret_val = xmlNewReference(doc, (const xmlChar *)name);
21952:         desret_xmlNodePtr(ret_val);
21953:         call_tests++;
21954:         des_xmlDocPtr(n_doc, doc, 0);
21955:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
21956:         xmlResetLastError();
21957:         if (mem_base != xmlMemBlocks()) {
21958:             printf("Leak of %d blocks found in xmlNewReference",
21959: 	           xmlMemBlocks() - mem_base);
21960: 	    test_ret++;
21961:             printf(" %d", n_doc);
21962:             printf(" %d", n_name);
21963:             printf("\n");
21964:         }
21965:     }
21966:     }
21967:     function_tests++;
21968: 
21969:     return(test_ret);
21970: }
21971: 
21972: 
21973: static int
21974: test_xmlNewText(void) {
21975:     int test_ret = 0;
21976: 
21977:     int mem_base;
21978:     xmlNodePtr ret_val;
21979:     xmlChar * content; /* the text content */
21980:     int n_content;
21981: 
21982:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
21983:         mem_base = xmlMemBlocks();
21984:         content = gen_const_xmlChar_ptr(n_content, 0);
21985: 
21986:         ret_val = xmlNewText((const xmlChar *)content);
21987:         desret_xmlNodePtr(ret_val);
21988:         call_tests++;
21989:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 0);
21990:         xmlResetLastError();
21991:         if (mem_base != xmlMemBlocks()) {
21992:             printf("Leak of %d blocks found in xmlNewText",
21993: 	           xmlMemBlocks() - mem_base);
21994: 	    test_ret++;
21995:             printf(" %d", n_content);
21996:             printf("\n");
21997:         }
21998:     }
21999:     function_tests++;
22000: 
22001:     return(test_ret);
22002: }
22003: 
22004: 
22005: static int
22006: test_xmlNewTextChild(void) {
22007:     int test_ret = 0;
22008: 
22009: #if defined(LIBXML_TREE_ENABLED)
22010: #ifdef LIBXML_TREE_ENABLED
22011:     int mem_base;
22012:     xmlNodePtr ret_val;
22013:     xmlNodePtr parent; /* the parent node */
22014:     int n_parent;
22015:     xmlNsPtr ns; /* a namespace if any */
22016:     int n_ns;
22017:     xmlChar * name; /* the name of the child */
22018:     int n_name;
22019:     xmlChar * content; /* the text content of the child if any. */
22020:     int n_content;
22021: 
22022:     for (n_parent = 0;n_parent < gen_nb_xmlNodePtr;n_parent++) {
22023:     for (n_ns = 0;n_ns < gen_nb_xmlNsPtr;n_ns++) {
22024:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
22025:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
22026:         mem_base = xmlMemBlocks();
22027:         parent = gen_xmlNodePtr(n_parent, 0);
22028:         ns = gen_xmlNsPtr(n_ns, 1);
22029:         name = gen_const_xmlChar_ptr(n_name, 2);
22030:         content = gen_const_xmlChar_ptr(n_content, 3);
22031: 
22032:         ret_val = xmlNewTextChild(parent, ns, (const xmlChar *)name, (const xmlChar *)content);
22033:         desret_xmlNodePtr(ret_val);
22034:         call_tests++;
22035:         des_xmlNodePtr(n_parent, parent, 0);
22036:         des_xmlNsPtr(n_ns, ns, 1);
22037:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
22038:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 3);
22039:         xmlResetLastError();
22040:         if (mem_base != xmlMemBlocks()) {
22041:             printf("Leak of %d blocks found in xmlNewTextChild",
22042: 	           xmlMemBlocks() - mem_base);
22043: 	    test_ret++;
22044:             printf(" %d", n_parent);
22045:             printf(" %d", n_ns);
22046:             printf(" %d", n_name);
22047:             printf(" %d", n_content);
22048:             printf("\n");
22049:         }
22050:     }
22051:     }
22052:     }
22053:     }
22054:     function_tests++;
22055: #endif
22056: #endif
22057: 
22058:     return(test_ret);
22059: }
22060: 
22061: 
22062: static int
22063: test_xmlNewTextLen(void) {
22064:     int test_ret = 0;
22065: 
22066:     int mem_base;
22067:     xmlNodePtr ret_val;
22068:     xmlChar * content; /* the text content */
22069:     int n_content;
22070:     int len; /* the text len. */
22071:     int n_len;
22072: 
22073:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
22074:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
22075:         mem_base = xmlMemBlocks();
22076:         content = gen_const_xmlChar_ptr(n_content, 0);
22077:         len = gen_int(n_len, 1);
22078: 
22079:         ret_val = xmlNewTextLen((const xmlChar *)content, len);
22080:         desret_xmlNodePtr(ret_val);
22081:         call_tests++;
22082:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 0);
22083:         des_int(n_len, len, 1);
22084:         xmlResetLastError();
22085:         if (mem_base != xmlMemBlocks()) {
22086:             printf("Leak of %d blocks found in xmlNewTextLen",
22087: 	           xmlMemBlocks() - mem_base);
22088: 	    test_ret++;
22089:             printf(" %d", n_content);
22090:             printf(" %d", n_len);
22091:             printf("\n");
22092:         }
22093:     }
22094:     }
22095:     function_tests++;
22096: 
22097:     return(test_ret);
22098: }
22099: 
22100: 
22101: static int
22102: test_xmlNextElementSibling(void) {
22103:     int test_ret = 0;
22104: 
22105: #if defined(LIBXML_TREE_ENABLED)
22106:     int mem_base;
22107:     xmlNodePtr ret_val;
22108:     xmlNodePtr node; /* the current node */
22109:     int n_node;
22110: 
22111:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
22112:         mem_base = xmlMemBlocks();
22113:         node = gen_xmlNodePtr(n_node, 0);
22114: 
22115:         ret_val = xmlNextElementSibling(node);
22116:         desret_xmlNodePtr(ret_val);
22117:         call_tests++;
22118:         des_xmlNodePtr(n_node, node, 0);
22119:         xmlResetLastError();
22120:         if (mem_base != xmlMemBlocks()) {
22121:             printf("Leak of %d blocks found in xmlNextElementSibling",
22122: 	           xmlMemBlocks() - mem_base);
22123: 	    test_ret++;
22124:             printf(" %d", n_node);
22125:             printf("\n");
22126:         }
22127:     }
22128:     function_tests++;
22129: #endif
22130: 
22131:     return(test_ret);
22132: }
22133: 
22134: 
22135: static int
22136: test_xmlNodeAddContent(void) {
22137:     int test_ret = 0;
22138: 
22139:     int mem_base;
22140:     xmlNodePtr cur; /* the node being modified */
22141:     int n_cur;
22142:     xmlChar * content; /* extra content */
22143:     int n_content;
22144: 
22145:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
22146:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
22147:         mem_base = xmlMemBlocks();
22148:         cur = gen_xmlNodePtr(n_cur, 0);
22149:         content = gen_const_xmlChar_ptr(n_content, 1);
22150: 
22151:         xmlNodeAddContent(cur, (const xmlChar *)content);
22152:         call_tests++;
22153:         des_xmlNodePtr(n_cur, cur, 0);
22154:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 1);
22155:         xmlResetLastError();
22156:         if (mem_base != xmlMemBlocks()) {
22157:             printf("Leak of %d blocks found in xmlNodeAddContent",
22158: 	           xmlMemBlocks() - mem_base);
22159: 	    test_ret++;
22160:             printf(" %d", n_cur);
22161:             printf(" %d", n_content);
22162:             printf("\n");
22163:         }
22164:     }
22165:     }
22166:     function_tests++;
22167: 
22168:     return(test_ret);
22169: }
22170: 
22171: 
22172: static int
22173: test_xmlNodeAddContentLen(void) {
22174:     int test_ret = 0;
22175: 
22176:     int mem_base;
22177:     xmlNodePtr cur; /* the node being modified */
22178:     int n_cur;
22179:     xmlChar * content; /* extra content */
22180:     int n_content;
22181:     int len; /* the size of @content */
22182:     int n_len;
22183: 
22184:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
22185:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
22186:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
22187:         mem_base = xmlMemBlocks();
22188:         cur = gen_xmlNodePtr(n_cur, 0);
22189:         content = gen_const_xmlChar_ptr(n_content, 1);
22190:         len = gen_int(n_len, 2);
22191: 
22192:         xmlNodeAddContentLen(cur, (const xmlChar *)content, len);
22193:         call_tests++;
22194:         des_xmlNodePtr(n_cur, cur, 0);
22195:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 1);
22196:         des_int(n_len, len, 2);
22197:         xmlResetLastError();
22198:         if (mem_base != xmlMemBlocks()) {
22199:             printf("Leak of %d blocks found in xmlNodeAddContentLen",
22200: 	           xmlMemBlocks() - mem_base);
22201: 	    test_ret++;
22202:             printf(" %d", n_cur);
22203:             printf(" %d", n_content);
22204:             printf(" %d", n_len);
22205:             printf("\n");
22206:         }
22207:     }
22208:     }
22209:     }
22210:     function_tests++;
22211: 
22212:     return(test_ret);
22213: }
22214: 
22215: 
22216: static int
22217: test_xmlNodeBufGetContent(void) {
22218:     int test_ret = 0;
22219: 
22220:     int mem_base;
22221:     int ret_val;
22222:     xmlBufferPtr buffer; /* a buffer */
22223:     int n_buffer;
22224:     xmlNodePtr cur; /* the node being read */
22225:     int n_cur;
22226: 
22227:     for (n_buffer = 0;n_buffer < gen_nb_xmlBufferPtr;n_buffer++) {
22228:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
22229:         mem_base = xmlMemBlocks();
22230:         buffer = gen_xmlBufferPtr(n_buffer, 0);
22231:         cur = gen_xmlNodePtr(n_cur, 1);
22232: 
22233:         ret_val = xmlNodeBufGetContent(buffer, cur);
22234:         desret_int(ret_val);
22235:         call_tests++;
22236:         des_xmlBufferPtr(n_buffer, buffer, 0);
22237:         des_xmlNodePtr(n_cur, cur, 1);
22238:         xmlResetLastError();
22239:         if (mem_base != xmlMemBlocks()) {
22240:             printf("Leak of %d blocks found in xmlNodeBufGetContent",
22241: 	           xmlMemBlocks() - mem_base);
22242: 	    test_ret++;
22243:             printf(" %d", n_buffer);
22244:             printf(" %d", n_cur);
22245:             printf("\n");
22246:         }
22247:     }
22248:     }
22249:     function_tests++;
22250: 
22251:     return(test_ret);
22252: }
22253: 
22254: 
22255: static int
22256: test_xmlNodeDump(void) {
22257:     int test_ret = 0;
22258: 
22259: #if defined(LIBXML_OUTPUT_ENABLED)
22260:     int mem_base;
22261:     int ret_val;
22262:     xmlBufferPtr buf; /* the XML buffer output */
22263:     int n_buf;
22264:     xmlDocPtr doc; /* the document */
22265:     int n_doc;
22266:     xmlNodePtr cur; /* the current node */
22267:     int n_cur;
22268:     int level; /* the imbrication level for indenting */
22269:     int n_level;
22270:     int format; /* is formatting allowed */
22271:     int n_format;
22272: 
22273:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
22274:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
22275:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
22276:     for (n_level = 0;n_level < gen_nb_int;n_level++) {
22277:     for (n_format = 0;n_format < gen_nb_int;n_format++) {
22278:         mem_base = xmlMemBlocks();
22279:         buf = gen_xmlBufferPtr(n_buf, 0);
22280:         doc = gen_xmlDocPtr(n_doc, 1);
22281:         cur = gen_xmlNodePtr(n_cur, 2);
22282:         level = gen_int(n_level, 3);
22283:         format = gen_int(n_format, 4);
22284: 
22285:         ret_val = xmlNodeDump(buf, doc, cur, level, format);
22286:         desret_int(ret_val);
22287:         call_tests++;
22288:         des_xmlBufferPtr(n_buf, buf, 0);
22289:         des_xmlDocPtr(n_doc, doc, 1);
22290:         des_xmlNodePtr(n_cur, cur, 2);
22291:         des_int(n_level, level, 3);
22292:         des_int(n_format, format, 4);
22293:         xmlResetLastError();
22294:         if (mem_base != xmlMemBlocks()) {
22295:             printf("Leak of %d blocks found in xmlNodeDump",
22296: 	           xmlMemBlocks() - mem_base);
22297: 	    test_ret++;
22298:             printf(" %d", n_buf);
22299:             printf(" %d", n_doc);
22300:             printf(" %d", n_cur);
22301:             printf(" %d", n_level);
22302:             printf(" %d", n_format);
22303:             printf("\n");
22304:         }
22305:     }
22306:     }
22307:     }
22308:     }
22309:     }
22310:     function_tests++;
22311: #endif
22312: 
22313:     return(test_ret);
22314: }
22315: 
22316: 
22317: static int
22318: test_xmlNodeDumpOutput(void) {
22319:     int test_ret = 0;
22320: 
22321: #if defined(LIBXML_OUTPUT_ENABLED)
22322:     int mem_base;
22323:     xmlOutputBufferPtr buf; /* the XML buffer output */
22324:     int n_buf;
22325:     xmlDocPtr doc; /* the document */
22326:     int n_doc;
22327:     xmlNodePtr cur; /* the current node */
22328:     int n_cur;
22329:     int level; /* the imbrication level for indenting */
22330:     int n_level;
22331:     int format; /* is formatting allowed */
22332:     int n_format;
22333:     char * encoding; /* an optional encoding string */
22334:     int n_encoding;
22335: 
22336:     for (n_buf = 0;n_buf < gen_nb_xmlOutputBufferPtr;n_buf++) {
22337:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
22338:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
22339:     for (n_level = 0;n_level < gen_nb_int;n_level++) {
22340:     for (n_format = 0;n_format < gen_nb_int;n_format++) {
22341:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
22342:         mem_base = xmlMemBlocks();
22343:         buf = gen_xmlOutputBufferPtr(n_buf, 0);
22344:         doc = gen_xmlDocPtr(n_doc, 1);
22345:         cur = gen_xmlNodePtr(n_cur, 2);
22346:         level = gen_int(n_level, 3);
22347:         format = gen_int(n_format, 4);
22348:         encoding = gen_const_char_ptr(n_encoding, 5);
22349: 
22350:         xmlNodeDumpOutput(buf, doc, cur, level, format, (const char *)encoding);
22351:         call_tests++;
22352:         des_xmlOutputBufferPtr(n_buf, buf, 0);
22353:         des_xmlDocPtr(n_doc, doc, 1);
22354:         des_xmlNodePtr(n_cur, cur, 2);
22355:         des_int(n_level, level, 3);
22356:         des_int(n_format, format, 4);
22357:         des_const_char_ptr(n_encoding, (const char *)encoding, 5);
22358:         xmlResetLastError();
22359:         if (mem_base != xmlMemBlocks()) {
22360:             printf("Leak of %d blocks found in xmlNodeDumpOutput",
22361: 	           xmlMemBlocks() - mem_base);
22362: 	    test_ret++;
22363:             printf(" %d", n_buf);
22364:             printf(" %d", n_doc);
22365:             printf(" %d", n_cur);
22366:             printf(" %d", n_level);
22367:             printf(" %d", n_format);
22368:             printf(" %d", n_encoding);
22369:             printf("\n");
22370:         }
22371:     }
22372:     }
22373:     }
22374:     }
22375:     }
22376:     }
22377:     function_tests++;
22378: #endif
22379: 
22380:     return(test_ret);
22381: }
22382: 
22383: 
22384: static int
22385: test_xmlNodeGetBase(void) {
22386:     int test_ret = 0;
22387: 
22388:     int mem_base;
22389:     xmlChar * ret_val;
22390:     xmlDocPtr doc; /* the document the node pertains to */
22391:     int n_doc;
22392:     xmlNodePtr cur; /* the node being checked */
22393:     int n_cur;
22394: 
22395:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
22396:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
22397:         mem_base = xmlMemBlocks();
22398:         doc = gen_xmlDocPtr(n_doc, 0);
22399:         cur = gen_xmlNodePtr(n_cur, 1);
22400: 
22401:         ret_val = xmlNodeGetBase(doc, cur);
22402:         desret_xmlChar_ptr(ret_val);
22403:         call_tests++;
22404:         des_xmlDocPtr(n_doc, doc, 0);
22405:         des_xmlNodePtr(n_cur, cur, 1);
22406:         xmlResetLastError();
22407:         if (mem_base != xmlMemBlocks()) {
22408:             printf("Leak of %d blocks found in xmlNodeGetBase",
22409: 	           xmlMemBlocks() - mem_base);
22410: 	    test_ret++;
22411:             printf(" %d", n_doc);
22412:             printf(" %d", n_cur);
22413:             printf("\n");
22414:         }
22415:     }
22416:     }
22417:     function_tests++;
22418: 
22419:     return(test_ret);
22420: }
22421: 
22422: 
22423: static int
22424: test_xmlNodeGetContent(void) {
22425:     int test_ret = 0;
22426: 
22427:     int mem_base;
22428:     xmlChar * ret_val;
22429:     xmlNodePtr cur; /* the node being read */
22430:     int n_cur;
22431: 
22432:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
22433:         mem_base = xmlMemBlocks();
22434:         cur = gen_xmlNodePtr(n_cur, 0);
22435: 
22436:         ret_val = xmlNodeGetContent(cur);
22437:         desret_xmlChar_ptr(ret_val);
22438:         call_tests++;
22439:         des_xmlNodePtr(n_cur, cur, 0);
22440:         xmlResetLastError();
22441:         if (mem_base != xmlMemBlocks()) {
22442:             printf("Leak of %d blocks found in xmlNodeGetContent",
22443: 	           xmlMemBlocks() - mem_base);
22444: 	    test_ret++;
22445:             printf(" %d", n_cur);
22446:             printf("\n");
22447:         }
22448:     }
22449:     function_tests++;
22450: 
22451:     return(test_ret);
22452: }
22453: 
22454: 
22455: static int
22456: test_xmlNodeGetLang(void) {
22457:     int test_ret = 0;
22458: 
22459:     int mem_base;
22460:     xmlChar * ret_val;
22461:     xmlNodePtr cur; /* the node being checked */
22462:     int n_cur;
22463: 
22464:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
22465:         mem_base = xmlMemBlocks();
22466:         cur = gen_xmlNodePtr(n_cur, 0);
22467: 
22468:         ret_val = xmlNodeGetLang(cur);
22469:         desret_xmlChar_ptr(ret_val);
22470:         call_tests++;
22471:         des_xmlNodePtr(n_cur, cur, 0);
22472:         xmlResetLastError();
22473:         if (mem_base != xmlMemBlocks()) {
22474:             printf("Leak of %d blocks found in xmlNodeGetLang",
22475: 	           xmlMemBlocks() - mem_base);
22476: 	    test_ret++;
22477:             printf(" %d", n_cur);
22478:             printf("\n");
22479:         }
22480:     }
22481:     function_tests++;
22482: 
22483:     return(test_ret);
22484: }
22485: 
22486: 
22487: static int
22488: test_xmlNodeGetSpacePreserve(void) {
22489:     int test_ret = 0;
22490: 
22491:     int mem_base;
22492:     int ret_val;
22493:     xmlNodePtr cur; /* the node being checked */
22494:     int n_cur;
22495: 
22496:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
22497:         mem_base = xmlMemBlocks();
22498:         cur = gen_xmlNodePtr(n_cur, 0);
22499: 
22500:         ret_val = xmlNodeGetSpacePreserve(cur);
22501:         desret_int(ret_val);
22502:         call_tests++;
22503:         des_xmlNodePtr(n_cur, cur, 0);
22504:         xmlResetLastError();
22505:         if (mem_base != xmlMemBlocks()) {
22506:             printf("Leak of %d blocks found in xmlNodeGetSpacePreserve",
22507: 	           xmlMemBlocks() - mem_base);
22508: 	    test_ret++;
22509:             printf(" %d", n_cur);
22510:             printf("\n");
22511:         }
22512:     }
22513:     function_tests++;
22514: 
22515:     return(test_ret);
22516: }
22517: 
22518: 
22519: static int
22520: test_xmlNodeIsText(void) {
22521:     int test_ret = 0;
22522: 
22523:     int mem_base;
22524:     int ret_val;
22525:     xmlNodePtr node; /* the node */
22526:     int n_node;
22527: 
22528:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
22529:         mem_base = xmlMemBlocks();
22530:         node = gen_xmlNodePtr(n_node, 0);
22531: 
22532:         ret_val = xmlNodeIsText(node);
22533:         desret_int(ret_val);
22534:         call_tests++;
22535:         des_xmlNodePtr(n_node, node, 0);
22536:         xmlResetLastError();
22537:         if (mem_base != xmlMemBlocks()) {
22538:             printf("Leak of %d blocks found in xmlNodeIsText",
22539: 	           xmlMemBlocks() - mem_base);
22540: 	    test_ret++;
22541:             printf(" %d", n_node);
22542:             printf("\n");
22543:         }
22544:     }
22545:     function_tests++;
22546: 
22547:     return(test_ret);
22548: }
22549: 
22550: 
22551: static int
22552: test_xmlNodeListGetRawString(void) {
22553:     int test_ret = 0;
22554: 
22555: #if defined(LIBXML_TREE_ENABLED)
22556:     int mem_base;
22557:     xmlChar * ret_val;
22558:     xmlDocPtr doc; /* the document */
22559:     int n_doc;
22560:     xmlNodePtr list; /* a Node list */
22561:     int n_list;
22562:     int inLine; /* should we replace entity contents or show their external form */
22563:     int n_inLine;
22564: 
22565:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
22566:     for (n_list = 0;n_list < gen_nb_xmlNodePtr;n_list++) {
22567:     for (n_inLine = 0;n_inLine < gen_nb_int;n_inLine++) {
22568:         mem_base = xmlMemBlocks();
22569:         doc = gen_xmlDocPtr(n_doc, 0);
22570:         list = gen_xmlNodePtr(n_list, 1);
22571:         inLine = gen_int(n_inLine, 2);
22572: 
22573:         ret_val = xmlNodeListGetRawString(doc, list, inLine);
22574:         desret_xmlChar_ptr(ret_val);
22575:         call_tests++;
22576:         des_xmlDocPtr(n_doc, doc, 0);
22577:         des_xmlNodePtr(n_list, list, 1);
22578:         des_int(n_inLine, inLine, 2);
22579:         xmlResetLastError();
22580:         if (mem_base != xmlMemBlocks()) {
22581:             printf("Leak of %d blocks found in xmlNodeListGetRawString",
22582: 	           xmlMemBlocks() - mem_base);
22583: 	    test_ret++;
22584:             printf(" %d", n_doc);
22585:             printf(" %d", n_list);
22586:             printf(" %d", n_inLine);
22587:             printf("\n");
22588:         }
22589:     }
22590:     }
22591:     }
22592:     function_tests++;
22593: #endif
22594: 
22595:     return(test_ret);
22596: }
22597: 
22598: 
22599: static int
22600: test_xmlNodeListGetString(void) {
22601:     int test_ret = 0;
22602: 
22603:     int mem_base;
22604:     xmlChar * ret_val;
22605:     xmlDocPtr doc; /* the document */
22606:     int n_doc;
22607:     xmlNodePtr list; /* a Node list */
22608:     int n_list;
22609:     int inLine; /* should we replace entity contents or show their external form */
22610:     int n_inLine;
22611: 
22612:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
22613:     for (n_list = 0;n_list < gen_nb_xmlNodePtr;n_list++) {
22614:     for (n_inLine = 0;n_inLine < gen_nb_int;n_inLine++) {
22615:         mem_base = xmlMemBlocks();
22616:         doc = gen_xmlDocPtr(n_doc, 0);
22617:         list = gen_xmlNodePtr(n_list, 1);
22618:         inLine = gen_int(n_inLine, 2);
22619: 
22620:         ret_val = xmlNodeListGetString(doc, list, inLine);
22621:         desret_xmlChar_ptr(ret_val);
22622:         call_tests++;
22623:         des_xmlDocPtr(n_doc, doc, 0);
22624:         des_xmlNodePtr(n_list, list, 1);
22625:         des_int(n_inLine, inLine, 2);
22626:         xmlResetLastError();
22627:         if (mem_base != xmlMemBlocks()) {
22628:             printf("Leak of %d blocks found in xmlNodeListGetString",
22629: 	           xmlMemBlocks() - mem_base);
22630: 	    test_ret++;
22631:             printf(" %d", n_doc);
22632:             printf(" %d", n_list);
22633:             printf(" %d", n_inLine);
22634:             printf("\n");
22635:         }
22636:     }
22637:     }
22638:     }
22639:     function_tests++;
22640: 
22641:     return(test_ret);
22642: }
22643: 
22644: 
22645: static int
22646: test_xmlNodeSetBase(void) {
22647:     int test_ret = 0;
22648: 
22649: #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED)
22650:     int mem_base;
22651:     xmlNodePtr cur; /* the node being changed */
22652:     int n_cur;
22653:     xmlChar * uri; /* the new base URI */
22654:     int n_uri;
22655: 
22656:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
22657:     for (n_uri = 0;n_uri < gen_nb_const_xmlChar_ptr;n_uri++) {
22658:         mem_base = xmlMemBlocks();
22659:         cur = gen_xmlNodePtr(n_cur, 0);
22660:         uri = gen_const_xmlChar_ptr(n_uri, 1);
22661: 
22662:         xmlNodeSetBase(cur, (const xmlChar *)uri);
22663:         call_tests++;
22664:         des_xmlNodePtr(n_cur, cur, 0);
22665:         des_const_xmlChar_ptr(n_uri, (const xmlChar *)uri, 1);
22666:         xmlResetLastError();
22667:         if (mem_base != xmlMemBlocks()) {
22668:             printf("Leak of %d blocks found in xmlNodeSetBase",
22669: 	           xmlMemBlocks() - mem_base);
22670: 	    test_ret++;
22671:             printf(" %d", n_cur);
22672:             printf(" %d", n_uri);
22673:             printf("\n");
22674:         }
22675:     }
22676:     }
22677:     function_tests++;
22678: #endif
22679: 
22680:     return(test_ret);
22681: }
22682: 
22683: 
22684: static int
22685: test_xmlNodeSetContent(void) {
22686:     int test_ret = 0;
22687: 
22688:     int mem_base;
22689:     xmlNodePtr cur; /* the node being modified */
22690:     int n_cur;
22691:     xmlChar * content; /* the new value of the content */
22692:     int n_content;
22693: 
22694:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
22695:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
22696:         mem_base = xmlMemBlocks();
22697:         cur = gen_xmlNodePtr(n_cur, 0);
22698:         content = gen_const_xmlChar_ptr(n_content, 1);
22699: 
22700:         xmlNodeSetContent(cur, (const xmlChar *)content);
22701:         call_tests++;
22702:         des_xmlNodePtr(n_cur, cur, 0);
22703:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 1);
22704:         xmlResetLastError();
22705:         if (mem_base != xmlMemBlocks()) {
22706:             printf("Leak of %d blocks found in xmlNodeSetContent",
22707: 	           xmlMemBlocks() - mem_base);
22708: 	    test_ret++;
22709:             printf(" %d", n_cur);
22710:             printf(" %d", n_content);
22711:             printf("\n");
22712:         }
22713:     }
22714:     }
22715:     function_tests++;
22716: 
22717:     return(test_ret);
22718: }
22719: 
22720: 
22721: static int
22722: test_xmlNodeSetContentLen(void) {
22723:     int test_ret = 0;
22724: 
22725: #if defined(LIBXML_TREE_ENABLED)
22726:     int mem_base;
22727:     xmlNodePtr cur; /* the node being modified */
22728:     int n_cur;
22729:     xmlChar * content; /* the new value of the content */
22730:     int n_content;
22731:     int len; /* the size of @content */
22732:     int n_len;
22733: 
22734:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
22735:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
22736:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
22737:         mem_base = xmlMemBlocks();
22738:         cur = gen_xmlNodePtr(n_cur, 0);
22739:         content = gen_const_xmlChar_ptr(n_content, 1);
22740:         len = gen_int(n_len, 2);
22741: 
22742:         xmlNodeSetContentLen(cur, (const xmlChar *)content, len);
22743:         call_tests++;
22744:         des_xmlNodePtr(n_cur, cur, 0);
22745:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 1);
22746:         des_int(n_len, len, 2);
22747:         xmlResetLastError();
22748:         if (mem_base != xmlMemBlocks()) {
22749:             printf("Leak of %d blocks found in xmlNodeSetContentLen",
22750: 	           xmlMemBlocks() - mem_base);
22751: 	    test_ret++;
22752:             printf(" %d", n_cur);
22753:             printf(" %d", n_content);
22754:             printf(" %d", n_len);
22755:             printf("\n");
22756:         }
22757:     }
22758:     }
22759:     }
22760:     function_tests++;
22761: #endif
22762: 
22763:     return(test_ret);
22764: }
22765: 
22766: 
22767: static int
22768: test_xmlNodeSetLang(void) {
22769:     int test_ret = 0;
22770: 
22771: #if defined(LIBXML_TREE_ENABLED)
22772:     int mem_base;
22773:     xmlNodePtr cur; /* the node being changed */
22774:     int n_cur;
22775:     xmlChar * lang; /* the language description */
22776:     int n_lang;
22777: 
22778:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
22779:     for (n_lang = 0;n_lang < gen_nb_const_xmlChar_ptr;n_lang++) {
22780:         mem_base = xmlMemBlocks();
22781:         cur = gen_xmlNodePtr(n_cur, 0);
22782:         lang = gen_const_xmlChar_ptr(n_lang, 1);
22783: 
22784:         xmlNodeSetLang(cur, (const xmlChar *)lang);
22785:         call_tests++;
22786:         des_xmlNodePtr(n_cur, cur, 0);
22787:         des_const_xmlChar_ptr(n_lang, (const xmlChar *)lang, 1);
22788:         xmlResetLastError();
22789:         if (mem_base != xmlMemBlocks()) {
22790:             printf("Leak of %d blocks found in xmlNodeSetLang",
22791: 	           xmlMemBlocks() - mem_base);
22792: 	    test_ret++;
22793:             printf(" %d", n_cur);
22794:             printf(" %d", n_lang);
22795:             printf("\n");
22796:         }
22797:     }
22798:     }
22799:     function_tests++;
22800: #endif
22801: 
22802:     return(test_ret);
22803: }
22804: 
22805: 
22806: static int
22807: test_xmlNodeSetName(void) {
22808:     int test_ret = 0;
22809: 
22810: #if defined(LIBXML_TREE_ENABLED)
22811:     int mem_base;
22812:     xmlNodePtr cur; /* the node being changed */
22813:     int n_cur;
22814:     xmlChar * name; /* the new tag name */
22815:     int n_name;
22816: 
22817:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
22818:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
22819:         mem_base = xmlMemBlocks();
22820:         cur = gen_xmlNodePtr(n_cur, 0);
22821:         name = gen_const_xmlChar_ptr(n_name, 1);
22822: 
22823:         xmlNodeSetName(cur, (const xmlChar *)name);
22824:         call_tests++;
22825:         des_xmlNodePtr(n_cur, cur, 0);
22826:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
22827:         xmlResetLastError();
22828:         if (mem_base != xmlMemBlocks()) {
22829:             printf("Leak of %d blocks found in xmlNodeSetName",
22830: 	           xmlMemBlocks() - mem_base);
22831: 	    test_ret++;
22832:             printf(" %d", n_cur);
22833:             printf(" %d", n_name);
22834:             printf("\n");
22835:         }
22836:     }
22837:     }
22838:     function_tests++;
22839: #endif
22840: 
22841:     return(test_ret);
22842: }
22843: 
22844: 
22845: static int
22846: test_xmlNodeSetSpacePreserve(void) {
22847:     int test_ret = 0;
22848: 
22849: #if defined(LIBXML_TREE_ENABLED)
22850:     int mem_base;
22851:     xmlNodePtr cur; /* the node being changed */
22852:     int n_cur;
22853:     int val; /* the xml:space value ("0": default, 1: "preserve") */
22854:     int n_val;
22855: 
22856:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
22857:     for (n_val = 0;n_val < gen_nb_int;n_val++) {
22858:         mem_base = xmlMemBlocks();
22859:         cur = gen_xmlNodePtr(n_cur, 0);
22860:         val = gen_int(n_val, 1);
22861: 
22862:         xmlNodeSetSpacePreserve(cur, val);
22863:         call_tests++;
22864:         des_xmlNodePtr(n_cur, cur, 0);
22865:         des_int(n_val, val, 1);
22866:         xmlResetLastError();
22867:         if (mem_base != xmlMemBlocks()) {
22868:             printf("Leak of %d blocks found in xmlNodeSetSpacePreserve",
22869: 	           xmlMemBlocks() - mem_base);
22870: 	    test_ret++;
22871:             printf(" %d", n_cur);
22872:             printf(" %d", n_val);
22873:             printf("\n");
22874:         }
22875:     }
22876:     }
22877:     function_tests++;
22878: #endif
22879: 
22880:     return(test_ret);
22881: }
22882: 
22883: 
22884: static int
22885: test_xmlPreviousElementSibling(void) {
22886:     int test_ret = 0;
22887: 
22888: #if defined(LIBXML_TREE_ENABLED)
22889:     int mem_base;
22890:     xmlNodePtr ret_val;
22891:     xmlNodePtr node; /* the current node */
22892:     int n_node;
22893: 
22894:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
22895:         mem_base = xmlMemBlocks();
22896:         node = gen_xmlNodePtr(n_node, 0);
22897: 
22898:         ret_val = xmlPreviousElementSibling(node);
22899:         desret_xmlNodePtr(ret_val);
22900:         call_tests++;
22901:         des_xmlNodePtr(n_node, node, 0);
22902:         xmlResetLastError();
22903:         if (mem_base != xmlMemBlocks()) {
22904:             printf("Leak of %d blocks found in xmlPreviousElementSibling",
22905: 	           xmlMemBlocks() - mem_base);
22906: 	    test_ret++;
22907:             printf(" %d", n_node);
22908:             printf("\n");
22909:         }
22910:     }
22911:     function_tests++;
22912: #endif
22913: 
22914:     return(test_ret);
22915: }
22916: 
22917: 
22918: static int
22919: test_xmlReconciliateNs(void) {
22920:     int test_ret = 0;
22921: 
22922: #if defined(LIBXML_TREE_ENABLED)
22923: #ifdef LIBXML_TREE_ENABLED
22924:     int mem_base;
22925:     int ret_val;
22926:     xmlDocPtr doc; /* the document */
22927:     int n_doc;
22928:     xmlNodePtr tree; /* a node defining the subtree to reconciliate */
22929:     int n_tree;
22930: 
22931:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
22932:     for (n_tree = 0;n_tree < gen_nb_xmlNodePtr;n_tree++) {
22933:         mem_base = xmlMemBlocks();
22934:         doc = gen_xmlDocPtr(n_doc, 0);
22935:         tree = gen_xmlNodePtr(n_tree, 1);
22936: 
22937:         ret_val = xmlReconciliateNs(doc, tree);
22938:         desret_int(ret_val);
22939:         call_tests++;
22940:         des_xmlDocPtr(n_doc, doc, 0);
22941:         des_xmlNodePtr(n_tree, tree, 1);
22942:         xmlResetLastError();
22943:         if (mem_base != xmlMemBlocks()) {
22944:             printf("Leak of %d blocks found in xmlReconciliateNs",
22945: 	           xmlMemBlocks() - mem_base);
22946: 	    test_ret++;
22947:             printf(" %d", n_doc);
22948:             printf(" %d", n_tree);
22949:             printf("\n");
22950:         }
22951:     }
22952:     }
22953:     function_tests++;
22954: #endif
22955: #endif
22956: 
22957:     return(test_ret);
22958: }
22959: 
22960: 
22961: static int
22962: test_xmlRemoveProp(void) {
22963:     int test_ret = 0;
22964: 
22965:     int mem_base;
22966:     int ret_val;
22967:     xmlAttrPtr cur; /* an attribute */
22968:     int n_cur;
22969: 
22970:     for (n_cur = 0;n_cur < gen_nb_xmlAttrPtr;n_cur++) {
22971:         mem_base = xmlMemBlocks();
22972:         cur = gen_xmlAttrPtr(n_cur, 0);
22973: 
22974:         ret_val = xmlRemoveProp(cur);
22975:         cur = NULL;
22976:         desret_int(ret_val);
22977:         call_tests++;
22978:         des_xmlAttrPtr(n_cur, cur, 0);
22979:         xmlResetLastError();
22980:         if (mem_base != xmlMemBlocks()) {
22981:             printf("Leak of %d blocks found in xmlRemoveProp",
22982: 	           xmlMemBlocks() - mem_base);
22983: 	    test_ret++;
22984:             printf(" %d", n_cur);
22985:             printf("\n");
22986:         }
22987:     }
22988:     function_tests++;
22989: 
22990:     return(test_ret);
22991: }
22992: 
22993: 
22994: static int
22995: test_xmlReplaceNode(void) {
22996:     int test_ret = 0;
22997: 
22998: #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED)
22999:     int mem_base;
23000:     xmlNodePtr ret_val;
23001:     xmlNodePtr old; /* the old node */
23002:     int n_old;
23003:     xmlNodePtr cur; /* the node */
23004:     int n_cur;
23005: 
23006:     for (n_old = 0;n_old < gen_nb_xmlNodePtr;n_old++) {
23007:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr_in;n_cur++) {
23008:         mem_base = xmlMemBlocks();
23009:         old = gen_xmlNodePtr(n_old, 0);
23010:         cur = gen_xmlNodePtr_in(n_cur, 1);
23011: 
23012:         ret_val = xmlReplaceNode(old, cur);
23013:         if (cur != NULL) {
23014:               xmlUnlinkNode(cur);
23015:               xmlFreeNode(cur) ; cur = NULL ; }
23016:           if (old != NULL) {
23017:               xmlUnlinkNode(old);
23018:               xmlFreeNode(old) ; old = NULL ; }
23019: 	  ret_val = NULL;
23020:         desret_xmlNodePtr(ret_val);
23021:         call_tests++;
23022:         des_xmlNodePtr(n_old, old, 0);
23023:         des_xmlNodePtr_in(n_cur, cur, 1);
23024:         xmlResetLastError();
23025:         if (mem_base != xmlMemBlocks()) {
23026:             printf("Leak of %d blocks found in xmlReplaceNode",
23027: 	           xmlMemBlocks() - mem_base);
23028: 	    test_ret++;
23029:             printf(" %d", n_old);
23030:             printf(" %d", n_cur);
23031:             printf("\n");
23032:         }
23033:     }
23034:     }
23035:     function_tests++;
23036: #endif
23037: 
23038:     return(test_ret);
23039: }
23040: 
23041: 
23042: static int
23043: test_xmlSaveFile(void) {
23044:     int test_ret = 0;
23045: 
23046: #if defined(LIBXML_OUTPUT_ENABLED)
23047:     int mem_base;
23048:     int ret_val;
23049:     const char * filename; /* the filename (or URL) */
23050:     int n_filename;
23051:     xmlDocPtr cur; /* the document */
23052:     int n_cur;
23053: 
23054:     for (n_filename = 0;n_filename < gen_nb_fileoutput;n_filename++) {
23055:     for (n_cur = 0;n_cur < gen_nb_xmlDocPtr;n_cur++) {
23056:         mem_base = xmlMemBlocks();
23057:         filename = gen_fileoutput(n_filename, 0);
23058:         cur = gen_xmlDocPtr(n_cur, 1);
23059: 
23060:         ret_val = xmlSaveFile(filename, cur);
23061:         desret_int(ret_val);
23062:         call_tests++;
23063:         des_fileoutput(n_filename, filename, 0);
23064:         des_xmlDocPtr(n_cur, cur, 1);
23065:         xmlResetLastError();
23066:         if (mem_base != xmlMemBlocks()) {
23067:             printf("Leak of %d blocks found in xmlSaveFile",
23068: 	           xmlMemBlocks() - mem_base);
23069: 	    test_ret++;
23070:             printf(" %d", n_filename);
23071:             printf(" %d", n_cur);
23072:             printf("\n");
23073:         }
23074:     }
23075:     }
23076:     function_tests++;
23077: #endif
23078: 
23079:     return(test_ret);
23080: }
23081: 
23082: 
23083: static int
23084: test_xmlSaveFileEnc(void) {
23085:     int test_ret = 0;
23086: 
23087: #if defined(LIBXML_OUTPUT_ENABLED)
23088:     int mem_base;
23089:     int ret_val;
23090:     const char * filename; /* the filename (or URL) */
23091:     int n_filename;
23092:     xmlDocPtr cur; /* the document */
23093:     int n_cur;
23094:     char * encoding; /* the name of an encoding (or NULL) */
23095:     int n_encoding;
23096: 
23097:     for (n_filename = 0;n_filename < gen_nb_fileoutput;n_filename++) {
23098:     for (n_cur = 0;n_cur < gen_nb_xmlDocPtr;n_cur++) {
23099:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
23100:         mem_base = xmlMemBlocks();
23101:         filename = gen_fileoutput(n_filename, 0);
23102:         cur = gen_xmlDocPtr(n_cur, 1);
23103:         encoding = gen_const_char_ptr(n_encoding, 2);
23104: 
23105:         ret_val = xmlSaveFileEnc(filename, cur, (const char *)encoding);
23106:         desret_int(ret_val);
23107:         call_tests++;
23108:         des_fileoutput(n_filename, filename, 0);
23109:         des_xmlDocPtr(n_cur, cur, 1);
23110:         des_const_char_ptr(n_encoding, (const char *)encoding, 2);
23111:         xmlResetLastError();
23112:         if (mem_base != xmlMemBlocks()) {
23113:             printf("Leak of %d blocks found in xmlSaveFileEnc",
23114: 	           xmlMemBlocks() - mem_base);
23115: 	    test_ret++;
23116:             printf(" %d", n_filename);
23117:             printf(" %d", n_cur);
23118:             printf(" %d", n_encoding);
23119:             printf("\n");
23120:         }
23121:     }
23122:     }
23123:     }
23124:     function_tests++;
23125: #endif
23126: 
23127:     return(test_ret);
23128: }
23129: 
23130: 
23131: static int
23132: test_xmlSaveFileTo(void) {
23133:     int test_ret = 0;
23134: 
23135: #if defined(LIBXML_OUTPUT_ENABLED)
23136:     int mem_base;
23137:     int ret_val;
23138:     xmlOutputBufferPtr buf; /* an output I/O buffer */
23139:     int n_buf;
23140:     xmlDocPtr cur; /* the document */
23141:     int n_cur;
23142:     char * encoding; /* the encoding if any assuming the I/O layer handles the trancoding */
23143:     int n_encoding;
23144: 
23145:     for (n_buf = 0;n_buf < gen_nb_xmlOutputBufferPtr;n_buf++) {
23146:     for (n_cur = 0;n_cur < gen_nb_xmlDocPtr;n_cur++) {
23147:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
23148:         mem_base = xmlMemBlocks();
23149:         buf = gen_xmlOutputBufferPtr(n_buf, 0);
23150:         cur = gen_xmlDocPtr(n_cur, 1);
23151:         encoding = gen_const_char_ptr(n_encoding, 2);
23152: 
23153:         ret_val = xmlSaveFileTo(buf, cur, (const char *)encoding);
23154:         buf = NULL;
23155:         desret_int(ret_val);
23156:         call_tests++;
23157:         des_xmlOutputBufferPtr(n_buf, buf, 0);
23158:         des_xmlDocPtr(n_cur, cur, 1);
23159:         des_const_char_ptr(n_encoding, (const char *)encoding, 2);
23160:         xmlResetLastError();
23161:         if (mem_base != xmlMemBlocks()) {
23162:             printf("Leak of %d blocks found in xmlSaveFileTo",
23163: 	           xmlMemBlocks() - mem_base);
23164: 	    test_ret++;
23165:             printf(" %d", n_buf);
23166:             printf(" %d", n_cur);
23167:             printf(" %d", n_encoding);
23168:             printf("\n");
23169:         }
23170:     }
23171:     }
23172:     }
23173:     function_tests++;
23174: #endif
23175: 
23176:     return(test_ret);
23177: }
23178: 
23179: 
23180: static int
23181: test_xmlSaveFormatFile(void) {
23182:     int test_ret = 0;
23183: 
23184: #if defined(LIBXML_OUTPUT_ENABLED)
23185:     int mem_base;
23186:     int ret_val;
23187:     const char * filename; /* the filename (or URL) */
23188:     int n_filename;
23189:     xmlDocPtr cur; /* the document */
23190:     int n_cur;
23191:     int format; /* should formatting spaces been added */
23192:     int n_format;
23193: 
23194:     for (n_filename = 0;n_filename < gen_nb_fileoutput;n_filename++) {
23195:     for (n_cur = 0;n_cur < gen_nb_xmlDocPtr;n_cur++) {
23196:     for (n_format = 0;n_format < gen_nb_int;n_format++) {
23197:         mem_base = xmlMemBlocks();
23198:         filename = gen_fileoutput(n_filename, 0);
23199:         cur = gen_xmlDocPtr(n_cur, 1);
23200:         format = gen_int(n_format, 2);
23201: 
23202:         ret_val = xmlSaveFormatFile(filename, cur, format);
23203:         desret_int(ret_val);
23204:         call_tests++;
23205:         des_fileoutput(n_filename, filename, 0);
23206:         des_xmlDocPtr(n_cur, cur, 1);
23207:         des_int(n_format, format, 2);
23208:         xmlResetLastError();
23209:         if (mem_base != xmlMemBlocks()) {
23210:             printf("Leak of %d blocks found in xmlSaveFormatFile",
23211: 	           xmlMemBlocks() - mem_base);
23212: 	    test_ret++;
23213:             printf(" %d", n_filename);
23214:             printf(" %d", n_cur);
23215:             printf(" %d", n_format);
23216:             printf("\n");
23217:         }
23218:     }
23219:     }
23220:     }
23221:     function_tests++;
23222: #endif
23223: 
23224:     return(test_ret);
23225: }
23226: 
23227: 
23228: static int
23229: test_xmlSaveFormatFileEnc(void) {
23230:     int test_ret = 0;
23231: 
23232: #if defined(LIBXML_OUTPUT_ENABLED)
23233:     int mem_base;
23234:     int ret_val;
23235:     const char * filename; /* the filename or URL to output */
23236:     int n_filename;
23237:     xmlDocPtr cur; /* the document being saved */
23238:     int n_cur;
23239:     char * encoding; /* the name of the encoding to use or NULL. */
23240:     int n_encoding;
23241:     int format; /* should formatting spaces be added. */
23242:     int n_format;
23243: 
23244:     for (n_filename = 0;n_filename < gen_nb_fileoutput;n_filename++) {
23245:     for (n_cur = 0;n_cur < gen_nb_xmlDocPtr;n_cur++) {
23246:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
23247:     for (n_format = 0;n_format < gen_nb_int;n_format++) {
23248:         mem_base = xmlMemBlocks();
23249:         filename = gen_fileoutput(n_filename, 0);
23250:         cur = gen_xmlDocPtr(n_cur, 1);
23251:         encoding = gen_const_char_ptr(n_encoding, 2);
23252:         format = gen_int(n_format, 3);
23253: 
23254:         ret_val = xmlSaveFormatFileEnc(filename, cur, (const char *)encoding, format);
23255:         desret_int(ret_val);
23256:         call_tests++;
23257:         des_fileoutput(n_filename, filename, 0);
23258:         des_xmlDocPtr(n_cur, cur, 1);
23259:         des_const_char_ptr(n_encoding, (const char *)encoding, 2);
23260:         des_int(n_format, format, 3);
23261:         xmlResetLastError();
23262:         if (mem_base != xmlMemBlocks()) {
23263:             printf("Leak of %d blocks found in xmlSaveFormatFileEnc",
23264: 	           xmlMemBlocks() - mem_base);
23265: 	    test_ret++;
23266:             printf(" %d", n_filename);
23267:             printf(" %d", n_cur);
23268:             printf(" %d", n_encoding);
23269:             printf(" %d", n_format);
23270:             printf("\n");
23271:         }
23272:     }
23273:     }
23274:     }
23275:     }
23276:     function_tests++;
23277: #endif
23278: 
23279:     return(test_ret);
23280: }
23281: 
23282: 
23283: static int
23284: test_xmlSaveFormatFileTo(void) {
23285:     int test_ret = 0;
23286: 
23287: #if defined(LIBXML_OUTPUT_ENABLED)
23288:     int mem_base;
23289:     int ret_val;
23290:     xmlOutputBufferPtr buf; /* an output I/O buffer */
23291:     int n_buf;
23292:     xmlDocPtr cur; /* the document */
23293:     int n_cur;
23294:     char * encoding; /* the encoding if any assuming the I/O layer handles the trancoding */
23295:     int n_encoding;
23296:     int format; /* should formatting spaces been added */
23297:     int n_format;
23298: 
23299:     for (n_buf = 0;n_buf < gen_nb_xmlOutputBufferPtr;n_buf++) {
23300:     for (n_cur = 0;n_cur < gen_nb_xmlDocPtr;n_cur++) {
23301:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
23302:     for (n_format = 0;n_format < gen_nb_int;n_format++) {
23303:         mem_base = xmlMemBlocks();
23304:         buf = gen_xmlOutputBufferPtr(n_buf, 0);
23305:         cur = gen_xmlDocPtr(n_cur, 1);
23306:         encoding = gen_const_char_ptr(n_encoding, 2);
23307:         format = gen_int(n_format, 3);
23308: 
23309:         ret_val = xmlSaveFormatFileTo(buf, cur, (const char *)encoding, format);
23310:         buf = NULL;
23311:         desret_int(ret_val);
23312:         call_tests++;
23313:         des_xmlOutputBufferPtr(n_buf, buf, 0);
23314:         des_xmlDocPtr(n_cur, cur, 1);
23315:         des_const_char_ptr(n_encoding, (const char *)encoding, 2);
23316:         des_int(n_format, format, 3);
23317:         xmlResetLastError();
23318:         if (mem_base != xmlMemBlocks()) {
23319:             printf("Leak of %d blocks found in xmlSaveFormatFileTo",
23320: 	           xmlMemBlocks() - mem_base);
23321: 	    test_ret++;
23322:             printf(" %d", n_buf);
23323:             printf(" %d", n_cur);
23324:             printf(" %d", n_encoding);
23325:             printf(" %d", n_format);
23326:             printf("\n");
23327:         }
23328:     }
23329:     }
23330:     }
23331:     }
23332:     function_tests++;
23333: #endif
23334: 
23335:     return(test_ret);
23336: }
23337: 
23338: 
23339: static int
23340: test_xmlSearchNs(void) {
23341:     int test_ret = 0;
23342: 
23343:     int mem_base;
23344:     xmlNsPtr ret_val;
23345:     xmlDocPtr doc; /* the document */
23346:     int n_doc;
23347:     xmlNodePtr node; /* the current node */
23348:     int n_node;
23349:     xmlChar * nameSpace; /* the namespace prefix */
23350:     int n_nameSpace;
23351: 
23352:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
23353:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
23354:     for (n_nameSpace = 0;n_nameSpace < gen_nb_const_xmlChar_ptr;n_nameSpace++) {
23355:         mem_base = xmlMemBlocks();
23356:         doc = gen_xmlDocPtr(n_doc, 0);
23357:         node = gen_xmlNodePtr(n_node, 1);
23358:         nameSpace = gen_const_xmlChar_ptr(n_nameSpace, 2);
23359: 
23360:         ret_val = xmlSearchNs(doc, node, (const xmlChar *)nameSpace);
23361:         desret_xmlNsPtr(ret_val);
23362:         call_tests++;
23363:         des_xmlDocPtr(n_doc, doc, 0);
23364:         des_xmlNodePtr(n_node, node, 1);
23365:         des_const_xmlChar_ptr(n_nameSpace, (const xmlChar *)nameSpace, 2);
23366:         xmlResetLastError();
23367:         if (mem_base != xmlMemBlocks()) {
23368:             printf("Leak of %d blocks found in xmlSearchNs",
23369: 	           xmlMemBlocks() - mem_base);
23370: 	    test_ret++;
23371:             printf(" %d", n_doc);
23372:             printf(" %d", n_node);
23373:             printf(" %d", n_nameSpace);
23374:             printf("\n");
23375:         }
23376:     }
23377:     }
23378:     }
23379:     function_tests++;
23380: 
23381:     return(test_ret);
23382: }
23383: 
23384: 
23385: static int
23386: test_xmlSearchNsByHref(void) {
23387:     int test_ret = 0;
23388: 
23389:     int mem_base;
23390:     xmlNsPtr ret_val;
23391:     xmlDocPtr doc; /* the document */
23392:     int n_doc;
23393:     xmlNodePtr node; /* the current node */
23394:     int n_node;
23395:     xmlChar * href; /* the namespace value */
23396:     int n_href;
23397: 
23398:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
23399:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
23400:     for (n_href = 0;n_href < gen_nb_const_xmlChar_ptr;n_href++) {
23401:         mem_base = xmlMemBlocks();
23402:         doc = gen_xmlDocPtr(n_doc, 0);
23403:         node = gen_xmlNodePtr(n_node, 1);
23404:         href = gen_const_xmlChar_ptr(n_href, 2);
23405: 
23406:         ret_val = xmlSearchNsByHref(doc, node, (const xmlChar *)href);
23407:         desret_xmlNsPtr(ret_val);
23408:         call_tests++;
23409:         des_xmlDocPtr(n_doc, doc, 0);
23410:         des_xmlNodePtr(n_node, node, 1);
23411:         des_const_xmlChar_ptr(n_href, (const xmlChar *)href, 2);
23412:         xmlResetLastError();
23413:         if (mem_base != xmlMemBlocks()) {
23414:             printf("Leak of %d blocks found in xmlSearchNsByHref",
23415: 	           xmlMemBlocks() - mem_base);
23416: 	    test_ret++;
23417:             printf(" %d", n_doc);
23418:             printf(" %d", n_node);
23419:             printf(" %d", n_href);
23420:             printf("\n");
23421:         }
23422:     }
23423:     }
23424:     }
23425:     function_tests++;
23426: 
23427:     return(test_ret);
23428: }
23429: 
23430: 
23431: static int
23432: test_xmlSetBufferAllocationScheme(void) {
23433:     int test_ret = 0;
23434: 
23435:     int mem_base;
23436:     xmlBufferAllocationScheme scheme; /* allocation method to use */
23437:     int n_scheme;
23438: 
23439:     for (n_scheme = 0;n_scheme < gen_nb_xmlBufferAllocationScheme;n_scheme++) {
23440:         mem_base = xmlMemBlocks();
23441:         scheme = gen_xmlBufferAllocationScheme(n_scheme, 0);
23442: 
23443:         xmlSetBufferAllocationScheme(scheme);
23444:         call_tests++;
23445:         des_xmlBufferAllocationScheme(n_scheme, scheme, 0);
23446:         xmlResetLastError();
23447:         if (mem_base != xmlMemBlocks()) {
23448:             printf("Leak of %d blocks found in xmlSetBufferAllocationScheme",
23449: 	           xmlMemBlocks() - mem_base);
23450: 	    test_ret++;
23451:             printf(" %d", n_scheme);
23452:             printf("\n");
23453:         }
23454:     }
23455:     function_tests++;
23456: 
23457:     return(test_ret);
23458: }
23459: 
23460: 
23461: static int
23462: test_xmlSetCompressMode(void) {
23463:     int test_ret = 0;
23464: 
23465:     int mem_base;
23466:     int mode; /* the compression ratio */
23467:     int n_mode;
23468: 
23469:     for (n_mode = 0;n_mode < gen_nb_int;n_mode++) {
23470:         mem_base = xmlMemBlocks();
23471:         mode = gen_int(n_mode, 0);
23472: 
23473:         xmlSetCompressMode(mode);
23474:         call_tests++;
23475:         des_int(n_mode, mode, 0);
23476:         xmlResetLastError();
23477:         if (mem_base != xmlMemBlocks()) {
23478:             printf("Leak of %d blocks found in xmlSetCompressMode",
23479: 	           xmlMemBlocks() - mem_base);
23480: 	    test_ret++;
23481:             printf(" %d", n_mode);
23482:             printf("\n");
23483:         }
23484:     }
23485:     function_tests++;
23486: 
23487:     return(test_ret);
23488: }
23489: 
23490: 
23491: static int
23492: test_xmlSetDocCompressMode(void) {
23493:     int test_ret = 0;
23494: 
23495:     int mem_base;
23496:     xmlDocPtr doc; /* the document */
23497:     int n_doc;
23498:     int mode; /* the compression ratio */
23499:     int n_mode;
23500: 
23501:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
23502:     for (n_mode = 0;n_mode < gen_nb_int;n_mode++) {
23503:         mem_base = xmlMemBlocks();
23504:         doc = gen_xmlDocPtr(n_doc, 0);
23505:         mode = gen_int(n_mode, 1);
23506: 
23507:         xmlSetDocCompressMode(doc, mode);
23508:         call_tests++;
23509:         des_xmlDocPtr(n_doc, doc, 0);
23510:         des_int(n_mode, mode, 1);
23511:         xmlResetLastError();
23512:         if (mem_base != xmlMemBlocks()) {
23513:             printf("Leak of %d blocks found in xmlSetDocCompressMode",
23514: 	           xmlMemBlocks() - mem_base);
23515: 	    test_ret++;
23516:             printf(" %d", n_doc);
23517:             printf(" %d", n_mode);
23518:             printf("\n");
23519:         }
23520:     }
23521:     }
23522:     function_tests++;
23523: 
23524:     return(test_ret);
23525: }
23526: 
23527: 
23528: static int
23529: test_xmlSetNs(void) {
23530:     int test_ret = 0;
23531: 
23532:     int mem_base;
23533:     xmlNodePtr node; /* a node in the document */
23534:     int n_node;
23535:     xmlNsPtr ns; /* a namespace pointer */
23536:     int n_ns;
23537: 
23538:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
23539:     for (n_ns = 0;n_ns < gen_nb_xmlNsPtr;n_ns++) {
23540:         mem_base = xmlMemBlocks();
23541:         node = gen_xmlNodePtr(n_node, 0);
23542:         ns = gen_xmlNsPtr(n_ns, 1);
23543: 
23544:         xmlSetNs(node, ns);
23545:         call_tests++;
23546:         des_xmlNodePtr(n_node, node, 0);
23547:         des_xmlNsPtr(n_ns, ns, 1);
23548:         xmlResetLastError();
23549:         if (mem_base != xmlMemBlocks()) {
23550:             printf("Leak of %d blocks found in xmlSetNs",
23551: 	           xmlMemBlocks() - mem_base);
23552: 	    test_ret++;
23553:             printf(" %d", n_node);
23554:             printf(" %d", n_ns);
23555:             printf("\n");
23556:         }
23557:     }
23558:     }
23559:     function_tests++;
23560: 
23561:     return(test_ret);
23562: }
23563: 
23564: 
23565: static int
23566: test_xmlSetNsProp(void) {
23567:     int test_ret = 0;
23568: 
23569: #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_HTML_ENABLED)
23570:     int mem_base;
23571:     xmlAttrPtr ret_val;
23572:     xmlNodePtr node; /* the node */
23573:     int n_node;
23574:     xmlNsPtr ns; /* the namespace definition */
23575:     int n_ns;
23576:     xmlChar * name; /* the attribute name */
23577:     int n_name;
23578:     xmlChar * value; /* the attribute value */
23579:     int n_value;
23580: 
23581:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
23582:     for (n_ns = 0;n_ns < gen_nb_xmlNsPtr;n_ns++) {
23583:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
23584:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
23585:         mem_base = xmlMemBlocks();
23586:         node = gen_xmlNodePtr(n_node, 0);
23587:         ns = gen_xmlNsPtr(n_ns, 1);
23588:         name = gen_const_xmlChar_ptr(n_name, 2);
23589:         value = gen_const_xmlChar_ptr(n_value, 3);
23590: 
23591:         ret_val = xmlSetNsProp(node, ns, (const xmlChar *)name, (const xmlChar *)value);
23592:         desret_xmlAttrPtr(ret_val);
23593:         call_tests++;
23594:         des_xmlNodePtr(n_node, node, 0);
23595:         des_xmlNsPtr(n_ns, ns, 1);
23596:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
23597:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 3);
23598:         xmlResetLastError();
23599:         if (mem_base != xmlMemBlocks()) {
23600:             printf("Leak of %d blocks found in xmlSetNsProp",
23601: 	           xmlMemBlocks() - mem_base);
23602: 	    test_ret++;
23603:             printf(" %d", n_node);
23604:             printf(" %d", n_ns);
23605:             printf(" %d", n_name);
23606:             printf(" %d", n_value);
23607:             printf("\n");
23608:         }
23609:     }
23610:     }
23611:     }
23612:     }
23613:     function_tests++;
23614: #endif
23615: 
23616:     return(test_ret);
23617: }
23618: 
23619: 
23620: static int
23621: test_xmlSetProp(void) {
23622:     int test_ret = 0;
23623: 
23624: #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_HTML_ENABLED)
23625:     int mem_base;
23626:     xmlAttrPtr ret_val;
23627:     xmlNodePtr node; /* the node */
23628:     int n_node;
23629:     xmlChar * name; /* the attribute name (a QName) */
23630:     int n_name;
23631:     xmlChar * value; /* the attribute value */
23632:     int n_value;
23633: 
23634:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
23635:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
23636:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
23637:         mem_base = xmlMemBlocks();
23638:         node = gen_xmlNodePtr(n_node, 0);
23639:         name = gen_const_xmlChar_ptr(n_name, 1);
23640:         value = gen_const_xmlChar_ptr(n_value, 2);
23641: 
23642:         ret_val = xmlSetProp(node, (const xmlChar *)name, (const xmlChar *)value);
23643:         desret_xmlAttrPtr(ret_val);
23644:         call_tests++;
23645:         des_xmlNodePtr(n_node, node, 0);
23646:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
23647:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 2);
23648:         xmlResetLastError();
23649:         if (mem_base != xmlMemBlocks()) {
23650:             printf("Leak of %d blocks found in xmlSetProp",
23651: 	           xmlMemBlocks() - mem_base);
23652: 	    test_ret++;
23653:             printf(" %d", n_node);
23654:             printf(" %d", n_name);
23655:             printf(" %d", n_value);
23656:             printf("\n");
23657:         }
23658:     }
23659:     }
23660:     }
23661:     function_tests++;
23662: #endif
23663: 
23664:     return(test_ret);
23665: }
23666: 
23667: 
23668: static int
23669: test_xmlSplitQName2(void) {
23670:     int test_ret = 0;
23671: 
23672:     int mem_base;
23673:     xmlChar * ret_val;
23674:     xmlChar * name; /* the full QName */
23675:     int n_name;
23676:     xmlChar ** prefix; /* a xmlChar ** */
23677:     int n_prefix;
23678: 
23679:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
23680:     for (n_prefix = 0;n_prefix < gen_nb_xmlChar_ptr_ptr;n_prefix++) {
23681:         mem_base = xmlMemBlocks();
23682:         name = gen_const_xmlChar_ptr(n_name, 0);
23683:         prefix = gen_xmlChar_ptr_ptr(n_prefix, 1);
23684: 
23685:         ret_val = xmlSplitQName2((const xmlChar *)name, prefix);
23686:         desret_xmlChar_ptr(ret_val);
23687:         call_tests++;
23688:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 0);
23689:         des_xmlChar_ptr_ptr(n_prefix, prefix, 1);
23690:         xmlResetLastError();
23691:         if (mem_base != xmlMemBlocks()) {
23692:             printf("Leak of %d blocks found in xmlSplitQName2",
23693: 	           xmlMemBlocks() - mem_base);
23694: 	    test_ret++;
23695:             printf(" %d", n_name);
23696:             printf(" %d", n_prefix);
23697:             printf("\n");
23698:         }
23699:     }
23700:     }
23701:     function_tests++;
23702: 
23703:     return(test_ret);
23704: }
23705: 
23706: 
23707: static int
23708: test_xmlSplitQName3(void) {
23709:     int test_ret = 0;
23710: 
23711:     int mem_base;
23712:     const xmlChar * ret_val;
23713:     xmlChar * name; /* the full QName */
23714:     int n_name;
23715:     int * len; /* an int * */
23716:     int n_len;
23717: 
23718:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
23719:     for (n_len = 0;n_len < gen_nb_int_ptr;n_len++) {
23720:         mem_base = xmlMemBlocks();
23721:         name = gen_const_xmlChar_ptr(n_name, 0);
23722:         len = gen_int_ptr(n_len, 1);
23723: 
23724:         ret_val = xmlSplitQName3((const xmlChar *)name, len);
23725:         desret_const_xmlChar_ptr(ret_val);
23726:         call_tests++;
23727:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 0);
23728:         des_int_ptr(n_len, len, 1);
23729:         xmlResetLastError();
23730:         if (mem_base != xmlMemBlocks()) {
23731:             printf("Leak of %d blocks found in xmlSplitQName3",
23732: 	           xmlMemBlocks() - mem_base);
23733: 	    test_ret++;
23734:             printf(" %d", n_name);
23735:             printf(" %d", n_len);
23736:             printf("\n");
23737:         }
23738:     }
23739:     }
23740:     function_tests++;
23741: 
23742:     return(test_ret);
23743: }
23744: 
23745: 
23746: static int
23747: test_xmlStringGetNodeList(void) {
23748:     int test_ret = 0;
23749: 
23750:     int mem_base;
23751:     xmlNodePtr ret_val;
23752:     xmlDocPtr doc; /* the document */
23753:     int n_doc;
23754:     xmlChar * value; /* the value of the attribute */
23755:     int n_value;
23756: 
23757:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
23758:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
23759:         mem_base = xmlMemBlocks();
23760:         doc = gen_xmlDocPtr(n_doc, 0);
23761:         value = gen_const_xmlChar_ptr(n_value, 1);
23762: 
23763:         ret_val = xmlStringGetNodeList(doc, (const xmlChar *)value);
23764:         desret_xmlNodePtr(ret_val);
23765:         call_tests++;
23766:         des_xmlDocPtr(n_doc, doc, 0);
23767:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 1);
23768:         xmlResetLastError();
23769:         if (mem_base != xmlMemBlocks()) {
23770:             printf("Leak of %d blocks found in xmlStringGetNodeList",
23771: 	           xmlMemBlocks() - mem_base);
23772: 	    test_ret++;
23773:             printf(" %d", n_doc);
23774:             printf(" %d", n_value);
23775:             printf("\n");
23776:         }
23777:     }
23778:     }
23779:     function_tests++;
23780: 
23781:     return(test_ret);
23782: }
23783: 
23784: 
23785: static int
23786: test_xmlStringLenGetNodeList(void) {
23787:     int test_ret = 0;
23788: 
23789:     int mem_base;
23790:     xmlNodePtr ret_val;
23791:     xmlDocPtr doc; /* the document */
23792:     int n_doc;
23793:     xmlChar * value; /* the value of the text */
23794:     int n_value;
23795:     int len; /* the length of the string value */
23796:     int n_len;
23797: 
23798:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
23799:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
23800:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
23801:         mem_base = xmlMemBlocks();
23802:         doc = gen_xmlDocPtr(n_doc, 0);
23803:         value = gen_const_xmlChar_ptr(n_value, 1);
23804:         len = gen_int(n_len, 2);
23805: 
23806:         ret_val = xmlStringLenGetNodeList(doc, (const xmlChar *)value, len);
23807:         desret_xmlNodePtr(ret_val);
23808:         call_tests++;
23809:         des_xmlDocPtr(n_doc, doc, 0);
23810:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 1);
23811:         des_int(n_len, len, 2);
23812:         xmlResetLastError();
23813:         if (mem_base != xmlMemBlocks()) {
23814:             printf("Leak of %d blocks found in xmlStringLenGetNodeList",
23815: 	           xmlMemBlocks() - mem_base);
23816: 	    test_ret++;
23817:             printf(" %d", n_doc);
23818:             printf(" %d", n_value);
23819:             printf(" %d", n_len);
23820:             printf("\n");
23821:         }
23822:     }
23823:     }
23824:     }
23825:     function_tests++;
23826: 
23827:     return(test_ret);
23828: }
23829: 
23830: 
23831: static int
23832: test_xmlTextConcat(void) {
23833:     int test_ret = 0;
23834: 
23835:     int mem_base;
23836:     int ret_val;
23837:     xmlNodePtr node; /* the node */
23838:     int n_node;
23839:     xmlChar * content; /* the content */
23840:     int n_content;
23841:     int len; /* @content length */
23842:     int n_len;
23843: 
23844:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
23845:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
23846:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
23847:         mem_base = xmlMemBlocks();
23848:         node = gen_xmlNodePtr(n_node, 0);
23849:         content = gen_const_xmlChar_ptr(n_content, 1);
23850:         len = gen_int(n_len, 2);
23851: 
23852:         ret_val = xmlTextConcat(node, (const xmlChar *)content, len);
23853:         desret_int(ret_val);
23854:         call_tests++;
23855:         des_xmlNodePtr(n_node, node, 0);
23856:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 1);
23857:         des_int(n_len, len, 2);
23858:         xmlResetLastError();
23859:         if (mem_base != xmlMemBlocks()) {
23860:             printf("Leak of %d blocks found in xmlTextConcat",
23861: 	           xmlMemBlocks() - mem_base);
23862: 	    test_ret++;
23863:             printf(" %d", n_node);
23864:             printf(" %d", n_content);
23865:             printf(" %d", n_len);
23866:             printf("\n");
23867:         }
23868:     }
23869:     }
23870:     }
23871:     function_tests++;
23872: 
23873:     return(test_ret);
23874: }
23875: 
23876: 
23877: static int
23878: test_xmlTextMerge(void) {
23879:     int test_ret = 0;
23880: 
23881:     int mem_base;
23882:     xmlNodePtr ret_val;
23883:     xmlNodePtr first; /* the first text node */
23884:     int n_first;
23885:     xmlNodePtr second; /* the second text node being merged */
23886:     int n_second;
23887: 
23888:     for (n_first = 0;n_first < gen_nb_xmlNodePtr_in;n_first++) {
23889:     for (n_second = 0;n_second < gen_nb_xmlNodePtr_in;n_second++) {
23890:         mem_base = xmlMemBlocks();
23891:         first = gen_xmlNodePtr_in(n_first, 0);
23892:         second = gen_xmlNodePtr_in(n_second, 1);
23893: 
23894:         ret_val = xmlTextMerge(first, second);
23895:         if ((first != NULL) && (first->type != XML_TEXT_NODE)) {
23896:               xmlUnlinkNode(second);
23897:               xmlFreeNode(second) ; second = NULL ; }
23898:         desret_xmlNodePtr(ret_val);
23899:         call_tests++;
23900:         des_xmlNodePtr_in(n_first, first, 0);
23901:         des_xmlNodePtr_in(n_second, second, 1);
23902:         xmlResetLastError();
23903:         if (mem_base != xmlMemBlocks()) {
23904:             printf("Leak of %d blocks found in xmlTextMerge",
23905: 	           xmlMemBlocks() - mem_base);
23906: 	    test_ret++;
23907:             printf(" %d", n_first);
23908:             printf(" %d", n_second);
23909:             printf("\n");
23910:         }
23911:     }
23912:     }
23913:     function_tests++;
23914: 
23915:     return(test_ret);
23916: }
23917: 
23918: 
23919: static int
23920: test_xmlUnsetNsProp(void) {
23921:     int test_ret = 0;
23922: 
23923: #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
23924:     int mem_base;
23925:     int ret_val;
23926:     xmlNodePtr node; /* the node */
23927:     int n_node;
23928:     xmlNsPtr ns; /* the namespace definition */
23929:     int n_ns;
23930:     xmlChar * name; /* the attribute name */
23931:     int n_name;
23932: 
23933:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
23934:     for (n_ns = 0;n_ns < gen_nb_xmlNsPtr;n_ns++) {
23935:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
23936:         mem_base = xmlMemBlocks();
23937:         node = gen_xmlNodePtr(n_node, 0);
23938:         ns = gen_xmlNsPtr(n_ns, 1);
23939:         name = gen_const_xmlChar_ptr(n_name, 2);
23940: 
23941:         ret_val = xmlUnsetNsProp(node, ns, (const xmlChar *)name);
23942:         desret_int(ret_val);
23943:         call_tests++;
23944:         des_xmlNodePtr(n_node, node, 0);
23945:         des_xmlNsPtr(n_ns, ns, 1);
23946:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
23947:         xmlResetLastError();
23948:         if (mem_base != xmlMemBlocks()) {
23949:             printf("Leak of %d blocks found in xmlUnsetNsProp",
23950: 	           xmlMemBlocks() - mem_base);
23951: 	    test_ret++;
23952:             printf(" %d", n_node);
23953:             printf(" %d", n_ns);
23954:             printf(" %d", n_name);
23955:             printf("\n");
23956:         }
23957:     }
23958:     }
23959:     }
23960:     function_tests++;
23961: #endif
23962: 
23963:     return(test_ret);
23964: }
23965: 
23966: 
23967: static int
23968: test_xmlUnsetProp(void) {
23969:     int test_ret = 0;
23970: 
23971: #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
23972:     int mem_base;
23973:     int ret_val;
23974:     xmlNodePtr node; /* the node */
23975:     int n_node;
23976:     xmlChar * name; /* the attribute name */
23977:     int n_name;
23978: 
23979:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
23980:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
23981:         mem_base = xmlMemBlocks();
23982:         node = gen_xmlNodePtr(n_node, 0);
23983:         name = gen_const_xmlChar_ptr(n_name, 1);
23984: 
23985:         ret_val = xmlUnsetProp(node, (const xmlChar *)name);
23986:         desret_int(ret_val);
23987:         call_tests++;
23988:         des_xmlNodePtr(n_node, node, 0);
23989:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
23990:         xmlResetLastError();
23991:         if (mem_base != xmlMemBlocks()) {
23992:             printf("Leak of %d blocks found in xmlUnsetProp",
23993: 	           xmlMemBlocks() - mem_base);
23994: 	    test_ret++;
23995:             printf(" %d", n_node);
23996:             printf(" %d", n_name);
23997:             printf("\n");
23998:         }
23999:     }
24000:     }
24001:     function_tests++;
24002: #endif
24003: 
24004:     return(test_ret);
24005: }
24006: 
24007: 
24008: static int
24009: test_xmlValidateNCName(void) {
24010:     int test_ret = 0;
24011: 
24012: #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_DEBUG_ENABLED) || defined (LIBXML_HTML_ENABLED) || defined(LIBXML_SAX1_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || defined(LIBXML_DOCB_ENABLED)
24013: #ifdef LIBXML_TREE_ENABLED
24014:     int mem_base;
24015:     int ret_val;
24016:     xmlChar * value; /* the value to check */
24017:     int n_value;
24018:     int space; /* allow spaces in front and end of the string */
24019:     int n_space;
24020: 
24021:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
24022:     for (n_space = 0;n_space < gen_nb_int;n_space++) {
24023:         mem_base = xmlMemBlocks();
24024:         value = gen_const_xmlChar_ptr(n_value, 0);
24025:         space = gen_int(n_space, 1);
24026: 
24027:         ret_val = xmlValidateNCName((const xmlChar *)value, space);
24028:         desret_int(ret_val);
24029:         call_tests++;
24030:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 0);
24031:         des_int(n_space, space, 1);
24032:         xmlResetLastError();
24033:         if (mem_base != xmlMemBlocks()) {
24034:             printf("Leak of %d blocks found in xmlValidateNCName",
24035: 	           xmlMemBlocks() - mem_base);
24036: 	    test_ret++;
24037:             printf(" %d", n_value);
24038:             printf(" %d", n_space);
24039:             printf("\n");
24040:         }
24041:     }
24042:     }
24043:     function_tests++;
24044: #endif
24045: #endif
24046: 
24047:     return(test_ret);
24048: }
24049: 
24050: 
24051: static int
24052: test_xmlValidateNMToken(void) {
24053:     int test_ret = 0;
24054: 
24055: #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
24056: #ifdef LIBXML_TREE_ENABLED
24057:     int mem_base;
24058:     int ret_val;
24059:     xmlChar * value; /* the value to check */
24060:     int n_value;
24061:     int space; /* allow spaces in front and end of the string */
24062:     int n_space;
24063: 
24064:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
24065:     for (n_space = 0;n_space < gen_nb_int;n_space++) {
24066:         mem_base = xmlMemBlocks();
24067:         value = gen_const_xmlChar_ptr(n_value, 0);
24068:         space = gen_int(n_space, 1);
24069: 
24070:         ret_val = xmlValidateNMToken((const xmlChar *)value, space);
24071:         desret_int(ret_val);
24072:         call_tests++;
24073:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 0);
24074:         des_int(n_space, space, 1);
24075:         xmlResetLastError();
24076:         if (mem_base != xmlMemBlocks()) {
24077:             printf("Leak of %d blocks found in xmlValidateNMToken",
24078: 	           xmlMemBlocks() - mem_base);
24079: 	    test_ret++;
24080:             printf(" %d", n_value);
24081:             printf(" %d", n_space);
24082:             printf("\n");
24083:         }
24084:     }
24085:     }
24086:     function_tests++;
24087: #endif
24088: #endif
24089: 
24090:     return(test_ret);
24091: }
24092: 
24093: 
24094: static int
24095: test_xmlValidateName(void) {
24096:     int test_ret = 0;
24097: 
24098: #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
24099: #ifdef LIBXML_TREE_ENABLED
24100:     int mem_base;
24101:     int ret_val;
24102:     xmlChar * value; /* the value to check */
24103:     int n_value;
24104:     int space; /* allow spaces in front and end of the string */
24105:     int n_space;
24106: 
24107:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
24108:     for (n_space = 0;n_space < gen_nb_int;n_space++) {
24109:         mem_base = xmlMemBlocks();
24110:         value = gen_const_xmlChar_ptr(n_value, 0);
24111:         space = gen_int(n_space, 1);
24112: 
24113:         ret_val = xmlValidateName((const xmlChar *)value, space);
24114:         desret_int(ret_val);
24115:         call_tests++;
24116:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 0);
24117:         des_int(n_space, space, 1);
24118:         xmlResetLastError();
24119:         if (mem_base != xmlMemBlocks()) {
24120:             printf("Leak of %d blocks found in xmlValidateName",
24121: 	           xmlMemBlocks() - mem_base);
24122: 	    test_ret++;
24123:             printf(" %d", n_value);
24124:             printf(" %d", n_space);
24125:             printf("\n");
24126:         }
24127:     }
24128:     }
24129:     function_tests++;
24130: #endif
24131: #endif
24132: 
24133:     return(test_ret);
24134: }
24135: 
24136: 
24137: static int
24138: test_xmlValidateQName(void) {
24139:     int test_ret = 0;
24140: 
24141: #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
24142: #ifdef LIBXML_TREE_ENABLED
24143:     int mem_base;
24144:     int ret_val;
24145:     xmlChar * value; /* the value to check */
24146:     int n_value;
24147:     int space; /* allow spaces in front and end of the string */
24148:     int n_space;
24149: 
24150:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
24151:     for (n_space = 0;n_space < gen_nb_int;n_space++) {
24152:         mem_base = xmlMemBlocks();
24153:         value = gen_const_xmlChar_ptr(n_value, 0);
24154:         space = gen_int(n_space, 1);
24155: 
24156:         ret_val = xmlValidateQName((const xmlChar *)value, space);
24157:         desret_int(ret_val);
24158:         call_tests++;
24159:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 0);
24160:         des_int(n_space, space, 1);
24161:         xmlResetLastError();
24162:         if (mem_base != xmlMemBlocks()) {
24163:             printf("Leak of %d blocks found in xmlValidateQName",
24164: 	           xmlMemBlocks() - mem_base);
24165: 	    test_ret++;
24166:             printf(" %d", n_value);
24167:             printf(" %d", n_space);
24168:             printf("\n");
24169:         }
24170:     }
24171:     }
24172:     function_tests++;
24173: #endif
24174: #endif
24175: 
24176:     return(test_ret);
24177: }
24178: 
24179: static int
24180: test_tree(void) {
24181:     int test_ret = 0;
24182: 
24183:     if (quiet == 0) printf("Testing tree : 142 of 164 functions ...\n");
24184:     test_ret += test_xmlAddChild();
24185:     test_ret += test_xmlAddChildList();
24186:     test_ret += test_xmlAddNextSibling();
24187:     test_ret += test_xmlAddPrevSibling();
24188:     test_ret += test_xmlAddSibling();
24189:     test_ret += test_xmlAttrSerializeTxtContent();
24190:     test_ret += test_xmlBufContent();
24191:     test_ret += test_xmlBufEnd();
24192:     test_ret += test_xmlBufGetNodeContent();
24193:     test_ret += test_xmlBufNodeDump();
24194:     test_ret += test_xmlBufShrink();
24195:     test_ret += test_xmlBufUse();
24196:     test_ret += test_xmlBufferAdd();
24197:     test_ret += test_xmlBufferAddHead();
24198:     test_ret += test_xmlBufferCCat();
24199:     test_ret += test_xmlBufferCat();
24200:     test_ret += test_xmlBufferContent();
24201:     test_ret += test_xmlBufferCreate();
24202:     test_ret += test_xmlBufferCreateSize();
24203:     test_ret += test_xmlBufferCreateStatic();
24204:     test_ret += test_xmlBufferDetach();
24205:     test_ret += test_xmlBufferEmpty();
24206:     test_ret += test_xmlBufferGrow();
24207:     test_ret += test_xmlBufferLength();
24208:     test_ret += test_xmlBufferResize();
24209:     test_ret += test_xmlBufferSetAllocationScheme();
24210:     test_ret += test_xmlBufferShrink();
24211:     test_ret += test_xmlBufferWriteCHAR();
24212:     test_ret += test_xmlBufferWriteChar();
24213:     test_ret += test_xmlBufferWriteQuotedString();
24214:     test_ret += test_xmlBuildQName();
24215:     test_ret += test_xmlChildElementCount();
24216:     test_ret += test_xmlCopyDoc();
24217:     test_ret += test_xmlCopyDtd();
24218:     test_ret += test_xmlCopyNamespace();
24219:     test_ret += test_xmlCopyNamespaceList();
24220:     test_ret += test_xmlCopyNode();
24221:     test_ret += test_xmlCopyNodeList();
24222:     test_ret += test_xmlCopyProp();
24223:     test_ret += test_xmlCopyPropList();
24224:     test_ret += test_xmlCreateIntSubset();
24225:     test_ret += test_xmlDOMWrapAdoptNode();
24226:     test_ret += test_xmlDOMWrapCloneNode();
24227:     test_ret += test_xmlDOMWrapNewCtxt();
24228:     test_ret += test_xmlDOMWrapReconcileNamespaces();
24229:     test_ret += test_xmlDOMWrapRemoveNode();
24230:     test_ret += test_xmlDocCopyNode();
24231:     test_ret += test_xmlDocCopyNodeList();
24232:     test_ret += test_xmlDocDump();
24233:     test_ret += test_xmlDocDumpFormatMemory();
24234:     test_ret += test_xmlDocDumpFormatMemoryEnc();
24235:     test_ret += test_xmlDocDumpMemory();
24236:     test_ret += test_xmlDocDumpMemoryEnc();
24237:     test_ret += test_xmlDocFormatDump();
24238:     test_ret += test_xmlDocGetRootElement();
24239:     test_ret += test_xmlDocSetRootElement();
24240:     test_ret += test_xmlElemDump();
24241:     test_ret += test_xmlFirstElementChild();
24242:     test_ret += test_xmlGetBufferAllocationScheme();
24243:     test_ret += test_xmlGetCompressMode();
24244:     test_ret += test_xmlGetDocCompressMode();
24245:     test_ret += test_xmlGetIntSubset();
24246:     test_ret += test_xmlGetLastChild();
24247:     test_ret += test_xmlGetLineNo();
24248:     test_ret += test_xmlGetNoNsProp();
24249:     test_ret += test_xmlGetNodePath();
24250:     test_ret += test_xmlGetNsList();
24251:     test_ret += test_xmlGetNsProp();
24252:     test_ret += test_xmlGetProp();
24253:     test_ret += test_xmlHasNsProp();
24254:     test_ret += test_xmlHasProp();
24255:     test_ret += test_xmlIsBlankNode();
24256:     test_ret += test_xmlIsXHTML();
24257:     test_ret += test_xmlLastElementChild();
24258:     test_ret += test_xmlNewCDataBlock();
24259:     test_ret += test_xmlNewCharRef();
24260:     test_ret += test_xmlNewChild();
24261:     test_ret += test_xmlNewComment();
24262:     test_ret += test_xmlNewDoc();
24263:     test_ret += test_xmlNewDocComment();
24264:     test_ret += test_xmlNewDocFragment();
24265:     test_ret += test_xmlNewDocNode();
24266:     test_ret += test_xmlNewDocNodeEatName();
24267:     test_ret += test_xmlNewDocPI();
24268:     test_ret += test_xmlNewDocProp();
24269:     test_ret += test_xmlNewDocRawNode();
24270:     test_ret += test_xmlNewDocText();
24271:     test_ret += test_xmlNewDocTextLen();
24272:     test_ret += test_xmlNewDtd();
24273:     test_ret += test_xmlNewNode();
24274:     test_ret += test_xmlNewNodeEatName();
24275:     test_ret += test_xmlNewNs();
24276:     test_ret += test_xmlNewNsProp();
24277:     test_ret += test_xmlNewNsPropEatName();
24278:     test_ret += test_xmlNewPI();
24279:     test_ret += test_xmlNewProp();
24280:     test_ret += test_xmlNewReference();
24281:     test_ret += test_xmlNewText();
24282:     test_ret += test_xmlNewTextChild();
24283:     test_ret += test_xmlNewTextLen();
24284:     test_ret += test_xmlNextElementSibling();
24285:     test_ret += test_xmlNodeAddContent();
24286:     test_ret += test_xmlNodeAddContentLen();
24287:     test_ret += test_xmlNodeBufGetContent();
24288:     test_ret += test_xmlNodeDump();
24289:     test_ret += test_xmlNodeDumpOutput();
24290:     test_ret += test_xmlNodeGetBase();
24291:     test_ret += test_xmlNodeGetContent();
24292:     test_ret += test_xmlNodeGetLang();
24293:     test_ret += test_xmlNodeGetSpacePreserve();
24294:     test_ret += test_xmlNodeIsText();
24295:     test_ret += test_xmlNodeListGetRawString();
24296:     test_ret += test_xmlNodeListGetString();
24297:     test_ret += test_xmlNodeSetBase();
24298:     test_ret += test_xmlNodeSetContent();
24299:     test_ret += test_xmlNodeSetContentLen();
24300:     test_ret += test_xmlNodeSetLang();
24301:     test_ret += test_xmlNodeSetName();
24302:     test_ret += test_xmlNodeSetSpacePreserve();
24303:     test_ret += test_xmlPreviousElementSibling();
24304:     test_ret += test_xmlReconciliateNs();
24305:     test_ret += test_xmlRemoveProp();
24306:     test_ret += test_xmlReplaceNode();
24307:     test_ret += test_xmlSaveFile();
24308:     test_ret += test_xmlSaveFileEnc();
24309:     test_ret += test_xmlSaveFileTo();
24310:     test_ret += test_xmlSaveFormatFile();
24311:     test_ret += test_xmlSaveFormatFileEnc();
24312:     test_ret += test_xmlSaveFormatFileTo();
24313:     test_ret += test_xmlSearchNs();
24314:     test_ret += test_xmlSearchNsByHref();
24315:     test_ret += test_xmlSetBufferAllocationScheme();
24316:     test_ret += test_xmlSetCompressMode();
24317:     test_ret += test_xmlSetDocCompressMode();
24318:     test_ret += test_xmlSetNs();
24319:     test_ret += test_xmlSetNsProp();
24320:     test_ret += test_xmlSetProp();
24321:     test_ret += test_xmlSplitQName2();
24322:     test_ret += test_xmlSplitQName3();
24323:     test_ret += test_xmlStringGetNodeList();
24324:     test_ret += test_xmlStringLenGetNodeList();
24325:     test_ret += test_xmlTextConcat();
24326:     test_ret += test_xmlTextMerge();
24327:     test_ret += test_xmlUnsetNsProp();
24328:     test_ret += test_xmlUnsetProp();
24329:     test_ret += test_xmlValidateNCName();
24330:     test_ret += test_xmlValidateNMToken();
24331:     test_ret += test_xmlValidateName();
24332:     test_ret += test_xmlValidateQName();
24333: 
24334:     if (test_ret != 0)
24335: 	printf("Module tree: %d errors\n", test_ret);
24336:     return(test_ret);
24337: }
24338: 
24339: static int
24340: test_xmlBuildRelativeURI(void) {
24341:     int test_ret = 0;
24342: 
24343:     int mem_base;
24344:     xmlChar * ret_val;
24345:     xmlChar * URI; /* the URI reference under consideration */
24346:     int n_URI;
24347:     xmlChar * base; /* the base value */
24348:     int n_base;
24349: 
24350:     for (n_URI = 0;n_URI < gen_nb_const_xmlChar_ptr;n_URI++) {
24351:     for (n_base = 0;n_base < gen_nb_const_xmlChar_ptr;n_base++) {
24352:         mem_base = xmlMemBlocks();
24353:         URI = gen_const_xmlChar_ptr(n_URI, 0);
24354:         base = gen_const_xmlChar_ptr(n_base, 1);
24355: 
24356:         ret_val = xmlBuildRelativeURI((const xmlChar *)URI, (const xmlChar *)base);
24357:         desret_xmlChar_ptr(ret_val);
24358:         call_tests++;
24359:         des_const_xmlChar_ptr(n_URI, (const xmlChar *)URI, 0);
24360:         des_const_xmlChar_ptr(n_base, (const xmlChar *)base, 1);
24361:         xmlResetLastError();
24362:         if (mem_base != xmlMemBlocks()) {
24363:             printf("Leak of %d blocks found in xmlBuildRelativeURI",
24364: 	           xmlMemBlocks() - mem_base);
24365: 	    test_ret++;
24366:             printf(" %d", n_URI);
24367:             printf(" %d", n_base);
24368:             printf("\n");
24369:         }
24370:     }
24371:     }
24372:     function_tests++;
24373: 
24374:     return(test_ret);
24375: }
24376: 
24377: 
24378: static int
24379: test_xmlBuildURI(void) {
24380:     int test_ret = 0;
24381: 
24382:     int mem_base;
24383:     xmlChar * ret_val;
24384:     xmlChar * URI; /* the URI instance found in the document */
24385:     int n_URI;
24386:     xmlChar * base; /* the base value */
24387:     int n_base;
24388: 
24389:     for (n_URI = 0;n_URI < gen_nb_const_xmlChar_ptr;n_URI++) {
24390:     for (n_base = 0;n_base < gen_nb_const_xmlChar_ptr;n_base++) {
24391:         mem_base = xmlMemBlocks();
24392:         URI = gen_const_xmlChar_ptr(n_URI, 0);
24393:         base = gen_const_xmlChar_ptr(n_base, 1);
24394: 
24395:         ret_val = xmlBuildURI((const xmlChar *)URI, (const xmlChar *)base);
24396:         desret_xmlChar_ptr(ret_val);
24397:         call_tests++;
24398:         des_const_xmlChar_ptr(n_URI, (const xmlChar *)URI, 0);
24399:         des_const_xmlChar_ptr(n_base, (const xmlChar *)base, 1);
24400:         xmlResetLastError();
24401:         if (mem_base != xmlMemBlocks()) {
24402:             printf("Leak of %d blocks found in xmlBuildURI",
24403: 	           xmlMemBlocks() - mem_base);
24404: 	    test_ret++;
24405:             printf(" %d", n_URI);
24406:             printf(" %d", n_base);
24407:             printf("\n");
24408:         }
24409:     }
24410:     }
24411:     function_tests++;
24412: 
24413:     return(test_ret);
24414: }
24415: 
24416: 
24417: static int
24418: test_xmlCanonicPath(void) {
24419:     int test_ret = 0;
24420: 
24421:     int mem_base;
24422:     xmlChar * ret_val;
24423:     xmlChar * path; /* the resource locator in a filesystem notation */
24424:     int n_path;
24425: 
24426:     for (n_path = 0;n_path < gen_nb_const_xmlChar_ptr;n_path++) {
24427:         mem_base = xmlMemBlocks();
24428:         path = gen_const_xmlChar_ptr(n_path, 0);
24429: 
24430:         ret_val = xmlCanonicPath((const xmlChar *)path);
24431:         desret_xmlChar_ptr(ret_val);
24432:         call_tests++;
24433:         des_const_xmlChar_ptr(n_path, (const xmlChar *)path, 0);
24434:         xmlResetLastError();
24435:         if (mem_base != xmlMemBlocks()) {
24436:             printf("Leak of %d blocks found in xmlCanonicPath",
24437: 	           xmlMemBlocks() - mem_base);
24438: 	    test_ret++;
24439:             printf(" %d", n_path);
24440:             printf("\n");
24441:         }
24442:     }
24443:     function_tests++;
24444: 
24445:     return(test_ret);
24446: }
24447: 
24448: 
24449: static int
24450: test_xmlCreateURI(void) {
24451:     int test_ret = 0;
24452: 
24453: 
24454:     /* missing type support */
24455:     return(test_ret);
24456: }
24457: 
24458: 
24459: static int
24460: test_xmlNormalizeURIPath(void) {
24461:     int test_ret = 0;
24462: 
24463:     int mem_base;
24464:     int ret_val;
24465:     char * path; /* pointer to the path string */
24466:     int n_path;
24467: 
24468:     for (n_path = 0;n_path < gen_nb_char_ptr;n_path++) {
24469:         mem_base = xmlMemBlocks();
24470:         path = gen_char_ptr(n_path, 0);
24471: 
24472:         ret_val = xmlNormalizeURIPath(path);
24473:         desret_int(ret_val);
24474:         call_tests++;
24475:         des_char_ptr(n_path, path, 0);
24476:         xmlResetLastError();
24477:         if (mem_base != xmlMemBlocks()) {
24478:             printf("Leak of %d blocks found in xmlNormalizeURIPath",
24479: 	           xmlMemBlocks() - mem_base);
24480: 	    test_ret++;
24481:             printf(" %d", n_path);
24482:             printf("\n");
24483:         }
24484:     }
24485:     function_tests++;
24486: 
24487:     return(test_ret);
24488: }
24489: 
24490: 
24491: static int
24492: test_xmlParseURI(void) {
24493:     int test_ret = 0;
24494: 
24495: 
24496:     /* missing type support */
24497:     return(test_ret);
24498: }
24499: 
24500: 
24501: static int
24502: test_xmlParseURIRaw(void) {
24503:     int test_ret = 0;
24504: 
24505: 
24506:     /* missing type support */
24507:     return(test_ret);
24508: }
24509: 
24510: 
24511: #define gen_nb_xmlURIPtr 1
24512: static xmlURIPtr gen_xmlURIPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
24513:     return(NULL);
24514: }
24515: static void des_xmlURIPtr(int no ATTRIBUTE_UNUSED, xmlURIPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
24516: }
24517: 
24518: static int
24519: test_xmlParseURIReference(void) {
24520:     int test_ret = 0;
24521: 
24522:     int mem_base;
24523:     int ret_val;
24524:     xmlURIPtr uri; /* pointer to an URI structure */
24525:     int n_uri;
24526:     char * str; /* the string to analyze */
24527:     int n_str;
24528: 
24529:     for (n_uri = 0;n_uri < gen_nb_xmlURIPtr;n_uri++) {
24530:     for (n_str = 0;n_str < gen_nb_const_char_ptr;n_str++) {
24531:         mem_base = xmlMemBlocks();
24532:         uri = gen_xmlURIPtr(n_uri, 0);
24533:         str = gen_const_char_ptr(n_str, 1);
24534: 
24535:         ret_val = xmlParseURIReference(uri, (const char *)str);
24536:         desret_int(ret_val);
24537:         call_tests++;
24538:         des_xmlURIPtr(n_uri, uri, 0);
24539:         des_const_char_ptr(n_str, (const char *)str, 1);
24540:         xmlResetLastError();
24541:         if (mem_base != xmlMemBlocks()) {
24542:             printf("Leak of %d blocks found in xmlParseURIReference",
24543: 	           xmlMemBlocks() - mem_base);
24544: 	    test_ret++;
24545:             printf(" %d", n_uri);
24546:             printf(" %d", n_str);
24547:             printf("\n");
24548:         }
24549:     }
24550:     }
24551:     function_tests++;
24552: 
24553:     return(test_ret);
24554: }
24555: 
24556: 
24557: static int
24558: test_xmlPathToURI(void) {
24559:     int test_ret = 0;
24560: 
24561:     int mem_base;
24562:     xmlChar * ret_val;
24563:     xmlChar * path; /* the resource locator in a filesystem notation */
24564:     int n_path;
24565: 
24566:     for (n_path = 0;n_path < gen_nb_const_xmlChar_ptr;n_path++) {
24567:         mem_base = xmlMemBlocks();
24568:         path = gen_const_xmlChar_ptr(n_path, 0);
24569: 
24570:         ret_val = xmlPathToURI((const xmlChar *)path);
24571:         desret_xmlChar_ptr(ret_val);
24572:         call_tests++;
24573:         des_const_xmlChar_ptr(n_path, (const xmlChar *)path, 0);
24574:         xmlResetLastError();
24575:         if (mem_base != xmlMemBlocks()) {
24576:             printf("Leak of %d blocks found in xmlPathToURI",
24577: 	           xmlMemBlocks() - mem_base);
24578: 	    test_ret++;
24579:             printf(" %d", n_path);
24580:             printf("\n");
24581:         }
24582:     }
24583:     function_tests++;
24584: 
24585:     return(test_ret);
24586: }
24587: 
24588: 
24589: static int
24590: test_xmlPrintURI(void) {
24591:     int test_ret = 0;
24592: 
24593:     int mem_base;
24594:     FILE * stream; /* a FILE* for the output */
24595:     int n_stream;
24596:     xmlURIPtr uri; /* pointer to an xmlURI */
24597:     int n_uri;
24598: 
24599:     for (n_stream = 0;n_stream < gen_nb_FILE_ptr;n_stream++) {
24600:     for (n_uri = 0;n_uri < gen_nb_xmlURIPtr;n_uri++) {
24601:         mem_base = xmlMemBlocks();
24602:         stream = gen_FILE_ptr(n_stream, 0);
24603:         uri = gen_xmlURIPtr(n_uri, 1);
24604: 
24605:         xmlPrintURI(stream, uri);
24606:         call_tests++;
24607:         des_FILE_ptr(n_stream, stream, 0);
24608:         des_xmlURIPtr(n_uri, uri, 1);
24609:         xmlResetLastError();
24610:         if (mem_base != xmlMemBlocks()) {
24611:             printf("Leak of %d blocks found in xmlPrintURI",
24612: 	           xmlMemBlocks() - mem_base);
24613: 	    test_ret++;
24614:             printf(" %d", n_stream);
24615:             printf(" %d", n_uri);
24616:             printf("\n");
24617:         }
24618:     }
24619:     }
24620:     function_tests++;
24621: 
24622:     return(test_ret);
24623: }
24624: 
24625: 
24626: static int
24627: test_xmlSaveUri(void) {
24628:     int test_ret = 0;
24629: 
24630:     int mem_base;
24631:     xmlChar * ret_val;
24632:     xmlURIPtr uri; /* pointer to an xmlURI */
24633:     int n_uri;
24634: 
24635:     for (n_uri = 0;n_uri < gen_nb_xmlURIPtr;n_uri++) {
24636:         mem_base = xmlMemBlocks();
24637:         uri = gen_xmlURIPtr(n_uri, 0);
24638: 
24639:         ret_val = xmlSaveUri(uri);
24640:         desret_xmlChar_ptr(ret_val);
24641:         call_tests++;
24642:         des_xmlURIPtr(n_uri, uri, 0);
24643:         xmlResetLastError();
24644:         if (mem_base != xmlMemBlocks()) {
24645:             printf("Leak of %d blocks found in xmlSaveUri",
24646: 	           xmlMemBlocks() - mem_base);
24647: 	    test_ret++;
24648:             printf(" %d", n_uri);
24649:             printf("\n");
24650:         }
24651:     }
24652:     function_tests++;
24653: 
24654:     return(test_ret);
24655: }
24656: 
24657: 
24658: static int
24659: test_xmlURIEscape(void) {
24660:     int test_ret = 0;
24661: 
24662:     int mem_base;
24663:     xmlChar * ret_val;
24664:     xmlChar * str; /* the string of the URI to escape */
24665:     int n_str;
24666: 
24667:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
24668:         mem_base = xmlMemBlocks();
24669:         str = gen_const_xmlChar_ptr(n_str, 0);
24670: 
24671:         ret_val = xmlURIEscape((const xmlChar *)str);
24672:         desret_xmlChar_ptr(ret_val);
24673:         call_tests++;
24674:         des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 0);
24675:         xmlResetLastError();
24676:         if (mem_base != xmlMemBlocks()) {
24677:             printf("Leak of %d blocks found in xmlURIEscape",
24678: 	           xmlMemBlocks() - mem_base);
24679: 	    test_ret++;
24680:             printf(" %d", n_str);
24681:             printf("\n");
24682:         }
24683:     }
24684:     function_tests++;
24685: 
24686:     return(test_ret);
24687: }
24688: 
24689: 
24690: static int
24691: test_xmlURIEscapeStr(void) {
24692:     int test_ret = 0;
24693: 
24694:     int mem_base;
24695:     xmlChar * ret_val;
24696:     xmlChar * str; /* string to escape */
24697:     int n_str;
24698:     xmlChar * list; /* exception list string of chars not to escape */
24699:     int n_list;
24700: 
24701:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
24702:     for (n_list = 0;n_list < gen_nb_const_xmlChar_ptr;n_list++) {
24703:         mem_base = xmlMemBlocks();
24704:         str = gen_const_xmlChar_ptr(n_str, 0);
24705:         list = gen_const_xmlChar_ptr(n_list, 1);
24706: 
24707:         ret_val = xmlURIEscapeStr((const xmlChar *)str, (const xmlChar *)list);
24708:         desret_xmlChar_ptr(ret_val);
24709:         call_tests++;
24710:         des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 0);
24711:         des_const_xmlChar_ptr(n_list, (const xmlChar *)list, 1);
24712:         xmlResetLastError();
24713:         if (mem_base != xmlMemBlocks()) {
24714:             printf("Leak of %d blocks found in xmlURIEscapeStr",
24715: 	           xmlMemBlocks() - mem_base);
24716: 	    test_ret++;
24717:             printf(" %d", n_str);
24718:             printf(" %d", n_list);
24719:             printf("\n");
24720:         }
24721:     }
24722:     }
24723:     function_tests++;
24724: 
24725:     return(test_ret);
24726: }
24727: 
24728: 
24729: static int
24730: test_xmlURIUnescapeString(void) {
24731:     int test_ret = 0;
24732: 
24733: 
24734:     /* missing type support */
24735:     return(test_ret);
24736: }
24737: 
24738: static int
24739: test_uri(void) {
24740:     int test_ret = 0;
24741: 
24742:     if (quiet == 0) printf("Testing uri : 10 of 15 functions ...\n");
24743:     test_ret += test_xmlBuildRelativeURI();
24744:     test_ret += test_xmlBuildURI();
24745:     test_ret += test_xmlCanonicPath();
24746:     test_ret += test_xmlCreateURI();
24747:     test_ret += test_xmlNormalizeURIPath();
24748:     test_ret += test_xmlParseURI();
24749:     test_ret += test_xmlParseURIRaw();
24750:     test_ret += test_xmlParseURIReference();
24751:     test_ret += test_xmlPathToURI();
24752:     test_ret += test_xmlPrintURI();
24753:     test_ret += test_xmlSaveUri();
24754:     test_ret += test_xmlURIEscape();
24755:     test_ret += test_xmlURIEscapeStr();
24756:     test_ret += test_xmlURIUnescapeString();
24757: 
24758:     if (test_ret != 0)
24759: 	printf("Module uri: %d errors\n", test_ret);
24760:     return(test_ret);
24761: }
24762: 
24763: static int
24764: test_xmlAddAttributeDecl(void) {
24765:     int test_ret = 0;
24766: 
24767:     int mem_base;
24768:     xmlAttributePtr ret_val;
24769:     xmlValidCtxtPtr ctxt; /* the validation context */
24770:     int n_ctxt;
24771:     xmlDtdPtr dtd; /* pointer to the DTD */
24772:     int n_dtd;
24773:     xmlChar * elem; /* the element name */
24774:     int n_elem;
24775:     xmlChar * name; /* the attribute name */
24776:     int n_name;
24777:     xmlChar * ns; /* the attribute namespace prefix */
24778:     int n_ns;
24779:     xmlAttributeType type; /* the attribute type */
24780:     int n_type;
24781:     xmlAttributeDefault def; /* the attribute default type */
24782:     int n_def;
24783:     xmlChar * defaultValue; /* the attribute default value */
24784:     int n_defaultValue;
24785:     xmlEnumerationPtr tree; /* if it's an enumeration, the associated list */
24786:     int n_tree;
24787: 
24788:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlValidCtxtPtr;n_ctxt++) {
24789:     for (n_dtd = 0;n_dtd < gen_nb_xmlDtdPtr;n_dtd++) {
24790:     for (n_elem = 0;n_elem < gen_nb_const_xmlChar_ptr;n_elem++) {
24791:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
24792:     for (n_ns = 0;n_ns < gen_nb_const_xmlChar_ptr;n_ns++) {
24793:     for (n_type = 0;n_type < gen_nb_xmlAttributeType;n_type++) {
24794:     for (n_def = 0;n_def < gen_nb_xmlAttributeDefault;n_def++) {
24795:     for (n_defaultValue = 0;n_defaultValue < gen_nb_const_xmlChar_ptr;n_defaultValue++) {
24796:     for (n_tree = 0;n_tree < gen_nb_xmlEnumerationPtr;n_tree++) {
24797:         mem_base = xmlMemBlocks();
24798:         ctxt = gen_xmlValidCtxtPtr(n_ctxt, 0);
24799:         dtd = gen_xmlDtdPtr(n_dtd, 1);
24800:         elem = gen_const_xmlChar_ptr(n_elem, 2);
24801:         name = gen_const_xmlChar_ptr(n_name, 3);
24802:         ns = gen_const_xmlChar_ptr(n_ns, 4);
24803:         type = gen_xmlAttributeType(n_type, 5);
24804:         def = gen_xmlAttributeDefault(n_def, 6);
24805:         defaultValue = gen_const_xmlChar_ptr(n_defaultValue, 7);
24806:         tree = gen_xmlEnumerationPtr(n_tree, 8);
24807: 
24808:         ret_val = xmlAddAttributeDecl(ctxt, dtd, (const xmlChar *)elem, (const xmlChar *)name, (const xmlChar *)ns, type, def, (const xmlChar *)defaultValue, tree);
24809:         desret_xmlAttributePtr(ret_val);
24810:         call_tests++;
24811:         des_xmlValidCtxtPtr(n_ctxt, ctxt, 0);
24812:         des_xmlDtdPtr(n_dtd, dtd, 1);
24813:         des_const_xmlChar_ptr(n_elem, (const xmlChar *)elem, 2);
24814:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 3);
24815:         des_const_xmlChar_ptr(n_ns, (const xmlChar *)ns, 4);
24816:         des_xmlAttributeType(n_type, type, 5);
24817:         des_xmlAttributeDefault(n_def, def, 6);
24818:         des_const_xmlChar_ptr(n_defaultValue, (const xmlChar *)defaultValue, 7);
24819:         des_xmlEnumerationPtr(n_tree, tree, 8);
24820:         xmlResetLastError();
24821:         if (mem_base != xmlMemBlocks()) {
24822:             printf("Leak of %d blocks found in xmlAddAttributeDecl",
24823: 	           xmlMemBlocks() - mem_base);
24824: 	    test_ret++;
24825:             printf(" %d", n_ctxt);
24826:             printf(" %d", n_dtd);
24827:             printf(" %d", n_elem);
24828:             printf(" %d", n_name);
24829:             printf(" %d", n_ns);
24830:             printf(" %d", n_type);
24831:             printf(" %d", n_def);
24832:             printf(" %d", n_defaultValue);
24833:             printf(" %d", n_tree);
24834:             printf("\n");
24835:         }
24836:     }
24837:     }
24838:     }
24839:     }
24840:     }
24841:     }
24842:     }
24843:     }
24844:     }
24845:     function_tests++;
24846: 
24847:     return(test_ret);
24848: }
24849: 
24850: 
24851: static int
24852: test_xmlAddElementDecl(void) {
24853:     int test_ret = 0;
24854: 
24855:     int mem_base;
24856:     xmlElementPtr ret_val;
24857:     xmlValidCtxtPtr ctxt; /* the validation context */
24858:     int n_ctxt;
24859:     xmlDtdPtr dtd; /* pointer to the DTD */
24860:     int n_dtd;
24861:     xmlChar * name; /* the entity name */
24862:     int n_name;
24863:     xmlElementTypeVal type; /* the element type */
24864:     int n_type;
24865:     xmlElementContentPtr content; /* the element content tree or NULL */
24866:     int n_content;
24867: 
24868:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlValidCtxtPtr;n_ctxt++) {
24869:     for (n_dtd = 0;n_dtd < gen_nb_xmlDtdPtr;n_dtd++) {
24870:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
24871:     for (n_type = 0;n_type < gen_nb_xmlElementTypeVal;n_type++) {
24872:     for (n_content = 0;n_content < gen_nb_xmlElementContentPtr;n_content++) {
24873:         mem_base = xmlMemBlocks();
24874:         ctxt = gen_xmlValidCtxtPtr(n_ctxt, 0);
24875:         dtd = gen_xmlDtdPtr(n_dtd, 1);
24876:         name = gen_const_xmlChar_ptr(n_name, 2);
24877:         type = gen_xmlElementTypeVal(n_type, 3);
24878:         content = gen_xmlElementContentPtr(n_content, 4);
24879: 
24880:         ret_val = xmlAddElementDecl(ctxt, dtd, (const xmlChar *)name, type, content);
24881:         desret_xmlElementPtr(ret_val);
24882:         call_tests++;
24883:         des_xmlValidCtxtPtr(n_ctxt, ctxt, 0);
24884:         des_xmlDtdPtr(n_dtd, dtd, 1);
24885:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
24886:         des_xmlElementTypeVal(n_type, type, 3);
24887:         des_xmlElementContentPtr(n_content, content, 4);
24888:         xmlResetLastError();
24889:         if (mem_base != xmlMemBlocks()) {
24890:             printf("Leak of %d blocks found in xmlAddElementDecl",
24891: 	           xmlMemBlocks() - mem_base);
24892: 	    test_ret++;
24893:             printf(" %d", n_ctxt);
24894:             printf(" %d", n_dtd);
24895:             printf(" %d", n_name);
24896:             printf(" %d", n_type);
24897:             printf(" %d", n_content);
24898:             printf("\n");
24899:         }
24900:     }
24901:     }
24902:     }
24903:     }
24904:     }
24905:     function_tests++;
24906: 
24907:     return(test_ret);
24908: }
24909: 
24910: 
24911: static int
24912: test_xmlAddID(void) {
24913:     int test_ret = 0;
24914: 
24915: 
24916:     /* missing type support */
24917:     return(test_ret);
24918: }
24919: 
24920: 
24921: static int
24922: test_xmlAddNotationDecl(void) {
24923:     int test_ret = 0;
24924: 
24925: 
24926:     /* missing type support */
24927:     return(test_ret);
24928: }
24929: 
24930: 
24931: static int
24932: test_xmlAddRef(void) {
24933:     int test_ret = 0;
24934: 
24935: 
24936:     /* missing type support */
24937:     return(test_ret);
24938: }
24939: 
24940: 
24941: #define gen_nb_xmlAttributeTablePtr 1
24942: static xmlAttributeTablePtr gen_xmlAttributeTablePtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
24943:     return(NULL);
24944: }
24945: static void des_xmlAttributeTablePtr(int no ATTRIBUTE_UNUSED, xmlAttributeTablePtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
24946: }
24947: 
24948: static int
24949: test_xmlCopyAttributeTable(void) {
24950:     int test_ret = 0;
24951: 
24952: 
24953:     /* missing type support */
24954:     return(test_ret);
24955: }
24956: 
24957: 
24958: static int
24959: test_xmlCopyDocElementContent(void) {
24960:     int test_ret = 0;
24961: 
24962:     int mem_base;
24963:     xmlElementContentPtr ret_val;
24964:     xmlDocPtr doc; /* the document owning the element declaration */
24965:     int n_doc;
24966:     xmlElementContentPtr cur; /* An element content pointer. */
24967:     int n_cur;
24968: 
24969:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
24970:     for (n_cur = 0;n_cur < gen_nb_xmlElementContentPtr;n_cur++) {
24971:         mem_base = xmlMemBlocks();
24972:         doc = gen_xmlDocPtr(n_doc, 0);
24973:         cur = gen_xmlElementContentPtr(n_cur, 1);
24974: 
24975:         ret_val = xmlCopyDocElementContent(doc, cur);
24976:         desret_xmlElementContentPtr(ret_val);
24977:         call_tests++;
24978:         des_xmlDocPtr(n_doc, doc, 0);
24979:         des_xmlElementContentPtr(n_cur, cur, 1);
24980:         xmlResetLastError();
24981:         if (mem_base != xmlMemBlocks()) {
24982:             printf("Leak of %d blocks found in xmlCopyDocElementContent",
24983: 	           xmlMemBlocks() - mem_base);
24984: 	    test_ret++;
24985:             printf(" %d", n_doc);
24986:             printf(" %d", n_cur);
24987:             printf("\n");
24988:         }
24989:     }
24990:     }
24991:     function_tests++;
24992: 
24993:     return(test_ret);
24994: }
24995: 
24996: 
24997: static int
24998: test_xmlCopyElementContent(void) {
24999:     int test_ret = 0;
25000: 
25001:     int mem_base;
25002:     xmlElementContentPtr ret_val;
25003:     xmlElementContentPtr cur; /* An element content pointer. */
25004:     int n_cur;
25005: 
25006:     for (n_cur = 0;n_cur < gen_nb_xmlElementContentPtr;n_cur++) {
25007:         mem_base = xmlMemBlocks();
25008:         cur = gen_xmlElementContentPtr(n_cur, 0);
25009: 
25010:         ret_val = xmlCopyElementContent(cur);
25011:         desret_xmlElementContentPtr(ret_val);
25012:         call_tests++;
25013:         des_xmlElementContentPtr(n_cur, cur, 0);
25014:         xmlResetLastError();
25015:         if (mem_base != xmlMemBlocks()) {
25016:             printf("Leak of %d blocks found in xmlCopyElementContent",
25017: 	           xmlMemBlocks() - mem_base);
25018: 	    test_ret++;
25019:             printf(" %d", n_cur);
25020:             printf("\n");
25021:         }
25022:     }
25023:     function_tests++;
25024: 
25025:     return(test_ret);
25026: }
25027: 
25028: 
25029: #define gen_nb_xmlElementTablePtr 1
25030: static xmlElementTablePtr gen_xmlElementTablePtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
25031:     return(NULL);
25032: }
25033: static void des_xmlElementTablePtr(int no ATTRIBUTE_UNUSED, xmlElementTablePtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
25034: }
25035: 
25036: static int
25037: test_xmlCopyElementTable(void) {
25038:     int test_ret = 0;
25039: 
25040: 
25041:     /* missing type support */
25042:     return(test_ret);
25043: }
25044: 
25045: 
25046: static int
25047: test_xmlCopyEnumeration(void) {
25048:     int test_ret = 0;
25049: 
25050: 
25051:     /* missing type support */
25052:     return(test_ret);
25053: }
25054: 
25055: 
25056: #define gen_nb_xmlNotationTablePtr 1
25057: static xmlNotationTablePtr gen_xmlNotationTablePtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
25058:     return(NULL);
25059: }
25060: static void des_xmlNotationTablePtr(int no ATTRIBUTE_UNUSED, xmlNotationTablePtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
25061: }
25062: 
25063: static int
25064: test_xmlCopyNotationTable(void) {
25065:     int test_ret = 0;
25066: 
25067: 
25068:     /* missing type support */
25069:     return(test_ret);
25070: }
25071: 
25072: 
25073: static int
25074: test_xmlCreateEnumeration(void) {
25075:     int test_ret = 0;
25076: 
25077: 
25078:     /* missing type support */
25079:     return(test_ret);
25080: }
25081: 
25082: 
25083: #define gen_nb_xmlAttributePtr 1
25084: static xmlAttributePtr gen_xmlAttributePtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
25085:     return(NULL);
25086: }
25087: static void des_xmlAttributePtr(int no ATTRIBUTE_UNUSED, xmlAttributePtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
25088: }
25089: 
25090: static int
25091: test_xmlDumpAttributeDecl(void) {
25092:     int test_ret = 0;
25093: 
25094: #if defined(LIBXML_OUTPUT_ENABLED)
25095:     int mem_base;
25096:     xmlBufferPtr buf; /* the XML buffer output */
25097:     int n_buf;
25098:     xmlAttributePtr attr; /* An attribute declaration */
25099:     int n_attr;
25100: 
25101:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
25102:     for (n_attr = 0;n_attr < gen_nb_xmlAttributePtr;n_attr++) {
25103:         mem_base = xmlMemBlocks();
25104:         buf = gen_xmlBufferPtr(n_buf, 0);
25105:         attr = gen_xmlAttributePtr(n_attr, 1);
25106: 
25107:         xmlDumpAttributeDecl(buf, attr);
25108:         call_tests++;
25109:         des_xmlBufferPtr(n_buf, buf, 0);
25110:         des_xmlAttributePtr(n_attr, attr, 1);
25111:         xmlResetLastError();
25112:         if (mem_base != xmlMemBlocks()) {
25113:             printf("Leak of %d blocks found in xmlDumpAttributeDecl",
25114: 	           xmlMemBlocks() - mem_base);
25115: 	    test_ret++;
25116:             printf(" %d", n_buf);
25117:             printf(" %d", n_attr);
25118:             printf("\n");
25119:         }
25120:     }
25121:     }
25122:     function_tests++;
25123: #endif
25124: 
25125:     return(test_ret);
25126: }
25127: 
25128: 
25129: static int
25130: test_xmlDumpAttributeTable(void) {
25131:     int test_ret = 0;
25132: 
25133: #if defined(LIBXML_OUTPUT_ENABLED)
25134:     int mem_base;
25135:     xmlBufferPtr buf; /* the XML buffer output */
25136:     int n_buf;
25137:     xmlAttributeTablePtr table; /* An attribute table */
25138:     int n_table;
25139: 
25140:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
25141:     for (n_table = 0;n_table < gen_nb_xmlAttributeTablePtr;n_table++) {
25142:         mem_base = xmlMemBlocks();
25143:         buf = gen_xmlBufferPtr(n_buf, 0);
25144:         table = gen_xmlAttributeTablePtr(n_table, 1);
25145: 
25146:         xmlDumpAttributeTable(buf, table);
25147:         call_tests++;
25148:         des_xmlBufferPtr(n_buf, buf, 0);
25149:         des_xmlAttributeTablePtr(n_table, table, 1);
25150:         xmlResetLastError();
25151:         if (mem_base != xmlMemBlocks()) {
25152:             printf("Leak of %d blocks found in xmlDumpAttributeTable",
25153: 	           xmlMemBlocks() - mem_base);
25154: 	    test_ret++;
25155:             printf(" %d", n_buf);
25156:             printf(" %d", n_table);
25157:             printf("\n");
25158:         }
25159:     }
25160:     }
25161:     function_tests++;
25162: #endif
25163: 
25164:     return(test_ret);
25165: }
25166: 
25167: 
25168: #define gen_nb_xmlElementPtr 1
25169: static xmlElementPtr gen_xmlElementPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
25170:     return(NULL);
25171: }
25172: static void des_xmlElementPtr(int no ATTRIBUTE_UNUSED, xmlElementPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
25173: }
25174: 
25175: static int
25176: test_xmlDumpElementDecl(void) {
25177:     int test_ret = 0;
25178: 
25179: #if defined(LIBXML_OUTPUT_ENABLED)
25180:     int mem_base;
25181:     xmlBufferPtr buf; /* the XML buffer output */
25182:     int n_buf;
25183:     xmlElementPtr elem; /* An element table */
25184:     int n_elem;
25185: 
25186:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
25187:     for (n_elem = 0;n_elem < gen_nb_xmlElementPtr;n_elem++) {
25188:         mem_base = xmlMemBlocks();
25189:         buf = gen_xmlBufferPtr(n_buf, 0);
25190:         elem = gen_xmlElementPtr(n_elem, 1);
25191: 
25192:         xmlDumpElementDecl(buf, elem);
25193:         call_tests++;
25194:         des_xmlBufferPtr(n_buf, buf, 0);
25195:         des_xmlElementPtr(n_elem, elem, 1);
25196:         xmlResetLastError();
25197:         if (mem_base != xmlMemBlocks()) {
25198:             printf("Leak of %d blocks found in xmlDumpElementDecl",
25199: 	           xmlMemBlocks() - mem_base);
25200: 	    test_ret++;
25201:             printf(" %d", n_buf);
25202:             printf(" %d", n_elem);
25203:             printf("\n");
25204:         }
25205:     }
25206:     }
25207:     function_tests++;
25208: #endif
25209: 
25210:     return(test_ret);
25211: }
25212: 
25213: 
25214: static int
25215: test_xmlDumpElementTable(void) {
25216:     int test_ret = 0;
25217: 
25218: #if defined(LIBXML_OUTPUT_ENABLED)
25219:     int mem_base;
25220:     xmlBufferPtr buf; /* the XML buffer output */
25221:     int n_buf;
25222:     xmlElementTablePtr table; /* An element table */
25223:     int n_table;
25224: 
25225:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
25226:     for (n_table = 0;n_table < gen_nb_xmlElementTablePtr;n_table++) {
25227:         mem_base = xmlMemBlocks();
25228:         buf = gen_xmlBufferPtr(n_buf, 0);
25229:         table = gen_xmlElementTablePtr(n_table, 1);
25230: 
25231:         xmlDumpElementTable(buf, table);
25232:         call_tests++;
25233:         des_xmlBufferPtr(n_buf, buf, 0);
25234:         des_xmlElementTablePtr(n_table, table, 1);
25235:         xmlResetLastError();
25236:         if (mem_base != xmlMemBlocks()) {
25237:             printf("Leak of %d blocks found in xmlDumpElementTable",
25238: 	           xmlMemBlocks() - mem_base);
25239: 	    test_ret++;
25240:             printf(" %d", n_buf);
25241:             printf(" %d", n_table);
25242:             printf("\n");
25243:         }
25244:     }
25245:     }
25246:     function_tests++;
25247: #endif
25248: 
25249:     return(test_ret);
25250: }
25251: 
25252: 
25253: #define gen_nb_xmlNotationPtr 1
25254: static xmlNotationPtr gen_xmlNotationPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
25255:     return(NULL);
25256: }
25257: static void des_xmlNotationPtr(int no ATTRIBUTE_UNUSED, xmlNotationPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
25258: }
25259: 
25260: static int
25261: test_xmlDumpNotationDecl(void) {
25262:     int test_ret = 0;
25263: 
25264: #if defined(LIBXML_OUTPUT_ENABLED)
25265:     int mem_base;
25266:     xmlBufferPtr buf; /* the XML buffer output */
25267:     int n_buf;
25268:     xmlNotationPtr nota; /* A notation declaration */
25269:     int n_nota;
25270: 
25271:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
25272:     for (n_nota = 0;n_nota < gen_nb_xmlNotationPtr;n_nota++) {
25273:         mem_base = xmlMemBlocks();
25274:         buf = gen_xmlBufferPtr(n_buf, 0);
25275:         nota = gen_xmlNotationPtr(n_nota, 1);
25276: 
25277:         xmlDumpNotationDecl(buf, nota);
25278:         call_tests++;
25279:         des_xmlBufferPtr(n_buf, buf, 0);
25280:         des_xmlNotationPtr(n_nota, nota, 1);
25281:         xmlResetLastError();
25282:         if (mem_base != xmlMemBlocks()) {
25283:             printf("Leak of %d blocks found in xmlDumpNotationDecl",
25284: 	           xmlMemBlocks() - mem_base);
25285: 	    test_ret++;
25286:             printf(" %d", n_buf);
25287:             printf(" %d", n_nota);
25288:             printf("\n");
25289:         }
25290:     }
25291:     }
25292:     function_tests++;
25293: #endif
25294: 
25295:     return(test_ret);
25296: }
25297: 
25298: 
25299: static int
25300: test_xmlDumpNotationTable(void) {
25301:     int test_ret = 0;
25302: 
25303: #if defined(LIBXML_OUTPUT_ENABLED)
25304:     int mem_base;
25305:     xmlBufferPtr buf; /* the XML buffer output */
25306:     int n_buf;
25307:     xmlNotationTablePtr table; /* A notation table */
25308:     int n_table;
25309: 
25310:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
25311:     for (n_table = 0;n_table < gen_nb_xmlNotationTablePtr;n_table++) {
25312:         mem_base = xmlMemBlocks();
25313:         buf = gen_xmlBufferPtr(n_buf, 0);
25314:         table = gen_xmlNotationTablePtr(n_table, 1);
25315: 
25316:         xmlDumpNotationTable(buf, table);
25317:         call_tests++;
25318:         des_xmlBufferPtr(n_buf, buf, 0);
25319:         des_xmlNotationTablePtr(n_table, table, 1);
25320:         xmlResetLastError();
25321:         if (mem_base != xmlMemBlocks()) {
25322:             printf("Leak of %d blocks found in xmlDumpNotationTable",
25323: 	           xmlMemBlocks() - mem_base);
25324: 	    test_ret++;
25325:             printf(" %d", n_buf);
25326:             printf(" %d", n_table);
25327:             printf("\n");
25328:         }
25329:     }
25330:     }
25331:     function_tests++;
25332: #endif
25333: 
25334:     return(test_ret);
25335: }
25336: 
25337: 
25338: static int
25339: test_xmlGetDtdAttrDesc(void) {
25340:     int test_ret = 0;
25341: 
25342:     int mem_base;
25343:     xmlAttributePtr ret_val;
25344:     xmlDtdPtr dtd; /* a pointer to the DtD to search */
25345:     int n_dtd;
25346:     xmlChar * elem; /* the element name */
25347:     int n_elem;
25348:     xmlChar * name; /* the attribute name */
25349:     int n_name;
25350: 
25351:     for (n_dtd = 0;n_dtd < gen_nb_xmlDtdPtr;n_dtd++) {
25352:     for (n_elem = 0;n_elem < gen_nb_const_xmlChar_ptr;n_elem++) {
25353:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
25354:         mem_base = xmlMemBlocks();
25355:         dtd = gen_xmlDtdPtr(n_dtd, 0);
25356:         elem = gen_const_xmlChar_ptr(n_elem, 1);
25357:         name = gen_const_xmlChar_ptr(n_name, 2);
25358: 
25359:         ret_val = xmlGetDtdAttrDesc(dtd, (const xmlChar *)elem, (const xmlChar *)name);
25360:         desret_xmlAttributePtr(ret_val);
25361:         call_tests++;
25362:         des_xmlDtdPtr(n_dtd, dtd, 0);
25363:         des_const_xmlChar_ptr(n_elem, (const xmlChar *)elem, 1);
25364:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
25365:         xmlResetLastError();
25366:         if (mem_base != xmlMemBlocks()) {
25367:             printf("Leak of %d blocks found in xmlGetDtdAttrDesc",
25368: 	           xmlMemBlocks() - mem_base);
25369: 	    test_ret++;
25370:             printf(" %d", n_dtd);
25371:             printf(" %d", n_elem);
25372:             printf(" %d", n_name);
25373:             printf("\n");
25374:         }
25375:     }
25376:     }
25377:     }
25378:     function_tests++;
25379: 
25380:     return(test_ret);
25381: }
25382: 
25383: 
25384: static int
25385: test_xmlGetDtdElementDesc(void) {
25386:     int test_ret = 0;
25387: 
25388:     int mem_base;
25389:     xmlElementPtr ret_val;
25390:     xmlDtdPtr dtd; /* a pointer to the DtD to search */
25391:     int n_dtd;
25392:     xmlChar * name; /* the element name */
25393:     int n_name;
25394: 
25395:     for (n_dtd = 0;n_dtd < gen_nb_xmlDtdPtr;n_dtd++) {
25396:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
25397:         mem_base = xmlMemBlocks();
25398:         dtd = gen_xmlDtdPtr(n_dtd, 0);
25399:         name = gen_const_xmlChar_ptr(n_name, 1);
25400: 
25401:         ret_val = xmlGetDtdElementDesc(dtd, (const xmlChar *)name);
25402:         desret_xmlElementPtr(ret_val);
25403:         call_tests++;
25404:         des_xmlDtdPtr(n_dtd, dtd, 0);
25405:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
25406:         xmlResetLastError();
25407:         if (mem_base != xmlMemBlocks()) {
25408:             printf("Leak of %d blocks found in xmlGetDtdElementDesc",
25409: 	           xmlMemBlocks() - mem_base);
25410: 	    test_ret++;
25411:             printf(" %d", n_dtd);
25412:             printf(" %d", n_name);
25413:             printf("\n");
25414:         }
25415:     }
25416:     }
25417:     function_tests++;
25418: 
25419:     return(test_ret);
25420: }
25421: 
25422: 
25423: static int
25424: test_xmlGetDtdNotationDesc(void) {
25425:     int test_ret = 0;
25426: 
25427: 
25428:     /* missing type support */
25429:     return(test_ret);
25430: }
25431: 
25432: 
25433: static int
25434: test_xmlGetDtdQAttrDesc(void) {
25435:     int test_ret = 0;
25436: 
25437:     int mem_base;
25438:     xmlAttributePtr ret_val;
25439:     xmlDtdPtr dtd; /* a pointer to the DtD to search */
25440:     int n_dtd;
25441:     xmlChar * elem; /* the element name */
25442:     int n_elem;
25443:     xmlChar * name; /* the attribute name */
25444:     int n_name;
25445:     xmlChar * prefix; /* the attribute namespace prefix */
25446:     int n_prefix;
25447: 
25448:     for (n_dtd = 0;n_dtd < gen_nb_xmlDtdPtr;n_dtd++) {
25449:     for (n_elem = 0;n_elem < gen_nb_const_xmlChar_ptr;n_elem++) {
25450:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
25451:     for (n_prefix = 0;n_prefix < gen_nb_const_xmlChar_ptr;n_prefix++) {
25452:         mem_base = xmlMemBlocks();
25453:         dtd = gen_xmlDtdPtr(n_dtd, 0);
25454:         elem = gen_const_xmlChar_ptr(n_elem, 1);
25455:         name = gen_const_xmlChar_ptr(n_name, 2);
25456:         prefix = gen_const_xmlChar_ptr(n_prefix, 3);
25457: 
25458:         ret_val = xmlGetDtdQAttrDesc(dtd, (const xmlChar *)elem, (const xmlChar *)name, (const xmlChar *)prefix);
25459:         desret_xmlAttributePtr(ret_val);
25460:         call_tests++;
25461:         des_xmlDtdPtr(n_dtd, dtd, 0);
25462:         des_const_xmlChar_ptr(n_elem, (const xmlChar *)elem, 1);
25463:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
25464:         des_const_xmlChar_ptr(n_prefix, (const xmlChar *)prefix, 3);
25465:         xmlResetLastError();
25466:         if (mem_base != xmlMemBlocks()) {
25467:             printf("Leak of %d blocks found in xmlGetDtdQAttrDesc",
25468: 	           xmlMemBlocks() - mem_base);
25469: 	    test_ret++;
25470:             printf(" %d", n_dtd);
25471:             printf(" %d", n_elem);
25472:             printf(" %d", n_name);
25473:             printf(" %d", n_prefix);
25474:             printf("\n");
25475:         }
25476:     }
25477:     }
25478:     }
25479:     }
25480:     function_tests++;
25481: 
25482:     return(test_ret);
25483: }
25484: 
25485: 
25486: static int
25487: test_xmlGetDtdQElementDesc(void) {
25488:     int test_ret = 0;
25489: 
25490:     int mem_base;
25491:     xmlElementPtr ret_val;
25492:     xmlDtdPtr dtd; /* a pointer to the DtD to search */
25493:     int n_dtd;
25494:     xmlChar * name; /* the element name */
25495:     int n_name;
25496:     xmlChar * prefix; /* the element namespace prefix */
25497:     int n_prefix;
25498: 
25499:     for (n_dtd = 0;n_dtd < gen_nb_xmlDtdPtr;n_dtd++) {
25500:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
25501:     for (n_prefix = 0;n_prefix < gen_nb_const_xmlChar_ptr;n_prefix++) {
25502:         mem_base = xmlMemBlocks();
25503:         dtd = gen_xmlDtdPtr(n_dtd, 0);
25504:         name = gen_const_xmlChar_ptr(n_name, 1);
25505:         prefix = gen_const_xmlChar_ptr(n_prefix, 2);
25506: 
25507:         ret_val = xmlGetDtdQElementDesc(dtd, (const xmlChar *)name, (const xmlChar *)prefix);
25508:         desret_xmlElementPtr(ret_val);
25509:         call_tests++;
25510:         des_xmlDtdPtr(n_dtd, dtd, 0);
25511:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
25512:         des_const_xmlChar_ptr(n_prefix, (const xmlChar *)prefix, 2);
25513:         xmlResetLastError();
25514:         if (mem_base != xmlMemBlocks()) {
25515:             printf("Leak of %d blocks found in xmlGetDtdQElementDesc",
25516: 	           xmlMemBlocks() - mem_base);
25517: 	    test_ret++;
25518:             printf(" %d", n_dtd);
25519:             printf(" %d", n_name);
25520:             printf(" %d", n_prefix);
25521:             printf("\n");
25522:         }
25523:     }
25524:     }
25525:     }
25526:     function_tests++;
25527: 
25528:     return(test_ret);
25529: }
25530: 
25531: 
25532: static int
25533: test_xmlGetID(void) {
25534:     int test_ret = 0;
25535: 
25536:     int mem_base;
25537:     xmlAttrPtr ret_val;
25538:     xmlDocPtr doc; /* pointer to the document */
25539:     int n_doc;
25540:     xmlChar * ID; /* the ID value */
25541:     int n_ID;
25542: 
25543:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
25544:     for (n_ID = 0;n_ID < gen_nb_const_xmlChar_ptr;n_ID++) {
25545:         mem_base = xmlMemBlocks();
25546:         doc = gen_xmlDocPtr(n_doc, 0);
25547:         ID = gen_const_xmlChar_ptr(n_ID, 1);
25548: 
25549:         ret_val = xmlGetID(doc, (const xmlChar *)ID);
25550:         desret_xmlAttrPtr(ret_val);
25551:         call_tests++;
25552:         des_xmlDocPtr(n_doc, doc, 0);
25553:         des_const_xmlChar_ptr(n_ID, (const xmlChar *)ID, 1);
25554:         xmlResetLastError();
25555:         if (mem_base != xmlMemBlocks()) {
25556:             printf("Leak of %d blocks found in xmlGetID",
25557: 	           xmlMemBlocks() - mem_base);
25558: 	    test_ret++;
25559:             printf(" %d", n_doc);
25560:             printf(" %d", n_ID);
25561:             printf("\n");
25562:         }
25563:     }
25564:     }
25565:     function_tests++;
25566: 
25567:     return(test_ret);
25568: }
25569: 
25570: 
25571: static int
25572: test_xmlGetRefs(void) {
25573:     int test_ret = 0;
25574: 
25575: 
25576:     /* missing type support */
25577:     return(test_ret);
25578: }
25579: 
25580: 
25581: static int
25582: test_xmlIsID(void) {
25583:     int test_ret = 0;
25584: 
25585:     int mem_base;
25586:     int ret_val;
25587:     xmlDocPtr doc; /* the document */
25588:     int n_doc;
25589:     xmlNodePtr elem; /* the element carrying the attribute */
25590:     int n_elem;
25591:     xmlAttrPtr attr; /* the attribute */
25592:     int n_attr;
25593: 
25594:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
25595:     for (n_elem = 0;n_elem < gen_nb_xmlNodePtr;n_elem++) {
25596:     for (n_attr = 0;n_attr < gen_nb_xmlAttrPtr;n_attr++) {
25597:         mem_base = xmlMemBlocks();
25598:         doc = gen_xmlDocPtr(n_doc, 0);
25599:         elem = gen_xmlNodePtr(n_elem, 1);
25600:         attr = gen_xmlAttrPtr(n_attr, 2);
25601: 
25602:         ret_val = xmlIsID(doc, elem, attr);
25603:         desret_int(ret_val);
25604:         call_tests++;
25605:         des_xmlDocPtr(n_doc, doc, 0);
25606:         des_xmlNodePtr(n_elem, elem, 1);
25607:         des_xmlAttrPtr(n_attr, attr, 2);
25608:         xmlResetLastError();
25609:         if (mem_base != xmlMemBlocks()) {
25610:             printf("Leak of %d blocks found in xmlIsID",
25611: 	           xmlMemBlocks() - mem_base);
25612: 	    test_ret++;
25613:             printf(" %d", n_doc);
25614:             printf(" %d", n_elem);
25615:             printf(" %d", n_attr);
25616:             printf("\n");
25617:         }
25618:     }
25619:     }
25620:     }
25621:     function_tests++;
25622: 
25623:     return(test_ret);
25624: }
25625: 
25626: 
25627: static int
25628: test_xmlIsMixedElement(void) {
25629:     int test_ret = 0;
25630: 
25631:     int mem_base;
25632:     int ret_val;
25633:     xmlDocPtr doc; /* the document */
25634:     int n_doc;
25635:     xmlChar * name; /* the element name */
25636:     int n_name;
25637: 
25638:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
25639:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
25640:         mem_base = xmlMemBlocks();
25641:         doc = gen_xmlDocPtr(n_doc, 0);
25642:         name = gen_const_xmlChar_ptr(n_name, 1);
25643: 
25644:         ret_val = xmlIsMixedElement(doc, (const xmlChar *)name);
25645:         desret_int(ret_val);
25646:         call_tests++;
25647:         des_xmlDocPtr(n_doc, doc, 0);
25648:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
25649:         xmlResetLastError();
25650:         if (mem_base != xmlMemBlocks()) {
25651:             printf("Leak of %d blocks found in xmlIsMixedElement",
25652: 	           xmlMemBlocks() - mem_base);
25653: 	    test_ret++;
25654:             printf(" %d", n_doc);
25655:             printf(" %d", n_name);
25656:             printf("\n");
25657:         }
25658:     }
25659:     }
25660:     function_tests++;
25661: 
25662:     return(test_ret);
25663: }
25664: 
25665: 
25666: static int
25667: test_xmlIsRef(void) {
25668:     int test_ret = 0;
25669: 
25670:     int mem_base;
25671:     int ret_val;
25672:     xmlDocPtr doc; /* the document */
25673:     int n_doc;
25674:     xmlNodePtr elem; /* the element carrying the attribute */
25675:     int n_elem;
25676:     xmlAttrPtr attr; /* the attribute */
25677:     int n_attr;
25678: 
25679:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
25680:     for (n_elem = 0;n_elem < gen_nb_xmlNodePtr;n_elem++) {
25681:     for (n_attr = 0;n_attr < gen_nb_xmlAttrPtr;n_attr++) {
25682:         mem_base = xmlMemBlocks();
25683:         doc = gen_xmlDocPtr(n_doc, 0);
25684:         elem = gen_xmlNodePtr(n_elem, 1);
25685:         attr = gen_xmlAttrPtr(n_attr, 2);
25686: 
25687:         ret_val = xmlIsRef(doc, elem, attr);
25688:         desret_int(ret_val);
25689:         call_tests++;
25690:         des_xmlDocPtr(n_doc, doc, 0);
25691:         des_xmlNodePtr(n_elem, elem, 1);
25692:         des_xmlAttrPtr(n_attr, attr, 2);
25693:         xmlResetLastError();
25694:         if (mem_base != xmlMemBlocks()) {
25695:             printf("Leak of %d blocks found in xmlIsRef",
25696: 	           xmlMemBlocks() - mem_base);
25697: 	    test_ret++;
25698:             printf(" %d", n_doc);
25699:             printf(" %d", n_elem);
25700:             printf(" %d", n_attr);
25701:             printf("\n");
25702:         }
25703:     }
25704:     }
25705:     }
25706:     function_tests++;
25707: 
25708:     return(test_ret);
25709: }
25710: 
25711: 
25712: static int
25713: test_xmlNewDocElementContent(void) {
25714:     int test_ret = 0;
25715: 
25716:     int mem_base;
25717:     xmlElementContentPtr ret_val;
25718:     xmlDocPtr doc; /* the document */
25719:     int n_doc;
25720:     xmlChar * name; /* the subelement name or NULL */
25721:     int n_name;
25722:     xmlElementContentType type; /* the type of element content decl */
25723:     int n_type;
25724: 
25725:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
25726:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
25727:     for (n_type = 0;n_type < gen_nb_xmlElementContentType;n_type++) {
25728:         mem_base = xmlMemBlocks();
25729:         doc = gen_xmlDocPtr(n_doc, 0);
25730:         name = gen_const_xmlChar_ptr(n_name, 1);
25731:         type = gen_xmlElementContentType(n_type, 2);
25732: 
25733:         ret_val = xmlNewDocElementContent(doc, (const xmlChar *)name, type);
25734:         xmlFreeDocElementContent(doc, ret_val); ret_val = NULL;
25735:         desret_xmlElementContentPtr(ret_val);
25736:         call_tests++;
25737:         des_xmlDocPtr(n_doc, doc, 0);
25738:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
25739:         des_xmlElementContentType(n_type, type, 2);
25740:         xmlResetLastError();
25741:         if (mem_base != xmlMemBlocks()) {
25742:             printf("Leak of %d blocks found in xmlNewDocElementContent",
25743: 	           xmlMemBlocks() - mem_base);
25744: 	    test_ret++;
25745:             printf(" %d", n_doc);
25746:             printf(" %d", n_name);
25747:             printf(" %d", n_type);
25748:             printf("\n");
25749:         }
25750:     }
25751:     }
25752:     }
25753:     function_tests++;
25754: 
25755:     return(test_ret);
25756: }
25757: 
25758: 
25759: static int
25760: test_xmlNewElementContent(void) {
25761:     int test_ret = 0;
25762: 
25763:     int mem_base;
25764:     xmlElementContentPtr ret_val;
25765:     xmlChar * name; /* the subelement name or NULL */
25766:     int n_name;
25767:     xmlElementContentType type; /* the type of element content decl */
25768:     int n_type;
25769: 
25770:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
25771:     for (n_type = 0;n_type < gen_nb_xmlElementContentType;n_type++) {
25772:         mem_base = xmlMemBlocks();
25773:         name = gen_const_xmlChar_ptr(n_name, 0);
25774:         type = gen_xmlElementContentType(n_type, 1);
25775: 
25776:         ret_val = xmlNewElementContent((const xmlChar *)name, type);
25777:         desret_xmlElementContentPtr(ret_val);
25778:         call_tests++;
25779:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 0);
25780:         des_xmlElementContentType(n_type, type, 1);
25781:         xmlResetLastError();
25782:         if (mem_base != xmlMemBlocks()) {
25783:             printf("Leak of %d blocks found in xmlNewElementContent",
25784: 	           xmlMemBlocks() - mem_base);
25785: 	    test_ret++;
25786:             printf(" %d", n_name);
25787:             printf(" %d", n_type);
25788:             printf("\n");
25789:         }
25790:     }
25791:     }
25792:     function_tests++;
25793: 
25794:     return(test_ret);
25795: }
25796: 
25797: 
25798: static int
25799: test_xmlNewValidCtxt(void) {
25800:     int test_ret = 0;
25801: 
25802: 
25803:     /* missing type support */
25804:     return(test_ret);
25805: }
25806: 
25807: 
25808: static int
25809: test_xmlRemoveID(void) {
25810:     int test_ret = 0;
25811: 
25812:     int mem_base;
25813:     int ret_val;
25814:     xmlDocPtr doc; /* the document */
25815:     int n_doc;
25816:     xmlAttrPtr attr; /* the attribute */
25817:     int n_attr;
25818: 
25819:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
25820:     for (n_attr = 0;n_attr < gen_nb_xmlAttrPtr;n_attr++) {
25821:         mem_base = xmlMemBlocks();
25822:         doc = gen_xmlDocPtr(n_doc, 0);
25823:         attr = gen_xmlAttrPtr(n_attr, 1);
25824: 
25825:         ret_val = xmlRemoveID(doc, attr);
25826:         desret_int(ret_val);
25827:         call_tests++;
25828:         des_xmlDocPtr(n_doc, doc, 0);
25829:         des_xmlAttrPtr(n_attr, attr, 1);
25830:         xmlResetLastError();
25831:         if (mem_base != xmlMemBlocks()) {
25832:             printf("Leak of %d blocks found in xmlRemoveID",
25833: 	           xmlMemBlocks() - mem_base);
25834: 	    test_ret++;
25835:             printf(" %d", n_doc);
25836:             printf(" %d", n_attr);
25837:             printf("\n");
25838:         }
25839:     }
25840:     }
25841:     function_tests++;
25842: 
25843:     return(test_ret);
25844: }
25845: 
25846: 
25847: static int
25848: test_xmlRemoveRef(void) {
25849:     int test_ret = 0;
25850: 
25851:     int mem_base;
25852:     int ret_val;
25853:     xmlDocPtr doc; /* the document */
25854:     int n_doc;
25855:     xmlAttrPtr attr; /* the attribute */
25856:     int n_attr;
25857: 
25858:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
25859:     for (n_attr = 0;n_attr < gen_nb_xmlAttrPtr;n_attr++) {
25860:         mem_base = xmlMemBlocks();
25861:         doc = gen_xmlDocPtr(n_doc, 0);
25862:         attr = gen_xmlAttrPtr(n_attr, 1);
25863: 
25864:         ret_val = xmlRemoveRef(doc, attr);
25865:         desret_int(ret_val);
25866:         call_tests++;
25867:         des_xmlDocPtr(n_doc, doc, 0);
25868:         des_xmlAttrPtr(n_attr, attr, 1);
25869:         xmlResetLastError();
25870:         if (mem_base != xmlMemBlocks()) {
25871:             printf("Leak of %d blocks found in xmlRemoveRef",
25872: 	           xmlMemBlocks() - mem_base);
25873: 	    test_ret++;
25874:             printf(" %d", n_doc);
25875:             printf(" %d", n_attr);
25876:             printf("\n");
25877:         }
25878:     }
25879:     }
25880:     function_tests++;
25881: 
25882:     return(test_ret);
25883: }
25884: 
25885: 
25886: static int
25887: test_xmlSnprintfElementContent(void) {
25888:     int test_ret = 0;
25889: 
25890:     int mem_base;
25891:     char * buf; /* an output buffer */
25892:     int n_buf;
25893:     int size; /* the buffer size */
25894:     int n_size;
25895:     xmlElementContentPtr content; /* An element table */
25896:     int n_content;
25897:     int englob; /* 1 if one must print the englobing parenthesis, 0 otherwise */
25898:     int n_englob;
25899: 
25900:     for (n_buf = 0;n_buf < gen_nb_char_ptr;n_buf++) {
25901:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
25902:     for (n_content = 0;n_content < gen_nb_xmlElementContentPtr;n_content++) {
25903:     for (n_englob = 0;n_englob < gen_nb_int;n_englob++) {
25904:         mem_base = xmlMemBlocks();
25905:         buf = gen_char_ptr(n_buf, 0);
25906:         size = gen_int(n_size, 1);
25907:         content = gen_xmlElementContentPtr(n_content, 2);
25908:         englob = gen_int(n_englob, 3);
25909: 
25910:         xmlSnprintfElementContent(buf, size, content, englob);
25911:         call_tests++;
25912:         des_char_ptr(n_buf, buf, 0);
25913:         des_int(n_size, size, 1);
25914:         des_xmlElementContentPtr(n_content, content, 2);
25915:         des_int(n_englob, englob, 3);
25916:         xmlResetLastError();
25917:         if (mem_base != xmlMemBlocks()) {
25918:             printf("Leak of %d blocks found in xmlSnprintfElementContent",
25919: 	           xmlMemBlocks() - mem_base);
25920: 	    test_ret++;
25921:             printf(" %d", n_buf);
25922:             printf(" %d", n_size);
25923:             printf(" %d", n_content);
25924:             printf(" %d", n_englob);
25925:             printf("\n");
25926:         }
25927:     }
25928:     }
25929:     }
25930:     }
25931:     function_tests++;
25932: 
25933:     return(test_ret);
25934: }
25935: 
25936: 
25937: static int
25938: test_xmlSprintfElementContent(void) {
25939:     int test_ret = 0;
25940: 
25941: #if defined(LIBXML_OUTPUT_ENABLED)
25942: #ifdef LIBXML_OUTPUT_ENABLED
25943:     int mem_base;
25944:     char * buf; /* an output buffer */
25945:     int n_buf;
25946:     xmlElementContentPtr content; /* An element table */
25947:     int n_content;
25948:     int englob; /* 1 if one must print the englobing parenthesis, 0 otherwise */
25949:     int n_englob;
25950: 
25951:     for (n_buf = 0;n_buf < gen_nb_char_ptr;n_buf++) {
25952:     for (n_content = 0;n_content < gen_nb_xmlElementContentPtr;n_content++) {
25953:     for (n_englob = 0;n_englob < gen_nb_int;n_englob++) {
25954:         mem_base = xmlMemBlocks();
25955:         buf = gen_char_ptr(n_buf, 0);
25956:         content = gen_xmlElementContentPtr(n_content, 1);
25957:         englob = gen_int(n_englob, 2);
25958: 
25959:         xmlSprintfElementContent(buf, content, englob);
25960:         call_tests++;
25961:         des_char_ptr(n_buf, buf, 0);
25962:         des_xmlElementContentPtr(n_content, content, 1);
25963:         des_int(n_englob, englob, 2);
25964:         xmlResetLastError();
25965:         if (mem_base != xmlMemBlocks()) {
25966:             printf("Leak of %d blocks found in xmlSprintfElementContent",
25967: 	           xmlMemBlocks() - mem_base);
25968: 	    test_ret++;
25969:             printf(" %d", n_buf);
25970:             printf(" %d", n_content);
25971:             printf(" %d", n_englob);
25972:             printf("\n");
25973:         }
25974:     }
25975:     }
25976:     }
25977:     function_tests++;
25978: #endif
25979: #endif
25980: 
25981:     return(test_ret);
25982: }
25983: 
25984: 
25985: static int
25986: test_xmlValidBuildContentModel(void) {
25987:     int test_ret = 0;
25988: 
25989: #if defined(LIBXML_VALID_ENABLED) && defined(LIBXML_REGEXP_ENABLED)
25990:     int mem_base;
25991:     int ret_val;
25992:     xmlValidCtxtPtr ctxt; /* a validation context */
25993:     int n_ctxt;
25994:     xmlElementPtr elem; /* an element declaration node */
25995:     int n_elem;
25996: 
25997:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlValidCtxtPtr;n_ctxt++) {
25998:     for (n_elem = 0;n_elem < gen_nb_xmlElementPtr;n_elem++) {
25999:         mem_base = xmlMemBlocks();
26000:         ctxt = gen_xmlValidCtxtPtr(n_ctxt, 0);
26001:         elem = gen_xmlElementPtr(n_elem, 1);
26002: 
26003:         ret_val = xmlValidBuildContentModel(ctxt, elem);
26004:         desret_int(ret_val);
26005:         call_tests++;
26006:         des_xmlValidCtxtPtr(n_ctxt, ctxt, 0);
26007:         des_xmlElementPtr(n_elem, elem, 1);
26008:         xmlResetLastError();
26009:         if (mem_base != xmlMemBlocks()) {
26010:             printf("Leak of %d blocks found in xmlValidBuildContentModel",
26011: 	           xmlMemBlocks() - mem_base);
26012: 	    test_ret++;
26013:             printf(" %d", n_ctxt);
26014:             printf(" %d", n_elem);
26015:             printf("\n");
26016:         }
26017:     }
26018:     }
26019:     function_tests++;
26020: #endif
26021: 
26022:     return(test_ret);
26023: }
26024: 
26025: 
26026: static int
26027: test_xmlValidCtxtNormalizeAttributeValue(void) {
26028:     int test_ret = 0;
26029: 
26030: #if defined(LIBXML_VALID_ENABLED)
26031:     int mem_base;
26032:     xmlChar * ret_val;
26033:     xmlValidCtxtPtr ctxt; /* the validation context or NULL */
26034:     int n_ctxt;
26035:     xmlDocPtr doc; /* the document */
26036:     int n_doc;
26037:     xmlNodePtr elem; /* the parent */
26038:     int n_elem;
26039:     xmlChar * name; /* the attribute name */
26040:     int n_name;
26041:     xmlChar * value; /* the attribute value */
26042:     int n_value;
26043: 
26044:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlValidCtxtPtr;n_ctxt++) {
26045:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
26046:     for (n_elem = 0;n_elem < gen_nb_xmlNodePtr;n_elem++) {
26047:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
26048:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
26049:         mem_base = xmlMemBlocks();
26050:         ctxt = gen_xmlValidCtxtPtr(n_ctxt, 0);
26051:         doc = gen_xmlDocPtr(n_doc, 1);
26052:         elem = gen_xmlNodePtr(n_elem, 2);
26053:         name = gen_const_xmlChar_ptr(n_name, 3);
26054:         value = gen_const_xmlChar_ptr(n_value, 4);
26055: 
26056:         ret_val = xmlValidCtxtNormalizeAttributeValue(ctxt, doc, elem, (const xmlChar *)name, (const xmlChar *)value);
26057:         desret_xmlChar_ptr(ret_val);
26058:         call_tests++;
26059:         des_xmlValidCtxtPtr(n_ctxt, ctxt, 0);
26060:         des_xmlDocPtr(n_doc, doc, 1);
26061:         des_xmlNodePtr(n_elem, elem, 2);
26062:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 3);
26063:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 4);
26064:         xmlResetLastError();
26065:         if (mem_base != xmlMemBlocks()) {
26066:             printf("Leak of %d blocks found in xmlValidCtxtNormalizeAttributeValue",
26067: 	           xmlMemBlocks() - mem_base);
26068: 	    test_ret++;
26069:             printf(" %d", n_ctxt);
26070:             printf(" %d", n_doc);
26071:             printf(" %d", n_elem);
26072:             printf(" %d", n_name);
26073:             printf(" %d", n_value);
26074:             printf("\n");
26075:         }
26076:     }
26077:     }
26078:     }
26079:     }
26080:     }
26081:     function_tests++;
26082: #endif
26083: 
26084:     return(test_ret);
26085: }
26086: 
26087: 
26088: #define gen_nb_xmlElementContent_ptr 1
26089: static xmlElementContent * gen_xmlElementContent_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
26090:     return(NULL);
26091: }
26092: static void des_xmlElementContent_ptr(int no ATTRIBUTE_UNUSED, xmlElementContent * val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
26093: }
26094: 
26095: static int
26096: test_xmlValidGetPotentialChildren(void) {
26097:     int test_ret = 0;
26098: 
26099: #if defined(LIBXML_VALID_ENABLED)
26100: #ifdef LIBXML_VALID_ENABLED
26101:     int mem_base;
26102:     int ret_val;
26103:     xmlElementContent * ctree; /* an element content tree */
26104:     int n_ctree;
26105:     xmlChar ** names; /* an array to store the list of child names */
26106:     int n_names;
26107:     int * len; /* a pointer to the number of element in the list */
26108:     int n_len;
26109:     int max; /* the size of the array */
26110:     int n_max;
26111: 
26112:     for (n_ctree = 0;n_ctree < gen_nb_xmlElementContent_ptr;n_ctree++) {
26113:     for (n_names = 0;n_names < gen_nb_const_xmlChar_ptr_ptr;n_names++) {
26114:     for (n_len = 0;n_len < gen_nb_int_ptr;n_len++) {
26115:     for (n_max = 0;n_max < gen_nb_int;n_max++) {
26116:         mem_base = xmlMemBlocks();
26117:         ctree = gen_xmlElementContent_ptr(n_ctree, 0);
26118:         names = gen_const_xmlChar_ptr_ptr(n_names, 1);
26119:         len = gen_int_ptr(n_len, 2);
26120:         max = gen_int(n_max, 3);
26121: 
26122:         ret_val = xmlValidGetPotentialChildren(ctree, (const xmlChar **)names, len, max);
26123:         desret_int(ret_val);
26124:         call_tests++;
26125:         des_xmlElementContent_ptr(n_ctree, ctree, 0);
26126:         des_const_xmlChar_ptr_ptr(n_names, (const xmlChar **)names, 1);
26127:         des_int_ptr(n_len, len, 2);
26128:         des_int(n_max, max, 3);
26129:         xmlResetLastError();
26130:         if (mem_base != xmlMemBlocks()) {
26131:             printf("Leak of %d blocks found in xmlValidGetPotentialChildren",
26132: 	           xmlMemBlocks() - mem_base);
26133: 	    test_ret++;
26134:             printf(" %d", n_ctree);
26135:             printf(" %d", n_names);
26136:             printf(" %d", n_len);
26137:             printf(" %d", n_max);
26138:             printf("\n");
26139:         }
26140:     }
26141:     }
26142:     }
26143:     }
26144:     function_tests++;
26145: #endif
26146: #endif
26147: 
26148:     return(test_ret);
26149: }
26150: 
26151: 
26152: static int
26153: test_xmlValidGetValidElements(void) {
26154:     int test_ret = 0;
26155: 
26156: #if defined(LIBXML_VALID_ENABLED)
26157: #ifdef LIBXML_VALID_ENABLED
26158:     int mem_base;
26159:     int ret_val;
26160:     xmlNode * prev; /* an element to insert after */
26161:     int n_prev;
26162:     xmlNode * next; /* an element to insert next */
26163:     int n_next;
26164:     xmlChar ** names; /* an array to store the list of child names */
26165:     int n_names;
26166:     int max; /* the size of the array */
26167:     int n_max;
26168: 
26169:     for (n_prev = 0;n_prev < gen_nb_xmlNodePtr;n_prev++) {
26170:     for (n_next = 0;n_next < gen_nb_xmlNodePtr;n_next++) {
26171:     for (n_names = 0;n_names < gen_nb_const_xmlChar_ptr_ptr;n_names++) {
26172:     for (n_max = 0;n_max < gen_nb_int;n_max++) {
26173:         mem_base = xmlMemBlocks();
26174:         prev = gen_xmlNodePtr(n_prev, 0);
26175:         next = gen_xmlNodePtr(n_next, 1);
26176:         names = gen_const_xmlChar_ptr_ptr(n_names, 2);
26177:         max = gen_int(n_max, 3);
26178: 
26179:         ret_val = xmlValidGetValidElements(prev, next, (const xmlChar **)names, max);
26180:         desret_int(ret_val);
26181:         call_tests++;
26182:         des_xmlNodePtr(n_prev, prev, 0);
26183:         des_xmlNodePtr(n_next, next, 1);
26184:         des_const_xmlChar_ptr_ptr(n_names, (const xmlChar **)names, 2);
26185:         des_int(n_max, max, 3);
26186:         xmlResetLastError();
26187:         if (mem_base != xmlMemBlocks()) {
26188:             printf("Leak of %d blocks found in xmlValidGetValidElements",
26189: 	           xmlMemBlocks() - mem_base);
26190: 	    test_ret++;
26191:             printf(" %d", n_prev);
26192:             printf(" %d", n_next);
26193:             printf(" %d", n_names);
26194:             printf(" %d", n_max);
26195:             printf("\n");
26196:         }
26197:     }
26198:     }
26199:     }
26200:     }
26201:     function_tests++;
26202: #endif
26203: #endif
26204: 
26205:     return(test_ret);
26206: }
26207: 
26208: 
26209: static int
26210: test_xmlValidNormalizeAttributeValue(void) {
26211:     int test_ret = 0;
26212: 
26213: #if defined(LIBXML_VALID_ENABLED)
26214:     int mem_base;
26215:     xmlChar * ret_val;
26216:     xmlDocPtr doc; /* the document */
26217:     int n_doc;
26218:     xmlNodePtr elem; /* the parent */
26219:     int n_elem;
26220:     xmlChar * name; /* the attribute name */
26221:     int n_name;
26222:     xmlChar * value; /* the attribute value */
26223:     int n_value;
26224: 
26225:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
26226:     for (n_elem = 0;n_elem < gen_nb_xmlNodePtr;n_elem++) {
26227:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
26228:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
26229:         mem_base = xmlMemBlocks();
26230:         doc = gen_xmlDocPtr(n_doc, 0);
26231:         elem = gen_xmlNodePtr(n_elem, 1);
26232:         name = gen_const_xmlChar_ptr(n_name, 2);
26233:         value = gen_const_xmlChar_ptr(n_value, 3);
26234: 
26235:         ret_val = xmlValidNormalizeAttributeValue(doc, elem, (const xmlChar *)name, (const xmlChar *)value);
26236:         desret_xmlChar_ptr(ret_val);
26237:         call_tests++;
26238:         des_xmlDocPtr(n_doc, doc, 0);
26239:         des_xmlNodePtr(n_elem, elem, 1);
26240:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
26241:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 3);
26242:         xmlResetLastError();
26243:         if (mem_base != xmlMemBlocks()) {
26244:             printf("Leak of %d blocks found in xmlValidNormalizeAttributeValue",
26245: 	           xmlMemBlocks() - mem_base);
26246: 	    test_ret++;
26247:             printf(" %d", n_doc);
26248:             printf(" %d", n_elem);
26249:             printf(" %d", n_name);
26250:             printf(" %d", n_value);
26251:             printf("\n");
26252:         }
26253:     }
26254:     }
26255:     }
26256:     }
26257:     function_tests++;
26258: #endif
26259: 
26260:     return(test_ret);
26261: }
26262: 
26263: 
26264: static int
26265: test_xmlValidateAttributeDecl(void) {
26266:     int test_ret = 0;
26267: 
26268: #if defined(LIBXML_VALID_ENABLED)
26269:     int mem_base;
26270:     int ret_val;
26271:     xmlValidCtxtPtr ctxt; /* the validation context */
26272:     int n_ctxt;
26273:     xmlDocPtr doc; /* a document instance */
26274:     int n_doc;
26275:     xmlAttributePtr attr; /* an attribute definition */
26276:     int n_attr;
26277: 
26278:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlValidCtxtPtr;n_ctxt++) {
26279:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
26280:     for (n_attr = 0;n_attr < gen_nb_xmlAttributePtr;n_attr++) {
26281:         mem_base = xmlMemBlocks();
26282:         ctxt = gen_xmlValidCtxtPtr(n_ctxt, 0);
26283:         doc = gen_xmlDocPtr(n_doc, 1);
26284:         attr = gen_xmlAttributePtr(n_attr, 2);
26285: 
26286:         ret_val = xmlValidateAttributeDecl(ctxt, doc, attr);
26287:         desret_int(ret_val);
26288:         call_tests++;
26289:         des_xmlValidCtxtPtr(n_ctxt, ctxt, 0);
26290:         des_xmlDocPtr(n_doc, doc, 1);
26291:         des_xmlAttributePtr(n_attr, attr, 2);
26292:         xmlResetLastError();
26293:         if (mem_base != xmlMemBlocks()) {
26294:             printf("Leak of %d blocks found in xmlValidateAttributeDecl",
26295: 	           xmlMemBlocks() - mem_base);
26296: 	    test_ret++;
26297:             printf(" %d", n_ctxt);
26298:             printf(" %d", n_doc);
26299:             printf(" %d", n_attr);
26300:             printf("\n");
26301:         }
26302:     }
26303:     }
26304:     }
26305:     function_tests++;
26306: #endif
26307: 
26308:     return(test_ret);
26309: }
26310: 
26311: 
26312: static int
26313: test_xmlValidateAttributeValue(void) {
26314:     int test_ret = 0;
26315: 
26316: #if defined(LIBXML_VALID_ENABLED)
26317:     int mem_base;
26318:     int ret_val;
26319:     xmlAttributeType type; /* an attribute type */
26320:     int n_type;
26321:     xmlChar * value; /* an attribute value */
26322:     int n_value;
26323: 
26324:     for (n_type = 0;n_type < gen_nb_xmlAttributeType;n_type++) {
26325:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
26326:         mem_base = xmlMemBlocks();
26327:         type = gen_xmlAttributeType(n_type, 0);
26328:         value = gen_const_xmlChar_ptr(n_value, 1);
26329: 
26330:         ret_val = xmlValidateAttributeValue(type, (const xmlChar *)value);
26331:         desret_int(ret_val);
26332:         call_tests++;
26333:         des_xmlAttributeType(n_type, type, 0);
26334:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 1);
26335:         xmlResetLastError();
26336:         if (mem_base != xmlMemBlocks()) {
26337:             printf("Leak of %d blocks found in xmlValidateAttributeValue",
26338: 	           xmlMemBlocks() - mem_base);
26339: 	    test_ret++;
26340:             printf(" %d", n_type);
26341:             printf(" %d", n_value);
26342:             printf("\n");
26343:         }
26344:     }
26345:     }
26346:     function_tests++;
26347: #endif
26348: 
26349:     return(test_ret);
26350: }
26351: 
26352: 
26353: static int
26354: test_xmlValidateDocument(void) {
26355:     int test_ret = 0;
26356: 
26357: #if defined(LIBXML_VALID_ENABLED)
26358:     int mem_base;
26359:     int ret_val;
26360:     xmlValidCtxtPtr ctxt; /* the validation context */
26361:     int n_ctxt;
26362:     xmlDocPtr doc; /* a document instance */
26363:     int n_doc;
26364: 
26365:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlValidCtxtPtr;n_ctxt++) {
26366:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
26367:         mem_base = xmlMemBlocks();
26368:         ctxt = gen_xmlValidCtxtPtr(n_ctxt, 0);
26369:         doc = gen_xmlDocPtr(n_doc, 1);
26370: 
26371:         ret_val = xmlValidateDocument(ctxt, doc);
26372:         desret_int(ret_val);
26373:         call_tests++;
26374:         des_xmlValidCtxtPtr(n_ctxt, ctxt, 0);
26375:         des_xmlDocPtr(n_doc, doc, 1);
26376:         xmlResetLastError();
26377:         if (mem_base != xmlMemBlocks()) {
26378:             printf("Leak of %d blocks found in xmlValidateDocument",
26379: 	           xmlMemBlocks() - mem_base);
26380: 	    test_ret++;
26381:             printf(" %d", n_ctxt);
26382:             printf(" %d", n_doc);
26383:             printf("\n");
26384:         }
26385:     }
26386:     }
26387:     function_tests++;
26388: #endif
26389: 
26390:     return(test_ret);
26391: }
26392: 
26393: 
26394: static int
26395: test_xmlValidateDocumentFinal(void) {
26396:     int test_ret = 0;
26397: 
26398: #if defined(LIBXML_VALID_ENABLED)
26399:     int mem_base;
26400:     int ret_val;
26401:     xmlValidCtxtPtr ctxt; /* the validation context */
26402:     int n_ctxt;
26403:     xmlDocPtr doc; /* a document instance */
26404:     int n_doc;
26405: 
26406:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlValidCtxtPtr;n_ctxt++) {
26407:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
26408:         mem_base = xmlMemBlocks();
26409:         ctxt = gen_xmlValidCtxtPtr(n_ctxt, 0);
26410:         doc = gen_xmlDocPtr(n_doc, 1);
26411: 
26412:         ret_val = xmlValidateDocumentFinal(ctxt, doc);
26413:         desret_int(ret_val);
26414:         call_tests++;
26415:         des_xmlValidCtxtPtr(n_ctxt, ctxt, 0);
26416:         des_xmlDocPtr(n_doc, doc, 1);
26417:         xmlResetLastError();
26418:         if (mem_base != xmlMemBlocks()) {
26419:             printf("Leak of %d blocks found in xmlValidateDocumentFinal",
26420: 	           xmlMemBlocks() - mem_base);
26421: 	    test_ret++;
26422:             printf(" %d", n_ctxt);
26423:             printf(" %d", n_doc);
26424:             printf("\n");
26425:         }
26426:     }
26427:     }
26428:     function_tests++;
26429: #endif
26430: 
26431:     return(test_ret);
26432: }
26433: 
26434: 
26435: static int
26436: test_xmlValidateDtd(void) {
26437:     int test_ret = 0;
26438: 
26439: #if defined(LIBXML_VALID_ENABLED)
26440:     int mem_base;
26441:     int ret_val;
26442:     xmlValidCtxtPtr ctxt; /* the validation context */
26443:     int n_ctxt;
26444:     xmlDocPtr doc; /* a document instance */
26445:     int n_doc;
26446:     xmlDtdPtr dtd; /* a dtd instance */
26447:     int n_dtd;
26448: 
26449:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlValidCtxtPtr;n_ctxt++) {
26450:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
26451:     for (n_dtd = 0;n_dtd < gen_nb_xmlDtdPtr;n_dtd++) {
26452:         mem_base = xmlMemBlocks();
26453:         ctxt = gen_xmlValidCtxtPtr(n_ctxt, 0);
26454:         doc = gen_xmlDocPtr(n_doc, 1);
26455:         dtd = gen_xmlDtdPtr(n_dtd, 2);
26456: 
26457:         ret_val = xmlValidateDtd(ctxt, doc, dtd);
26458:         desret_int(ret_val);
26459:         call_tests++;
26460:         des_xmlValidCtxtPtr(n_ctxt, ctxt, 0);
26461:         des_xmlDocPtr(n_doc, doc, 1);
26462:         des_xmlDtdPtr(n_dtd, dtd, 2);
26463:         xmlResetLastError();
26464:         if (mem_base != xmlMemBlocks()) {
26465:             printf("Leak of %d blocks found in xmlValidateDtd",
26466: 	           xmlMemBlocks() - mem_base);
26467: 	    test_ret++;
26468:             printf(" %d", n_ctxt);
26469:             printf(" %d", n_doc);
26470:             printf(" %d", n_dtd);
26471:             printf("\n");
26472:         }
26473:     }
26474:     }
26475:     }
26476:     function_tests++;
26477: #endif
26478: 
26479:     return(test_ret);
26480: }
26481: 
26482: 
26483: static int
26484: test_xmlValidateDtdFinal(void) {
26485:     int test_ret = 0;
26486: 
26487: #if defined(LIBXML_VALID_ENABLED)
26488:     int mem_base;
26489:     int ret_val;
26490:     xmlValidCtxtPtr ctxt; /* the validation context */
26491:     int n_ctxt;
26492:     xmlDocPtr doc; /* a document instance */
26493:     int n_doc;
26494: 
26495:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlValidCtxtPtr;n_ctxt++) {
26496:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
26497:         mem_base = xmlMemBlocks();
26498:         ctxt = gen_xmlValidCtxtPtr(n_ctxt, 0);
26499:         doc = gen_xmlDocPtr(n_doc, 1);
26500: 
26501:         ret_val = xmlValidateDtdFinal(ctxt, doc);
26502:         desret_int(ret_val);
26503:         call_tests++;
26504:         des_xmlValidCtxtPtr(n_ctxt, ctxt, 0);
26505:         des_xmlDocPtr(n_doc, doc, 1);
26506:         xmlResetLastError();
26507:         if (mem_base != xmlMemBlocks()) {
26508:             printf("Leak of %d blocks found in xmlValidateDtdFinal",
26509: 	           xmlMemBlocks() - mem_base);
26510: 	    test_ret++;
26511:             printf(" %d", n_ctxt);
26512:             printf(" %d", n_doc);
26513:             printf("\n");
26514:         }
26515:     }
26516:     }
26517:     function_tests++;
26518: #endif
26519: 
26520:     return(test_ret);
26521: }
26522: 
26523: 
26524: static int
26525: test_xmlValidateElement(void) {
26526:     int test_ret = 0;
26527: 
26528: #if defined(LIBXML_VALID_ENABLED)
26529:     int mem_base;
26530:     int ret_val;
26531:     xmlValidCtxtPtr ctxt; /* the validation context */
26532:     int n_ctxt;
26533:     xmlDocPtr doc; /* a document instance */
26534:     int n_doc;
26535:     xmlNodePtr elem; /* an element instance */
26536:     int n_elem;
26537: 
26538:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlValidCtxtPtr;n_ctxt++) {
26539:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
26540:     for (n_elem = 0;n_elem < gen_nb_xmlNodePtr;n_elem++) {
26541:         mem_base = xmlMemBlocks();
26542:         ctxt = gen_xmlValidCtxtPtr(n_ctxt, 0);
26543:         doc = gen_xmlDocPtr(n_doc, 1);
26544:         elem = gen_xmlNodePtr(n_elem, 2);
26545: 
26546:         ret_val = xmlValidateElement(ctxt, doc, elem);
26547:         desret_int(ret_val);
26548:         call_tests++;
26549:         des_xmlValidCtxtPtr(n_ctxt, ctxt, 0);
26550:         des_xmlDocPtr(n_doc, doc, 1);
26551:         des_xmlNodePtr(n_elem, elem, 2);
26552:         xmlResetLastError();
26553:         if (mem_base != xmlMemBlocks()) {
26554:             printf("Leak of %d blocks found in xmlValidateElement",
26555: 	           xmlMemBlocks() - mem_base);
26556: 	    test_ret++;
26557:             printf(" %d", n_ctxt);
26558:             printf(" %d", n_doc);
26559:             printf(" %d", n_elem);
26560:             printf("\n");
26561:         }
26562:     }
26563:     }
26564:     }
26565:     function_tests++;
26566: #endif
26567: 
26568:     return(test_ret);
26569: }
26570: 
26571: 
26572: static int
26573: test_xmlValidateElementDecl(void) {
26574:     int test_ret = 0;
26575: 
26576: #if defined(LIBXML_VALID_ENABLED)
26577:     int mem_base;
26578:     int ret_val;
26579:     xmlValidCtxtPtr ctxt; /* the validation context */
26580:     int n_ctxt;
26581:     xmlDocPtr doc; /* a document instance */
26582:     int n_doc;
26583:     xmlElementPtr elem; /* an element definition */
26584:     int n_elem;
26585: 
26586:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlValidCtxtPtr;n_ctxt++) {
26587:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
26588:     for (n_elem = 0;n_elem < gen_nb_xmlElementPtr;n_elem++) {
26589:         mem_base = xmlMemBlocks();
26590:         ctxt = gen_xmlValidCtxtPtr(n_ctxt, 0);
26591:         doc = gen_xmlDocPtr(n_doc, 1);
26592:         elem = gen_xmlElementPtr(n_elem, 2);
26593: 
26594:         ret_val = xmlValidateElementDecl(ctxt, doc, elem);
26595:         desret_int(ret_val);
26596:         call_tests++;
26597:         des_xmlValidCtxtPtr(n_ctxt, ctxt, 0);
26598:         des_xmlDocPtr(n_doc, doc, 1);
26599:         des_xmlElementPtr(n_elem, elem, 2);
26600:         xmlResetLastError();
26601:         if (mem_base != xmlMemBlocks()) {
26602:             printf("Leak of %d blocks found in xmlValidateElementDecl",
26603: 	           xmlMemBlocks() - mem_base);
26604: 	    test_ret++;
26605:             printf(" %d", n_ctxt);
26606:             printf(" %d", n_doc);
26607:             printf(" %d", n_elem);
26608:             printf("\n");
26609:         }
26610:     }
26611:     }
26612:     }
26613:     function_tests++;
26614: #endif
26615: 
26616:     return(test_ret);
26617: }
26618: 
26619: 
26620: static int
26621: test_xmlValidateNameValue(void) {
26622:     int test_ret = 0;
26623: 
26624: #if defined(LIBXML_VALID_ENABLED)
26625:     int mem_base;
26626:     int ret_val;
26627:     xmlChar * value; /* an Name value */
26628:     int n_value;
26629: 
26630:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
26631:         mem_base = xmlMemBlocks();
26632:         value = gen_const_xmlChar_ptr(n_value, 0);
26633: 
26634:         ret_val = xmlValidateNameValue((const xmlChar *)value);
26635:         desret_int(ret_val);
26636:         call_tests++;
26637:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 0);
26638:         xmlResetLastError();
26639:         if (mem_base != xmlMemBlocks()) {
26640:             printf("Leak of %d blocks found in xmlValidateNameValue",
26641: 	           xmlMemBlocks() - mem_base);
26642: 	    test_ret++;
26643:             printf(" %d", n_value);
26644:             printf("\n");
26645:         }
26646:     }
26647:     function_tests++;
26648: #endif
26649: 
26650:     return(test_ret);
26651: }
26652: 
26653: 
26654: static int
26655: test_xmlValidateNamesValue(void) {
26656:     int test_ret = 0;
26657: 
26658: #if defined(LIBXML_VALID_ENABLED)
26659:     int mem_base;
26660:     int ret_val;
26661:     xmlChar * value; /* an Names value */
26662:     int n_value;
26663: 
26664:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
26665:         mem_base = xmlMemBlocks();
26666:         value = gen_const_xmlChar_ptr(n_value, 0);
26667: 
26668:         ret_val = xmlValidateNamesValue((const xmlChar *)value);
26669:         desret_int(ret_val);
26670:         call_tests++;
26671:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 0);
26672:         xmlResetLastError();
26673:         if (mem_base != xmlMemBlocks()) {
26674:             printf("Leak of %d blocks found in xmlValidateNamesValue",
26675: 	           xmlMemBlocks() - mem_base);
26676: 	    test_ret++;
26677:             printf(" %d", n_value);
26678:             printf("\n");
26679:         }
26680:     }
26681:     function_tests++;
26682: #endif
26683: 
26684:     return(test_ret);
26685: }
26686: 
26687: 
26688: static int
26689: test_xmlValidateNmtokenValue(void) {
26690:     int test_ret = 0;
26691: 
26692: #if defined(LIBXML_VALID_ENABLED)
26693:     int mem_base;
26694:     int ret_val;
26695:     xmlChar * value; /* an Nmtoken value */
26696:     int n_value;
26697: 
26698:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
26699:         mem_base = xmlMemBlocks();
26700:         value = gen_const_xmlChar_ptr(n_value, 0);
26701: 
26702:         ret_val = xmlValidateNmtokenValue((const xmlChar *)value);
26703:         desret_int(ret_val);
26704:         call_tests++;
26705:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 0);
26706:         xmlResetLastError();
26707:         if (mem_base != xmlMemBlocks()) {
26708:             printf("Leak of %d blocks found in xmlValidateNmtokenValue",
26709: 	           xmlMemBlocks() - mem_base);
26710: 	    test_ret++;
26711:             printf(" %d", n_value);
26712:             printf("\n");
26713:         }
26714:     }
26715:     function_tests++;
26716: #endif
26717: 
26718:     return(test_ret);
26719: }
26720: 
26721: 
26722: static int
26723: test_xmlValidateNmtokensValue(void) {
26724:     int test_ret = 0;
26725: 
26726: #if defined(LIBXML_VALID_ENABLED)
26727:     int mem_base;
26728:     int ret_val;
26729:     xmlChar * value; /* an Nmtokens value */
26730:     int n_value;
26731: 
26732:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
26733:         mem_base = xmlMemBlocks();
26734:         value = gen_const_xmlChar_ptr(n_value, 0);
26735: 
26736:         ret_val = xmlValidateNmtokensValue((const xmlChar *)value);
26737:         desret_int(ret_val);
26738:         call_tests++;
26739:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 0);
26740:         xmlResetLastError();
26741:         if (mem_base != xmlMemBlocks()) {
26742:             printf("Leak of %d blocks found in xmlValidateNmtokensValue",
26743: 	           xmlMemBlocks() - mem_base);
26744: 	    test_ret++;
26745:             printf(" %d", n_value);
26746:             printf("\n");
26747:         }
26748:     }
26749:     function_tests++;
26750: #endif
26751: 
26752:     return(test_ret);
26753: }
26754: 
26755: 
26756: static int
26757: test_xmlValidateNotationDecl(void) {
26758:     int test_ret = 0;
26759: 
26760: #if defined(LIBXML_VALID_ENABLED)
26761:     int mem_base;
26762:     int ret_val;
26763:     xmlValidCtxtPtr ctxt; /* the validation context */
26764:     int n_ctxt;
26765:     xmlDocPtr doc; /* a document instance */
26766:     int n_doc;
26767:     xmlNotationPtr nota; /* a notation definition */
26768:     int n_nota;
26769: 
26770:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlValidCtxtPtr;n_ctxt++) {
26771:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
26772:     for (n_nota = 0;n_nota < gen_nb_xmlNotationPtr;n_nota++) {
26773:         mem_base = xmlMemBlocks();
26774:         ctxt = gen_xmlValidCtxtPtr(n_ctxt, 0);
26775:         doc = gen_xmlDocPtr(n_doc, 1);
26776:         nota = gen_xmlNotationPtr(n_nota, 2);
26777: 
26778:         ret_val = xmlValidateNotationDecl(ctxt, doc, nota);
26779:         desret_int(ret_val);
26780:         call_tests++;
26781:         des_xmlValidCtxtPtr(n_ctxt, ctxt, 0);
26782:         des_xmlDocPtr(n_doc, doc, 1);
26783:         des_xmlNotationPtr(n_nota, nota, 2);
26784:         xmlResetLastError();
26785:         if (mem_base != xmlMemBlocks()) {
26786:             printf("Leak of %d blocks found in xmlValidateNotationDecl",
26787: 	           xmlMemBlocks() - mem_base);
26788: 	    test_ret++;
26789:             printf(" %d", n_ctxt);
26790:             printf(" %d", n_doc);
26791:             printf(" %d", n_nota);
26792:             printf("\n");
26793:         }
26794:     }
26795:     }
26796:     }
26797:     function_tests++;
26798: #endif
26799: 
26800:     return(test_ret);
26801: }
26802: 
26803: 
26804: static int
26805: test_xmlValidateNotationUse(void) {
26806:     int test_ret = 0;
26807: 
26808: #if defined(LIBXML_VALID_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
26809:     int mem_base;
26810:     int ret_val;
26811:     xmlValidCtxtPtr ctxt; /* the validation context */
26812:     int n_ctxt;
26813:     xmlDocPtr doc; /* the document */
26814:     int n_doc;
26815:     xmlChar * notationName; /* the notation name to check */
26816:     int n_notationName;
26817: 
26818:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlValidCtxtPtr;n_ctxt++) {
26819:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
26820:     for (n_notationName = 0;n_notationName < gen_nb_const_xmlChar_ptr;n_notationName++) {
26821:         mem_base = xmlMemBlocks();
26822:         ctxt = gen_xmlValidCtxtPtr(n_ctxt, 0);
26823:         doc = gen_xmlDocPtr(n_doc, 1);
26824:         notationName = gen_const_xmlChar_ptr(n_notationName, 2);
26825: 
26826:         ret_val = xmlValidateNotationUse(ctxt, doc, (const xmlChar *)notationName);
26827:         desret_int(ret_val);
26828:         call_tests++;
26829:         des_xmlValidCtxtPtr(n_ctxt, ctxt, 0);
26830:         des_xmlDocPtr(n_doc, doc, 1);
26831:         des_const_xmlChar_ptr(n_notationName, (const xmlChar *)notationName, 2);
26832:         xmlResetLastError();
26833:         if (mem_base != xmlMemBlocks()) {
26834:             printf("Leak of %d blocks found in xmlValidateNotationUse",
26835: 	           xmlMemBlocks() - mem_base);
26836: 	    test_ret++;
26837:             printf(" %d", n_ctxt);
26838:             printf(" %d", n_doc);
26839:             printf(" %d", n_notationName);
26840:             printf("\n");
26841:         }
26842:     }
26843:     }
26844:     }
26845:     function_tests++;
26846: #endif
26847: 
26848:     return(test_ret);
26849: }
26850: 
26851: 
26852: static int
26853: test_xmlValidateOneAttribute(void) {
26854:     int test_ret = 0;
26855: 
26856: #if defined(LIBXML_VALID_ENABLED)
26857:     int mem_base;
26858:     int ret_val;
26859:     xmlValidCtxtPtr ctxt; /* the validation context */
26860:     int n_ctxt;
26861:     xmlDocPtr doc; /* a document instance */
26862:     int n_doc;
26863:     xmlNodePtr elem; /* an element instance */
26864:     int n_elem;
26865:     xmlAttrPtr attr; /* an attribute instance */
26866:     int n_attr;
26867:     xmlChar * value; /* the attribute value (without entities processing) */
26868:     int n_value;
26869: 
26870:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlValidCtxtPtr;n_ctxt++) {
26871:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
26872:     for (n_elem = 0;n_elem < gen_nb_xmlNodePtr;n_elem++) {
26873:     for (n_attr = 0;n_attr < gen_nb_xmlAttrPtr;n_attr++) {
26874:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
26875:         mem_base = xmlMemBlocks();
26876:         ctxt = gen_xmlValidCtxtPtr(n_ctxt, 0);
26877:         doc = gen_xmlDocPtr(n_doc, 1);
26878:         elem = gen_xmlNodePtr(n_elem, 2);
26879:         attr = gen_xmlAttrPtr(n_attr, 3);
26880:         value = gen_const_xmlChar_ptr(n_value, 4);
26881: 
26882:         ret_val = xmlValidateOneAttribute(ctxt, doc, elem, attr, (const xmlChar *)value);
26883:         desret_int(ret_val);
26884:         call_tests++;
26885:         des_xmlValidCtxtPtr(n_ctxt, ctxt, 0);
26886:         des_xmlDocPtr(n_doc, doc, 1);
26887:         des_xmlNodePtr(n_elem, elem, 2);
26888:         des_xmlAttrPtr(n_attr, attr, 3);
26889:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 4);
26890:         xmlResetLastError();
26891:         if (mem_base != xmlMemBlocks()) {
26892:             printf("Leak of %d blocks found in xmlValidateOneAttribute",
26893: 	           xmlMemBlocks() - mem_base);
26894: 	    test_ret++;
26895:             printf(" %d", n_ctxt);
26896:             printf(" %d", n_doc);
26897:             printf(" %d", n_elem);
26898:             printf(" %d", n_attr);
26899:             printf(" %d", n_value);
26900:             printf("\n");
26901:         }
26902:     }
26903:     }
26904:     }
26905:     }
26906:     }
26907:     function_tests++;
26908: #endif
26909: 
26910:     return(test_ret);
26911: }
26912: 
26913: 
26914: static int
26915: test_xmlValidateOneElement(void) {
26916:     int test_ret = 0;
26917: 
26918: #if defined(LIBXML_VALID_ENABLED)
26919:     int mem_base;
26920:     int ret_val;
26921:     xmlValidCtxtPtr ctxt; /* the validation context */
26922:     int n_ctxt;
26923:     xmlDocPtr doc; /* a document instance */
26924:     int n_doc;
26925:     xmlNodePtr elem; /* an element instance */
26926:     int n_elem;
26927: 
26928:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlValidCtxtPtr;n_ctxt++) {
26929:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
26930:     for (n_elem = 0;n_elem < gen_nb_xmlNodePtr;n_elem++) {
26931:         mem_base = xmlMemBlocks();
26932:         ctxt = gen_xmlValidCtxtPtr(n_ctxt, 0);
26933:         doc = gen_xmlDocPtr(n_doc, 1);
26934:         elem = gen_xmlNodePtr(n_elem, 2);
26935: 
26936:         ret_val = xmlValidateOneElement(ctxt, doc, elem);
26937:         desret_int(ret_val);
26938:         call_tests++;
26939:         des_xmlValidCtxtPtr(n_ctxt, ctxt, 0);
26940:         des_xmlDocPtr(n_doc, doc, 1);
26941:         des_xmlNodePtr(n_elem, elem, 2);
26942:         xmlResetLastError();
26943:         if (mem_base != xmlMemBlocks()) {
26944:             printf("Leak of %d blocks found in xmlValidateOneElement",
26945: 	           xmlMemBlocks() - mem_base);
26946: 	    test_ret++;
26947:             printf(" %d", n_ctxt);
26948:             printf(" %d", n_doc);
26949:             printf(" %d", n_elem);
26950:             printf("\n");
26951:         }
26952:     }
26953:     }
26954:     }
26955:     function_tests++;
26956: #endif
26957: 
26958:     return(test_ret);
26959: }
26960: 
26961: 
26962: static int
26963: test_xmlValidateOneNamespace(void) {
26964:     int test_ret = 0;
26965: 
26966: #if defined(LIBXML_VALID_ENABLED)
26967:     int mem_base;
26968:     int ret_val;
26969:     xmlValidCtxtPtr ctxt; /* the validation context */
26970:     int n_ctxt;
26971:     xmlDocPtr doc; /* a document instance */
26972:     int n_doc;
26973:     xmlNodePtr elem; /* an element instance */
26974:     int n_elem;
26975:     xmlChar * prefix; /* the namespace prefix */
26976:     int n_prefix;
26977:     xmlNsPtr ns; /* an namespace declaration instance */
26978:     int n_ns;
26979:     xmlChar * value; /* the attribute value (without entities processing) */
26980:     int n_value;
26981: 
26982:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlValidCtxtPtr;n_ctxt++) {
26983:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
26984:     for (n_elem = 0;n_elem < gen_nb_xmlNodePtr;n_elem++) {
26985:     for (n_prefix = 0;n_prefix < gen_nb_const_xmlChar_ptr;n_prefix++) {
26986:     for (n_ns = 0;n_ns < gen_nb_xmlNsPtr;n_ns++) {
26987:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
26988:         mem_base = xmlMemBlocks();
26989:         ctxt = gen_xmlValidCtxtPtr(n_ctxt, 0);
26990:         doc = gen_xmlDocPtr(n_doc, 1);
26991:         elem = gen_xmlNodePtr(n_elem, 2);
26992:         prefix = gen_const_xmlChar_ptr(n_prefix, 3);
26993:         ns = gen_xmlNsPtr(n_ns, 4);
26994:         value = gen_const_xmlChar_ptr(n_value, 5);
26995: 
26996:         ret_val = xmlValidateOneNamespace(ctxt, doc, elem, (const xmlChar *)prefix, ns, (const xmlChar *)value);
26997:         desret_int(ret_val);
26998:         call_tests++;
26999:         des_xmlValidCtxtPtr(n_ctxt, ctxt, 0);
27000:         des_xmlDocPtr(n_doc, doc, 1);
27001:         des_xmlNodePtr(n_elem, elem, 2);
27002:         des_const_xmlChar_ptr(n_prefix, (const xmlChar *)prefix, 3);
27003:         des_xmlNsPtr(n_ns, ns, 4);
27004:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 5);
27005:         xmlResetLastError();
27006:         if (mem_base != xmlMemBlocks()) {
27007:             printf("Leak of %d blocks found in xmlValidateOneNamespace",
27008: 	           xmlMemBlocks() - mem_base);
27009: 	    test_ret++;
27010:             printf(" %d", n_ctxt);
27011:             printf(" %d", n_doc);
27012:             printf(" %d", n_elem);
27013:             printf(" %d", n_prefix);
27014:             printf(" %d", n_ns);
27015:             printf(" %d", n_value);
27016:             printf("\n");
27017:         }
27018:     }
27019:     }
27020:     }
27021:     }
27022:     }
27023:     }
27024:     function_tests++;
27025: #endif
27026: 
27027:     return(test_ret);
27028: }
27029: 
27030: 
27031: static int
27032: test_xmlValidatePopElement(void) {
27033:     int test_ret = 0;
27034: 
27035: #if defined(LIBXML_VALID_ENABLED) && defined(LIBXML_REGEXP_ENABLED)
27036:     int mem_base;
27037:     int ret_val;
27038:     xmlValidCtxtPtr ctxt; /* the validation context */
27039:     int n_ctxt;
27040:     xmlDocPtr doc; /* a document instance */
27041:     int n_doc;
27042:     xmlNodePtr elem; /* an element instance */
27043:     int n_elem;
27044:     xmlChar * qname; /* the qualified name as appearing in the serialization */
27045:     int n_qname;
27046: 
27047:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlValidCtxtPtr;n_ctxt++) {
27048:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
27049:     for (n_elem = 0;n_elem < gen_nb_xmlNodePtr;n_elem++) {
27050:     for (n_qname = 0;n_qname < gen_nb_const_xmlChar_ptr;n_qname++) {
27051:         mem_base = xmlMemBlocks();
27052:         ctxt = gen_xmlValidCtxtPtr(n_ctxt, 0);
27053:         doc = gen_xmlDocPtr(n_doc, 1);
27054:         elem = gen_xmlNodePtr(n_elem, 2);
27055:         qname = gen_const_xmlChar_ptr(n_qname, 3);
27056: 
27057:         ret_val = xmlValidatePopElement(ctxt, doc, elem, (const xmlChar *)qname);
27058:         desret_int(ret_val);
27059:         call_tests++;
27060:         des_xmlValidCtxtPtr(n_ctxt, ctxt, 0);
27061:         des_xmlDocPtr(n_doc, doc, 1);
27062:         des_xmlNodePtr(n_elem, elem, 2);
27063:         des_const_xmlChar_ptr(n_qname, (const xmlChar *)qname, 3);
27064:         xmlResetLastError();
27065:         if (mem_base != xmlMemBlocks()) {
27066:             printf("Leak of %d blocks found in xmlValidatePopElement",
27067: 	           xmlMemBlocks() - mem_base);
27068: 	    test_ret++;
27069:             printf(" %d", n_ctxt);
27070:             printf(" %d", n_doc);
27071:             printf(" %d", n_elem);
27072:             printf(" %d", n_qname);
27073:             printf("\n");
27074:         }
27075:     }
27076:     }
27077:     }
27078:     }
27079:     function_tests++;
27080: #endif
27081: 
27082:     return(test_ret);
27083: }
27084: 
27085: 
27086: static int
27087: test_xmlValidatePushCData(void) {
27088:     int test_ret = 0;
27089: 
27090: #if defined(LIBXML_VALID_ENABLED) && defined(LIBXML_REGEXP_ENABLED)
27091:     int mem_base;
27092:     int ret_val;
27093:     xmlValidCtxtPtr ctxt; /* the validation context */
27094:     int n_ctxt;
27095:     xmlChar * data; /* some character data read */
27096:     int n_data;
27097:     int len; /* the length of the data */
27098:     int n_len;
27099: 
27100:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlValidCtxtPtr;n_ctxt++) {
27101:     for (n_data = 0;n_data < gen_nb_const_xmlChar_ptr;n_data++) {
27102:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
27103:         mem_base = xmlMemBlocks();
27104:         ctxt = gen_xmlValidCtxtPtr(n_ctxt, 0);
27105:         data = gen_const_xmlChar_ptr(n_data, 1);
27106:         len = gen_int(n_len, 2);
27107: 
27108:         ret_val = xmlValidatePushCData(ctxt, (const xmlChar *)data, len);
27109:         desret_int(ret_val);
27110:         call_tests++;
27111:         des_xmlValidCtxtPtr(n_ctxt, ctxt, 0);
27112:         des_const_xmlChar_ptr(n_data, (const xmlChar *)data, 1);
27113:         des_int(n_len, len, 2);
27114:         xmlResetLastError();
27115:         if (mem_base != xmlMemBlocks()) {
27116:             printf("Leak of %d blocks found in xmlValidatePushCData",
27117: 	           xmlMemBlocks() - mem_base);
27118: 	    test_ret++;
27119:             printf(" %d", n_ctxt);
27120:             printf(" %d", n_data);
27121:             printf(" %d", n_len);
27122:             printf("\n");
27123:         }
27124:     }
27125:     }
27126:     }
27127:     function_tests++;
27128: #endif
27129: 
27130:     return(test_ret);
27131: }
27132: 
27133: 
27134: static int
27135: test_xmlValidatePushElement(void) {
27136:     int test_ret = 0;
27137: 
27138: #if defined(LIBXML_VALID_ENABLED) && defined(LIBXML_REGEXP_ENABLED)
27139:     int mem_base;
27140:     int ret_val;
27141:     xmlValidCtxtPtr ctxt; /* the validation context */
27142:     int n_ctxt;
27143:     xmlDocPtr doc; /* a document instance */
27144:     int n_doc;
27145:     xmlNodePtr elem; /* an element instance */
27146:     int n_elem;
27147:     xmlChar * qname; /* the qualified name as appearing in the serialization */
27148:     int n_qname;
27149: 
27150:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlValidCtxtPtr;n_ctxt++) {
27151:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
27152:     for (n_elem = 0;n_elem < gen_nb_xmlNodePtr;n_elem++) {
27153:     for (n_qname = 0;n_qname < gen_nb_const_xmlChar_ptr;n_qname++) {
27154:         mem_base = xmlMemBlocks();
27155:         ctxt = gen_xmlValidCtxtPtr(n_ctxt, 0);
27156:         doc = gen_xmlDocPtr(n_doc, 1);
27157:         elem = gen_xmlNodePtr(n_elem, 2);
27158:         qname = gen_const_xmlChar_ptr(n_qname, 3);
27159: 
27160:         ret_val = xmlValidatePushElement(ctxt, doc, elem, (const xmlChar *)qname);
27161:         desret_int(ret_val);
27162:         call_tests++;
27163:         des_xmlValidCtxtPtr(n_ctxt, ctxt, 0);
27164:         des_xmlDocPtr(n_doc, doc, 1);
27165:         des_xmlNodePtr(n_elem, elem, 2);
27166:         des_const_xmlChar_ptr(n_qname, (const xmlChar *)qname, 3);
27167:         xmlResetLastError();
27168:         if (mem_base != xmlMemBlocks()) {
27169:             printf("Leak of %d blocks found in xmlValidatePushElement",
27170: 	           xmlMemBlocks() - mem_base);
27171: 	    test_ret++;
27172:             printf(" %d", n_ctxt);
27173:             printf(" %d", n_doc);
27174:             printf(" %d", n_elem);
27175:             printf(" %d", n_qname);
27176:             printf("\n");
27177:         }
27178:     }
27179:     }
27180:     }
27181:     }
27182:     function_tests++;
27183: #endif
27184: 
27185:     return(test_ret);
27186: }
27187: 
27188: 
27189: static int
27190: test_xmlValidateRoot(void) {
27191:     int test_ret = 0;
27192: 
27193: #if defined(LIBXML_VALID_ENABLED)
27194:     int mem_base;
27195:     int ret_val;
27196:     xmlValidCtxtPtr ctxt; /* the validation context */
27197:     int n_ctxt;
27198:     xmlDocPtr doc; /* a document instance */
27199:     int n_doc;
27200: 
27201:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlValidCtxtPtr;n_ctxt++) {
27202:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
27203:         mem_base = xmlMemBlocks();
27204:         ctxt = gen_xmlValidCtxtPtr(n_ctxt, 0);
27205:         doc = gen_xmlDocPtr(n_doc, 1);
27206: 
27207:         ret_val = xmlValidateRoot(ctxt, doc);
27208:         desret_int(ret_val);
27209:         call_tests++;
27210:         des_xmlValidCtxtPtr(n_ctxt, ctxt, 0);
27211:         des_xmlDocPtr(n_doc, doc, 1);
27212:         xmlResetLastError();
27213:         if (mem_base != xmlMemBlocks()) {
27214:             printf("Leak of %d blocks found in xmlValidateRoot",
27215: 	           xmlMemBlocks() - mem_base);
27216: 	    test_ret++;
27217:             printf(" %d", n_ctxt);
27218:             printf(" %d", n_doc);
27219:             printf("\n");
27220:         }
27221:     }
27222:     }
27223:     function_tests++;
27224: #endif
27225: 
27226:     return(test_ret);
27227: }
27228: 
27229: static int
27230: test_valid(void) {
27231:     int test_ret = 0;
27232: 
27233:     if (quiet == 0) printf("Testing valid : 50 of 70 functions ...\n");
27234:     test_ret += test_xmlAddAttributeDecl();
27235:     test_ret += test_xmlAddElementDecl();
27236:     test_ret += test_xmlAddID();
27237:     test_ret += test_xmlAddNotationDecl();
27238:     test_ret += test_xmlAddRef();
27239:     test_ret += test_xmlCopyAttributeTable();
27240:     test_ret += test_xmlCopyDocElementContent();
27241:     test_ret += test_xmlCopyElementContent();
27242:     test_ret += test_xmlCopyElementTable();
27243:     test_ret += test_xmlCopyEnumeration();
27244:     test_ret += test_xmlCopyNotationTable();
27245:     test_ret += test_xmlCreateEnumeration();
27246:     test_ret += test_xmlDumpAttributeDecl();
27247:     test_ret += test_xmlDumpAttributeTable();
27248:     test_ret += test_xmlDumpElementDecl();
27249:     test_ret += test_xmlDumpElementTable();
27250:     test_ret += test_xmlDumpNotationDecl();
27251:     test_ret += test_xmlDumpNotationTable();
27252:     test_ret += test_xmlGetDtdAttrDesc();
27253:     test_ret += test_xmlGetDtdElementDesc();
27254:     test_ret += test_xmlGetDtdNotationDesc();
27255:     test_ret += test_xmlGetDtdQAttrDesc();
27256:     test_ret += test_xmlGetDtdQElementDesc();
27257:     test_ret += test_xmlGetID();
27258:     test_ret += test_xmlGetRefs();
27259:     test_ret += test_xmlIsID();
27260:     test_ret += test_xmlIsMixedElement();
27261:     test_ret += test_xmlIsRef();
27262:     test_ret += test_xmlNewDocElementContent();
27263:     test_ret += test_xmlNewElementContent();
27264:     test_ret += test_xmlNewValidCtxt();
27265:     test_ret += test_xmlRemoveID();
27266:     test_ret += test_xmlRemoveRef();
27267:     test_ret += test_xmlSnprintfElementContent();
27268:     test_ret += test_xmlSprintfElementContent();
27269:     test_ret += test_xmlValidBuildContentModel();
27270:     test_ret += test_xmlValidCtxtNormalizeAttributeValue();
27271:     test_ret += test_xmlValidGetPotentialChildren();
27272:     test_ret += test_xmlValidGetValidElements();
27273:     test_ret += test_xmlValidNormalizeAttributeValue();
27274:     test_ret += test_xmlValidateAttributeDecl();
27275:     test_ret += test_xmlValidateAttributeValue();
27276:     test_ret += test_xmlValidateDocument();
27277:     test_ret += test_xmlValidateDocumentFinal();
27278:     test_ret += test_xmlValidateDtd();
27279:     test_ret += test_xmlValidateDtdFinal();
27280:     test_ret += test_xmlValidateElement();
27281:     test_ret += test_xmlValidateElementDecl();
27282:     test_ret += test_xmlValidateNameValue();
27283:     test_ret += test_xmlValidateNamesValue();
27284:     test_ret += test_xmlValidateNmtokenValue();
27285:     test_ret += test_xmlValidateNmtokensValue();
27286:     test_ret += test_xmlValidateNotationDecl();
27287:     test_ret += test_xmlValidateNotationUse();
27288:     test_ret += test_xmlValidateOneAttribute();
27289:     test_ret += test_xmlValidateOneElement();
27290:     test_ret += test_xmlValidateOneNamespace();
27291:     test_ret += test_xmlValidatePopElement();
27292:     test_ret += test_xmlValidatePushCData();
27293:     test_ret += test_xmlValidatePushElement();
27294:     test_ret += test_xmlValidateRoot();
27295: 
27296:     if (test_ret != 0)
27297: 	printf("Module valid: %d errors\n", test_ret);
27298:     return(test_ret);
27299: }
27300: 
27301: static int
27302: test_xmlXIncludeNewContext(void) {
27303:     int test_ret = 0;
27304: 
27305: 
27306:     /* missing type support */
27307:     return(test_ret);
27308: }
27309: 
27310: 
27311: static int
27312: test_xmlXIncludeProcess(void) {
27313:     int test_ret = 0;
27314: 
27315: #if defined(LIBXML_XINCLUDE_ENABLED)
27316:     int mem_base;
27317:     int ret_val;
27318:     xmlDocPtr doc; /* an XML document */
27319:     int n_doc;
27320: 
27321:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
27322:         mem_base = xmlMemBlocks();
27323:         doc = gen_xmlDocPtr(n_doc, 0);
27324: 
27325:         ret_val = xmlXIncludeProcess(doc);
27326:         desret_int(ret_val);
27327:         call_tests++;
27328:         des_xmlDocPtr(n_doc, doc, 0);
27329:         xmlResetLastError();
27330:         if (mem_base != xmlMemBlocks()) {
27331:             printf("Leak of %d blocks found in xmlXIncludeProcess",
27332: 	           xmlMemBlocks() - mem_base);
27333: 	    test_ret++;
27334:             printf(" %d", n_doc);
27335:             printf("\n");
27336:         }
27337:     }
27338:     function_tests++;
27339: #endif
27340: 
27341:     return(test_ret);
27342: }
27343: 
27344: 
27345: static int
27346: test_xmlXIncludeProcessFlags(void) {
27347:     int test_ret = 0;
27348: 
27349: #if defined(LIBXML_XINCLUDE_ENABLED)
27350:     int mem_base;
27351:     int ret_val;
27352:     xmlDocPtr doc; /* an XML document */
27353:     int n_doc;
27354:     int flags; /* a set of xmlParserOption used for parsing XML includes */
27355:     int n_flags;
27356: 
27357:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
27358:     for (n_flags = 0;n_flags < gen_nb_int;n_flags++) {
27359:         mem_base = xmlMemBlocks();
27360:         doc = gen_xmlDocPtr(n_doc, 0);
27361:         flags = gen_int(n_flags, 1);
27362: 
27363:         ret_val = xmlXIncludeProcessFlags(doc, flags);
27364:         desret_int(ret_val);
27365:         call_tests++;
27366:         des_xmlDocPtr(n_doc, doc, 0);
27367:         des_int(n_flags, flags, 1);
27368:         xmlResetLastError();
27369:         if (mem_base != xmlMemBlocks()) {
27370:             printf("Leak of %d blocks found in xmlXIncludeProcessFlags",
27371: 	           xmlMemBlocks() - mem_base);
27372: 	    test_ret++;
27373:             printf(" %d", n_doc);
27374:             printf(" %d", n_flags);
27375:             printf("\n");
27376:         }
27377:     }
27378:     }
27379:     function_tests++;
27380: #endif
27381: 
27382:     return(test_ret);
27383: }
27384: 
27385: 
27386: static int
27387: test_xmlXIncludeProcessFlagsData(void) {
27388:     int test_ret = 0;
27389: 
27390: #if defined(LIBXML_XINCLUDE_ENABLED)
27391:     int mem_base;
27392:     int ret_val;
27393:     xmlDocPtr doc; /* an XML document */
27394:     int n_doc;
27395:     int flags; /* a set of xmlParserOption used for parsing XML includes */
27396:     int n_flags;
27397:     void * data; /* application data that will be passed to the parser context in the _private field of the parser context(s) */
27398:     int n_data;
27399: 
27400:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
27401:     for (n_flags = 0;n_flags < gen_nb_int;n_flags++) {
27402:     for (n_data = 0;n_data < gen_nb_userdata;n_data++) {
27403:         mem_base = xmlMemBlocks();
27404:         doc = gen_xmlDocPtr(n_doc, 0);
27405:         flags = gen_int(n_flags, 1);
27406:         data = gen_userdata(n_data, 2);
27407: 
27408:         ret_val = xmlXIncludeProcessFlagsData(doc, flags, data);
27409:         desret_int(ret_val);
27410:         call_tests++;
27411:         des_xmlDocPtr(n_doc, doc, 0);
27412:         des_int(n_flags, flags, 1);
27413:         des_userdata(n_data, data, 2);
27414:         xmlResetLastError();
27415:         if (mem_base != xmlMemBlocks()) {
27416:             printf("Leak of %d blocks found in xmlXIncludeProcessFlagsData",
27417: 	           xmlMemBlocks() - mem_base);
27418: 	    test_ret++;
27419:             printf(" %d", n_doc);
27420:             printf(" %d", n_flags);
27421:             printf(" %d", n_data);
27422:             printf("\n");
27423:         }
27424:     }
27425:     }
27426:     }
27427:     function_tests++;
27428: #endif
27429: 
27430:     return(test_ret);
27431: }
27432: 
27433: #ifdef LIBXML_XINCLUDE_ENABLED
27434: 
27435: #define gen_nb_xmlXIncludeCtxtPtr 1
27436: static xmlXIncludeCtxtPtr gen_xmlXIncludeCtxtPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
27437:     return(NULL);
27438: }
27439: static void des_xmlXIncludeCtxtPtr(int no ATTRIBUTE_UNUSED, xmlXIncludeCtxtPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
27440: }
27441: #endif
27442: 
27443: 
27444: static int
27445: test_xmlXIncludeProcessNode(void) {
27446:     int test_ret = 0;
27447: 
27448: #if defined(LIBXML_XINCLUDE_ENABLED)
27449:     int mem_base;
27450:     int ret_val;
27451:     xmlXIncludeCtxtPtr ctxt; /* an existing XInclude context */
27452:     int n_ctxt;
27453:     xmlNodePtr node; /* a node in an XML document */
27454:     int n_node;
27455: 
27456:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXIncludeCtxtPtr;n_ctxt++) {
27457:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
27458:         mem_base = xmlMemBlocks();
27459:         ctxt = gen_xmlXIncludeCtxtPtr(n_ctxt, 0);
27460:         node = gen_xmlNodePtr(n_node, 1);
27461: 
27462:         ret_val = xmlXIncludeProcessNode(ctxt, node);
27463:         desret_int(ret_val);
27464:         call_tests++;
27465:         des_xmlXIncludeCtxtPtr(n_ctxt, ctxt, 0);
27466:         des_xmlNodePtr(n_node, node, 1);
27467:         xmlResetLastError();
27468:         if (mem_base != xmlMemBlocks()) {
27469:             printf("Leak of %d blocks found in xmlXIncludeProcessNode",
27470: 	           xmlMemBlocks() - mem_base);
27471: 	    test_ret++;
27472:             printf(" %d", n_ctxt);
27473:             printf(" %d", n_node);
27474:             printf("\n");
27475:         }
27476:     }
27477:     }
27478:     function_tests++;
27479: #endif
27480: 
27481:     return(test_ret);
27482: }
27483: 
27484: 
27485: static int
27486: test_xmlXIncludeProcessTree(void) {
27487:     int test_ret = 0;
27488: 
27489: #if defined(LIBXML_XINCLUDE_ENABLED)
27490:     int mem_base;
27491:     int ret_val;
27492:     xmlNodePtr tree; /* a node in an XML document */
27493:     int n_tree;
27494: 
27495:     for (n_tree = 0;n_tree < gen_nb_xmlNodePtr;n_tree++) {
27496:         mem_base = xmlMemBlocks();
27497:         tree = gen_xmlNodePtr(n_tree, 0);
27498: 
27499:         ret_val = xmlXIncludeProcessTree(tree);
27500:         desret_int(ret_val);
27501:         call_tests++;
27502:         des_xmlNodePtr(n_tree, tree, 0);
27503:         xmlResetLastError();
27504:         if (mem_base != xmlMemBlocks()) {
27505:             printf("Leak of %d blocks found in xmlXIncludeProcessTree",
27506: 	           xmlMemBlocks() - mem_base);
27507: 	    test_ret++;
27508:             printf(" %d", n_tree);
27509:             printf("\n");
27510:         }
27511:     }
27512:     function_tests++;
27513: #endif
27514: 
27515:     return(test_ret);
27516: }
27517: 
27518: 
27519: static int
27520: test_xmlXIncludeProcessTreeFlags(void) {
27521:     int test_ret = 0;
27522: 
27523: #if defined(LIBXML_XINCLUDE_ENABLED)
27524:     int mem_base;
27525:     int ret_val;
27526:     xmlNodePtr tree; /* a node in an XML document */
27527:     int n_tree;
27528:     int flags; /* a set of xmlParserOption used for parsing XML includes */
27529:     int n_flags;
27530: 
27531:     for (n_tree = 0;n_tree < gen_nb_xmlNodePtr;n_tree++) {
27532:     for (n_flags = 0;n_flags < gen_nb_int;n_flags++) {
27533:         mem_base = xmlMemBlocks();
27534:         tree = gen_xmlNodePtr(n_tree, 0);
27535:         flags = gen_int(n_flags, 1);
27536: 
27537:         ret_val = xmlXIncludeProcessTreeFlags(tree, flags);
27538:         desret_int(ret_val);
27539:         call_tests++;
27540:         des_xmlNodePtr(n_tree, tree, 0);
27541:         des_int(n_flags, flags, 1);
27542:         xmlResetLastError();
27543:         if (mem_base != xmlMemBlocks()) {
27544:             printf("Leak of %d blocks found in xmlXIncludeProcessTreeFlags",
27545: 	           xmlMemBlocks() - mem_base);
27546: 	    test_ret++;
27547:             printf(" %d", n_tree);
27548:             printf(" %d", n_flags);
27549:             printf("\n");
27550:         }
27551:     }
27552:     }
27553:     function_tests++;
27554: #endif
27555: 
27556:     return(test_ret);
27557: }
27558: 
27559: 
27560: static int
27561: test_xmlXIncludeProcessTreeFlagsData(void) {
27562:     int test_ret = 0;
27563: 
27564: #if defined(LIBXML_XINCLUDE_ENABLED)
27565:     int mem_base;
27566:     int ret_val;
27567:     xmlNodePtr tree; /* an XML node */
27568:     int n_tree;
27569:     int flags; /* a set of xmlParserOption used for parsing XML includes */
27570:     int n_flags;
27571:     void * data; /* application data that will be passed to the parser context in the _private field of the parser context(s) */
27572:     int n_data;
27573: 
27574:     for (n_tree = 0;n_tree < gen_nb_xmlNodePtr;n_tree++) {
27575:     for (n_flags = 0;n_flags < gen_nb_int;n_flags++) {
27576:     for (n_data = 0;n_data < gen_nb_userdata;n_data++) {
27577:         mem_base = xmlMemBlocks();
27578:         tree = gen_xmlNodePtr(n_tree, 0);
27579:         flags = gen_int(n_flags, 1);
27580:         data = gen_userdata(n_data, 2);
27581: 
27582:         ret_val = xmlXIncludeProcessTreeFlagsData(tree, flags, data);
27583:         desret_int(ret_val);
27584:         call_tests++;
27585:         des_xmlNodePtr(n_tree, tree, 0);
27586:         des_int(n_flags, flags, 1);
27587:         des_userdata(n_data, data, 2);
27588:         xmlResetLastError();
27589:         if (mem_base != xmlMemBlocks()) {
27590:             printf("Leak of %d blocks found in xmlXIncludeProcessTreeFlagsData",
27591: 	           xmlMemBlocks() - mem_base);
27592: 	    test_ret++;
27593:             printf(" %d", n_tree);
27594:             printf(" %d", n_flags);
27595:             printf(" %d", n_data);
27596:             printf("\n");
27597:         }
27598:     }
27599:     }
27600:     }
27601:     function_tests++;
27602: #endif
27603: 
27604:     return(test_ret);
27605: }
27606: 
27607: 
27608: static int
27609: test_xmlXIncludeSetFlags(void) {
27610:     int test_ret = 0;
27611: 
27612: #if defined(LIBXML_XINCLUDE_ENABLED)
27613:     int mem_base;
27614:     int ret_val;
27615:     xmlXIncludeCtxtPtr ctxt; /* an XInclude processing context */
27616:     int n_ctxt;
27617:     int flags; /* a set of xmlParserOption used for parsing XML includes */
27618:     int n_flags;
27619: 
27620:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXIncludeCtxtPtr;n_ctxt++) {
27621:     for (n_flags = 0;n_flags < gen_nb_int;n_flags++) {
27622:         mem_base = xmlMemBlocks();
27623:         ctxt = gen_xmlXIncludeCtxtPtr(n_ctxt, 0);
27624:         flags = gen_int(n_flags, 1);
27625: 
27626:         ret_val = xmlXIncludeSetFlags(ctxt, flags);
27627:         desret_int(ret_val);
27628:         call_tests++;
27629:         des_xmlXIncludeCtxtPtr(n_ctxt, ctxt, 0);
27630:         des_int(n_flags, flags, 1);
27631:         xmlResetLastError();
27632:         if (mem_base != xmlMemBlocks()) {
27633:             printf("Leak of %d blocks found in xmlXIncludeSetFlags",
27634: 	           xmlMemBlocks() - mem_base);
27635: 	    test_ret++;
27636:             printf(" %d", n_ctxt);
27637:             printf(" %d", n_flags);
27638:             printf("\n");
27639:         }
27640:     }
27641:     }
27642:     function_tests++;
27643: #endif
27644: 
27645:     return(test_ret);
27646: }
27647: 
27648: static int
27649: test_xinclude(void) {
27650:     int test_ret = 0;
27651: 
27652:     if (quiet == 0) printf("Testing xinclude : 8 of 10 functions ...\n");
27653:     test_ret += test_xmlXIncludeNewContext();
27654:     test_ret += test_xmlXIncludeProcess();
27655:     test_ret += test_xmlXIncludeProcessFlags();
27656:     test_ret += test_xmlXIncludeProcessFlagsData();
27657:     test_ret += test_xmlXIncludeProcessNode();
27658:     test_ret += test_xmlXIncludeProcessTree();
27659:     test_ret += test_xmlXIncludeProcessTreeFlags();
27660:     test_ret += test_xmlXIncludeProcessTreeFlagsData();
27661:     test_ret += test_xmlXIncludeSetFlags();
27662: 
27663:     if (test_ret != 0)
27664: 	printf("Module xinclude: %d errors\n", test_ret);
27665:     return(test_ret);
27666: }
27667: 
27668: static int
27669: test_xmlAllocOutputBuffer(void) {
27670:     int test_ret = 0;
27671: 
27672: #if defined(LIBXML_OUTPUT_ENABLED)
27673:     int mem_base;
27674:     xmlOutputBufferPtr ret_val;
27675:     xmlCharEncodingHandlerPtr encoder; /* the encoding converter or NULL */
27676:     int n_encoder;
27677: 
27678:     for (n_encoder = 0;n_encoder < gen_nb_xmlCharEncodingHandlerPtr;n_encoder++) {
27679:         mem_base = xmlMemBlocks();
27680:         encoder = gen_xmlCharEncodingHandlerPtr(n_encoder, 0);
27681: 
27682:         ret_val = xmlAllocOutputBuffer(encoder);
27683:         desret_xmlOutputBufferPtr(ret_val);
27684:         call_tests++;
27685:         des_xmlCharEncodingHandlerPtr(n_encoder, encoder, 0);
27686:         xmlResetLastError();
27687:         if (mem_base != xmlMemBlocks()) {
27688:             printf("Leak of %d blocks found in xmlAllocOutputBuffer",
27689: 	           xmlMemBlocks() - mem_base);
27690: 	    test_ret++;
27691:             printf(" %d", n_encoder);
27692:             printf("\n");
27693:         }
27694:     }
27695:     function_tests++;
27696: #endif
27697: 
27698:     return(test_ret);
27699: }
27700: 
27701: 
27702: static int
27703: test_xmlAllocParserInputBuffer(void) {
27704:     int test_ret = 0;
27705: 
27706:     int mem_base;
27707:     xmlParserInputBufferPtr ret_val;
27708:     xmlCharEncoding enc; /* the charset encoding if known */
27709:     int n_enc;
27710: 
27711:     for (n_enc = 0;n_enc < gen_nb_xmlCharEncoding;n_enc++) {
27712:         mem_base = xmlMemBlocks();
27713:         enc = gen_xmlCharEncoding(n_enc, 0);
27714: 
27715:         ret_val = xmlAllocParserInputBuffer(enc);
27716:         desret_xmlParserInputBufferPtr(ret_val);
27717:         call_tests++;
27718:         des_xmlCharEncoding(n_enc, enc, 0);
27719:         xmlResetLastError();
27720:         if (mem_base != xmlMemBlocks()) {
27721:             printf("Leak of %d blocks found in xmlAllocParserInputBuffer",
27722: 	           xmlMemBlocks() - mem_base);
27723: 	    test_ret++;
27724:             printf(" %d", n_enc);
27725:             printf("\n");
27726:         }
27727:     }
27728:     function_tests++;
27729: 
27730:     return(test_ret);
27731: }
27732: 
27733: 
27734: static int
27735: test_xmlCheckFilename(void) {
27736:     int test_ret = 0;
27737: 
27738:     int mem_base;
27739:     int ret_val;
27740:     char * path; /* the path to check */
27741:     int n_path;
27742: 
27743:     for (n_path = 0;n_path < gen_nb_const_char_ptr;n_path++) {
27744:         mem_base = xmlMemBlocks();
27745:         path = gen_const_char_ptr(n_path, 0);
27746: 
27747:         ret_val = xmlCheckFilename((const char *)path);
27748:         desret_int(ret_val);
27749:         call_tests++;
27750:         des_const_char_ptr(n_path, (const char *)path, 0);
27751:         xmlResetLastError();
27752:         if (mem_base != xmlMemBlocks()) {
27753:             printf("Leak of %d blocks found in xmlCheckFilename",
27754: 	           xmlMemBlocks() - mem_base);
27755: 	    test_ret++;
27756:             printf(" %d", n_path);
27757:             printf("\n");
27758:         }
27759:     }
27760:     function_tests++;
27761: 
27762:     return(test_ret);
27763: }
27764: 
27765: 
27766: static int
27767: test_xmlCheckHTTPInput(void) {
27768:     int test_ret = 0;
27769: 
27770:     int mem_base;
27771:     xmlParserInputPtr ret_val;
27772:     xmlParserCtxtPtr ctxt; /* an XML parser context */
27773:     int n_ctxt;
27774:     xmlParserInputPtr ret; /* an XML parser input */
27775:     int n_ret;
27776: 
27777:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
27778:     for (n_ret = 0;n_ret < gen_nb_xmlParserInputPtr;n_ret++) {
27779:         mem_base = xmlMemBlocks();
27780:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
27781:         ret = gen_xmlParserInputPtr(n_ret, 1);
27782: 
27783:         ret_val = xmlCheckHTTPInput(ctxt, ret);
27784:         desret_xmlParserInputPtr(ret_val);
27785:         call_tests++;
27786:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
27787:         des_xmlParserInputPtr(n_ret, ret, 1);
27788:         xmlResetLastError();
27789:         if (mem_base != xmlMemBlocks()) {
27790:             printf("Leak of %d blocks found in xmlCheckHTTPInput",
27791: 	           xmlMemBlocks() - mem_base);
27792: 	    test_ret++;
27793:             printf(" %d", n_ctxt);
27794:             printf(" %d", n_ret);
27795:             printf("\n");
27796:         }
27797:     }
27798:     }
27799:     function_tests++;
27800: 
27801:     return(test_ret);
27802: }
27803: 
27804: 
27805: static int
27806: test_xmlCleanupInputCallbacks(void) {
27807:     int test_ret = 0;
27808: 
27809:     int mem_base;
27810: 
27811:         mem_base = xmlMemBlocks();
27812: 
27813:         xmlCleanupInputCallbacks();
27814:         call_tests++;
27815:         xmlResetLastError();
27816:         if (mem_base != xmlMemBlocks()) {
27817:             printf("Leak of %d blocks found in xmlCleanupInputCallbacks",
27818: 	           xmlMemBlocks() - mem_base);
27819: 	    test_ret++;
27820:             printf("\n");
27821:         }
27822:     function_tests++;
27823: 
27824:     return(test_ret);
27825: }
27826: 
27827: 
27828: static int
27829: test_xmlCleanupOutputCallbacks(void) {
27830:     int test_ret = 0;
27831: 
27832: #if defined(LIBXML_OUTPUT_ENABLED)
27833:     int mem_base;
27834: 
27835:         mem_base = xmlMemBlocks();
27836: 
27837:         xmlCleanupOutputCallbacks();
27838:         call_tests++;
27839:         xmlResetLastError();
27840:         if (mem_base != xmlMemBlocks()) {
27841:             printf("Leak of %d blocks found in xmlCleanupOutputCallbacks",
27842: 	           xmlMemBlocks() - mem_base);
27843: 	    test_ret++;
27844:             printf("\n");
27845:         }
27846:     function_tests++;
27847: #endif
27848: 
27849:     return(test_ret);
27850: }
27851: 
27852: 
27853: static int
27854: test_xmlFileClose(void) {
27855:     int test_ret = 0;
27856: 
27857:     int mem_base;
27858:     int ret_val;
27859:     void * context; /* the I/O context */
27860:     int n_context;
27861: 
27862:     for (n_context = 0;n_context < gen_nb_void_ptr;n_context++) {
27863:         mem_base = xmlMemBlocks();
27864:         context = gen_void_ptr(n_context, 0);
27865: 
27866:         ret_val = xmlFileClose(context);
27867:         desret_int(ret_val);
27868:         call_tests++;
27869:         des_void_ptr(n_context, context, 0);
27870:         xmlResetLastError();
27871:         if (mem_base != xmlMemBlocks()) {
27872:             printf("Leak of %d blocks found in xmlFileClose",
27873: 	           xmlMemBlocks() - mem_base);
27874: 	    test_ret++;
27875:             printf(" %d", n_context);
27876:             printf("\n");
27877:         }
27878:     }
27879:     function_tests++;
27880: 
27881:     return(test_ret);
27882: }
27883: 
27884: 
27885: static int
27886: test_xmlFileMatch(void) {
27887:     int test_ret = 0;
27888: 
27889:     int mem_base;
27890:     int ret_val;
27891:     const char * filename; /* the URI for matching */
27892:     int n_filename;
27893: 
27894:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
27895:         mem_base = xmlMemBlocks();
27896:         filename = gen_filepath(n_filename, 0);
27897: 
27898:         ret_val = xmlFileMatch(filename);
27899:         desret_int(ret_val);
27900:         call_tests++;
27901:         des_filepath(n_filename, filename, 0);
27902:         xmlResetLastError();
27903:         if (mem_base != xmlMemBlocks()) {
27904:             printf("Leak of %d blocks found in xmlFileMatch",
27905: 	           xmlMemBlocks() - mem_base);
27906: 	    test_ret++;
27907:             printf(" %d", n_filename);
27908:             printf("\n");
27909:         }
27910:     }
27911:     function_tests++;
27912: 
27913:     return(test_ret);
27914: }
27915: 
27916: 
27917: static int
27918: test_xmlFileOpen(void) {
27919:     int test_ret = 0;
27920: 
27921:     int mem_base;
27922:     void * ret_val;
27923:     const char * filename; /* the URI for matching */
27924:     int n_filename;
27925: 
27926:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
27927:         mem_base = xmlMemBlocks();
27928:         filename = gen_filepath(n_filename, 0);
27929: 
27930:         ret_val = xmlFileOpen(filename);
27931:         desret_void_ptr(ret_val);
27932:         call_tests++;
27933:         des_filepath(n_filename, filename, 0);
27934:         xmlResetLastError();
27935:         if (mem_base != xmlMemBlocks()) {
27936:             printf("Leak of %d blocks found in xmlFileOpen",
27937: 	           xmlMemBlocks() - mem_base);
27938: 	    test_ret++;
27939:             printf(" %d", n_filename);
27940:             printf("\n");
27941:         }
27942:     }
27943:     function_tests++;
27944: 
27945:     return(test_ret);
27946: }
27947: 
27948: 
27949: static int
27950: test_xmlFileRead(void) {
27951:     int test_ret = 0;
27952: 
27953:     int mem_base;
27954:     int ret_val;
27955:     void * context; /* the I/O context */
27956:     int n_context;
27957:     char * buffer; /* where to drop data */
27958:     int n_buffer;
27959:     int len; /* number of bytes to write */
27960:     int n_len;
27961: 
27962:     for (n_context = 0;n_context < gen_nb_void_ptr;n_context++) {
27963:     for (n_buffer = 0;n_buffer < gen_nb_char_ptr;n_buffer++) {
27964:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
27965:         mem_base = xmlMemBlocks();
27966:         context = gen_void_ptr(n_context, 0);
27967:         buffer = gen_char_ptr(n_buffer, 1);
27968:         len = gen_int(n_len, 2);
27969: 
27970:         ret_val = xmlFileRead(context, buffer, len);
27971:         desret_int(ret_val);
27972:         call_tests++;
27973:         des_void_ptr(n_context, context, 0);
27974:         des_char_ptr(n_buffer, buffer, 1);
27975:         des_int(n_len, len, 2);
27976:         xmlResetLastError();
27977:         if (mem_base != xmlMemBlocks()) {
27978:             printf("Leak of %d blocks found in xmlFileRead",
27979: 	           xmlMemBlocks() - mem_base);
27980: 	    test_ret++;
27981:             printf(" %d", n_context);
27982:             printf(" %d", n_buffer);
27983:             printf(" %d", n_len);
27984:             printf("\n");
27985:         }
27986:     }
27987:     }
27988:     }
27989:     function_tests++;
27990: 
27991:     return(test_ret);
27992: }
27993: 
27994: 
27995: static int
27996: test_xmlIOFTPClose(void) {
27997:     int test_ret = 0;
27998: 
27999: #if defined(LIBXML_FTP_ENABLED)
28000:     int mem_base;
28001:     int ret_val;
28002:     void * context; /* the I/O context */
28003:     int n_context;
28004: 
28005:     for (n_context = 0;n_context < gen_nb_void_ptr;n_context++) {
28006:         mem_base = xmlMemBlocks();
28007:         context = gen_void_ptr(n_context, 0);
28008: 
28009:         ret_val = xmlIOFTPClose(context);
28010:         desret_int(ret_val);
28011:         call_tests++;
28012:         des_void_ptr(n_context, context, 0);
28013:         xmlResetLastError();
28014:         if (mem_base != xmlMemBlocks()) {
28015:             printf("Leak of %d blocks found in xmlIOFTPClose",
28016: 	           xmlMemBlocks() - mem_base);
28017: 	    test_ret++;
28018:             printf(" %d", n_context);
28019:             printf("\n");
28020:         }
28021:     }
28022:     function_tests++;
28023: #endif
28024: 
28025:     return(test_ret);
28026: }
28027: 
28028: 
28029: static int
28030: test_xmlIOFTPMatch(void) {
28031:     int test_ret = 0;
28032: 
28033: #if defined(LIBXML_FTP_ENABLED)
28034:     int mem_base;
28035:     int ret_val;
28036:     const char * filename; /* the URI for matching */
28037:     int n_filename;
28038: 
28039:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
28040:         mem_base = xmlMemBlocks();
28041:         filename = gen_filepath(n_filename, 0);
28042: 
28043:         ret_val = xmlIOFTPMatch(filename);
28044:         desret_int(ret_val);
28045:         call_tests++;
28046:         des_filepath(n_filename, filename, 0);
28047:         xmlResetLastError();
28048:         if (mem_base != xmlMemBlocks()) {
28049:             printf("Leak of %d blocks found in xmlIOFTPMatch",
28050: 	           xmlMemBlocks() - mem_base);
28051: 	    test_ret++;
28052:             printf(" %d", n_filename);
28053:             printf("\n");
28054:         }
28055:     }
28056:     function_tests++;
28057: #endif
28058: 
28059:     return(test_ret);
28060: }
28061: 
28062: 
28063: static int
28064: test_xmlIOFTPOpen(void) {
28065:     int test_ret = 0;
28066: 
28067: #if defined(LIBXML_FTP_ENABLED)
28068:     int mem_base;
28069:     void * ret_val;
28070:     const char * filename; /* the URI for matching */
28071:     int n_filename;
28072: 
28073:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
28074:         mem_base = xmlMemBlocks();
28075:         filename = gen_filepath(n_filename, 0);
28076: 
28077:         ret_val = xmlIOFTPOpen(filename);
28078:         desret_void_ptr(ret_val);
28079:         call_tests++;
28080:         des_filepath(n_filename, filename, 0);
28081:         xmlResetLastError();
28082:         if (mem_base != xmlMemBlocks()) {
28083:             printf("Leak of %d blocks found in xmlIOFTPOpen",
28084: 	           xmlMemBlocks() - mem_base);
28085: 	    test_ret++;
28086:             printf(" %d", n_filename);
28087:             printf("\n");
28088:         }
28089:     }
28090:     function_tests++;
28091: #endif
28092: 
28093:     return(test_ret);
28094: }
28095: 
28096: 
28097: static int
28098: test_xmlIOFTPRead(void) {
28099:     int test_ret = 0;
28100: 
28101: #if defined(LIBXML_FTP_ENABLED)
28102:     int mem_base;
28103:     int ret_val;
28104:     void * context; /* the I/O context */
28105:     int n_context;
28106:     char * buffer; /* where to drop data */
28107:     int n_buffer;
28108:     int len; /* number of bytes to write */
28109:     int n_len;
28110: 
28111:     for (n_context = 0;n_context < gen_nb_void_ptr;n_context++) {
28112:     for (n_buffer = 0;n_buffer < gen_nb_char_ptr;n_buffer++) {
28113:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
28114:         mem_base = xmlMemBlocks();
28115:         context = gen_void_ptr(n_context, 0);
28116:         buffer = gen_char_ptr(n_buffer, 1);
28117:         len = gen_int(n_len, 2);
28118: 
28119:         ret_val = xmlIOFTPRead(context, buffer, len);
28120:         desret_int(ret_val);
28121:         call_tests++;
28122:         des_void_ptr(n_context, context, 0);
28123:         des_char_ptr(n_buffer, buffer, 1);
28124:         des_int(n_len, len, 2);
28125:         xmlResetLastError();
28126:         if (mem_base != xmlMemBlocks()) {
28127:             printf("Leak of %d blocks found in xmlIOFTPRead",
28128: 	           xmlMemBlocks() - mem_base);
28129: 	    test_ret++;
28130:             printf(" %d", n_context);
28131:             printf(" %d", n_buffer);
28132:             printf(" %d", n_len);
28133:             printf("\n");
28134:         }
28135:     }
28136:     }
28137:     }
28138:     function_tests++;
28139: #endif
28140: 
28141:     return(test_ret);
28142: }
28143: 
28144: 
28145: static int
28146: test_xmlIOHTTPClose(void) {
28147:     int test_ret = 0;
28148: 
28149: #if defined(LIBXML_HTTP_ENABLED)
28150:     int mem_base;
28151:     int ret_val;
28152:     void * context; /* the I/O context */
28153:     int n_context;
28154: 
28155:     for (n_context = 0;n_context < gen_nb_void_ptr;n_context++) {
28156:         mem_base = xmlMemBlocks();
28157:         context = gen_void_ptr(n_context, 0);
28158: 
28159:         ret_val = xmlIOHTTPClose(context);
28160:         desret_int(ret_val);
28161:         call_tests++;
28162:         des_void_ptr(n_context, context, 0);
28163:         xmlResetLastError();
28164:         if (mem_base != xmlMemBlocks()) {
28165:             printf("Leak of %d blocks found in xmlIOHTTPClose",
28166: 	           xmlMemBlocks() - mem_base);
28167: 	    test_ret++;
28168:             printf(" %d", n_context);
28169:             printf("\n");
28170:         }
28171:     }
28172:     function_tests++;
28173: #endif
28174: 
28175:     return(test_ret);
28176: }
28177: 
28178: 
28179: static int
28180: test_xmlIOHTTPMatch(void) {
28181:     int test_ret = 0;
28182: 
28183: #if defined(LIBXML_HTTP_ENABLED)
28184:     int mem_base;
28185:     int ret_val;
28186:     const char * filename; /* the URI for matching */
28187:     int n_filename;
28188: 
28189:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
28190:         mem_base = xmlMemBlocks();
28191:         filename = gen_filepath(n_filename, 0);
28192: 
28193:         ret_val = xmlIOHTTPMatch(filename);
28194:         desret_int(ret_val);
28195:         call_tests++;
28196:         des_filepath(n_filename, filename, 0);
28197:         xmlResetLastError();
28198:         if (mem_base != xmlMemBlocks()) {
28199:             printf("Leak of %d blocks found in xmlIOHTTPMatch",
28200: 	           xmlMemBlocks() - mem_base);
28201: 	    test_ret++;
28202:             printf(" %d", n_filename);
28203:             printf("\n");
28204:         }
28205:     }
28206:     function_tests++;
28207: #endif
28208: 
28209:     return(test_ret);
28210: }
28211: 
28212: 
28213: static int
28214: test_xmlIOHTTPOpen(void) {
28215:     int test_ret = 0;
28216: 
28217: #if defined(LIBXML_HTTP_ENABLED)
28218:     int mem_base;
28219:     void * ret_val;
28220:     const char * filename; /* the URI for matching */
28221:     int n_filename;
28222: 
28223:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
28224:         mem_base = xmlMemBlocks();
28225:         filename = gen_filepath(n_filename, 0);
28226: 
28227:         ret_val = xmlIOHTTPOpen(filename);
28228:         desret_xmlNanoHTTPCtxtPtr(ret_val);
28229:         call_tests++;
28230:         des_filepath(n_filename, filename, 0);
28231:         xmlResetLastError();
28232:         if (mem_base != xmlMemBlocks()) {
28233:             printf("Leak of %d blocks found in xmlIOHTTPOpen",
28234: 	           xmlMemBlocks() - mem_base);
28235: 	    test_ret++;
28236:             printf(" %d", n_filename);
28237:             printf("\n");
28238:         }
28239:     }
28240:     function_tests++;
28241: #endif
28242: 
28243:     return(test_ret);
28244: }
28245: 
28246: 
28247: static int
28248: test_xmlIOHTTPRead(void) {
28249:     int test_ret = 0;
28250: 
28251: #if defined(LIBXML_HTTP_ENABLED)
28252:     int mem_base;
28253:     int ret_val;
28254:     void * context; /* the I/O context */
28255:     int n_context;
28256:     char * buffer; /* where to drop data */
28257:     int n_buffer;
28258:     int len; /* number of bytes to write */
28259:     int n_len;
28260: 
28261:     for (n_context = 0;n_context < gen_nb_void_ptr;n_context++) {
28262:     for (n_buffer = 0;n_buffer < gen_nb_char_ptr;n_buffer++) {
28263:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
28264:         mem_base = xmlMemBlocks();
28265:         context = gen_void_ptr(n_context, 0);
28266:         buffer = gen_char_ptr(n_buffer, 1);
28267:         len = gen_int(n_len, 2);
28268: 
28269:         ret_val = xmlIOHTTPRead(context, buffer, len);
28270:         desret_int(ret_val);
28271:         call_tests++;
28272:         des_void_ptr(n_context, context, 0);
28273:         des_char_ptr(n_buffer, buffer, 1);
28274:         des_int(n_len, len, 2);
28275:         xmlResetLastError();
28276:         if (mem_base != xmlMemBlocks()) {
28277:             printf("Leak of %d blocks found in xmlIOHTTPRead",
28278: 	           xmlMemBlocks() - mem_base);
28279: 	    test_ret++;
28280:             printf(" %d", n_context);
28281:             printf(" %d", n_buffer);
28282:             printf(" %d", n_len);
28283:             printf("\n");
28284:         }
28285:     }
28286:     }
28287:     }
28288:     function_tests++;
28289: #endif
28290: 
28291:     return(test_ret);
28292: }
28293: 
28294: 
28295: static int
28296: test_xmlNoNetExternalEntityLoader(void) {
28297:     int test_ret = 0;
28298: 
28299:     int mem_base;
28300:     xmlParserInputPtr ret_val;
28301:     const char * URL; /* the URL for the entity to load */
28302:     int n_URL;
28303:     char * ID; /* the System ID for the entity to load */
28304:     int n_ID;
28305:     xmlParserCtxtPtr ctxt; /* the context in which the entity is called or NULL */
28306:     int n_ctxt;
28307: 
28308:     for (n_URL = 0;n_URL < gen_nb_filepath;n_URL++) {
28309:     for (n_ID = 0;n_ID < gen_nb_const_char_ptr;n_ID++) {
28310:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
28311:         mem_base = xmlMemBlocks();
28312:         URL = gen_filepath(n_URL, 0);
28313:         ID = gen_const_char_ptr(n_ID, 1);
28314:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 2);
28315: 
28316:         ret_val = xmlNoNetExternalEntityLoader(URL, (const char *)ID, ctxt);
28317:         desret_xmlParserInputPtr(ret_val);
28318:         call_tests++;
28319:         des_filepath(n_URL, URL, 0);
28320:         des_const_char_ptr(n_ID, (const char *)ID, 1);
28321:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 2);
28322:         xmlResetLastError();
28323:         if (mem_base != xmlMemBlocks()) {
28324:             printf("Leak of %d blocks found in xmlNoNetExternalEntityLoader",
28325: 	           xmlMemBlocks() - mem_base);
28326: 	    test_ret++;
28327:             printf(" %d", n_URL);
28328:             printf(" %d", n_ID);
28329:             printf(" %d", n_ctxt);
28330:             printf("\n");
28331:         }
28332:     }
28333:     }
28334:     }
28335:     function_tests++;
28336: 
28337:     return(test_ret);
28338: }
28339: 
28340: 
28341: static int
28342: test_xmlNormalizeWindowsPath(void) {
28343:     int test_ret = 0;
28344: 
28345:     int mem_base;
28346:     xmlChar * ret_val;
28347:     xmlChar * path; /* the input file path */
28348:     int n_path;
28349: 
28350:     for (n_path = 0;n_path < gen_nb_const_xmlChar_ptr;n_path++) {
28351:         mem_base = xmlMemBlocks();
28352:         path = gen_const_xmlChar_ptr(n_path, 0);
28353: 
28354:         ret_val = xmlNormalizeWindowsPath((const xmlChar *)path);
28355:         desret_xmlChar_ptr(ret_val);
28356:         call_tests++;
28357:         des_const_xmlChar_ptr(n_path, (const xmlChar *)path, 0);
28358:         xmlResetLastError();
28359:         if (mem_base != xmlMemBlocks()) {
28360:             printf("Leak of %d blocks found in xmlNormalizeWindowsPath",
28361: 	           xmlMemBlocks() - mem_base);
28362: 	    test_ret++;
28363:             printf(" %d", n_path);
28364:             printf("\n");
28365:         }
28366:     }
28367:     function_tests++;
28368: 
28369:     return(test_ret);
28370: }
28371: 
28372: 
28373: static int
28374: test_xmlOutputBufferCreateBuffer(void) {
28375:     int test_ret = 0;
28376: 
28377: #if defined(LIBXML_OUTPUT_ENABLED)
28378:     int mem_base;
28379:     xmlOutputBufferPtr ret_val;
28380:     xmlBufferPtr buffer; /* a xmlBufferPtr */
28381:     int n_buffer;
28382:     xmlCharEncodingHandlerPtr encoder; /* the encoding converter or NULL */
28383:     int n_encoder;
28384: 
28385:     for (n_buffer = 0;n_buffer < gen_nb_xmlBufferPtr;n_buffer++) {
28386:     for (n_encoder = 0;n_encoder < gen_nb_xmlCharEncodingHandlerPtr;n_encoder++) {
28387:         mem_base = xmlMemBlocks();
28388:         buffer = gen_xmlBufferPtr(n_buffer, 0);
28389:         encoder = gen_xmlCharEncodingHandlerPtr(n_encoder, 1);
28390: 
28391:         ret_val = xmlOutputBufferCreateBuffer(buffer, encoder);
28392:         desret_xmlOutputBufferPtr(ret_val);
28393:         call_tests++;
28394:         des_xmlBufferPtr(n_buffer, buffer, 0);
28395:         des_xmlCharEncodingHandlerPtr(n_encoder, encoder, 1);
28396:         xmlResetLastError();
28397:         if (mem_base != xmlMemBlocks()) {
28398:             printf("Leak of %d blocks found in xmlOutputBufferCreateBuffer",
28399: 	           xmlMemBlocks() - mem_base);
28400: 	    test_ret++;
28401:             printf(" %d", n_buffer);
28402:             printf(" %d", n_encoder);
28403:             printf("\n");
28404:         }
28405:     }
28406:     }
28407:     function_tests++;
28408: #endif
28409: 
28410:     return(test_ret);
28411: }
28412: 
28413: 
28414: static int
28415: test_xmlOutputBufferCreateFd(void) {
28416:     int test_ret = 0;
28417: 
28418: #if defined(LIBXML_OUTPUT_ENABLED)
28419:     int mem_base;
28420:     xmlOutputBufferPtr ret_val;
28421:     int fd; /* a file descriptor number */
28422:     int n_fd;
28423:     xmlCharEncodingHandlerPtr encoder; /* the encoding converter or NULL */
28424:     int n_encoder;
28425: 
28426:     for (n_fd = 0;n_fd < gen_nb_int;n_fd++) {
28427:     for (n_encoder = 0;n_encoder < gen_nb_xmlCharEncodingHandlerPtr;n_encoder++) {
28428:         mem_base = xmlMemBlocks();
28429:         fd = gen_int(n_fd, 0);
28430:         encoder = gen_xmlCharEncodingHandlerPtr(n_encoder, 1);
28431: 
28432:         ret_val = xmlOutputBufferCreateFd(fd, encoder);
28433:         desret_xmlOutputBufferPtr(ret_val);
28434:         call_tests++;
28435:         des_int(n_fd, fd, 0);
28436:         des_xmlCharEncodingHandlerPtr(n_encoder, encoder, 1);
28437:         xmlResetLastError();
28438:         if (mem_base != xmlMemBlocks()) {
28439:             printf("Leak of %d blocks found in xmlOutputBufferCreateFd",
28440: 	           xmlMemBlocks() - mem_base);
28441: 	    test_ret++;
28442:             printf(" %d", n_fd);
28443:             printf(" %d", n_encoder);
28444:             printf("\n");
28445:         }
28446:     }
28447:     }
28448:     function_tests++;
28449: #endif
28450: 
28451:     return(test_ret);
28452: }
28453: 
28454: 
28455: static int
28456: test_xmlOutputBufferCreateFile(void) {
28457:     int test_ret = 0;
28458: 
28459: #if defined(LIBXML_OUTPUT_ENABLED)
28460:     int mem_base;
28461:     xmlOutputBufferPtr ret_val;
28462:     FILE * file; /* a FILE* */
28463:     int n_file;
28464:     xmlCharEncodingHandlerPtr encoder; /* the encoding converter or NULL */
28465:     int n_encoder;
28466: 
28467:     for (n_file = 0;n_file < gen_nb_FILE_ptr;n_file++) {
28468:     for (n_encoder = 0;n_encoder < gen_nb_xmlCharEncodingHandlerPtr;n_encoder++) {
28469:         mem_base = xmlMemBlocks();
28470:         file = gen_FILE_ptr(n_file, 0);
28471:         encoder = gen_xmlCharEncodingHandlerPtr(n_encoder, 1);
28472: 
28473:         ret_val = xmlOutputBufferCreateFile(file, encoder);
28474:         desret_xmlOutputBufferPtr(ret_val);
28475:         call_tests++;
28476:         des_FILE_ptr(n_file, file, 0);
28477:         des_xmlCharEncodingHandlerPtr(n_encoder, encoder, 1);
28478:         xmlResetLastError();
28479:         if (mem_base != xmlMemBlocks()) {
28480:             printf("Leak of %d blocks found in xmlOutputBufferCreateFile",
28481: 	           xmlMemBlocks() - mem_base);
28482: 	    test_ret++;
28483:             printf(" %d", n_file);
28484:             printf(" %d", n_encoder);
28485:             printf("\n");
28486:         }
28487:     }
28488:     }
28489:     function_tests++;
28490: #endif
28491: 
28492:     return(test_ret);
28493: }
28494: 
28495: 
28496: static int
28497: test_xmlOutputBufferCreateFilename(void) {
28498:     int test_ret = 0;
28499: 
28500: #if defined(LIBXML_OUTPUT_ENABLED)
28501:     int mem_base;
28502:     xmlOutputBufferPtr ret_val;
28503:     const char * URI; /* a C string containing the URI or filename */
28504:     int n_URI;
28505:     xmlCharEncodingHandlerPtr encoder; /* the encoding converter or NULL */
28506:     int n_encoder;
28507:     int compression; /* the compression ration (0 none, 9 max). */
28508:     int n_compression;
28509: 
28510:     for (n_URI = 0;n_URI < gen_nb_fileoutput;n_URI++) {
28511:     for (n_encoder = 0;n_encoder < gen_nb_xmlCharEncodingHandlerPtr;n_encoder++) {
28512:     for (n_compression = 0;n_compression < gen_nb_int;n_compression++) {
28513:         mem_base = xmlMemBlocks();
28514:         URI = gen_fileoutput(n_URI, 0);
28515:         encoder = gen_xmlCharEncodingHandlerPtr(n_encoder, 1);
28516:         compression = gen_int(n_compression, 2);
28517: 
28518:         ret_val = xmlOutputBufferCreateFilename(URI, encoder, compression);
28519:         desret_xmlOutputBufferPtr(ret_val);
28520:         call_tests++;
28521:         des_fileoutput(n_URI, URI, 0);
28522:         des_xmlCharEncodingHandlerPtr(n_encoder, encoder, 1);
28523:         des_int(n_compression, compression, 2);
28524:         xmlResetLastError();
28525:         if (mem_base != xmlMemBlocks()) {
28526:             printf("Leak of %d blocks found in xmlOutputBufferCreateFilename",
28527: 	           xmlMemBlocks() - mem_base);
28528: 	    test_ret++;
28529:             printf(" %d", n_URI);
28530:             printf(" %d", n_encoder);
28531:             printf(" %d", n_compression);
28532:             printf("\n");
28533:         }
28534:     }
28535:     }
28536:     }
28537:     function_tests++;
28538: #endif
28539: 
28540:     return(test_ret);
28541: }
28542: 
28543: 
28544: static int
28545: test_xmlOutputBufferFlush(void) {
28546:     int test_ret = 0;
28547: 
28548: #if defined(LIBXML_OUTPUT_ENABLED)
28549:     int mem_base;
28550:     int ret_val;
28551:     xmlOutputBufferPtr out; /* a buffered output */
28552:     int n_out;
28553: 
28554:     for (n_out = 0;n_out < gen_nb_xmlOutputBufferPtr;n_out++) {
28555:         mem_base = xmlMemBlocks();
28556:         out = gen_xmlOutputBufferPtr(n_out, 0);
28557: 
28558:         ret_val = xmlOutputBufferFlush(out);
28559:         desret_int(ret_val);
28560:         call_tests++;
28561:         des_xmlOutputBufferPtr(n_out, out, 0);
28562:         xmlResetLastError();
28563:         if (mem_base != xmlMemBlocks()) {
28564:             printf("Leak of %d blocks found in xmlOutputBufferFlush",
28565: 	           xmlMemBlocks() - mem_base);
28566: 	    test_ret++;
28567:             printf(" %d", n_out);
28568:             printf("\n");
28569:         }
28570:     }
28571:     function_tests++;
28572: #endif
28573: 
28574:     return(test_ret);
28575: }
28576: 
28577: 
28578: static int
28579: test_xmlOutputBufferGetContent(void) {
28580:     int test_ret = 0;
28581: 
28582: #if defined(LIBXML_OUTPUT_ENABLED)
28583:     int mem_base;
28584:     const xmlChar * ret_val;
28585:     xmlOutputBufferPtr out; /* an xmlOutputBufferPtr */
28586:     int n_out;
28587: 
28588:     for (n_out = 0;n_out < gen_nb_xmlOutputBufferPtr;n_out++) {
28589:         mem_base = xmlMemBlocks();
28590:         out = gen_xmlOutputBufferPtr(n_out, 0);
28591: 
28592:         ret_val = xmlOutputBufferGetContent(out);
28593:         desret_const_xmlChar_ptr(ret_val);
28594:         call_tests++;
28595:         des_xmlOutputBufferPtr(n_out, out, 0);
28596:         xmlResetLastError();
28597:         if (mem_base != xmlMemBlocks()) {
28598:             printf("Leak of %d blocks found in xmlOutputBufferGetContent",
28599: 	           xmlMemBlocks() - mem_base);
28600: 	    test_ret++;
28601:             printf(" %d", n_out);
28602:             printf("\n");
28603:         }
28604:     }
28605:     function_tests++;
28606: #endif
28607: 
28608:     return(test_ret);
28609: }
28610: 
28611: 
28612: static int
28613: test_xmlOutputBufferGetSize(void) {
28614:     int test_ret = 0;
28615: 
28616: 
28617:     /* missing type support */
28618:     return(test_ret);
28619: }
28620: 
28621: 
28622: static int
28623: test_xmlOutputBufferWrite(void) {
28624:     int test_ret = 0;
28625: 
28626: #if defined(LIBXML_OUTPUT_ENABLED)
28627:     int mem_base;
28628:     int ret_val;
28629:     xmlOutputBufferPtr out; /* a buffered parser output */
28630:     int n_out;
28631:     int len; /* the size in bytes of the array. */
28632:     int n_len;
28633:     char * buf; /* an char array */
28634:     int n_buf;
28635: 
28636:     for (n_out = 0;n_out < gen_nb_xmlOutputBufferPtr;n_out++) {
28637:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
28638:     for (n_buf = 0;n_buf < gen_nb_const_char_ptr;n_buf++) {
28639:         mem_base = xmlMemBlocks();
28640:         out = gen_xmlOutputBufferPtr(n_out, 0);
28641:         len = gen_int(n_len, 1);
28642:         buf = gen_const_char_ptr(n_buf, 2);
28643: 
28644:         ret_val = xmlOutputBufferWrite(out, len, (const char *)buf);
28645:         desret_int(ret_val);
28646:         call_tests++;
28647:         des_xmlOutputBufferPtr(n_out, out, 0);
28648:         des_int(n_len, len, 1);
28649:         des_const_char_ptr(n_buf, (const char *)buf, 2);
28650:         xmlResetLastError();
28651:         if (mem_base != xmlMemBlocks()) {
28652:             printf("Leak of %d blocks found in xmlOutputBufferWrite",
28653: 	           xmlMemBlocks() - mem_base);
28654: 	    test_ret++;
28655:             printf(" %d", n_out);
28656:             printf(" %d", n_len);
28657:             printf(" %d", n_buf);
28658:             printf("\n");
28659:         }
28660:     }
28661:     }
28662:     }
28663:     function_tests++;
28664: #endif
28665: 
28666:     return(test_ret);
28667: }
28668: 
28669: 
28670: static int
28671: test_xmlOutputBufferWriteEscape(void) {
28672:     int test_ret = 0;
28673: 
28674: 
28675:     /* missing type support */
28676:     return(test_ret);
28677: }
28678: 
28679: 
28680: static int
28681: test_xmlOutputBufferWriteString(void) {
28682:     int test_ret = 0;
28683: 
28684: #if defined(LIBXML_OUTPUT_ENABLED)
28685:     int mem_base;
28686:     int ret_val;
28687:     xmlOutputBufferPtr out; /* a buffered parser output */
28688:     int n_out;
28689:     char * str; /* a zero terminated C string */
28690:     int n_str;
28691: 
28692:     for (n_out = 0;n_out < gen_nb_xmlOutputBufferPtr;n_out++) {
28693:     for (n_str = 0;n_str < gen_nb_const_char_ptr;n_str++) {
28694:         mem_base = xmlMemBlocks();
28695:         out = gen_xmlOutputBufferPtr(n_out, 0);
28696:         str = gen_const_char_ptr(n_str, 1);
28697: 
28698:         ret_val = xmlOutputBufferWriteString(out, (const char *)str);
28699:         desret_int(ret_val);
28700:         call_tests++;
28701:         des_xmlOutputBufferPtr(n_out, out, 0);
28702:         des_const_char_ptr(n_str, (const char *)str, 1);
28703:         xmlResetLastError();
28704:         if (mem_base != xmlMemBlocks()) {
28705:             printf("Leak of %d blocks found in xmlOutputBufferWriteString",
28706: 	           xmlMemBlocks() - mem_base);
28707: 	    test_ret++;
28708:             printf(" %d", n_out);
28709:             printf(" %d", n_str);
28710:             printf("\n");
28711:         }
28712:     }
28713:     }
28714:     function_tests++;
28715: #endif
28716: 
28717:     return(test_ret);
28718: }
28719: 
28720: 
28721: static int
28722: test_xmlParserGetDirectory(void) {
28723:     int test_ret = 0;
28724: 
28725: 
28726:     /* missing type support */
28727:     return(test_ret);
28728: }
28729: 
28730: 
28731: static int
28732: test_xmlParserInputBufferCreateFd(void) {
28733:     int test_ret = 0;
28734: 
28735:     int mem_base;
28736:     xmlParserInputBufferPtr ret_val;
28737:     int fd; /* a file descriptor number */
28738:     int n_fd;
28739:     xmlCharEncoding enc; /* the charset encoding if known */
28740:     int n_enc;
28741: 
28742:     for (n_fd = 0;n_fd < gen_nb_int;n_fd++) {
28743:     for (n_enc = 0;n_enc < gen_nb_xmlCharEncoding;n_enc++) {
28744:         mem_base = xmlMemBlocks();
28745:         fd = gen_int(n_fd, 0);
28746:         enc = gen_xmlCharEncoding(n_enc, 1);
28747:         if (fd >= 0) fd = -1;
28748: 
28749:         ret_val = xmlParserInputBufferCreateFd(fd, enc);
28750:         desret_xmlParserInputBufferPtr(ret_val);
28751:         call_tests++;
28752:         des_int(n_fd, fd, 0);
28753:         des_xmlCharEncoding(n_enc, enc, 1);
28754:         xmlResetLastError();
28755:         if (mem_base != xmlMemBlocks()) {
28756:             printf("Leak of %d blocks found in xmlParserInputBufferCreateFd",
28757: 	           xmlMemBlocks() - mem_base);
28758: 	    test_ret++;
28759:             printf(" %d", n_fd);
28760:             printf(" %d", n_enc);
28761:             printf("\n");
28762:         }
28763:     }
28764:     }
28765:     function_tests++;
28766: 
28767:     return(test_ret);
28768: }
28769: 
28770: 
28771: static int
28772: test_xmlParserInputBufferCreateFile(void) {
28773:     int test_ret = 0;
28774: 
28775:     int mem_base;
28776:     xmlParserInputBufferPtr ret_val;
28777:     FILE * file; /* a FILE* */
28778:     int n_file;
28779:     xmlCharEncoding enc; /* the charset encoding if known */
28780:     int n_enc;
28781: 
28782:     for (n_file = 0;n_file < gen_nb_FILE_ptr;n_file++) {
28783:     for (n_enc = 0;n_enc < gen_nb_xmlCharEncoding;n_enc++) {
28784:         mem_base = xmlMemBlocks();
28785:         file = gen_FILE_ptr(n_file, 0);
28786:         enc = gen_xmlCharEncoding(n_enc, 1);
28787: 
28788:         ret_val = xmlParserInputBufferCreateFile(file, enc);
28789:         desret_xmlParserInputBufferPtr(ret_val);
28790:         call_tests++;
28791:         des_FILE_ptr(n_file, file, 0);
28792:         des_xmlCharEncoding(n_enc, enc, 1);
28793:         xmlResetLastError();
28794:         if (mem_base != xmlMemBlocks()) {
28795:             printf("Leak of %d blocks found in xmlParserInputBufferCreateFile",
28796: 	           xmlMemBlocks() - mem_base);
28797: 	    test_ret++;
28798:             printf(" %d", n_file);
28799:             printf(" %d", n_enc);
28800:             printf("\n");
28801:         }
28802:     }
28803:     }
28804:     function_tests++;
28805: 
28806:     return(test_ret);
28807: }
28808: 
28809: 
28810: static int
28811: test_xmlParserInputBufferCreateFilename(void) {
28812:     int test_ret = 0;
28813: 
28814:     int mem_base;
28815:     xmlParserInputBufferPtr ret_val;
28816:     const char * URI; /* a C string containing the URI or filename */
28817:     int n_URI;
28818:     xmlCharEncoding enc; /* the charset encoding if known */
28819:     int n_enc;
28820: 
28821:     for (n_URI = 0;n_URI < gen_nb_fileoutput;n_URI++) {
28822:     for (n_enc = 0;n_enc < gen_nb_xmlCharEncoding;n_enc++) {
28823:         mem_base = xmlMemBlocks();
28824:         URI = gen_fileoutput(n_URI, 0);
28825:         enc = gen_xmlCharEncoding(n_enc, 1);
28826: 
28827:         ret_val = xmlParserInputBufferCreateFilename(URI, enc);
28828:         desret_xmlParserInputBufferPtr(ret_val);
28829:         call_tests++;
28830:         des_fileoutput(n_URI, URI, 0);
28831:         des_xmlCharEncoding(n_enc, enc, 1);
28832:         xmlResetLastError();
28833:         if (mem_base != xmlMemBlocks()) {
28834:             printf("Leak of %d blocks found in xmlParserInputBufferCreateFilename",
28835: 	           xmlMemBlocks() - mem_base);
28836: 	    test_ret++;
28837:             printf(" %d", n_URI);
28838:             printf(" %d", n_enc);
28839:             printf("\n");
28840:         }
28841:     }
28842:     }
28843:     function_tests++;
28844: 
28845:     return(test_ret);
28846: }
28847: 
28848: 
28849: static int
28850: test_xmlParserInputBufferCreateMem(void) {
28851:     int test_ret = 0;
28852: 
28853:     int mem_base;
28854:     xmlParserInputBufferPtr ret_val;
28855:     char * mem; /* the memory input */
28856:     int n_mem;
28857:     int size; /* the length of the memory block */
28858:     int n_size;
28859:     xmlCharEncoding enc; /* the charset encoding if known */
28860:     int n_enc;
28861: 
28862:     for (n_mem = 0;n_mem < gen_nb_const_char_ptr;n_mem++) {
28863:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
28864:     for (n_enc = 0;n_enc < gen_nb_xmlCharEncoding;n_enc++) {
28865:         mem_base = xmlMemBlocks();
28866:         mem = gen_const_char_ptr(n_mem, 0);
28867:         size = gen_int(n_size, 1);
28868:         enc = gen_xmlCharEncoding(n_enc, 2);
28869: 
28870:         ret_val = xmlParserInputBufferCreateMem((const char *)mem, size, enc);
28871:         desret_xmlParserInputBufferPtr(ret_val);
28872:         call_tests++;
28873:         des_const_char_ptr(n_mem, (const char *)mem, 0);
28874:         des_int(n_size, size, 1);
28875:         des_xmlCharEncoding(n_enc, enc, 2);
28876:         xmlResetLastError();
28877:         if (mem_base != xmlMemBlocks()) {
28878:             printf("Leak of %d blocks found in xmlParserInputBufferCreateMem",
28879: 	           xmlMemBlocks() - mem_base);
28880: 	    test_ret++;
28881:             printf(" %d", n_mem);
28882:             printf(" %d", n_size);
28883:             printf(" %d", n_enc);
28884:             printf("\n");
28885:         }
28886:     }
28887:     }
28888:     }
28889:     function_tests++;
28890: 
28891:     return(test_ret);
28892: }
28893: 
28894: 
28895: static int
28896: test_xmlParserInputBufferCreateStatic(void) {
28897:     int test_ret = 0;
28898: 
28899:     int mem_base;
28900:     xmlParserInputBufferPtr ret_val;
28901:     char * mem; /* the memory input */
28902:     int n_mem;
28903:     int size; /* the length of the memory block */
28904:     int n_size;
28905:     xmlCharEncoding enc; /* the charset encoding if known */
28906:     int n_enc;
28907: 
28908:     for (n_mem = 0;n_mem < gen_nb_const_char_ptr;n_mem++) {
28909:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
28910:     for (n_enc = 0;n_enc < gen_nb_xmlCharEncoding;n_enc++) {
28911:         mem_base = xmlMemBlocks();
28912:         mem = gen_const_char_ptr(n_mem, 0);
28913:         size = gen_int(n_size, 1);
28914:         enc = gen_xmlCharEncoding(n_enc, 2);
28915: 
28916:         ret_val = xmlParserInputBufferCreateStatic((const char *)mem, size, enc);
28917:         desret_xmlParserInputBufferPtr(ret_val);
28918:         call_tests++;
28919:         des_const_char_ptr(n_mem, (const char *)mem, 0);
28920:         des_int(n_size, size, 1);
28921:         des_xmlCharEncoding(n_enc, enc, 2);
28922:         xmlResetLastError();
28923:         if (mem_base != xmlMemBlocks()) {
28924:             printf("Leak of %d blocks found in xmlParserInputBufferCreateStatic",
28925: 	           xmlMemBlocks() - mem_base);
28926: 	    test_ret++;
28927:             printf(" %d", n_mem);
28928:             printf(" %d", n_size);
28929:             printf(" %d", n_enc);
28930:             printf("\n");
28931:         }
28932:     }
28933:     }
28934:     }
28935:     function_tests++;
28936: 
28937:     return(test_ret);
28938: }
28939: 
28940: 
28941: static int
28942: test_xmlParserInputBufferGrow(void) {
28943:     int test_ret = 0;
28944: 
28945:     int mem_base;
28946:     int ret_val;
28947:     xmlParserInputBufferPtr in; /* a buffered parser input */
28948:     int n_in;
28949:     int len; /* indicative value of the amount of chars to read */
28950:     int n_len;
28951: 
28952:     for (n_in = 0;n_in < gen_nb_xmlParserInputBufferPtr;n_in++) {
28953:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
28954:         mem_base = xmlMemBlocks();
28955:         in = gen_xmlParserInputBufferPtr(n_in, 0);
28956:         len = gen_int(n_len, 1);
28957: 
28958:         ret_val = xmlParserInputBufferGrow(in, len);
28959:         desret_int(ret_val);
28960:         call_tests++;
28961:         des_xmlParserInputBufferPtr(n_in, in, 0);
28962:         des_int(n_len, len, 1);
28963:         xmlResetLastError();
28964:         if (mem_base != xmlMemBlocks()) {
28965:             printf("Leak of %d blocks found in xmlParserInputBufferGrow",
28966: 	           xmlMemBlocks() - mem_base);
28967: 	    test_ret++;
28968:             printf(" %d", n_in);
28969:             printf(" %d", n_len);
28970:             printf("\n");
28971:         }
28972:     }
28973:     }
28974:     function_tests++;
28975: 
28976:     return(test_ret);
28977: }
28978: 
28979: 
28980: static int
28981: test_xmlParserInputBufferPush(void) {
28982:     int test_ret = 0;
28983: 
28984:     int mem_base;
28985:     int ret_val;
28986:     xmlParserInputBufferPtr in; /* a buffered parser input */
28987:     int n_in;
28988:     int len; /* the size in bytes of the array. */
28989:     int n_len;
28990:     char * buf; /* an char array */
28991:     int n_buf;
28992: 
28993:     for (n_in = 0;n_in < gen_nb_xmlParserInputBufferPtr;n_in++) {
28994:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
28995:     for (n_buf = 0;n_buf < gen_nb_const_char_ptr;n_buf++) {
28996:         mem_base = xmlMemBlocks();
28997:         in = gen_xmlParserInputBufferPtr(n_in, 0);
28998:         len = gen_int(n_len, 1);
28999:         buf = gen_const_char_ptr(n_buf, 2);
29000: 
29001:         ret_val = xmlParserInputBufferPush(in, len, (const char *)buf);
29002:         desret_int(ret_val);
29003:         call_tests++;
29004:         des_xmlParserInputBufferPtr(n_in, in, 0);
29005:         des_int(n_len, len, 1);
29006:         des_const_char_ptr(n_buf, (const char *)buf, 2);
29007:         xmlResetLastError();
29008:         if (mem_base != xmlMemBlocks()) {
29009:             printf("Leak of %d blocks found in xmlParserInputBufferPush",
29010: 	           xmlMemBlocks() - mem_base);
29011: 	    test_ret++;
29012:             printf(" %d", n_in);
29013:             printf(" %d", n_len);
29014:             printf(" %d", n_buf);
29015:             printf("\n");
29016:         }
29017:     }
29018:     }
29019:     }
29020:     function_tests++;
29021: 
29022:     return(test_ret);
29023: }
29024: 
29025: 
29026: static int
29027: test_xmlParserInputBufferRead(void) {
29028:     int test_ret = 0;
29029: 
29030:     int mem_base;
29031:     int ret_val;
29032:     xmlParserInputBufferPtr in; /* a buffered parser input */
29033:     int n_in;
29034:     int len; /* indicative value of the amount of chars to read */
29035:     int n_len;
29036: 
29037:     for (n_in = 0;n_in < gen_nb_xmlParserInputBufferPtr;n_in++) {
29038:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
29039:         mem_base = xmlMemBlocks();
29040:         in = gen_xmlParserInputBufferPtr(n_in, 0);
29041:         len = gen_int(n_len, 1);
29042: 
29043:         ret_val = xmlParserInputBufferRead(in, len);
29044:         desret_int(ret_val);
29045:         call_tests++;
29046:         des_xmlParserInputBufferPtr(n_in, in, 0);
29047:         des_int(n_len, len, 1);
29048:         xmlResetLastError();
29049:         if (mem_base != xmlMemBlocks()) {
29050:             printf("Leak of %d blocks found in xmlParserInputBufferRead",
29051: 	           xmlMemBlocks() - mem_base);
29052: 	    test_ret++;
29053:             printf(" %d", n_in);
29054:             printf(" %d", n_len);
29055:             printf("\n");
29056:         }
29057:     }
29058:     }
29059:     function_tests++;
29060: 
29061:     return(test_ret);
29062: }
29063: 
29064: 
29065: static int
29066: test_xmlPopInputCallbacks(void) {
29067:     int test_ret = 0;
29068: 
29069:     int mem_base;
29070:     int ret_val;
29071: 
29072:         mem_base = xmlMemBlocks();
29073: 
29074:         ret_val = xmlPopInputCallbacks();
29075:         desret_int(ret_val);
29076:         call_tests++;
29077:         xmlResetLastError();
29078:         if (mem_base != xmlMemBlocks()) {
29079:             printf("Leak of %d blocks found in xmlPopInputCallbacks",
29080: 	           xmlMemBlocks() - mem_base);
29081: 	    test_ret++;
29082:             printf("\n");
29083:         }
29084:     function_tests++;
29085: 
29086:     return(test_ret);
29087: }
29088: 
29089: 
29090: static int
29091: test_xmlRegisterDefaultInputCallbacks(void) {
29092:     int test_ret = 0;
29093: 
29094:     int mem_base;
29095: 
29096:         mem_base = xmlMemBlocks();
29097: 
29098:         xmlRegisterDefaultInputCallbacks();
29099:         call_tests++;
29100:         xmlResetLastError();
29101:         if (mem_base != xmlMemBlocks()) {
29102:             printf("Leak of %d blocks found in xmlRegisterDefaultInputCallbacks",
29103: 	           xmlMemBlocks() - mem_base);
29104: 	    test_ret++;
29105:             printf("\n");
29106:         }
29107:     function_tests++;
29108: 
29109:     return(test_ret);
29110: }
29111: 
29112: 
29113: static int
29114: test_xmlRegisterDefaultOutputCallbacks(void) {
29115:     int test_ret = 0;
29116: 
29117: #if defined(LIBXML_OUTPUT_ENABLED)
29118:     int mem_base;
29119: 
29120:         mem_base = xmlMemBlocks();
29121: 
29122:         xmlRegisterDefaultOutputCallbacks();
29123:         call_tests++;
29124:         xmlResetLastError();
29125:         if (mem_base != xmlMemBlocks()) {
29126:             printf("Leak of %d blocks found in xmlRegisterDefaultOutputCallbacks",
29127: 	           xmlMemBlocks() - mem_base);
29128: 	    test_ret++;
29129:             printf("\n");
29130:         }
29131:     function_tests++;
29132: #endif
29133: 
29134:     return(test_ret);
29135: }
29136: 
29137: 
29138: static int
29139: test_xmlRegisterHTTPPostCallbacks(void) {
29140:     int test_ret = 0;
29141: 
29142: #if defined(LIBXML_OUTPUT_ENABLED) && defined(LIBXML_HTTP_ENABLED)
29143:     int mem_base;
29144: 
29145:         mem_base = xmlMemBlocks();
29146: 
29147:         xmlRegisterHTTPPostCallbacks();
29148:         call_tests++;
29149:         xmlResetLastError();
29150:         if (mem_base != xmlMemBlocks()) {
29151:             printf("Leak of %d blocks found in xmlRegisterHTTPPostCallbacks",
29152: 	           xmlMemBlocks() - mem_base);
29153: 	    test_ret++;
29154:             printf("\n");
29155:         }
29156:     function_tests++;
29157: #endif
29158: 
29159:     return(test_ret);
29160: }
29161: 
29162: static int
29163: test_xmlIO(void) {
29164:     int test_ret = 0;
29165: 
29166:     if (quiet == 0) printf("Testing xmlIO : 40 of 50 functions ...\n");
29167:     test_ret += test_xmlAllocOutputBuffer();
29168:     test_ret += test_xmlAllocParserInputBuffer();
29169:     test_ret += test_xmlCheckFilename();
29170:     test_ret += test_xmlCheckHTTPInput();
29171:     test_ret += test_xmlCleanupInputCallbacks();
29172:     test_ret += test_xmlCleanupOutputCallbacks();
29173:     test_ret += test_xmlFileClose();
29174:     test_ret += test_xmlFileMatch();
29175:     test_ret += test_xmlFileOpen();
29176:     test_ret += test_xmlFileRead();
29177:     test_ret += test_xmlIOFTPClose();
29178:     test_ret += test_xmlIOFTPMatch();
29179:     test_ret += test_xmlIOFTPOpen();
29180:     test_ret += test_xmlIOFTPRead();
29181:     test_ret += test_xmlIOHTTPClose();
29182:     test_ret += test_xmlIOHTTPMatch();
29183:     test_ret += test_xmlIOHTTPOpen();
29184:     test_ret += test_xmlIOHTTPRead();
29185:     test_ret += test_xmlNoNetExternalEntityLoader();
29186:     test_ret += test_xmlNormalizeWindowsPath();
29187:     test_ret += test_xmlOutputBufferCreateBuffer();
29188:     test_ret += test_xmlOutputBufferCreateFd();
29189:     test_ret += test_xmlOutputBufferCreateFile();
29190:     test_ret += test_xmlOutputBufferCreateFilename();
29191:     test_ret += test_xmlOutputBufferFlush();
29192:     test_ret += test_xmlOutputBufferGetContent();
29193:     test_ret += test_xmlOutputBufferGetSize();
29194:     test_ret += test_xmlOutputBufferWrite();
29195:     test_ret += test_xmlOutputBufferWriteEscape();
29196:     test_ret += test_xmlOutputBufferWriteString();
29197:     test_ret += test_xmlParserGetDirectory();
29198:     test_ret += test_xmlParserInputBufferCreateFd();
29199:     test_ret += test_xmlParserInputBufferCreateFile();
29200:     test_ret += test_xmlParserInputBufferCreateFilename();
29201:     test_ret += test_xmlParserInputBufferCreateMem();
29202:     test_ret += test_xmlParserInputBufferCreateStatic();
29203:     test_ret += test_xmlParserInputBufferGrow();
29204:     test_ret += test_xmlParserInputBufferPush();
29205:     test_ret += test_xmlParserInputBufferRead();
29206:     test_ret += test_xmlPopInputCallbacks();
29207:     test_ret += test_xmlRegisterDefaultInputCallbacks();
29208:     test_ret += test_xmlRegisterDefaultOutputCallbacks();
29209:     test_ret += test_xmlRegisterHTTPPostCallbacks();
29210: 
29211:     if (test_ret != 0)
29212: 	printf("Module xmlIO: %d errors\n", test_ret);
29213:     return(test_ret);
29214: }
29215: #ifdef LIBXML_AUTOMATA_ENABLED
29216: 
29217: #define gen_nb_xmlAutomataPtr 1
29218: static xmlAutomataPtr gen_xmlAutomataPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
29219:     return(NULL);
29220: }
29221: static void des_xmlAutomataPtr(int no ATTRIBUTE_UNUSED, xmlAutomataPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
29222: }
29223: #endif
29224: 
29225: 
29226: static int
29227: test_xmlAutomataCompile(void) {
29228:     int test_ret = 0;
29229: 
29230: 
29231:     /* missing type support */
29232:     return(test_ret);
29233: }
29234: 
29235: 
29236: static int
29237: test_xmlAutomataGetInitState(void) {
29238:     int test_ret = 0;
29239: 
29240: 
29241:     /* missing type support */
29242:     return(test_ret);
29243: }
29244: 
29245: 
29246: static int
29247: test_xmlAutomataIsDeterminist(void) {
29248:     int test_ret = 0;
29249: 
29250: #if defined(LIBXML_REGEXP_ENABLED) && defined(LIBXML_AUTOMATA_ENABLED)
29251:     int mem_base;
29252:     int ret_val;
29253:     xmlAutomataPtr am; /* an automata */
29254:     int n_am;
29255: 
29256:     for (n_am = 0;n_am < gen_nb_xmlAutomataPtr;n_am++) {
29257:         mem_base = xmlMemBlocks();
29258:         am = gen_xmlAutomataPtr(n_am, 0);
29259: 
29260:         ret_val = xmlAutomataIsDeterminist(am);
29261:         desret_int(ret_val);
29262:         call_tests++;
29263:         des_xmlAutomataPtr(n_am, am, 0);
29264:         xmlResetLastError();
29265:         if (mem_base != xmlMemBlocks()) {
29266:             printf("Leak of %d blocks found in xmlAutomataIsDeterminist",
29267: 	           xmlMemBlocks() - mem_base);
29268: 	    test_ret++;
29269:             printf(" %d", n_am);
29270:             printf("\n");
29271:         }
29272:     }
29273:     function_tests++;
29274: #endif
29275: 
29276:     return(test_ret);
29277: }
29278: 
29279: #ifdef LIBXML_AUTOMATA_ENABLED
29280: 
29281: #define gen_nb_xmlAutomataStatePtr 1
29282: static xmlAutomataStatePtr gen_xmlAutomataStatePtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
29283:     return(NULL);
29284: }
29285: static void des_xmlAutomataStatePtr(int no ATTRIBUTE_UNUSED, xmlAutomataStatePtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
29286: }
29287: #endif
29288: 
29289: 
29290: static int
29291: test_xmlAutomataNewAllTrans(void) {
29292:     int test_ret = 0;
29293: 
29294: 
29295:     /* missing type support */
29296:     return(test_ret);
29297: }
29298: 
29299: 
29300: static int
29301: test_xmlAutomataNewCountTrans(void) {
29302:     int test_ret = 0;
29303: 
29304: 
29305:     /* missing type support */
29306:     return(test_ret);
29307: }
29308: 
29309: 
29310: static int
29311: test_xmlAutomataNewCountTrans2(void) {
29312:     int test_ret = 0;
29313: 
29314: 
29315:     /* missing type support */
29316:     return(test_ret);
29317: }
29318: 
29319: 
29320: static int
29321: test_xmlAutomataNewCountedTrans(void) {
29322:     int test_ret = 0;
29323: 
29324: 
29325:     /* missing type support */
29326:     return(test_ret);
29327: }
29328: 
29329: 
29330: static int
29331: test_xmlAutomataNewCounter(void) {
29332:     int test_ret = 0;
29333: 
29334: #if defined(LIBXML_REGEXP_ENABLED) && defined(LIBXML_AUTOMATA_ENABLED)
29335:     int mem_base;
29336:     int ret_val;
29337:     xmlAutomataPtr am; /* an automata */
29338:     int n_am;
29339:     int min; /* the minimal value on the counter */
29340:     int n_min;
29341:     int max; /* the maximal value on the counter */
29342:     int n_max;
29343: 
29344:     for (n_am = 0;n_am < gen_nb_xmlAutomataPtr;n_am++) {
29345:     for (n_min = 0;n_min < gen_nb_int;n_min++) {
29346:     for (n_max = 0;n_max < gen_nb_int;n_max++) {
29347:         mem_base = xmlMemBlocks();
29348:         am = gen_xmlAutomataPtr(n_am, 0);
29349:         min = gen_int(n_min, 1);
29350:         max = gen_int(n_max, 2);
29351: 
29352:         ret_val = xmlAutomataNewCounter(am, min, max);
29353:         desret_int(ret_val);
29354:         call_tests++;
29355:         des_xmlAutomataPtr(n_am, am, 0);
29356:         des_int(n_min, min, 1);
29357:         des_int(n_max, max, 2);
29358:         xmlResetLastError();
29359:         if (mem_base != xmlMemBlocks()) {
29360:             printf("Leak of %d blocks found in xmlAutomataNewCounter",
29361: 	           xmlMemBlocks() - mem_base);
29362: 	    test_ret++;
29363:             printf(" %d", n_am);
29364:             printf(" %d", n_min);
29365:             printf(" %d", n_max);
29366:             printf("\n");
29367:         }
29368:     }
29369:     }
29370:     }
29371:     function_tests++;
29372: #endif
29373: 
29374:     return(test_ret);
29375: }
29376: 
29377: 
29378: static int
29379: test_xmlAutomataNewCounterTrans(void) {
29380:     int test_ret = 0;
29381: 
29382: 
29383:     /* missing type support */
29384:     return(test_ret);
29385: }
29386: 
29387: 
29388: static int
29389: test_xmlAutomataNewEpsilon(void) {
29390:     int test_ret = 0;
29391: 
29392: 
29393:     /* missing type support */
29394:     return(test_ret);
29395: }
29396: 
29397: 
29398: static int
29399: test_xmlAutomataNewNegTrans(void) {
29400:     int test_ret = 0;
29401: 
29402: 
29403:     /* missing type support */
29404:     return(test_ret);
29405: }
29406: 
29407: 
29408: static int
29409: test_xmlAutomataNewOnceTrans(void) {
29410:     int test_ret = 0;
29411: 
29412: 
29413:     /* missing type support */
29414:     return(test_ret);
29415: }
29416: 
29417: 
29418: static int
29419: test_xmlAutomataNewOnceTrans2(void) {
29420:     int test_ret = 0;
29421: 
29422: 
29423:     /* missing type support */
29424:     return(test_ret);
29425: }
29426: 
29427: 
29428: static int
29429: test_xmlAutomataNewState(void) {
29430:     int test_ret = 0;
29431: 
29432: 
29433:     /* missing type support */
29434:     return(test_ret);
29435: }
29436: 
29437: 
29438: static int
29439: test_xmlAutomataNewTransition(void) {
29440:     int test_ret = 0;
29441: 
29442: 
29443:     /* missing type support */
29444:     return(test_ret);
29445: }
29446: 
29447: 
29448: static int
29449: test_xmlAutomataNewTransition2(void) {
29450:     int test_ret = 0;
29451: 
29452: 
29453:     /* missing type support */
29454:     return(test_ret);
29455: }
29456: 
29457: 
29458: static int
29459: test_xmlAutomataSetFinalState(void) {
29460:     int test_ret = 0;
29461: 
29462: #if defined(LIBXML_REGEXP_ENABLED) && defined(LIBXML_AUTOMATA_ENABLED)
29463:     int mem_base;
29464:     int ret_val;
29465:     xmlAutomataPtr am; /* an automata */
29466:     int n_am;
29467:     xmlAutomataStatePtr state; /* a state in this automata */
29468:     int n_state;
29469: 
29470:     for (n_am = 0;n_am < gen_nb_xmlAutomataPtr;n_am++) {
29471:     for (n_state = 0;n_state < gen_nb_xmlAutomataStatePtr;n_state++) {
29472:         mem_base = xmlMemBlocks();
29473:         am = gen_xmlAutomataPtr(n_am, 0);
29474:         state = gen_xmlAutomataStatePtr(n_state, 1);
29475: 
29476:         ret_val = xmlAutomataSetFinalState(am, state);
29477:         desret_int(ret_val);
29478:         call_tests++;
29479:         des_xmlAutomataPtr(n_am, am, 0);
29480:         des_xmlAutomataStatePtr(n_state, state, 1);
29481:         xmlResetLastError();
29482:         if (mem_base != xmlMemBlocks()) {
29483:             printf("Leak of %d blocks found in xmlAutomataSetFinalState",
29484: 	           xmlMemBlocks() - mem_base);
29485: 	    test_ret++;
29486:             printf(" %d", n_am);
29487:             printf(" %d", n_state);
29488:             printf("\n");
29489:         }
29490:     }
29491:     }
29492:     function_tests++;
29493: #endif
29494: 
29495:     return(test_ret);
29496: }
29497: 
29498: 
29499: static int
29500: test_xmlNewAutomata(void) {
29501:     int test_ret = 0;
29502: 
29503: 
29504:     /* missing type support */
29505:     return(test_ret);
29506: }
29507: 
29508: static int
29509: test_xmlautomata(void) {
29510:     int test_ret = 0;
29511: 
29512:     if (quiet == 0) printf("Testing xmlautomata : 3 of 19 functions ...\n");
29513:     test_ret += test_xmlAutomataCompile();
29514:     test_ret += test_xmlAutomataGetInitState();
29515:     test_ret += test_xmlAutomataIsDeterminist();
29516:     test_ret += test_xmlAutomataNewAllTrans();
29517:     test_ret += test_xmlAutomataNewCountTrans();
29518:     test_ret += test_xmlAutomataNewCountTrans2();
29519:     test_ret += test_xmlAutomataNewCountedTrans();
29520:     test_ret += test_xmlAutomataNewCounter();
29521:     test_ret += test_xmlAutomataNewCounterTrans();
29522:     test_ret += test_xmlAutomataNewEpsilon();
29523:     test_ret += test_xmlAutomataNewNegTrans();
29524:     test_ret += test_xmlAutomataNewOnceTrans();
29525:     test_ret += test_xmlAutomataNewOnceTrans2();
29526:     test_ret += test_xmlAutomataNewState();
29527:     test_ret += test_xmlAutomataNewTransition();
29528:     test_ret += test_xmlAutomataNewTransition2();
29529:     test_ret += test_xmlAutomataSetFinalState();
29530:     test_ret += test_xmlNewAutomata();
29531: 
29532:     if (test_ret != 0)
29533: 	printf("Module xmlautomata: %d errors\n", test_ret);
29534:     return(test_ret);
29535: }
29536: 
29537: #define gen_nb_xmlGenericErrorFunc_ptr 1
29538: static xmlGenericErrorFunc * gen_xmlGenericErrorFunc_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
29539:     return(NULL);
29540: }
29541: static void des_xmlGenericErrorFunc_ptr(int no ATTRIBUTE_UNUSED, xmlGenericErrorFunc * val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
29542: }
29543: 
29544: static int
29545: test_initGenericErrorDefaultFunc(void) {
29546:     int test_ret = 0;
29547: 
29548:     int mem_base;
29549:     xmlGenericErrorFunc * handler; /* the handler */
29550:     int n_handler;
29551: 
29552:     for (n_handler = 0;n_handler < gen_nb_xmlGenericErrorFunc_ptr;n_handler++) {
29553:         mem_base = xmlMemBlocks();
29554:         handler = gen_xmlGenericErrorFunc_ptr(n_handler, 0);
29555: 
29556:         initGenericErrorDefaultFunc(handler);
29557:         call_tests++;
29558:         des_xmlGenericErrorFunc_ptr(n_handler, handler, 0);
29559:         xmlResetLastError();
29560:         if (mem_base != xmlMemBlocks()) {
29561:             printf("Leak of %d blocks found in initGenericErrorDefaultFunc",
29562: 	           xmlMemBlocks() - mem_base);
29563: 	    test_ret++;
29564:             printf(" %d", n_handler);
29565:             printf("\n");
29566:         }
29567:     }
29568:     function_tests++;
29569: 
29570:     return(test_ret);
29571: }
29572: 
29573: 
29574: #define gen_nb_xmlErrorPtr 1
29575: static xmlErrorPtr gen_xmlErrorPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
29576:     return(NULL);
29577: }
29578: static void des_xmlErrorPtr(int no ATTRIBUTE_UNUSED, xmlErrorPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
29579: }
29580: 
29581: static int
29582: test_xmlCopyError(void) {
29583:     int test_ret = 0;
29584: 
29585:     int mem_base;
29586:     int ret_val;
29587:     xmlErrorPtr from; /* a source error */
29588:     int n_from;
29589:     xmlErrorPtr to; /* a target error */
29590:     int n_to;
29591: 
29592:     for (n_from = 0;n_from < gen_nb_xmlErrorPtr;n_from++) {
29593:     for (n_to = 0;n_to < gen_nb_xmlErrorPtr;n_to++) {
29594:         mem_base = xmlMemBlocks();
29595:         from = gen_xmlErrorPtr(n_from, 0);
29596:         to = gen_xmlErrorPtr(n_to, 1);
29597: 
29598:         ret_val = xmlCopyError(from, to);
29599:         desret_int(ret_val);
29600:         call_tests++;
29601:         des_xmlErrorPtr(n_from, from, 0);
29602:         des_xmlErrorPtr(n_to, to, 1);
29603:         xmlResetLastError();
29604:         if (mem_base != xmlMemBlocks()) {
29605:             printf("Leak of %d blocks found in xmlCopyError",
29606: 	           xmlMemBlocks() - mem_base);
29607: 	    test_ret++;
29608:             printf(" %d", n_from);
29609:             printf(" %d", n_to);
29610:             printf("\n");
29611:         }
29612:     }
29613:     }
29614:     function_tests++;
29615: 
29616:     return(test_ret);
29617: }
29618: 
29619: 
29620: static int
29621: test_xmlCtxtGetLastError(void) {
29622:     int test_ret = 0;
29623: 
29624: 
29625:     /* missing type support */
29626:     return(test_ret);
29627: }
29628: 
29629: 
29630: static int
29631: test_xmlCtxtResetLastError(void) {
29632:     int test_ret = 0;
29633: 
29634:     int mem_base;
29635:     void * ctx; /* an XML parser context */
29636:     int n_ctx;
29637: 
29638:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr;n_ctx++) {
29639:         mem_base = xmlMemBlocks();
29640:         ctx = gen_void_ptr(n_ctx, 0);
29641: 
29642:         xmlCtxtResetLastError(ctx);
29643:         call_tests++;
29644:         des_void_ptr(n_ctx, ctx, 0);
29645:         xmlResetLastError();
29646:         if (mem_base != xmlMemBlocks()) {
29647:             printf("Leak of %d blocks found in xmlCtxtResetLastError",
29648: 	           xmlMemBlocks() - mem_base);
29649: 	    test_ret++;
29650:             printf(" %d", n_ctx);
29651:             printf("\n");
29652:         }
29653:     }
29654:     function_tests++;
29655: 
29656:     return(test_ret);
29657: }
29658: 
29659: 
29660: static int
29661: test_xmlGetLastError(void) {
29662:     int test_ret = 0;
29663: 
29664: 
29665:     /* missing type support */
29666:     return(test_ret);
29667: }
29668: 
29669: 
29670: static int
29671: test_xmlParserError(void) {
29672:     int test_ret = 0;
29673: 
29674: 
29675:     /* missing type support */
29676:     return(test_ret);
29677: }
29678: 
29679: 
29680: static int
29681: test_xmlParserPrintFileContext(void) {
29682:     int test_ret = 0;
29683: 
29684:     int mem_base;
29685:     xmlParserInputPtr input; /* an xmlParserInputPtr input */
29686:     int n_input;
29687: 
29688:     for (n_input = 0;n_input < gen_nb_xmlParserInputPtr;n_input++) {
29689:         mem_base = xmlMemBlocks();
29690:         input = gen_xmlParserInputPtr(n_input, 0);
29691: 
29692:         xmlParserPrintFileContext(input);
29693:         call_tests++;
29694:         des_xmlParserInputPtr(n_input, input, 0);
29695:         xmlResetLastError();
29696:         if (mem_base != xmlMemBlocks()) {
29697:             printf("Leak of %d blocks found in xmlParserPrintFileContext",
29698: 	           xmlMemBlocks() - mem_base);
29699: 	    test_ret++;
29700:             printf(" %d", n_input);
29701:             printf("\n");
29702:         }
29703:     }
29704:     function_tests++;
29705: 
29706:     return(test_ret);
29707: }
29708: 
29709: 
29710: static int
29711: test_xmlParserPrintFileInfo(void) {
29712:     int test_ret = 0;
29713: 
29714:     int mem_base;
29715:     xmlParserInputPtr input; /* an xmlParserInputPtr input */
29716:     int n_input;
29717: 
29718:     for (n_input = 0;n_input < gen_nb_xmlParserInputPtr;n_input++) {
29719:         mem_base = xmlMemBlocks();
29720:         input = gen_xmlParserInputPtr(n_input, 0);
29721: 
29722:         xmlParserPrintFileInfo(input);
29723:         call_tests++;
29724:         des_xmlParserInputPtr(n_input, input, 0);
29725:         xmlResetLastError();
29726:         if (mem_base != xmlMemBlocks()) {
29727:             printf("Leak of %d blocks found in xmlParserPrintFileInfo",
29728: 	           xmlMemBlocks() - mem_base);
29729: 	    test_ret++;
29730:             printf(" %d", n_input);
29731:             printf("\n");
29732:         }
29733:     }
29734:     function_tests++;
29735: 
29736:     return(test_ret);
29737: }
29738: 
29739: 
29740: static int
29741: test_xmlParserValidityError(void) {
29742:     int test_ret = 0;
29743: 
29744: 
29745:     /* missing type support */
29746:     return(test_ret);
29747: }
29748: 
29749: 
29750: static int
29751: test_xmlParserValidityWarning(void) {
29752:     int test_ret = 0;
29753: 
29754: 
29755:     /* missing type support */
29756:     return(test_ret);
29757: }
29758: 
29759: 
29760: static int
29761: test_xmlParserWarning(void) {
29762:     int test_ret = 0;
29763: 
29764: 
29765:     /* missing type support */
29766:     return(test_ret);
29767: }
29768: 
29769: 
29770: static int
29771: test_xmlResetError(void) {
29772:     int test_ret = 0;
29773: 
29774:     int mem_base;
29775:     xmlErrorPtr err; /* pointer to the error. */
29776:     int n_err;
29777: 
29778:     for (n_err = 0;n_err < gen_nb_xmlErrorPtr;n_err++) {
29779:         mem_base = xmlMemBlocks();
29780:         err = gen_xmlErrorPtr(n_err, 0);
29781: 
29782:         xmlResetError(err);
29783:         call_tests++;
29784:         des_xmlErrorPtr(n_err, err, 0);
29785:         xmlResetLastError();
29786:         if (mem_base != xmlMemBlocks()) {
29787:             printf("Leak of %d blocks found in xmlResetError",
29788: 	           xmlMemBlocks() - mem_base);
29789: 	    test_ret++;
29790:             printf(" %d", n_err);
29791:             printf("\n");
29792:         }
29793:     }
29794:     function_tests++;
29795: 
29796:     return(test_ret);
29797: }
29798: 
29799: 
29800: static int
29801: test_xmlResetLastError(void) {
29802:     int test_ret = 0;
29803: 
29804: 
29805: 
29806:         xmlResetLastError();
29807:         call_tests++;
29808:         xmlResetLastError();
29809:     function_tests++;
29810: 
29811:     return(test_ret);
29812: }
29813: 
29814: 
29815: static int
29816: test_xmlSetGenericErrorFunc(void) {
29817:     int test_ret = 0;
29818: 
29819: 
29820:     /* missing type support */
29821:     return(test_ret);
29822: }
29823: 
29824: 
29825: static int
29826: test_xmlSetStructuredErrorFunc(void) {
29827:     int test_ret = 0;
29828: 
29829: 
29830:     /* missing type support */
29831:     return(test_ret);
29832: }
29833: 
29834: static int
29835: test_xmlerror(void) {
29836:     int test_ret = 0;
29837: 
29838:     if (quiet == 0) printf("Testing xmlerror : 7 of 15 functions ...\n");
29839:     test_ret += test_initGenericErrorDefaultFunc();
29840:     test_ret += test_xmlCopyError();
29841:     test_ret += test_xmlCtxtGetLastError();
29842:     test_ret += test_xmlCtxtResetLastError();
29843:     test_ret += test_xmlGetLastError();
29844:     test_ret += test_xmlParserError();
29845:     test_ret += test_xmlParserPrintFileContext();
29846:     test_ret += test_xmlParserPrintFileInfo();
29847:     test_ret += test_xmlParserValidityError();
29848:     test_ret += test_xmlParserValidityWarning();
29849:     test_ret += test_xmlParserWarning();
29850:     test_ret += test_xmlResetError();
29851:     test_ret += test_xmlResetLastError();
29852:     test_ret += test_xmlSetGenericErrorFunc();
29853:     test_ret += test_xmlSetStructuredErrorFunc();
29854: 
29855:     if (test_ret != 0)
29856: 	printf("Module xmlerror: %d errors\n", test_ret);
29857:     return(test_ret);
29858: }
29859: #ifdef LIBXML_MODULES_ENABLED
29860: 
29861: #define gen_nb_xmlModulePtr 1
29862: static xmlModulePtr gen_xmlModulePtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
29863:     return(NULL);
29864: }
29865: static void des_xmlModulePtr(int no ATTRIBUTE_UNUSED, xmlModulePtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
29866: }
29867: #endif
29868: 
29869: 
29870: static int
29871: test_xmlModuleClose(void) {
29872:     int test_ret = 0;
29873: 
29874: #if defined(LIBXML_MODULES_ENABLED)
29875:     int mem_base;
29876:     int ret_val;
29877:     xmlModulePtr module; /* the module handle */
29878:     int n_module;
29879: 
29880:     for (n_module = 0;n_module < gen_nb_xmlModulePtr;n_module++) {
29881:         mem_base = xmlMemBlocks();
29882:         module = gen_xmlModulePtr(n_module, 0);
29883: 
29884:         ret_val = xmlModuleClose(module);
29885:         desret_int(ret_val);
29886:         call_tests++;
29887:         des_xmlModulePtr(n_module, module, 0);
29888:         xmlResetLastError();
29889:         if (mem_base != xmlMemBlocks()) {
29890:             printf("Leak of %d blocks found in xmlModuleClose",
29891: 	           xmlMemBlocks() - mem_base);
29892: 	    test_ret++;
29893:             printf(" %d", n_module);
29894:             printf("\n");
29895:         }
29896:     }
29897:     function_tests++;
29898: #endif
29899: 
29900:     return(test_ret);
29901: }
29902: 
29903: 
29904: static int
29905: test_xmlModuleOpen(void) {
29906:     int test_ret = 0;
29907: 
29908: 
29909:     /* missing type support */
29910:     return(test_ret);
29911: }
29912: 
29913: 
29914: static int
29915: test_xmlModuleSymbol(void) {
29916:     int test_ret = 0;
29917: 
29918: #if defined(LIBXML_MODULES_ENABLED)
29919:     int mem_base;
29920:     int ret_val;
29921:     xmlModulePtr module; /* the module */
29922:     int n_module;
29923:     char * name; /* the name of the symbol */
29924:     int n_name;
29925:     void ** symbol; /* the resulting symbol address */
29926:     int n_symbol;
29927: 
29928:     for (n_module = 0;n_module < gen_nb_xmlModulePtr;n_module++) {
29929:     for (n_name = 0;n_name < gen_nb_const_char_ptr;n_name++) {
29930:     for (n_symbol = 0;n_symbol < gen_nb_void_ptr_ptr;n_symbol++) {
29931:         mem_base = xmlMemBlocks();
29932:         module = gen_xmlModulePtr(n_module, 0);
29933:         name = gen_const_char_ptr(n_name, 1);
29934:         symbol = gen_void_ptr_ptr(n_symbol, 2);
29935: 
29936:         ret_val = xmlModuleSymbol(module, (const char *)name, symbol);
29937:         desret_int(ret_val);
29938:         call_tests++;
29939:         des_xmlModulePtr(n_module, module, 0);
29940:         des_const_char_ptr(n_name, (const char *)name, 1);
29941:         des_void_ptr_ptr(n_symbol, symbol, 2);
29942:         xmlResetLastError();
29943:         if (mem_base != xmlMemBlocks()) {
29944:             printf("Leak of %d blocks found in xmlModuleSymbol",
29945: 	           xmlMemBlocks() - mem_base);
29946: 	    test_ret++;
29947:             printf(" %d", n_module);
29948:             printf(" %d", n_name);
29949:             printf(" %d", n_symbol);
29950:             printf("\n");
29951:         }
29952:     }
29953:     }
29954:     }
29955:     function_tests++;
29956: #endif
29957: 
29958:     return(test_ret);
29959: }
29960: 
29961: static int
29962: test_xmlmodule(void) {
29963:     int test_ret = 0;
29964: 
29965:     if (quiet == 0) printf("Testing xmlmodule : 2 of 4 functions ...\n");
29966:     test_ret += test_xmlModuleClose();
29967:     test_ret += test_xmlModuleOpen();
29968:     test_ret += test_xmlModuleSymbol();
29969: 
29970:     if (test_ret != 0)
29971: 	printf("Module xmlmodule: %d errors\n", test_ret);
29972:     return(test_ret);
29973: }
29974: 
29975: static int
29976: test_xmlNewTextReader(void) {
29977:     int test_ret = 0;
29978: 
29979: #if defined(LIBXML_READER_ENABLED)
29980:     int mem_base;
29981:     xmlTextReaderPtr ret_val;
29982:     xmlParserInputBufferPtr input; /* the xmlParserInputBufferPtr used to read data */
29983:     int n_input;
29984:     const char * URI; /* the URI information for the source if available */
29985:     int n_URI;
29986: 
29987:     for (n_input = 0;n_input < gen_nb_xmlParserInputBufferPtr;n_input++) {
29988:     for (n_URI = 0;n_URI < gen_nb_filepath;n_URI++) {
29989:         mem_base = xmlMemBlocks();
29990:         input = gen_xmlParserInputBufferPtr(n_input, 0);
29991:         URI = gen_filepath(n_URI, 1);
29992: 
29993:         ret_val = xmlNewTextReader(input, URI);
29994:         desret_xmlTextReaderPtr(ret_val);
29995:         call_tests++;
29996:         des_xmlParserInputBufferPtr(n_input, input, 0);
29997:         des_filepath(n_URI, URI, 1);
29998:         xmlResetLastError();
29999:         if (mem_base != xmlMemBlocks()) {
30000:             printf("Leak of %d blocks found in xmlNewTextReader",
30001: 	           xmlMemBlocks() - mem_base);
30002: 	    test_ret++;
30003:             printf(" %d", n_input);
30004:             printf(" %d", n_URI);
30005:             printf("\n");
30006:         }
30007:     }
30008:     }
30009:     function_tests++;
30010: #endif
30011: 
30012:     return(test_ret);
30013: }
30014: 
30015: 
30016: static int
30017: test_xmlNewTextReaderFilename(void) {
30018:     int test_ret = 0;
30019: 
30020: #if defined(LIBXML_READER_ENABLED)
30021:     int mem_base;
30022:     xmlTextReaderPtr ret_val;
30023:     const char * URI; /* the URI of the resource to process */
30024:     int n_URI;
30025: 
30026:     for (n_URI = 0;n_URI < gen_nb_filepath;n_URI++) {
30027:         mem_base = xmlMemBlocks();
30028:         URI = gen_filepath(n_URI, 0);
30029: 
30030:         ret_val = xmlNewTextReaderFilename(URI);
30031:         desret_xmlTextReaderPtr(ret_val);
30032:         call_tests++;
30033:         des_filepath(n_URI, URI, 0);
30034:         xmlResetLastError();
30035:         if (mem_base != xmlMemBlocks()) {
30036:             printf("Leak of %d blocks found in xmlNewTextReaderFilename",
30037: 	           xmlMemBlocks() - mem_base);
30038: 	    test_ret++;
30039:             printf(" %d", n_URI);
30040:             printf("\n");
30041:         }
30042:     }
30043:     function_tests++;
30044: #endif
30045: 
30046:     return(test_ret);
30047: }
30048: 
30049: 
30050: static int
30051: test_xmlReaderForDoc(void) {
30052:     int test_ret = 0;
30053: 
30054: #if defined(LIBXML_READER_ENABLED)
30055:     int mem_base;
30056:     xmlTextReaderPtr ret_val;
30057:     xmlChar * cur; /* a pointer to a zero terminated string */
30058:     int n_cur;
30059:     const char * URL; /* the base URL to use for the document */
30060:     int n_URL;
30061:     char * encoding; /* the document encoding, or NULL */
30062:     int n_encoding;
30063:     int options; /* a combination of xmlParserOption */
30064:     int n_options;
30065: 
30066:     for (n_cur = 0;n_cur < gen_nb_const_xmlChar_ptr;n_cur++) {
30067:     for (n_URL = 0;n_URL < gen_nb_filepath;n_URL++) {
30068:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
30069:     for (n_options = 0;n_options < gen_nb_parseroptions;n_options++) {
30070:         mem_base = xmlMemBlocks();
30071:         cur = gen_const_xmlChar_ptr(n_cur, 0);
30072:         URL = gen_filepath(n_URL, 1);
30073:         encoding = gen_const_char_ptr(n_encoding, 2);
30074:         options = gen_parseroptions(n_options, 3);
30075: 
30076:         ret_val = xmlReaderForDoc((const xmlChar *)cur, URL, (const char *)encoding, options);
30077:         desret_xmlTextReaderPtr(ret_val);
30078:         call_tests++;
30079:         des_const_xmlChar_ptr(n_cur, (const xmlChar *)cur, 0);
30080:         des_filepath(n_URL, URL, 1);
30081:         des_const_char_ptr(n_encoding, (const char *)encoding, 2);
30082:         des_parseroptions(n_options, options, 3);
30083:         xmlResetLastError();
30084:         if (mem_base != xmlMemBlocks()) {
30085:             printf("Leak of %d blocks found in xmlReaderForDoc",
30086: 	           xmlMemBlocks() - mem_base);
30087: 	    test_ret++;
30088:             printf(" %d", n_cur);
30089:             printf(" %d", n_URL);
30090:             printf(" %d", n_encoding);
30091:             printf(" %d", n_options);
30092:             printf("\n");
30093:         }
30094:     }
30095:     }
30096:     }
30097:     }
30098:     function_tests++;
30099: #endif
30100: 
30101:     return(test_ret);
30102: }
30103: 
30104: 
30105: static int
30106: test_xmlReaderForFile(void) {
30107:     int test_ret = 0;
30108: 
30109: #if defined(LIBXML_READER_ENABLED)
30110:     int mem_base;
30111:     xmlTextReaderPtr ret_val;
30112:     const char * filename; /* a file or URL */
30113:     int n_filename;
30114:     char * encoding; /* the document encoding, or NULL */
30115:     int n_encoding;
30116:     int options; /* a combination of xmlParserOption */
30117:     int n_options;
30118: 
30119:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
30120:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
30121:     for (n_options = 0;n_options < gen_nb_parseroptions;n_options++) {
30122:         mem_base = xmlMemBlocks();
30123:         filename = gen_filepath(n_filename, 0);
30124:         encoding = gen_const_char_ptr(n_encoding, 1);
30125:         options = gen_parseroptions(n_options, 2);
30126: 
30127:         ret_val = xmlReaderForFile(filename, (const char *)encoding, options);
30128:         desret_xmlTextReaderPtr(ret_val);
30129:         call_tests++;
30130:         des_filepath(n_filename, filename, 0);
30131:         des_const_char_ptr(n_encoding, (const char *)encoding, 1);
30132:         des_parseroptions(n_options, options, 2);
30133:         xmlResetLastError();
30134:         if (mem_base != xmlMemBlocks()) {
30135:             printf("Leak of %d blocks found in xmlReaderForFile",
30136: 	           xmlMemBlocks() - mem_base);
30137: 	    test_ret++;
30138:             printf(" %d", n_filename);
30139:             printf(" %d", n_encoding);
30140:             printf(" %d", n_options);
30141:             printf("\n");
30142:         }
30143:     }
30144:     }
30145:     }
30146:     function_tests++;
30147: #endif
30148: 
30149:     return(test_ret);
30150: }
30151: 
30152: 
30153: static int
30154: test_xmlReaderForMemory(void) {
30155:     int test_ret = 0;
30156: 
30157: #if defined(LIBXML_READER_ENABLED)
30158:     int mem_base;
30159:     xmlTextReaderPtr ret_val;
30160:     char * buffer; /* a pointer to a char array */
30161:     int n_buffer;
30162:     int size; /* the size of the array */
30163:     int n_size;
30164:     const char * URL; /* the base URL to use for the document */
30165:     int n_URL;
30166:     char * encoding; /* the document encoding, or NULL */
30167:     int n_encoding;
30168:     int options; /* a combination of xmlParserOption */
30169:     int n_options;
30170: 
30171:     for (n_buffer = 0;n_buffer < gen_nb_const_char_ptr;n_buffer++) {
30172:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
30173:     for (n_URL = 0;n_URL < gen_nb_filepath;n_URL++) {
30174:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
30175:     for (n_options = 0;n_options < gen_nb_parseroptions;n_options++) {
30176:         mem_base = xmlMemBlocks();
30177:         buffer = gen_const_char_ptr(n_buffer, 0);
30178:         size = gen_int(n_size, 1);
30179:         URL = gen_filepath(n_URL, 2);
30180:         encoding = gen_const_char_ptr(n_encoding, 3);
30181:         options = gen_parseroptions(n_options, 4);
30182: 
30183:         ret_val = xmlReaderForMemory((const char *)buffer, size, URL, (const char *)encoding, options);
30184:         desret_xmlTextReaderPtr(ret_val);
30185:         call_tests++;
30186:         des_const_char_ptr(n_buffer, (const char *)buffer, 0);
30187:         des_int(n_size, size, 1);
30188:         des_filepath(n_URL, URL, 2);
30189:         des_const_char_ptr(n_encoding, (const char *)encoding, 3);
30190:         des_parseroptions(n_options, options, 4);
30191:         xmlResetLastError();
30192:         if (mem_base != xmlMemBlocks()) {
30193:             printf("Leak of %d blocks found in xmlReaderForMemory",
30194: 	           xmlMemBlocks() - mem_base);
30195: 	    test_ret++;
30196:             printf(" %d", n_buffer);
30197:             printf(" %d", n_size);
30198:             printf(" %d", n_URL);
30199:             printf(" %d", n_encoding);
30200:             printf(" %d", n_options);
30201:             printf("\n");
30202:         }
30203:     }
30204:     }
30205:     }
30206:     }
30207:     }
30208:     function_tests++;
30209: #endif
30210: 
30211:     return(test_ret);
30212: }
30213: 
30214: 
30215: static int
30216: test_xmlReaderNewDoc(void) {
30217:     int test_ret = 0;
30218: 
30219: #if defined(LIBXML_READER_ENABLED)
30220:     int mem_base;
30221:     int ret_val;
30222:     xmlTextReaderPtr reader; /* an XML reader */
30223:     int n_reader;
30224:     xmlChar * cur; /* a pointer to a zero terminated string */
30225:     int n_cur;
30226:     const char * URL; /* the base URL to use for the document */
30227:     int n_URL;
30228:     char * encoding; /* the document encoding, or NULL */
30229:     int n_encoding;
30230:     int options; /* a combination of xmlParserOption */
30231:     int n_options;
30232: 
30233:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
30234:     for (n_cur = 0;n_cur < gen_nb_const_xmlChar_ptr;n_cur++) {
30235:     for (n_URL = 0;n_URL < gen_nb_filepath;n_URL++) {
30236:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
30237:     for (n_options = 0;n_options < gen_nb_parseroptions;n_options++) {
30238:         mem_base = xmlMemBlocks();
30239:         reader = gen_xmlTextReaderPtr(n_reader, 0);
30240:         cur = gen_const_xmlChar_ptr(n_cur, 1);
30241:         URL = gen_filepath(n_URL, 2);
30242:         encoding = gen_const_char_ptr(n_encoding, 3);
30243:         options = gen_parseroptions(n_options, 4);
30244: 
30245:         ret_val = xmlReaderNewDoc(reader, (const xmlChar *)cur, URL, (const char *)encoding, options);
30246:         desret_int(ret_val);
30247:         call_tests++;
30248:         des_xmlTextReaderPtr(n_reader, reader, 0);
30249:         des_const_xmlChar_ptr(n_cur, (const xmlChar *)cur, 1);
30250:         des_filepath(n_URL, URL, 2);
30251:         des_const_char_ptr(n_encoding, (const char *)encoding, 3);
30252:         des_parseroptions(n_options, options, 4);
30253:         xmlResetLastError();
30254:         if (mem_base != xmlMemBlocks()) {
30255:             printf("Leak of %d blocks found in xmlReaderNewDoc",
30256: 	           xmlMemBlocks() - mem_base);
30257: 	    test_ret++;
30258:             printf(" %d", n_reader);
30259:             printf(" %d", n_cur);
30260:             printf(" %d", n_URL);
30261:             printf(" %d", n_encoding);
30262:             printf(" %d", n_options);
30263:             printf("\n");
30264:         }
30265:     }
30266:     }
30267:     }
30268:     }
30269:     }
30270:     function_tests++;
30271: #endif
30272: 
30273:     return(test_ret);
30274: }
30275: 
30276: 
30277: static int
30278: test_xmlReaderNewFile(void) {
30279:     int test_ret = 0;
30280: 
30281: #if defined(LIBXML_READER_ENABLED)
30282:     int mem_base;
30283:     int ret_val;
30284:     xmlTextReaderPtr reader; /* an XML reader */
30285:     int n_reader;
30286:     const char * filename; /* a file or URL */
30287:     int n_filename;
30288:     char * encoding; /* the document encoding, or NULL */
30289:     int n_encoding;
30290:     int options; /* a combination of xmlParserOption */
30291:     int n_options;
30292: 
30293:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
30294:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
30295:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
30296:     for (n_options = 0;n_options < gen_nb_parseroptions;n_options++) {
30297:         mem_base = xmlMemBlocks();
30298:         reader = gen_xmlTextReaderPtr(n_reader, 0);
30299:         filename = gen_filepath(n_filename, 1);
30300:         encoding = gen_const_char_ptr(n_encoding, 2);
30301:         options = gen_parseroptions(n_options, 3);
30302: 
30303:         ret_val = xmlReaderNewFile(reader, filename, (const char *)encoding, options);
30304:         desret_int(ret_val);
30305:         call_tests++;
30306:         des_xmlTextReaderPtr(n_reader, reader, 0);
30307:         des_filepath(n_filename, filename, 1);
30308:         des_const_char_ptr(n_encoding, (const char *)encoding, 2);
30309:         des_parseroptions(n_options, options, 3);
30310:         xmlResetLastError();
30311:         if (mem_base != xmlMemBlocks()) {
30312:             printf("Leak of %d blocks found in xmlReaderNewFile",
30313: 	           xmlMemBlocks() - mem_base);
30314: 	    test_ret++;
30315:             printf(" %d", n_reader);
30316:             printf(" %d", n_filename);
30317:             printf(" %d", n_encoding);
30318:             printf(" %d", n_options);
30319:             printf("\n");
30320:         }
30321:     }
30322:     }
30323:     }
30324:     }
30325:     function_tests++;
30326: #endif
30327: 
30328:     return(test_ret);
30329: }
30330: 
30331: 
30332: static int
30333: test_xmlReaderNewMemory(void) {
30334:     int test_ret = 0;
30335: 
30336: #if defined(LIBXML_READER_ENABLED)
30337:     int mem_base;
30338:     int ret_val;
30339:     xmlTextReaderPtr reader; /* an XML reader */
30340:     int n_reader;
30341:     char * buffer; /* a pointer to a char array */
30342:     int n_buffer;
30343:     int size; /* the size of the array */
30344:     int n_size;
30345:     const char * URL; /* the base URL to use for the document */
30346:     int n_URL;
30347:     char * encoding; /* the document encoding, or NULL */
30348:     int n_encoding;
30349:     int options; /* a combination of xmlParserOption */
30350:     int n_options;
30351: 
30352:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
30353:     for (n_buffer = 0;n_buffer < gen_nb_const_char_ptr;n_buffer++) {
30354:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
30355:     for (n_URL = 0;n_URL < gen_nb_filepath;n_URL++) {
30356:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
30357:     for (n_options = 0;n_options < gen_nb_parseroptions;n_options++) {
30358:         mem_base = xmlMemBlocks();
30359:         reader = gen_xmlTextReaderPtr(n_reader, 0);
30360:         buffer = gen_const_char_ptr(n_buffer, 1);
30361:         size = gen_int(n_size, 2);
30362:         URL = gen_filepath(n_URL, 3);
30363:         encoding = gen_const_char_ptr(n_encoding, 4);
30364:         options = gen_parseroptions(n_options, 5);
30365: 
30366:         ret_val = xmlReaderNewMemory(reader, (const char *)buffer, size, URL, (const char *)encoding, options);
30367:         desret_int(ret_val);
30368:         call_tests++;
30369:         des_xmlTextReaderPtr(n_reader, reader, 0);
30370:         des_const_char_ptr(n_buffer, (const char *)buffer, 1);
30371:         des_int(n_size, size, 2);
30372:         des_filepath(n_URL, URL, 3);
30373:         des_const_char_ptr(n_encoding, (const char *)encoding, 4);
30374:         des_parseroptions(n_options, options, 5);
30375:         xmlResetLastError();
30376:         if (mem_base != xmlMemBlocks()) {
30377:             printf("Leak of %d blocks found in xmlReaderNewMemory",
30378: 	           xmlMemBlocks() - mem_base);
30379: 	    test_ret++;
30380:             printf(" %d", n_reader);
30381:             printf(" %d", n_buffer);
30382:             printf(" %d", n_size);
30383:             printf(" %d", n_URL);
30384:             printf(" %d", n_encoding);
30385:             printf(" %d", n_options);
30386:             printf("\n");
30387:         }
30388:     }
30389:     }
30390:     }
30391:     }
30392:     }
30393:     }
30394:     function_tests++;
30395: #endif
30396: 
30397:     return(test_ret);
30398: }
30399: 
30400: 
30401: static int
30402: test_xmlReaderNewWalker(void) {
30403:     int test_ret = 0;
30404: 
30405: #if defined(LIBXML_READER_ENABLED)
30406:     int mem_base;
30407:     int ret_val;
30408:     xmlTextReaderPtr reader; /* an XML reader */
30409:     int n_reader;
30410:     xmlDocPtr doc; /* a preparsed document */
30411:     int n_doc;
30412: 
30413:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
30414:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
30415:         mem_base = xmlMemBlocks();
30416:         reader = gen_xmlTextReaderPtr(n_reader, 0);
30417:         doc = gen_xmlDocPtr(n_doc, 1);
30418: 
30419:         ret_val = xmlReaderNewWalker(reader, doc);
30420:         desret_int(ret_val);
30421:         call_tests++;
30422:         des_xmlTextReaderPtr(n_reader, reader, 0);
30423:         des_xmlDocPtr(n_doc, doc, 1);
30424:         xmlResetLastError();
30425:         if (mem_base != xmlMemBlocks()) {
30426:             printf("Leak of %d blocks found in xmlReaderNewWalker",
30427: 	           xmlMemBlocks() - mem_base);
30428: 	    test_ret++;
30429:             printf(" %d", n_reader);
30430:             printf(" %d", n_doc);
30431:             printf("\n");
30432:         }
30433:     }
30434:     }
30435:     function_tests++;
30436: #endif
30437: 
30438:     return(test_ret);
30439: }
30440: 
30441: 
30442: static int
30443: test_xmlReaderWalker(void) {
30444:     int test_ret = 0;
30445: 
30446: #if defined(LIBXML_READER_ENABLED)
30447:     int mem_base;
30448:     xmlTextReaderPtr ret_val;
30449:     xmlDocPtr doc; /* a preparsed document */
30450:     int n_doc;
30451: 
30452:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
30453:         mem_base = xmlMemBlocks();
30454:         doc = gen_xmlDocPtr(n_doc, 0);
30455: 
30456:         ret_val = xmlReaderWalker(doc);
30457:         desret_xmlTextReaderPtr(ret_val);
30458:         call_tests++;
30459:         des_xmlDocPtr(n_doc, doc, 0);
30460:         xmlResetLastError();
30461:         if (mem_base != xmlMemBlocks()) {
30462:             printf("Leak of %d blocks found in xmlReaderWalker",
30463: 	           xmlMemBlocks() - mem_base);
30464: 	    test_ret++;
30465:             printf(" %d", n_doc);
30466:             printf("\n");
30467:         }
30468:     }
30469:     function_tests++;
30470: #endif
30471: 
30472:     return(test_ret);
30473: }
30474: 
30475: 
30476: static int
30477: test_xmlTextReaderAttributeCount(void) {
30478:     int test_ret = 0;
30479: 
30480: #if defined(LIBXML_READER_ENABLED)
30481:     int mem_base;
30482:     int ret_val;
30483:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
30484:     int n_reader;
30485: 
30486:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
30487:         mem_base = xmlMemBlocks();
30488:         reader = gen_xmlTextReaderPtr(n_reader, 0);
30489: 
30490:         ret_val = xmlTextReaderAttributeCount(reader);
30491:         desret_int(ret_val);
30492:         call_tests++;
30493:         des_xmlTextReaderPtr(n_reader, reader, 0);
30494:         xmlResetLastError();
30495:         if (mem_base != xmlMemBlocks()) {
30496:             printf("Leak of %d blocks found in xmlTextReaderAttributeCount",
30497: 	           xmlMemBlocks() - mem_base);
30498: 	    test_ret++;
30499:             printf(" %d", n_reader);
30500:             printf("\n");
30501:         }
30502:     }
30503:     function_tests++;
30504: #endif
30505: 
30506:     return(test_ret);
30507: }
30508: 
30509: 
30510: static int
30511: test_xmlTextReaderBaseUri(void) {
30512:     int test_ret = 0;
30513: 
30514: #if defined(LIBXML_READER_ENABLED)
30515:     int mem_base;
30516:     xmlChar * ret_val;
30517:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
30518:     int n_reader;
30519: 
30520:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
30521:         mem_base = xmlMemBlocks();
30522:         reader = gen_xmlTextReaderPtr(n_reader, 0);
30523: 
30524:         ret_val = xmlTextReaderBaseUri(reader);
30525:         desret_xmlChar_ptr(ret_val);
30526:         call_tests++;
30527:         des_xmlTextReaderPtr(n_reader, reader, 0);
30528:         xmlResetLastError();
30529:         if (mem_base != xmlMemBlocks()) {
30530:             printf("Leak of %d blocks found in xmlTextReaderBaseUri",
30531: 	           xmlMemBlocks() - mem_base);
30532: 	    test_ret++;
30533:             printf(" %d", n_reader);
30534:             printf("\n");
30535:         }
30536:     }
30537:     function_tests++;
30538: #endif
30539: 
30540:     return(test_ret);
30541: }
30542: 
30543: 
30544: static int
30545: test_xmlTextReaderByteConsumed(void) {
30546:     int test_ret = 0;
30547: 
30548: #if defined(LIBXML_READER_ENABLED)
30549:     int mem_base;
30550:     long ret_val;
30551:     xmlTextReaderPtr reader; /* an XML reader */
30552:     int n_reader;
30553: 
30554:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
30555:         mem_base = xmlMemBlocks();
30556:         reader = gen_xmlTextReaderPtr(n_reader, 0);
30557: 
30558:         ret_val = xmlTextReaderByteConsumed(reader);
30559:         desret_long(ret_val);
30560:         call_tests++;
30561:         des_xmlTextReaderPtr(n_reader, reader, 0);
30562:         xmlResetLastError();
30563:         if (mem_base != xmlMemBlocks()) {
30564:             printf("Leak of %d blocks found in xmlTextReaderByteConsumed",
30565: 	           xmlMemBlocks() - mem_base);
30566: 	    test_ret++;
30567:             printf(" %d", n_reader);
30568:             printf("\n");
30569:         }
30570:     }
30571:     function_tests++;
30572: #endif
30573: 
30574:     return(test_ret);
30575: }
30576: 
30577: 
30578: static int
30579: test_xmlTextReaderClose(void) {
30580:     int test_ret = 0;
30581: 
30582: #if defined(LIBXML_READER_ENABLED)
30583:     int mem_base;
30584:     int ret_val;
30585:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
30586:     int n_reader;
30587: 
30588:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
30589:         mem_base = xmlMemBlocks();
30590:         reader = gen_xmlTextReaderPtr(n_reader, 0);
30591: 
30592:         ret_val = xmlTextReaderClose(reader);
30593:         desret_int(ret_val);
30594:         call_tests++;
30595:         des_xmlTextReaderPtr(n_reader, reader, 0);
30596:         xmlResetLastError();
30597:         if (mem_base != xmlMemBlocks()) {
30598:             printf("Leak of %d blocks found in xmlTextReaderClose",
30599: 	           xmlMemBlocks() - mem_base);
30600: 	    test_ret++;
30601:             printf(" %d", n_reader);
30602:             printf("\n");
30603:         }
30604:     }
30605:     function_tests++;
30606: #endif
30607: 
30608:     return(test_ret);
30609: }
30610: 
30611: 
30612: static int
30613: test_xmlTextReaderConstBaseUri(void) {
30614:     int test_ret = 0;
30615: 
30616: #if defined(LIBXML_READER_ENABLED)
30617:     int mem_base;
30618:     const xmlChar * ret_val;
30619:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
30620:     int n_reader;
30621: 
30622:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
30623:         mem_base = xmlMemBlocks();
30624:         reader = gen_xmlTextReaderPtr(n_reader, 0);
30625: 
30626:         ret_val = xmlTextReaderConstBaseUri(reader);
30627:         desret_const_xmlChar_ptr(ret_val);
30628:         call_tests++;
30629:         des_xmlTextReaderPtr(n_reader, reader, 0);
30630:         xmlResetLastError();
30631:         if (mem_base != xmlMemBlocks()) {
30632:             printf("Leak of %d blocks found in xmlTextReaderConstBaseUri",
30633: 	           xmlMemBlocks() - mem_base);
30634: 	    test_ret++;
30635:             printf(" %d", n_reader);
30636:             printf("\n");
30637:         }
30638:     }
30639:     function_tests++;
30640: #endif
30641: 
30642:     return(test_ret);
30643: }
30644: 
30645: 
30646: static int
30647: test_xmlTextReaderConstEncoding(void) {
30648:     int test_ret = 0;
30649: 
30650: #if defined(LIBXML_READER_ENABLED)
30651:     int mem_base;
30652:     const xmlChar * ret_val;
30653:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
30654:     int n_reader;
30655: 
30656:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
30657:         mem_base = xmlMemBlocks();
30658:         reader = gen_xmlTextReaderPtr(n_reader, 0);
30659: 
30660:         ret_val = xmlTextReaderConstEncoding(reader);
30661:         desret_const_xmlChar_ptr(ret_val);
30662:         call_tests++;
30663:         des_xmlTextReaderPtr(n_reader, reader, 0);
30664:         xmlResetLastError();
30665:         if (mem_base != xmlMemBlocks()) {
30666:             printf("Leak of %d blocks found in xmlTextReaderConstEncoding",
30667: 	           xmlMemBlocks() - mem_base);
30668: 	    test_ret++;
30669:             printf(" %d", n_reader);
30670:             printf("\n");
30671:         }
30672:     }
30673:     function_tests++;
30674: #endif
30675: 
30676:     return(test_ret);
30677: }
30678: 
30679: 
30680: static int
30681: test_xmlTextReaderConstLocalName(void) {
30682:     int test_ret = 0;
30683: 
30684: #if defined(LIBXML_READER_ENABLED)
30685:     int mem_base;
30686:     const xmlChar * ret_val;
30687:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
30688:     int n_reader;
30689: 
30690:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
30691:         mem_base = xmlMemBlocks();
30692:         reader = gen_xmlTextReaderPtr(n_reader, 0);
30693: 
30694:         ret_val = xmlTextReaderConstLocalName(reader);
30695:         desret_const_xmlChar_ptr(ret_val);
30696:         call_tests++;
30697:         des_xmlTextReaderPtr(n_reader, reader, 0);
30698:         xmlResetLastError();
30699:         if (mem_base != xmlMemBlocks()) {
30700:             printf("Leak of %d blocks found in xmlTextReaderConstLocalName",
30701: 	           xmlMemBlocks() - mem_base);
30702: 	    test_ret++;
30703:             printf(" %d", n_reader);
30704:             printf("\n");
30705:         }
30706:     }
30707:     function_tests++;
30708: #endif
30709: 
30710:     return(test_ret);
30711: }
30712: 
30713: 
30714: static int
30715: test_xmlTextReaderConstName(void) {
30716:     int test_ret = 0;
30717: 
30718: #if defined(LIBXML_READER_ENABLED)
30719:     int mem_base;
30720:     const xmlChar * ret_val;
30721:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
30722:     int n_reader;
30723: 
30724:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
30725:         mem_base = xmlMemBlocks();
30726:         reader = gen_xmlTextReaderPtr(n_reader, 0);
30727: 
30728:         ret_val = xmlTextReaderConstName(reader);
30729:         desret_const_xmlChar_ptr(ret_val);
30730:         call_tests++;
30731:         des_xmlTextReaderPtr(n_reader, reader, 0);
30732:         xmlResetLastError();
30733:         if (mem_base != xmlMemBlocks()) {
30734:             printf("Leak of %d blocks found in xmlTextReaderConstName",
30735: 	           xmlMemBlocks() - mem_base);
30736: 	    test_ret++;
30737:             printf(" %d", n_reader);
30738:             printf("\n");
30739:         }
30740:     }
30741:     function_tests++;
30742: #endif
30743: 
30744:     return(test_ret);
30745: }
30746: 
30747: 
30748: static int
30749: test_xmlTextReaderConstNamespaceUri(void) {
30750:     int test_ret = 0;
30751: 
30752: #if defined(LIBXML_READER_ENABLED)
30753:     int mem_base;
30754:     const xmlChar * ret_val;
30755:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
30756:     int n_reader;
30757: 
30758:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
30759:         mem_base = xmlMemBlocks();
30760:         reader = gen_xmlTextReaderPtr(n_reader, 0);
30761: 
30762:         ret_val = xmlTextReaderConstNamespaceUri(reader);
30763:         desret_const_xmlChar_ptr(ret_val);
30764:         call_tests++;
30765:         des_xmlTextReaderPtr(n_reader, reader, 0);
30766:         xmlResetLastError();
30767:         if (mem_base != xmlMemBlocks()) {
30768:             printf("Leak of %d blocks found in xmlTextReaderConstNamespaceUri",
30769: 	           xmlMemBlocks() - mem_base);
30770: 	    test_ret++;
30771:             printf(" %d", n_reader);
30772:             printf("\n");
30773:         }
30774:     }
30775:     function_tests++;
30776: #endif
30777: 
30778:     return(test_ret);
30779: }
30780: 
30781: 
30782: static int
30783: test_xmlTextReaderConstPrefix(void) {
30784:     int test_ret = 0;
30785: 
30786: #if defined(LIBXML_READER_ENABLED)
30787:     int mem_base;
30788:     const xmlChar * ret_val;
30789:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
30790:     int n_reader;
30791: 
30792:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
30793:         mem_base = xmlMemBlocks();
30794:         reader = gen_xmlTextReaderPtr(n_reader, 0);
30795: 
30796:         ret_val = xmlTextReaderConstPrefix(reader);
30797:         desret_const_xmlChar_ptr(ret_val);
30798:         call_tests++;
30799:         des_xmlTextReaderPtr(n_reader, reader, 0);
30800:         xmlResetLastError();
30801:         if (mem_base != xmlMemBlocks()) {
30802:             printf("Leak of %d blocks found in xmlTextReaderConstPrefix",
30803: 	           xmlMemBlocks() - mem_base);
30804: 	    test_ret++;
30805:             printf(" %d", n_reader);
30806:             printf("\n");
30807:         }
30808:     }
30809:     function_tests++;
30810: #endif
30811: 
30812:     return(test_ret);
30813: }
30814: 
30815: 
30816: static int
30817: test_xmlTextReaderConstString(void) {
30818:     int test_ret = 0;
30819: 
30820: #if defined(LIBXML_READER_ENABLED)
30821:     int mem_base;
30822:     const xmlChar * ret_val;
30823:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
30824:     int n_reader;
30825:     xmlChar * str; /* the string to intern. */
30826:     int n_str;
30827: 
30828:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
30829:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
30830:         mem_base = xmlMemBlocks();
30831:         reader = gen_xmlTextReaderPtr(n_reader, 0);
30832:         str = gen_const_xmlChar_ptr(n_str, 1);
30833: 
30834:         ret_val = xmlTextReaderConstString(reader, (const xmlChar *)str);
30835:         desret_const_xmlChar_ptr(ret_val);
30836:         call_tests++;
30837:         des_xmlTextReaderPtr(n_reader, reader, 0);
30838:         des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 1);
30839:         xmlResetLastError();
30840:         if (mem_base != xmlMemBlocks()) {
30841:             printf("Leak of %d blocks found in xmlTextReaderConstString",
30842: 	           xmlMemBlocks() - mem_base);
30843: 	    test_ret++;
30844:             printf(" %d", n_reader);
30845:             printf(" %d", n_str);
30846:             printf("\n");
30847:         }
30848:     }
30849:     }
30850:     function_tests++;
30851: #endif
30852: 
30853:     return(test_ret);
30854: }
30855: 
30856: 
30857: static int
30858: test_xmlTextReaderConstValue(void) {
30859:     int test_ret = 0;
30860: 
30861: #if defined(LIBXML_READER_ENABLED)
30862:     int mem_base;
30863:     const xmlChar * ret_val;
30864:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
30865:     int n_reader;
30866: 
30867:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
30868:         mem_base = xmlMemBlocks();
30869:         reader = gen_xmlTextReaderPtr(n_reader, 0);
30870: 
30871:         ret_val = xmlTextReaderConstValue(reader);
30872:         desret_const_xmlChar_ptr(ret_val);
30873:         call_tests++;
30874:         des_xmlTextReaderPtr(n_reader, reader, 0);
30875:         xmlResetLastError();
30876:         if (mem_base != xmlMemBlocks()) {
30877:             printf("Leak of %d blocks found in xmlTextReaderConstValue",
30878: 	           xmlMemBlocks() - mem_base);
30879: 	    test_ret++;
30880:             printf(" %d", n_reader);
30881:             printf("\n");
30882:         }
30883:     }
30884:     function_tests++;
30885: #endif
30886: 
30887:     return(test_ret);
30888: }
30889: 
30890: 
30891: static int
30892: test_xmlTextReaderConstXmlLang(void) {
30893:     int test_ret = 0;
30894: 
30895: #if defined(LIBXML_READER_ENABLED)
30896:     int mem_base;
30897:     const xmlChar * ret_val;
30898:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
30899:     int n_reader;
30900: 
30901:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
30902:         mem_base = xmlMemBlocks();
30903:         reader = gen_xmlTextReaderPtr(n_reader, 0);
30904: 
30905:         ret_val = xmlTextReaderConstXmlLang(reader);
30906:         desret_const_xmlChar_ptr(ret_val);
30907:         call_tests++;
30908:         des_xmlTextReaderPtr(n_reader, reader, 0);
30909:         xmlResetLastError();
30910:         if (mem_base != xmlMemBlocks()) {
30911:             printf("Leak of %d blocks found in xmlTextReaderConstXmlLang",
30912: 	           xmlMemBlocks() - mem_base);
30913: 	    test_ret++;
30914:             printf(" %d", n_reader);
30915:             printf("\n");
30916:         }
30917:     }
30918:     function_tests++;
30919: #endif
30920: 
30921:     return(test_ret);
30922: }
30923: 
30924: 
30925: static int
30926: test_xmlTextReaderConstXmlVersion(void) {
30927:     int test_ret = 0;
30928: 
30929: #if defined(LIBXML_READER_ENABLED)
30930:     int mem_base;
30931:     const xmlChar * ret_val;
30932:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
30933:     int n_reader;
30934: 
30935:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
30936:         mem_base = xmlMemBlocks();
30937:         reader = gen_xmlTextReaderPtr(n_reader, 0);
30938: 
30939:         ret_val = xmlTextReaderConstXmlVersion(reader);
30940:         desret_const_xmlChar_ptr(ret_val);
30941:         call_tests++;
30942:         des_xmlTextReaderPtr(n_reader, reader, 0);
30943:         xmlResetLastError();
30944:         if (mem_base != xmlMemBlocks()) {
30945:             printf("Leak of %d blocks found in xmlTextReaderConstXmlVersion",
30946: 	           xmlMemBlocks() - mem_base);
30947: 	    test_ret++;
30948:             printf(" %d", n_reader);
30949:             printf("\n");
30950:         }
30951:     }
30952:     function_tests++;
30953: #endif
30954: 
30955:     return(test_ret);
30956: }
30957: 
30958: 
30959: static int
30960: test_xmlTextReaderCurrentDoc(void) {
30961:     int test_ret = 0;
30962: 
30963: #if defined(LIBXML_READER_ENABLED)
30964:     int mem_base;
30965:     xmlDocPtr ret_val;
30966:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
30967:     int n_reader;
30968: 
30969:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
30970:         mem_base = xmlMemBlocks();
30971:         reader = gen_xmlTextReaderPtr(n_reader, 0);
30972: 
30973:         ret_val = xmlTextReaderCurrentDoc(reader);
30974:         desret_xmlDocPtr(ret_val);
30975:         call_tests++;
30976:         des_xmlTextReaderPtr(n_reader, reader, 0);
30977:         xmlResetLastError();
30978:         if (mem_base != xmlMemBlocks()) {
30979:             printf("Leak of %d blocks found in xmlTextReaderCurrentDoc",
30980: 	           xmlMemBlocks() - mem_base);
30981: 	    test_ret++;
30982:             printf(" %d", n_reader);
30983:             printf("\n");
30984:         }
30985:     }
30986:     function_tests++;
30987: #endif
30988: 
30989:     return(test_ret);
30990: }
30991: 
30992: 
30993: static int
30994: test_xmlTextReaderCurrentNode(void) {
30995:     int test_ret = 0;
30996: 
30997: #if defined(LIBXML_READER_ENABLED)
30998:     int mem_base;
30999:     xmlNodePtr ret_val;
31000:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31001:     int n_reader;
31002: 
31003:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31004:         mem_base = xmlMemBlocks();
31005:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31006: 
31007:         ret_val = xmlTextReaderCurrentNode(reader);
31008:         desret_xmlNodePtr(ret_val);
31009:         call_tests++;
31010:         des_xmlTextReaderPtr(n_reader, reader, 0);
31011:         xmlResetLastError();
31012:         if (mem_base != xmlMemBlocks()) {
31013:             printf("Leak of %d blocks found in xmlTextReaderCurrentNode",
31014: 	           xmlMemBlocks() - mem_base);
31015: 	    test_ret++;
31016:             printf(" %d", n_reader);
31017:             printf("\n");
31018:         }
31019:     }
31020:     function_tests++;
31021: #endif
31022: 
31023:     return(test_ret);
31024: }
31025: 
31026: 
31027: static int
31028: test_xmlTextReaderDepth(void) {
31029:     int test_ret = 0;
31030: 
31031: #if defined(LIBXML_READER_ENABLED)
31032:     int mem_base;
31033:     int ret_val;
31034:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31035:     int n_reader;
31036: 
31037:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31038:         mem_base = xmlMemBlocks();
31039:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31040: 
31041:         ret_val = xmlTextReaderDepth(reader);
31042:         desret_int(ret_val);
31043:         call_tests++;
31044:         des_xmlTextReaderPtr(n_reader, reader, 0);
31045:         xmlResetLastError();
31046:         if (mem_base != xmlMemBlocks()) {
31047:             printf("Leak of %d blocks found in xmlTextReaderDepth",
31048: 	           xmlMemBlocks() - mem_base);
31049: 	    test_ret++;
31050:             printf(" %d", n_reader);
31051:             printf("\n");
31052:         }
31053:     }
31054:     function_tests++;
31055: #endif
31056: 
31057:     return(test_ret);
31058: }
31059: 
31060: 
31061: static int
31062: test_xmlTextReaderExpand(void) {
31063:     int test_ret = 0;
31064: 
31065: #if defined(LIBXML_READER_ENABLED)
31066:     int mem_base;
31067:     xmlNodePtr ret_val;
31068:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31069:     int n_reader;
31070: 
31071:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31072:         mem_base = xmlMemBlocks();
31073:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31074: 
31075:         ret_val = xmlTextReaderExpand(reader);
31076:         desret_xmlNodePtr(ret_val);
31077:         call_tests++;
31078:         des_xmlTextReaderPtr(n_reader, reader, 0);
31079:         xmlResetLastError();
31080:         if (mem_base != xmlMemBlocks()) {
31081:             printf("Leak of %d blocks found in xmlTextReaderExpand",
31082: 	           xmlMemBlocks() - mem_base);
31083: 	    test_ret++;
31084:             printf(" %d", n_reader);
31085:             printf("\n");
31086:         }
31087:     }
31088:     function_tests++;
31089: #endif
31090: 
31091:     return(test_ret);
31092: }
31093: 
31094: 
31095: static int
31096: test_xmlTextReaderGetAttribute(void) {
31097:     int test_ret = 0;
31098: 
31099: #if defined(LIBXML_READER_ENABLED)
31100:     int mem_base;
31101:     xmlChar * ret_val;
31102:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31103:     int n_reader;
31104:     xmlChar * name; /* the qualified name of the attribute. */
31105:     int n_name;
31106: 
31107:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31108:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
31109:         mem_base = xmlMemBlocks();
31110:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31111:         name = gen_const_xmlChar_ptr(n_name, 1);
31112: 
31113:         ret_val = xmlTextReaderGetAttribute(reader, (const xmlChar *)name);
31114:         desret_xmlChar_ptr(ret_val);
31115:         call_tests++;
31116:         des_xmlTextReaderPtr(n_reader, reader, 0);
31117:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
31118:         xmlResetLastError();
31119:         if (mem_base != xmlMemBlocks()) {
31120:             printf("Leak of %d blocks found in xmlTextReaderGetAttribute",
31121: 	           xmlMemBlocks() - mem_base);
31122: 	    test_ret++;
31123:             printf(" %d", n_reader);
31124:             printf(" %d", n_name);
31125:             printf("\n");
31126:         }
31127:     }
31128:     }
31129:     function_tests++;
31130: #endif
31131: 
31132:     return(test_ret);
31133: }
31134: 
31135: 
31136: static int
31137: test_xmlTextReaderGetAttributeNo(void) {
31138:     int test_ret = 0;
31139: 
31140: #if defined(LIBXML_READER_ENABLED)
31141:     int mem_base;
31142:     xmlChar * ret_val;
31143:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31144:     int n_reader;
31145:     int no; /* the zero-based index of the attribute relative to the containing element */
31146:     int n_no;
31147: 
31148:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31149:     for (n_no = 0;n_no < gen_nb_int;n_no++) {
31150:         mem_base = xmlMemBlocks();
31151:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31152:         no = gen_int(n_no, 1);
31153: 
31154:         ret_val = xmlTextReaderGetAttributeNo(reader, no);
31155:         desret_xmlChar_ptr(ret_val);
31156:         call_tests++;
31157:         des_xmlTextReaderPtr(n_reader, reader, 0);
31158:         des_int(n_no, no, 1);
31159:         xmlResetLastError();
31160:         if (mem_base != xmlMemBlocks()) {
31161:             printf("Leak of %d blocks found in xmlTextReaderGetAttributeNo",
31162: 	           xmlMemBlocks() - mem_base);
31163: 	    test_ret++;
31164:             printf(" %d", n_reader);
31165:             printf(" %d", n_no);
31166:             printf("\n");
31167:         }
31168:     }
31169:     }
31170:     function_tests++;
31171: #endif
31172: 
31173:     return(test_ret);
31174: }
31175: 
31176: 
31177: static int
31178: test_xmlTextReaderGetAttributeNs(void) {
31179:     int test_ret = 0;
31180: 
31181: #if defined(LIBXML_READER_ENABLED)
31182:     int mem_base;
31183:     xmlChar * ret_val;
31184:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31185:     int n_reader;
31186:     xmlChar * localName; /* the local name of the attribute. */
31187:     int n_localName;
31188:     xmlChar * namespaceURI; /* the namespace URI of the attribute. */
31189:     int n_namespaceURI;
31190: 
31191:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31192:     for (n_localName = 0;n_localName < gen_nb_const_xmlChar_ptr;n_localName++) {
31193:     for (n_namespaceURI = 0;n_namespaceURI < gen_nb_const_xmlChar_ptr;n_namespaceURI++) {
31194:         mem_base = xmlMemBlocks();
31195:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31196:         localName = gen_const_xmlChar_ptr(n_localName, 1);
31197:         namespaceURI = gen_const_xmlChar_ptr(n_namespaceURI, 2);
31198: 
31199:         ret_val = xmlTextReaderGetAttributeNs(reader, (const xmlChar *)localName, (const xmlChar *)namespaceURI);
31200:         desret_xmlChar_ptr(ret_val);
31201:         call_tests++;
31202:         des_xmlTextReaderPtr(n_reader, reader, 0);
31203:         des_const_xmlChar_ptr(n_localName, (const xmlChar *)localName, 1);
31204:         des_const_xmlChar_ptr(n_namespaceURI, (const xmlChar *)namespaceURI, 2);
31205:         xmlResetLastError();
31206:         if (mem_base != xmlMemBlocks()) {
31207:             printf("Leak of %d blocks found in xmlTextReaderGetAttributeNs",
31208: 	           xmlMemBlocks() - mem_base);
31209: 	    test_ret++;
31210:             printf(" %d", n_reader);
31211:             printf(" %d", n_localName);
31212:             printf(" %d", n_namespaceURI);
31213:             printf("\n");
31214:         }
31215:     }
31216:     }
31217:     }
31218:     function_tests++;
31219: #endif
31220: 
31221:     return(test_ret);
31222: }
31223: 
31224: #ifdef LIBXML_READER_ENABLED
31225: 
31226: #define gen_nb_xmlTextReaderErrorFunc_ptr 1
31227: static xmlTextReaderErrorFunc * gen_xmlTextReaderErrorFunc_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
31228:     return(NULL);
31229: }
31230: static void des_xmlTextReaderErrorFunc_ptr(int no ATTRIBUTE_UNUSED, xmlTextReaderErrorFunc * val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
31231: }
31232: #endif
31233: 
31234: 
31235: static int
31236: test_xmlTextReaderGetErrorHandler(void) {
31237:     int test_ret = 0;
31238: 
31239: #if defined(LIBXML_READER_ENABLED)
31240:     int mem_base;
31241:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31242:     int n_reader;
31243:     xmlTextReaderErrorFunc * f; /* the callback function or NULL is no callback has been registered */
31244:     int n_f;
31245:     void ** arg; /* a user argument */
31246:     int n_arg;
31247: 
31248:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31249:     for (n_f = 0;n_f < gen_nb_xmlTextReaderErrorFunc_ptr;n_f++) {
31250:     for (n_arg = 0;n_arg < gen_nb_void_ptr_ptr;n_arg++) {
31251:         mem_base = xmlMemBlocks();
31252:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31253:         f = gen_xmlTextReaderErrorFunc_ptr(n_f, 1);
31254:         arg = gen_void_ptr_ptr(n_arg, 2);
31255: 
31256:         xmlTextReaderGetErrorHandler(reader, f, arg);
31257:         call_tests++;
31258:         des_xmlTextReaderPtr(n_reader, reader, 0);
31259:         des_xmlTextReaderErrorFunc_ptr(n_f, f, 1);
31260:         des_void_ptr_ptr(n_arg, arg, 2);
31261:         xmlResetLastError();
31262:         if (mem_base != xmlMemBlocks()) {
31263:             printf("Leak of %d blocks found in xmlTextReaderGetErrorHandler",
31264: 	           xmlMemBlocks() - mem_base);
31265: 	    test_ret++;
31266:             printf(" %d", n_reader);
31267:             printf(" %d", n_f);
31268:             printf(" %d", n_arg);
31269:             printf("\n");
31270:         }
31271:     }
31272:     }
31273:     }
31274:     function_tests++;
31275: #endif
31276: 
31277:     return(test_ret);
31278: }
31279: 
31280: 
31281: static int
31282: test_xmlTextReaderGetParserColumnNumber(void) {
31283:     int test_ret = 0;
31284: 
31285: #if defined(LIBXML_READER_ENABLED)
31286:     int mem_base;
31287:     int ret_val;
31288:     xmlTextReaderPtr reader; /* the user data (XML reader context) */
31289:     int n_reader;
31290: 
31291:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31292:         mem_base = xmlMemBlocks();
31293:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31294: 
31295:         ret_val = xmlTextReaderGetParserColumnNumber(reader);
31296:         desret_int(ret_val);
31297:         call_tests++;
31298:         des_xmlTextReaderPtr(n_reader, reader, 0);
31299:         xmlResetLastError();
31300:         if (mem_base != xmlMemBlocks()) {
31301:             printf("Leak of %d blocks found in xmlTextReaderGetParserColumnNumber",
31302: 	           xmlMemBlocks() - mem_base);
31303: 	    test_ret++;
31304:             printf(" %d", n_reader);
31305:             printf("\n");
31306:         }
31307:     }
31308:     function_tests++;
31309: #endif
31310: 
31311:     return(test_ret);
31312: }
31313: 
31314: 
31315: static int
31316: test_xmlTextReaderGetParserLineNumber(void) {
31317:     int test_ret = 0;
31318: 
31319: #if defined(LIBXML_READER_ENABLED)
31320:     int mem_base;
31321:     int ret_val;
31322:     xmlTextReaderPtr reader; /* the user data (XML reader context) */
31323:     int n_reader;
31324: 
31325:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31326:         mem_base = xmlMemBlocks();
31327:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31328: 
31329:         ret_val = xmlTextReaderGetParserLineNumber(reader);
31330:         desret_int(ret_val);
31331:         call_tests++;
31332:         des_xmlTextReaderPtr(n_reader, reader, 0);
31333:         xmlResetLastError();
31334:         if (mem_base != xmlMemBlocks()) {
31335:             printf("Leak of %d blocks found in xmlTextReaderGetParserLineNumber",
31336: 	           xmlMemBlocks() - mem_base);
31337: 	    test_ret++;
31338:             printf(" %d", n_reader);
31339:             printf("\n");
31340:         }
31341:     }
31342:     function_tests++;
31343: #endif
31344: 
31345:     return(test_ret);
31346: }
31347: 
31348: 
31349: static int
31350: test_xmlTextReaderGetParserProp(void) {
31351:     int test_ret = 0;
31352: 
31353: #if defined(LIBXML_READER_ENABLED)
31354:     int mem_base;
31355:     int ret_val;
31356:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31357:     int n_reader;
31358:     int prop; /* the xmlParserProperties to get */
31359:     int n_prop;
31360: 
31361:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31362:     for (n_prop = 0;n_prop < gen_nb_int;n_prop++) {
31363:         mem_base = xmlMemBlocks();
31364:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31365:         prop = gen_int(n_prop, 1);
31366: 
31367:         ret_val = xmlTextReaderGetParserProp(reader, prop);
31368:         desret_int(ret_val);
31369:         call_tests++;
31370:         des_xmlTextReaderPtr(n_reader, reader, 0);
31371:         des_int(n_prop, prop, 1);
31372:         xmlResetLastError();
31373:         if (mem_base != xmlMemBlocks()) {
31374:             printf("Leak of %d blocks found in xmlTextReaderGetParserProp",
31375: 	           xmlMemBlocks() - mem_base);
31376: 	    test_ret++;
31377:             printf(" %d", n_reader);
31378:             printf(" %d", n_prop);
31379:             printf("\n");
31380:         }
31381:     }
31382:     }
31383:     function_tests++;
31384: #endif
31385: 
31386:     return(test_ret);
31387: }
31388: 
31389: 
31390: static int
31391: test_xmlTextReaderGetRemainder(void) {
31392:     int test_ret = 0;
31393: 
31394: #if defined(LIBXML_READER_ENABLED)
31395:     int mem_base;
31396:     xmlParserInputBufferPtr ret_val;
31397:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31398:     int n_reader;
31399: 
31400:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31401:         mem_base = xmlMemBlocks();
31402:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31403: 
31404:         ret_val = xmlTextReaderGetRemainder(reader);
31405:         desret_xmlParserInputBufferPtr(ret_val);
31406:         call_tests++;
31407:         des_xmlTextReaderPtr(n_reader, reader, 0);
31408:         xmlResetLastError();
31409:         if (mem_base != xmlMemBlocks()) {
31410:             printf("Leak of %d blocks found in xmlTextReaderGetRemainder",
31411: 	           xmlMemBlocks() - mem_base);
31412: 	    test_ret++;
31413:             printf(" %d", n_reader);
31414:             printf("\n");
31415:         }
31416:     }
31417:     function_tests++;
31418: #endif
31419: 
31420:     return(test_ret);
31421: }
31422: 
31423: 
31424: static int
31425: test_xmlTextReaderHasAttributes(void) {
31426:     int test_ret = 0;
31427: 
31428: #if defined(LIBXML_READER_ENABLED)
31429:     int mem_base;
31430:     int ret_val;
31431:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31432:     int n_reader;
31433: 
31434:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31435:         mem_base = xmlMemBlocks();
31436:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31437: 
31438:         ret_val = xmlTextReaderHasAttributes(reader);
31439:         desret_int(ret_val);
31440:         call_tests++;
31441:         des_xmlTextReaderPtr(n_reader, reader, 0);
31442:         xmlResetLastError();
31443:         if (mem_base != xmlMemBlocks()) {
31444:             printf("Leak of %d blocks found in xmlTextReaderHasAttributes",
31445: 	           xmlMemBlocks() - mem_base);
31446: 	    test_ret++;
31447:             printf(" %d", n_reader);
31448:             printf("\n");
31449:         }
31450:     }
31451:     function_tests++;
31452: #endif
31453: 
31454:     return(test_ret);
31455: }
31456: 
31457: 
31458: static int
31459: test_xmlTextReaderHasValue(void) {
31460:     int test_ret = 0;
31461: 
31462: #if defined(LIBXML_READER_ENABLED)
31463:     int mem_base;
31464:     int ret_val;
31465:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31466:     int n_reader;
31467: 
31468:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31469:         mem_base = xmlMemBlocks();
31470:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31471: 
31472:         ret_val = xmlTextReaderHasValue(reader);
31473:         desret_int(ret_val);
31474:         call_tests++;
31475:         des_xmlTextReaderPtr(n_reader, reader, 0);
31476:         xmlResetLastError();
31477:         if (mem_base != xmlMemBlocks()) {
31478:             printf("Leak of %d blocks found in xmlTextReaderHasValue",
31479: 	           xmlMemBlocks() - mem_base);
31480: 	    test_ret++;
31481:             printf(" %d", n_reader);
31482:             printf("\n");
31483:         }
31484:     }
31485:     function_tests++;
31486: #endif
31487: 
31488:     return(test_ret);
31489: }
31490: 
31491: 
31492: static int
31493: test_xmlTextReaderIsDefault(void) {
31494:     int test_ret = 0;
31495: 
31496: #if defined(LIBXML_READER_ENABLED)
31497:     int mem_base;
31498:     int ret_val;
31499:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31500:     int n_reader;
31501: 
31502:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31503:         mem_base = xmlMemBlocks();
31504:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31505: 
31506:         ret_val = xmlTextReaderIsDefault(reader);
31507:         desret_int(ret_val);
31508:         call_tests++;
31509:         des_xmlTextReaderPtr(n_reader, reader, 0);
31510:         xmlResetLastError();
31511:         if (mem_base != xmlMemBlocks()) {
31512:             printf("Leak of %d blocks found in xmlTextReaderIsDefault",
31513: 	           xmlMemBlocks() - mem_base);
31514: 	    test_ret++;
31515:             printf(" %d", n_reader);
31516:             printf("\n");
31517:         }
31518:     }
31519:     function_tests++;
31520: #endif
31521: 
31522:     return(test_ret);
31523: }
31524: 
31525: 
31526: static int
31527: test_xmlTextReaderIsEmptyElement(void) {
31528:     int test_ret = 0;
31529: 
31530: #if defined(LIBXML_READER_ENABLED)
31531:     int mem_base;
31532:     int ret_val;
31533:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31534:     int n_reader;
31535: 
31536:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31537:         mem_base = xmlMemBlocks();
31538:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31539: 
31540:         ret_val = xmlTextReaderIsEmptyElement(reader);
31541:         desret_int(ret_val);
31542:         call_tests++;
31543:         des_xmlTextReaderPtr(n_reader, reader, 0);
31544:         xmlResetLastError();
31545:         if (mem_base != xmlMemBlocks()) {
31546:             printf("Leak of %d blocks found in xmlTextReaderIsEmptyElement",
31547: 	           xmlMemBlocks() - mem_base);
31548: 	    test_ret++;
31549:             printf(" %d", n_reader);
31550:             printf("\n");
31551:         }
31552:     }
31553:     function_tests++;
31554: #endif
31555: 
31556:     return(test_ret);
31557: }
31558: 
31559: 
31560: static int
31561: test_xmlTextReaderIsNamespaceDecl(void) {
31562:     int test_ret = 0;
31563: 
31564: #if defined(LIBXML_READER_ENABLED)
31565:     int mem_base;
31566:     int ret_val;
31567:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31568:     int n_reader;
31569: 
31570:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31571:         mem_base = xmlMemBlocks();
31572:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31573: 
31574:         ret_val = xmlTextReaderIsNamespaceDecl(reader);
31575:         desret_int(ret_val);
31576:         call_tests++;
31577:         des_xmlTextReaderPtr(n_reader, reader, 0);
31578:         xmlResetLastError();
31579:         if (mem_base != xmlMemBlocks()) {
31580:             printf("Leak of %d blocks found in xmlTextReaderIsNamespaceDecl",
31581: 	           xmlMemBlocks() - mem_base);
31582: 	    test_ret++;
31583:             printf(" %d", n_reader);
31584:             printf("\n");
31585:         }
31586:     }
31587:     function_tests++;
31588: #endif
31589: 
31590:     return(test_ret);
31591: }
31592: 
31593: 
31594: static int
31595: test_xmlTextReaderIsValid(void) {
31596:     int test_ret = 0;
31597: 
31598: #if defined(LIBXML_READER_ENABLED)
31599:     int mem_base;
31600:     int ret_val;
31601:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31602:     int n_reader;
31603: 
31604:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31605:         mem_base = xmlMemBlocks();
31606:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31607: 
31608:         ret_val = xmlTextReaderIsValid(reader);
31609:         desret_int(ret_val);
31610:         call_tests++;
31611:         des_xmlTextReaderPtr(n_reader, reader, 0);
31612:         xmlResetLastError();
31613:         if (mem_base != xmlMemBlocks()) {
31614:             printf("Leak of %d blocks found in xmlTextReaderIsValid",
31615: 	           xmlMemBlocks() - mem_base);
31616: 	    test_ret++;
31617:             printf(" %d", n_reader);
31618:             printf("\n");
31619:         }
31620:     }
31621:     function_tests++;
31622: #endif
31623: 
31624:     return(test_ret);
31625: }
31626: 
31627: 
31628: static int
31629: test_xmlTextReaderLocalName(void) {
31630:     int test_ret = 0;
31631: 
31632: #if defined(LIBXML_READER_ENABLED)
31633:     int mem_base;
31634:     xmlChar * ret_val;
31635:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31636:     int n_reader;
31637: 
31638:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31639:         mem_base = xmlMemBlocks();
31640:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31641: 
31642:         ret_val = xmlTextReaderLocalName(reader);
31643:         desret_xmlChar_ptr(ret_val);
31644:         call_tests++;
31645:         des_xmlTextReaderPtr(n_reader, reader, 0);
31646:         xmlResetLastError();
31647:         if (mem_base != xmlMemBlocks()) {
31648:             printf("Leak of %d blocks found in xmlTextReaderLocalName",
31649: 	           xmlMemBlocks() - mem_base);
31650: 	    test_ret++;
31651:             printf(" %d", n_reader);
31652:             printf("\n");
31653:         }
31654:     }
31655:     function_tests++;
31656: #endif
31657: 
31658:     return(test_ret);
31659: }
31660: 
31661: #ifdef LIBXML_READER_ENABLED
31662: 
31663: #define gen_nb_xmlTextReaderLocatorPtr 1
31664: static xmlTextReaderLocatorPtr gen_xmlTextReaderLocatorPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
31665:     return(NULL);
31666: }
31667: static void des_xmlTextReaderLocatorPtr(int no ATTRIBUTE_UNUSED, xmlTextReaderLocatorPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
31668: }
31669: #endif
31670: 
31671: 
31672: static int
31673: test_xmlTextReaderLocatorBaseURI(void) {
31674:     int test_ret = 0;
31675: 
31676: #if defined(LIBXML_READER_ENABLED)
31677:     int mem_base;
31678:     xmlChar * ret_val;
31679:     xmlTextReaderLocatorPtr locator; /* the xmlTextReaderLocatorPtr used */
31680:     int n_locator;
31681: 
31682:     for (n_locator = 0;n_locator < gen_nb_xmlTextReaderLocatorPtr;n_locator++) {
31683:         mem_base = xmlMemBlocks();
31684:         locator = gen_xmlTextReaderLocatorPtr(n_locator, 0);
31685: 
31686:         ret_val = xmlTextReaderLocatorBaseURI(locator);
31687:         desret_xmlChar_ptr(ret_val);
31688:         call_tests++;
31689:         des_xmlTextReaderLocatorPtr(n_locator, locator, 0);
31690:         xmlResetLastError();
31691:         if (mem_base != xmlMemBlocks()) {
31692:             printf("Leak of %d blocks found in xmlTextReaderLocatorBaseURI",
31693: 	           xmlMemBlocks() - mem_base);
31694: 	    test_ret++;
31695:             printf(" %d", n_locator);
31696:             printf("\n");
31697:         }
31698:     }
31699:     function_tests++;
31700: #endif
31701: 
31702:     return(test_ret);
31703: }
31704: 
31705: 
31706: static int
31707: test_xmlTextReaderLocatorLineNumber(void) {
31708:     int test_ret = 0;
31709: 
31710: #if defined(LIBXML_READER_ENABLED)
31711:     int mem_base;
31712:     int ret_val;
31713:     xmlTextReaderLocatorPtr locator; /* the xmlTextReaderLocatorPtr used */
31714:     int n_locator;
31715: 
31716:     for (n_locator = 0;n_locator < gen_nb_xmlTextReaderLocatorPtr;n_locator++) {
31717:         mem_base = xmlMemBlocks();
31718:         locator = gen_xmlTextReaderLocatorPtr(n_locator, 0);
31719: 
31720:         ret_val = xmlTextReaderLocatorLineNumber(locator);
31721:         desret_int(ret_val);
31722:         call_tests++;
31723:         des_xmlTextReaderLocatorPtr(n_locator, locator, 0);
31724:         xmlResetLastError();
31725:         if (mem_base != xmlMemBlocks()) {
31726:             printf("Leak of %d blocks found in xmlTextReaderLocatorLineNumber",
31727: 	           xmlMemBlocks() - mem_base);
31728: 	    test_ret++;
31729:             printf(" %d", n_locator);
31730:             printf("\n");
31731:         }
31732:     }
31733:     function_tests++;
31734: #endif
31735: 
31736:     return(test_ret);
31737: }
31738: 
31739: 
31740: static int
31741: test_xmlTextReaderLookupNamespace(void) {
31742:     int test_ret = 0;
31743: 
31744: #if defined(LIBXML_READER_ENABLED)
31745:     int mem_base;
31746:     xmlChar * ret_val;
31747:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31748:     int n_reader;
31749:     xmlChar * prefix; /* the prefix whose namespace URI is to be resolved. To return the default namespace, specify NULL */
31750:     int n_prefix;
31751: 
31752:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31753:     for (n_prefix = 0;n_prefix < gen_nb_const_xmlChar_ptr;n_prefix++) {
31754:         mem_base = xmlMemBlocks();
31755:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31756:         prefix = gen_const_xmlChar_ptr(n_prefix, 1);
31757: 
31758:         ret_val = xmlTextReaderLookupNamespace(reader, (const xmlChar *)prefix);
31759:         desret_xmlChar_ptr(ret_val);
31760:         call_tests++;
31761:         des_xmlTextReaderPtr(n_reader, reader, 0);
31762:         des_const_xmlChar_ptr(n_prefix, (const xmlChar *)prefix, 1);
31763:         xmlResetLastError();
31764:         if (mem_base != xmlMemBlocks()) {
31765:             printf("Leak of %d blocks found in xmlTextReaderLookupNamespace",
31766: 	           xmlMemBlocks() - mem_base);
31767: 	    test_ret++;
31768:             printf(" %d", n_reader);
31769:             printf(" %d", n_prefix);
31770:             printf("\n");
31771:         }
31772:     }
31773:     }
31774:     function_tests++;
31775: #endif
31776: 
31777:     return(test_ret);
31778: }
31779: 
31780: 
31781: static int
31782: test_xmlTextReaderMoveToAttribute(void) {
31783:     int test_ret = 0;
31784: 
31785: #if defined(LIBXML_READER_ENABLED)
31786:     int mem_base;
31787:     int ret_val;
31788:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31789:     int n_reader;
31790:     xmlChar * name; /* the qualified name of the attribute. */
31791:     int n_name;
31792: 
31793:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31794:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
31795:         mem_base = xmlMemBlocks();
31796:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31797:         name = gen_const_xmlChar_ptr(n_name, 1);
31798: 
31799:         ret_val = xmlTextReaderMoveToAttribute(reader, (const xmlChar *)name);
31800:         desret_int(ret_val);
31801:         call_tests++;
31802:         des_xmlTextReaderPtr(n_reader, reader, 0);
31803:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
31804:         xmlResetLastError();
31805:         if (mem_base != xmlMemBlocks()) {
31806:             printf("Leak of %d blocks found in xmlTextReaderMoveToAttribute",
31807: 	           xmlMemBlocks() - mem_base);
31808: 	    test_ret++;
31809:             printf(" %d", n_reader);
31810:             printf(" %d", n_name);
31811:             printf("\n");
31812:         }
31813:     }
31814:     }
31815:     function_tests++;
31816: #endif
31817: 
31818:     return(test_ret);
31819: }
31820: 
31821: 
31822: static int
31823: test_xmlTextReaderMoveToAttributeNo(void) {
31824:     int test_ret = 0;
31825: 
31826: #if defined(LIBXML_READER_ENABLED)
31827:     int mem_base;
31828:     int ret_val;
31829:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31830:     int n_reader;
31831:     int no; /* the zero-based index of the attribute relative to the containing element. */
31832:     int n_no;
31833: 
31834:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31835:     for (n_no = 0;n_no < gen_nb_int;n_no++) {
31836:         mem_base = xmlMemBlocks();
31837:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31838:         no = gen_int(n_no, 1);
31839: 
31840:         ret_val = xmlTextReaderMoveToAttributeNo(reader, no);
31841:         desret_int(ret_val);
31842:         call_tests++;
31843:         des_xmlTextReaderPtr(n_reader, reader, 0);
31844:         des_int(n_no, no, 1);
31845:         xmlResetLastError();
31846:         if (mem_base != xmlMemBlocks()) {
31847:             printf("Leak of %d blocks found in xmlTextReaderMoveToAttributeNo",
31848: 	           xmlMemBlocks() - mem_base);
31849: 	    test_ret++;
31850:             printf(" %d", n_reader);
31851:             printf(" %d", n_no);
31852:             printf("\n");
31853:         }
31854:     }
31855:     }
31856:     function_tests++;
31857: #endif
31858: 
31859:     return(test_ret);
31860: }
31861: 
31862: 
31863: static int
31864: test_xmlTextReaderMoveToAttributeNs(void) {
31865:     int test_ret = 0;
31866: 
31867: #if defined(LIBXML_READER_ENABLED)
31868:     int mem_base;
31869:     int ret_val;
31870:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31871:     int n_reader;
31872:     xmlChar * localName; /* the local name of the attribute. */
31873:     int n_localName;
31874:     xmlChar * namespaceURI; /* the namespace URI of the attribute. */
31875:     int n_namespaceURI;
31876: 
31877:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31878:     for (n_localName = 0;n_localName < gen_nb_const_xmlChar_ptr;n_localName++) {
31879:     for (n_namespaceURI = 0;n_namespaceURI < gen_nb_const_xmlChar_ptr;n_namespaceURI++) {
31880:         mem_base = xmlMemBlocks();
31881:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31882:         localName = gen_const_xmlChar_ptr(n_localName, 1);
31883:         namespaceURI = gen_const_xmlChar_ptr(n_namespaceURI, 2);
31884: 
31885:         ret_val = xmlTextReaderMoveToAttributeNs(reader, (const xmlChar *)localName, (const xmlChar *)namespaceURI);
31886:         desret_int(ret_val);
31887:         call_tests++;
31888:         des_xmlTextReaderPtr(n_reader, reader, 0);
31889:         des_const_xmlChar_ptr(n_localName, (const xmlChar *)localName, 1);
31890:         des_const_xmlChar_ptr(n_namespaceURI, (const xmlChar *)namespaceURI, 2);
31891:         xmlResetLastError();
31892:         if (mem_base != xmlMemBlocks()) {
31893:             printf("Leak of %d blocks found in xmlTextReaderMoveToAttributeNs",
31894: 	           xmlMemBlocks() - mem_base);
31895: 	    test_ret++;
31896:             printf(" %d", n_reader);
31897:             printf(" %d", n_localName);
31898:             printf(" %d", n_namespaceURI);
31899:             printf("\n");
31900:         }
31901:     }
31902:     }
31903:     }
31904:     function_tests++;
31905: #endif
31906: 
31907:     return(test_ret);
31908: }
31909: 
31910: 
31911: static int
31912: test_xmlTextReaderMoveToElement(void) {
31913:     int test_ret = 0;
31914: 
31915: #if defined(LIBXML_READER_ENABLED)
31916:     int mem_base;
31917:     int ret_val;
31918:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31919:     int n_reader;
31920: 
31921:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31922:         mem_base = xmlMemBlocks();
31923:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31924: 
31925:         ret_val = xmlTextReaderMoveToElement(reader);
31926:         desret_int(ret_val);
31927:         call_tests++;
31928:         des_xmlTextReaderPtr(n_reader, reader, 0);
31929:         xmlResetLastError();
31930:         if (mem_base != xmlMemBlocks()) {
31931:             printf("Leak of %d blocks found in xmlTextReaderMoveToElement",
31932: 	           xmlMemBlocks() - mem_base);
31933: 	    test_ret++;
31934:             printf(" %d", n_reader);
31935:             printf("\n");
31936:         }
31937:     }
31938:     function_tests++;
31939: #endif
31940: 
31941:     return(test_ret);
31942: }
31943: 
31944: 
31945: static int
31946: test_xmlTextReaderMoveToFirstAttribute(void) {
31947:     int test_ret = 0;
31948: 
31949: #if defined(LIBXML_READER_ENABLED)
31950:     int mem_base;
31951:     int ret_val;
31952:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31953:     int n_reader;
31954: 
31955:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31956:         mem_base = xmlMemBlocks();
31957:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31958: 
31959:         ret_val = xmlTextReaderMoveToFirstAttribute(reader);
31960:         desret_int(ret_val);
31961:         call_tests++;
31962:         des_xmlTextReaderPtr(n_reader, reader, 0);
31963:         xmlResetLastError();
31964:         if (mem_base != xmlMemBlocks()) {
31965:             printf("Leak of %d blocks found in xmlTextReaderMoveToFirstAttribute",
31966: 	           xmlMemBlocks() - mem_base);
31967: 	    test_ret++;
31968:             printf(" %d", n_reader);
31969:             printf("\n");
31970:         }
31971:     }
31972:     function_tests++;
31973: #endif
31974: 
31975:     return(test_ret);
31976: }
31977: 
31978: 
31979: static int
31980: test_xmlTextReaderMoveToNextAttribute(void) {
31981:     int test_ret = 0;
31982: 
31983: #if defined(LIBXML_READER_ENABLED)
31984:     int mem_base;
31985:     int ret_val;
31986:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
31987:     int n_reader;
31988: 
31989:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
31990:         mem_base = xmlMemBlocks();
31991:         reader = gen_xmlTextReaderPtr(n_reader, 0);
31992: 
31993:         ret_val = xmlTextReaderMoveToNextAttribute(reader);
31994:         desret_int(ret_val);
31995:         call_tests++;
31996:         des_xmlTextReaderPtr(n_reader, reader, 0);
31997:         xmlResetLastError();
31998:         if (mem_base != xmlMemBlocks()) {
31999:             printf("Leak of %d blocks found in xmlTextReaderMoveToNextAttribute",
32000: 	           xmlMemBlocks() - mem_base);
32001: 	    test_ret++;
32002:             printf(" %d", n_reader);
32003:             printf("\n");
32004:         }
32005:     }
32006:     function_tests++;
32007: #endif
32008: 
32009:     return(test_ret);
32010: }
32011: 
32012: 
32013: static int
32014: test_xmlTextReaderName(void) {
32015:     int test_ret = 0;
32016: 
32017: #if defined(LIBXML_READER_ENABLED)
32018:     int mem_base;
32019:     xmlChar * ret_val;
32020:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32021:     int n_reader;
32022: 
32023:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32024:         mem_base = xmlMemBlocks();
32025:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32026: 
32027:         ret_val = xmlTextReaderName(reader);
32028:         desret_xmlChar_ptr(ret_val);
32029:         call_tests++;
32030:         des_xmlTextReaderPtr(n_reader, reader, 0);
32031:         xmlResetLastError();
32032:         if (mem_base != xmlMemBlocks()) {
32033:             printf("Leak of %d blocks found in xmlTextReaderName",
32034: 	           xmlMemBlocks() - mem_base);
32035: 	    test_ret++;
32036:             printf(" %d", n_reader);
32037:             printf("\n");
32038:         }
32039:     }
32040:     function_tests++;
32041: #endif
32042: 
32043:     return(test_ret);
32044: }
32045: 
32046: 
32047: static int
32048: test_xmlTextReaderNamespaceUri(void) {
32049:     int test_ret = 0;
32050: 
32051: #if defined(LIBXML_READER_ENABLED)
32052:     int mem_base;
32053:     xmlChar * ret_val;
32054:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32055:     int n_reader;
32056: 
32057:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32058:         mem_base = xmlMemBlocks();
32059:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32060: 
32061:         ret_val = xmlTextReaderNamespaceUri(reader);
32062:         desret_xmlChar_ptr(ret_val);
32063:         call_tests++;
32064:         des_xmlTextReaderPtr(n_reader, reader, 0);
32065:         xmlResetLastError();
32066:         if (mem_base != xmlMemBlocks()) {
32067:             printf("Leak of %d blocks found in xmlTextReaderNamespaceUri",
32068: 	           xmlMemBlocks() - mem_base);
32069: 	    test_ret++;
32070:             printf(" %d", n_reader);
32071:             printf("\n");
32072:         }
32073:     }
32074:     function_tests++;
32075: #endif
32076: 
32077:     return(test_ret);
32078: }
32079: 
32080: 
32081: static int
32082: test_xmlTextReaderNext(void) {
32083:     int test_ret = 0;
32084: 
32085: #if defined(LIBXML_READER_ENABLED)
32086:     int mem_base;
32087:     int ret_val;
32088:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32089:     int n_reader;
32090: 
32091:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32092:         mem_base = xmlMemBlocks();
32093:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32094: 
32095:         ret_val = xmlTextReaderNext(reader);
32096:         desret_int(ret_val);
32097:         call_tests++;
32098:         des_xmlTextReaderPtr(n_reader, reader, 0);
32099:         xmlResetLastError();
32100:         if (mem_base != xmlMemBlocks()) {
32101:             printf("Leak of %d blocks found in xmlTextReaderNext",
32102: 	           xmlMemBlocks() - mem_base);
32103: 	    test_ret++;
32104:             printf(" %d", n_reader);
32105:             printf("\n");
32106:         }
32107:     }
32108:     function_tests++;
32109: #endif
32110: 
32111:     return(test_ret);
32112: }
32113: 
32114: 
32115: static int
32116: test_xmlTextReaderNextSibling(void) {
32117:     int test_ret = 0;
32118: 
32119: #if defined(LIBXML_READER_ENABLED)
32120:     int mem_base;
32121:     int ret_val;
32122:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32123:     int n_reader;
32124: 
32125:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32126:         mem_base = xmlMemBlocks();
32127:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32128: 
32129:         ret_val = xmlTextReaderNextSibling(reader);
32130:         desret_int(ret_val);
32131:         call_tests++;
32132:         des_xmlTextReaderPtr(n_reader, reader, 0);
32133:         xmlResetLastError();
32134:         if (mem_base != xmlMemBlocks()) {
32135:             printf("Leak of %d blocks found in xmlTextReaderNextSibling",
32136: 	           xmlMemBlocks() - mem_base);
32137: 	    test_ret++;
32138:             printf(" %d", n_reader);
32139:             printf("\n");
32140:         }
32141:     }
32142:     function_tests++;
32143: #endif
32144: 
32145:     return(test_ret);
32146: }
32147: 
32148: 
32149: static int
32150: test_xmlTextReaderNodeType(void) {
32151:     int test_ret = 0;
32152: 
32153: #if defined(LIBXML_READER_ENABLED)
32154:     int mem_base;
32155:     int ret_val;
32156:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32157:     int n_reader;
32158: 
32159:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32160:         mem_base = xmlMemBlocks();
32161:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32162: 
32163:         ret_val = xmlTextReaderNodeType(reader);
32164:         desret_int(ret_val);
32165:         call_tests++;
32166:         des_xmlTextReaderPtr(n_reader, reader, 0);
32167:         xmlResetLastError();
32168:         if (mem_base != xmlMemBlocks()) {
32169:             printf("Leak of %d blocks found in xmlTextReaderNodeType",
32170: 	           xmlMemBlocks() - mem_base);
32171: 	    test_ret++;
32172:             printf(" %d", n_reader);
32173:             printf("\n");
32174:         }
32175:     }
32176:     function_tests++;
32177: #endif
32178: 
32179:     return(test_ret);
32180: }
32181: 
32182: 
32183: static int
32184: test_xmlTextReaderNormalization(void) {
32185:     int test_ret = 0;
32186: 
32187: #if defined(LIBXML_READER_ENABLED)
32188:     int mem_base;
32189:     int ret_val;
32190:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32191:     int n_reader;
32192: 
32193:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32194:         mem_base = xmlMemBlocks();
32195:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32196: 
32197:         ret_val = xmlTextReaderNormalization(reader);
32198:         desret_int(ret_val);
32199:         call_tests++;
32200:         des_xmlTextReaderPtr(n_reader, reader, 0);
32201:         xmlResetLastError();
32202:         if (mem_base != xmlMemBlocks()) {
32203:             printf("Leak of %d blocks found in xmlTextReaderNormalization",
32204: 	           xmlMemBlocks() - mem_base);
32205: 	    test_ret++;
32206:             printf(" %d", n_reader);
32207:             printf("\n");
32208:         }
32209:     }
32210:     function_tests++;
32211: #endif
32212: 
32213:     return(test_ret);
32214: }
32215: 
32216: 
32217: static int
32218: test_xmlTextReaderPrefix(void) {
32219:     int test_ret = 0;
32220: 
32221: #if defined(LIBXML_READER_ENABLED)
32222:     int mem_base;
32223:     xmlChar * ret_val;
32224:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32225:     int n_reader;
32226: 
32227:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32228:         mem_base = xmlMemBlocks();
32229:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32230: 
32231:         ret_val = xmlTextReaderPrefix(reader);
32232:         desret_xmlChar_ptr(ret_val);
32233:         call_tests++;
32234:         des_xmlTextReaderPtr(n_reader, reader, 0);
32235:         xmlResetLastError();
32236:         if (mem_base != xmlMemBlocks()) {
32237:             printf("Leak of %d blocks found in xmlTextReaderPrefix",
32238: 	           xmlMemBlocks() - mem_base);
32239: 	    test_ret++;
32240:             printf(" %d", n_reader);
32241:             printf("\n");
32242:         }
32243:     }
32244:     function_tests++;
32245: #endif
32246: 
32247:     return(test_ret);
32248: }
32249: 
32250: 
32251: static int
32252: test_xmlTextReaderPreserve(void) {
32253:     int test_ret = 0;
32254: 
32255: #if defined(LIBXML_READER_ENABLED)
32256:     int mem_base;
32257:     xmlNodePtr ret_val;
32258:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32259:     int n_reader;
32260: 
32261:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32262:         mem_base = xmlMemBlocks();
32263:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32264: 
32265:         ret_val = xmlTextReaderPreserve(reader);
32266:         desret_xmlNodePtr(ret_val);
32267:         call_tests++;
32268:         des_xmlTextReaderPtr(n_reader, reader, 0);
32269:         xmlResetLastError();
32270:         if (mem_base != xmlMemBlocks()) {
32271:             printf("Leak of %d blocks found in xmlTextReaderPreserve",
32272: 	           xmlMemBlocks() - mem_base);
32273: 	    test_ret++;
32274:             printf(" %d", n_reader);
32275:             printf("\n");
32276:         }
32277:     }
32278:     function_tests++;
32279: #endif
32280: 
32281:     return(test_ret);
32282: }
32283: 
32284: 
32285: static int
32286: test_xmlTextReaderPreservePattern(void) {
32287:     int test_ret = 0;
32288: 
32289: #if defined(LIBXML_READER_ENABLED) && defined(LIBXML_PATTERN_ENABLED)
32290: #ifdef LIBXML_PATTERN_ENABLED
32291:     int mem_base;
32292:     int ret_val;
32293:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32294:     int n_reader;
32295:     xmlChar * pattern; /* an XPath subset pattern */
32296:     int n_pattern;
32297:     xmlChar ** namespaces; /* the prefix definitions, array of [URI, prefix] or NULL */
32298:     int n_namespaces;
32299: 
32300:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32301:     for (n_pattern = 0;n_pattern < gen_nb_const_xmlChar_ptr;n_pattern++) {
32302:     for (n_namespaces = 0;n_namespaces < gen_nb_const_xmlChar_ptr_ptr;n_namespaces++) {
32303:         mem_base = xmlMemBlocks();
32304:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32305:         pattern = gen_const_xmlChar_ptr(n_pattern, 1);
32306:         namespaces = gen_const_xmlChar_ptr_ptr(n_namespaces, 2);
32307: 
32308:         ret_val = xmlTextReaderPreservePattern(reader, (const xmlChar *)pattern, (const xmlChar **)namespaces);
32309:         desret_int(ret_val);
32310:         call_tests++;
32311:         des_xmlTextReaderPtr(n_reader, reader, 0);
32312:         des_const_xmlChar_ptr(n_pattern, (const xmlChar *)pattern, 1);
32313:         des_const_xmlChar_ptr_ptr(n_namespaces, (const xmlChar **)namespaces, 2);
32314:         xmlResetLastError();
32315:         if (mem_base != xmlMemBlocks()) {
32316:             printf("Leak of %d blocks found in xmlTextReaderPreservePattern",
32317: 	           xmlMemBlocks() - mem_base);
32318: 	    test_ret++;
32319:             printf(" %d", n_reader);
32320:             printf(" %d", n_pattern);
32321:             printf(" %d", n_namespaces);
32322:             printf("\n");
32323:         }
32324:     }
32325:     }
32326:     }
32327:     function_tests++;
32328: #endif
32329: #endif
32330: 
32331:     return(test_ret);
32332: }
32333: 
32334: 
32335: static int
32336: test_xmlTextReaderQuoteChar(void) {
32337:     int test_ret = 0;
32338: 
32339: #if defined(LIBXML_READER_ENABLED)
32340:     int mem_base;
32341:     int ret_val;
32342:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32343:     int n_reader;
32344: 
32345:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32346:         mem_base = xmlMemBlocks();
32347:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32348: 
32349:         ret_val = xmlTextReaderQuoteChar(reader);
32350:         desret_int(ret_val);
32351:         call_tests++;
32352:         des_xmlTextReaderPtr(n_reader, reader, 0);
32353:         xmlResetLastError();
32354:         if (mem_base != xmlMemBlocks()) {
32355:             printf("Leak of %d blocks found in xmlTextReaderQuoteChar",
32356: 	           xmlMemBlocks() - mem_base);
32357: 	    test_ret++;
32358:             printf(" %d", n_reader);
32359:             printf("\n");
32360:         }
32361:     }
32362:     function_tests++;
32363: #endif
32364: 
32365:     return(test_ret);
32366: }
32367: 
32368: 
32369: static int
32370: test_xmlTextReaderRead(void) {
32371:     int test_ret = 0;
32372: 
32373: #if defined(LIBXML_READER_ENABLED)
32374:     int mem_base;
32375:     int ret_val;
32376:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32377:     int n_reader;
32378: 
32379:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32380:         mem_base = xmlMemBlocks();
32381:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32382: 
32383:         ret_val = xmlTextReaderRead(reader);
32384:         desret_int(ret_val);
32385:         call_tests++;
32386:         des_xmlTextReaderPtr(n_reader, reader, 0);
32387:         xmlResetLastError();
32388:         if (mem_base != xmlMemBlocks()) {
32389:             printf("Leak of %d blocks found in xmlTextReaderRead",
32390: 	           xmlMemBlocks() - mem_base);
32391: 	    test_ret++;
32392:             printf(" %d", n_reader);
32393:             printf("\n");
32394:         }
32395:     }
32396:     function_tests++;
32397: #endif
32398: 
32399:     return(test_ret);
32400: }
32401: 
32402: 
32403: static int
32404: test_xmlTextReaderReadAttributeValue(void) {
32405:     int test_ret = 0;
32406: 
32407: #if defined(LIBXML_READER_ENABLED)
32408:     int mem_base;
32409:     int ret_val;
32410:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32411:     int n_reader;
32412: 
32413:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32414:         mem_base = xmlMemBlocks();
32415:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32416: 
32417:         ret_val = xmlTextReaderReadAttributeValue(reader);
32418:         desret_int(ret_val);
32419:         call_tests++;
32420:         des_xmlTextReaderPtr(n_reader, reader, 0);
32421:         xmlResetLastError();
32422:         if (mem_base != xmlMemBlocks()) {
32423:             printf("Leak of %d blocks found in xmlTextReaderReadAttributeValue",
32424: 	           xmlMemBlocks() - mem_base);
32425: 	    test_ret++;
32426:             printf(" %d", n_reader);
32427:             printf("\n");
32428:         }
32429:     }
32430:     function_tests++;
32431: #endif
32432: 
32433:     return(test_ret);
32434: }
32435: 
32436: 
32437: static int
32438: test_xmlTextReaderReadState(void) {
32439:     int test_ret = 0;
32440: 
32441: #if defined(LIBXML_READER_ENABLED)
32442:     int mem_base;
32443:     int ret_val;
32444:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32445:     int n_reader;
32446: 
32447:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32448:         mem_base = xmlMemBlocks();
32449:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32450: 
32451:         ret_val = xmlTextReaderReadState(reader);
32452:         desret_int(ret_val);
32453:         call_tests++;
32454:         des_xmlTextReaderPtr(n_reader, reader, 0);
32455:         xmlResetLastError();
32456:         if (mem_base != xmlMemBlocks()) {
32457:             printf("Leak of %d blocks found in xmlTextReaderReadState",
32458: 	           xmlMemBlocks() - mem_base);
32459: 	    test_ret++;
32460:             printf(" %d", n_reader);
32461:             printf("\n");
32462:         }
32463:     }
32464:     function_tests++;
32465: #endif
32466: 
32467:     return(test_ret);
32468: }
32469: 
32470: 
32471: static int
32472: test_xmlTextReaderRelaxNGSetSchema(void) {
32473:     int test_ret = 0;
32474: 
32475: #if defined(LIBXML_READER_ENABLED) && defined(LIBXML_SCHEMAS_ENABLED)
32476:     int mem_base;
32477:     int ret_val;
32478:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32479:     int n_reader;
32480:     xmlRelaxNGPtr schema; /* a precompiled RelaxNG schema */
32481:     int n_schema;
32482: 
32483:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32484:     for (n_schema = 0;n_schema < gen_nb_xmlRelaxNGPtr;n_schema++) {
32485:         mem_base = xmlMemBlocks();
32486:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32487:         schema = gen_xmlRelaxNGPtr(n_schema, 1);
32488: 
32489:         ret_val = xmlTextReaderRelaxNGSetSchema(reader, schema);
32490:         desret_int(ret_val);
32491:         call_tests++;
32492:         des_xmlTextReaderPtr(n_reader, reader, 0);
32493:         des_xmlRelaxNGPtr(n_schema, schema, 1);
32494:         xmlResetLastError();
32495:         if (mem_base != xmlMemBlocks()) {
32496:             printf("Leak of %d blocks found in xmlTextReaderRelaxNGSetSchema",
32497: 	           xmlMemBlocks() - mem_base);
32498: 	    test_ret++;
32499:             printf(" %d", n_reader);
32500:             printf(" %d", n_schema);
32501:             printf("\n");
32502:         }
32503:     }
32504:     }
32505:     function_tests++;
32506: #endif
32507: 
32508:     return(test_ret);
32509: }
32510: 
32511: 
32512: static int
32513: test_xmlTextReaderRelaxNGValidate(void) {
32514:     int test_ret = 0;
32515: 
32516: #if defined(LIBXML_READER_ENABLED) && defined(LIBXML_SCHEMAS_ENABLED)
32517:     int mem_base;
32518:     int ret_val;
32519:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32520:     int n_reader;
32521:     char * rng; /* the path to a RelaxNG schema or NULL */
32522:     int n_rng;
32523: 
32524:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32525:     for (n_rng = 0;n_rng < gen_nb_const_char_ptr;n_rng++) {
32526:         mem_base = xmlMemBlocks();
32527:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32528:         rng = gen_const_char_ptr(n_rng, 1);
32529: 
32530:         ret_val = xmlTextReaderRelaxNGValidate(reader, (const char *)rng);
32531:         desret_int(ret_val);
32532:         call_tests++;
32533:         des_xmlTextReaderPtr(n_reader, reader, 0);
32534:         des_const_char_ptr(n_rng, (const char *)rng, 1);
32535:         xmlResetLastError();
32536:         if (mem_base != xmlMemBlocks()) {
32537:             printf("Leak of %d blocks found in xmlTextReaderRelaxNGValidate",
32538: 	           xmlMemBlocks() - mem_base);
32539: 	    test_ret++;
32540:             printf(" %d", n_reader);
32541:             printf(" %d", n_rng);
32542:             printf("\n");
32543:         }
32544:     }
32545:     }
32546:     function_tests++;
32547: #endif
32548: 
32549:     return(test_ret);
32550: }
32551: 
32552: 
32553: static int
32554: test_xmlTextReaderRelaxNGValidateCtxt(void) {
32555:     int test_ret = 0;
32556: 
32557: #if defined(LIBXML_READER_ENABLED) && defined(LIBXML_SCHEMAS_ENABLED)
32558:     int mem_base;
32559:     int ret_val;
32560:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32561:     int n_reader;
32562:     xmlRelaxNGValidCtxtPtr ctxt; /* the RelaxNG schema validation context or NULL */
32563:     int n_ctxt;
32564:     int options; /* options (not used yet) */
32565:     int n_options;
32566: 
32567:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32568:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlRelaxNGValidCtxtPtr;n_ctxt++) {
32569:     for (n_options = 0;n_options < gen_nb_parseroptions;n_options++) {
32570:         mem_base = xmlMemBlocks();
32571:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32572:         ctxt = gen_xmlRelaxNGValidCtxtPtr(n_ctxt, 1);
32573:         options = gen_parseroptions(n_options, 2);
32574: 
32575:         ret_val = xmlTextReaderRelaxNGValidateCtxt(reader, ctxt, options);
32576:         desret_int(ret_val);
32577:         call_tests++;
32578:         des_xmlTextReaderPtr(n_reader, reader, 0);
32579:         des_xmlRelaxNGValidCtxtPtr(n_ctxt, ctxt, 1);
32580:         des_parseroptions(n_options, options, 2);
32581:         xmlResetLastError();
32582:         if (mem_base != xmlMemBlocks()) {
32583:             printf("Leak of %d blocks found in xmlTextReaderRelaxNGValidateCtxt",
32584: 	           xmlMemBlocks() - mem_base);
32585: 	    test_ret++;
32586:             printf(" %d", n_reader);
32587:             printf(" %d", n_ctxt);
32588:             printf(" %d", n_options);
32589:             printf("\n");
32590:         }
32591:     }
32592:     }
32593:     }
32594:     function_tests++;
32595: #endif
32596: 
32597:     return(test_ret);
32598: }
32599: 
32600: 
32601: static int
32602: test_xmlTextReaderSchemaValidate(void) {
32603:     int test_ret = 0;
32604: 
32605: #if defined(LIBXML_READER_ENABLED) && defined(LIBXML_SCHEMAS_ENABLED)
32606:     int ret_val;
32607:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32608:     int n_reader;
32609:     char * xsd; /* the path to a W3C XSD schema or NULL */
32610:     int n_xsd;
32611: 
32612:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32613:     for (n_xsd = 0;n_xsd < gen_nb_const_char_ptr;n_xsd++) {
32614:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32615:         xsd = gen_const_char_ptr(n_xsd, 1);
32616: 
32617:         ret_val = xmlTextReaderSchemaValidate(reader, (const char *)xsd);
32618:         desret_int(ret_val);
32619:         call_tests++;
32620:         des_xmlTextReaderPtr(n_reader, reader, 0);
32621:         des_const_char_ptr(n_xsd, (const char *)xsd, 1);
32622:         xmlResetLastError();
32623:     }
32624:     }
32625:     function_tests++;
32626: #endif
32627: 
32628:     return(test_ret);
32629: }
32630: 
32631: 
32632: static int
32633: test_xmlTextReaderSchemaValidateCtxt(void) {
32634:     int test_ret = 0;
32635: 
32636: #if defined(LIBXML_READER_ENABLED) && defined(LIBXML_SCHEMAS_ENABLED)
32637:     int mem_base;
32638:     int ret_val;
32639:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32640:     int n_reader;
32641:     xmlSchemaValidCtxtPtr ctxt; /* the XML Schema validation context or NULL */
32642:     int n_ctxt;
32643:     int options; /* options (not used yet) */
32644:     int n_options;
32645: 
32646:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32647:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlSchemaValidCtxtPtr;n_ctxt++) {
32648:     for (n_options = 0;n_options < gen_nb_parseroptions;n_options++) {
32649:         mem_base = xmlMemBlocks();
32650:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32651:         ctxt = gen_xmlSchemaValidCtxtPtr(n_ctxt, 1);
32652:         options = gen_parseroptions(n_options, 2);
32653: 
32654:         ret_val = xmlTextReaderSchemaValidateCtxt(reader, ctxt, options);
32655:         desret_int(ret_val);
32656:         call_tests++;
32657:         des_xmlTextReaderPtr(n_reader, reader, 0);
32658:         des_xmlSchemaValidCtxtPtr(n_ctxt, ctxt, 1);
32659:         des_parseroptions(n_options, options, 2);
32660:         xmlResetLastError();
32661:         if (mem_base != xmlMemBlocks()) {
32662:             printf("Leak of %d blocks found in xmlTextReaderSchemaValidateCtxt",
32663: 	           xmlMemBlocks() - mem_base);
32664: 	    test_ret++;
32665:             printf(" %d", n_reader);
32666:             printf(" %d", n_ctxt);
32667:             printf(" %d", n_options);
32668:             printf("\n");
32669:         }
32670:     }
32671:     }
32672:     }
32673:     function_tests++;
32674: #endif
32675: 
32676:     return(test_ret);
32677: }
32678: 
32679: 
32680: static int
32681: test_xmlTextReaderSetErrorHandler(void) {
32682:     int test_ret = 0;
32683: 
32684: 
32685:     /* missing type support */
32686:     return(test_ret);
32687: }
32688: 
32689: 
32690: static int
32691: test_xmlTextReaderSetParserProp(void) {
32692:     int test_ret = 0;
32693: 
32694: #if defined(LIBXML_READER_ENABLED)
32695:     int mem_base;
32696:     int ret_val;
32697:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32698:     int n_reader;
32699:     int prop; /* the xmlParserProperties to set */
32700:     int n_prop;
32701:     int value; /* usually 0 or 1 to (de)activate it */
32702:     int n_value;
32703: 
32704:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32705:     for (n_prop = 0;n_prop < gen_nb_int;n_prop++) {
32706:     for (n_value = 0;n_value < gen_nb_int;n_value++) {
32707:         mem_base = xmlMemBlocks();
32708:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32709:         prop = gen_int(n_prop, 1);
32710:         value = gen_int(n_value, 2);
32711: 
32712:         ret_val = xmlTextReaderSetParserProp(reader, prop, value);
32713:         desret_int(ret_val);
32714:         call_tests++;
32715:         des_xmlTextReaderPtr(n_reader, reader, 0);
32716:         des_int(n_prop, prop, 1);
32717:         des_int(n_value, value, 2);
32718:         xmlResetLastError();
32719:         if (mem_base != xmlMemBlocks()) {
32720:             printf("Leak of %d blocks found in xmlTextReaderSetParserProp",
32721: 	           xmlMemBlocks() - mem_base);
32722: 	    test_ret++;
32723:             printf(" %d", n_reader);
32724:             printf(" %d", n_prop);
32725:             printf(" %d", n_value);
32726:             printf("\n");
32727:         }
32728:     }
32729:     }
32730:     }
32731:     function_tests++;
32732: #endif
32733: 
32734:     return(test_ret);
32735: }
32736: 
32737: 
32738: static int
32739: test_xmlTextReaderSetSchema(void) {
32740:     int test_ret = 0;
32741: 
32742: #if defined(LIBXML_READER_ENABLED) && defined(LIBXML_SCHEMAS_ENABLED)
32743:     int mem_base;
32744:     int ret_val;
32745:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32746:     int n_reader;
32747:     xmlSchemaPtr schema; /* a precompiled Schema schema */
32748:     int n_schema;
32749: 
32750:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32751:     for (n_schema = 0;n_schema < gen_nb_xmlSchemaPtr;n_schema++) {
32752:         mem_base = xmlMemBlocks();
32753:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32754:         schema = gen_xmlSchemaPtr(n_schema, 1);
32755: 
32756:         ret_val = xmlTextReaderSetSchema(reader, schema);
32757:         desret_int(ret_val);
32758:         call_tests++;
32759:         des_xmlTextReaderPtr(n_reader, reader, 0);
32760:         des_xmlSchemaPtr(n_schema, schema, 1);
32761:         xmlResetLastError();
32762:         if (mem_base != xmlMemBlocks()) {
32763:             printf("Leak of %d blocks found in xmlTextReaderSetSchema",
32764: 	           xmlMemBlocks() - mem_base);
32765: 	    test_ret++;
32766:             printf(" %d", n_reader);
32767:             printf(" %d", n_schema);
32768:             printf("\n");
32769:         }
32770:     }
32771:     }
32772:     function_tests++;
32773: #endif
32774: 
32775:     return(test_ret);
32776: }
32777: 
32778: 
32779: static int
32780: test_xmlTextReaderSetStructuredErrorHandler(void) {
32781:     int test_ret = 0;
32782: 
32783: 
32784:     /* missing type support */
32785:     return(test_ret);
32786: }
32787: 
32788: 
32789: static int
32790: test_xmlTextReaderSetup(void) {
32791:     int test_ret = 0;
32792: 
32793: #if defined(LIBXML_READER_ENABLED)
32794:     int mem_base;
32795:     int ret_val;
32796:     xmlTextReaderPtr reader; /* an XML reader */
32797:     int n_reader;
32798:     xmlParserInputBufferPtr input; /* xmlParserInputBufferPtr used to feed the reader, will be destroyed with it. */
32799:     int n_input;
32800:     const char * URL; /* the base URL to use for the document */
32801:     int n_URL;
32802:     char * encoding; /* the document encoding, or NULL */
32803:     int n_encoding;
32804:     int options; /* a combination of xmlParserOption */
32805:     int n_options;
32806: 
32807:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32808:     for (n_input = 0;n_input < gen_nb_xmlParserInputBufferPtr;n_input++) {
32809:     for (n_URL = 0;n_URL < gen_nb_filepath;n_URL++) {
32810:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
32811:     for (n_options = 0;n_options < gen_nb_parseroptions;n_options++) {
32812:         mem_base = xmlMemBlocks();
32813:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32814:         input = gen_xmlParserInputBufferPtr(n_input, 1);
32815:         URL = gen_filepath(n_URL, 2);
32816:         encoding = gen_const_char_ptr(n_encoding, 3);
32817:         options = gen_parseroptions(n_options, 4);
32818: 
32819:         ret_val = xmlTextReaderSetup(reader, input, URL, (const char *)encoding, options);
32820:         desret_int(ret_val);
32821:         call_tests++;
32822:         des_xmlTextReaderPtr(n_reader, reader, 0);
32823:         des_filepath(n_URL, URL, 2);
32824:         des_const_char_ptr(n_encoding, (const char *)encoding, 3);
32825:         des_parseroptions(n_options, options, 4);
32826:         xmlResetLastError();
32827:         if (mem_base != xmlMemBlocks()) {
32828:             printf("Leak of %d blocks found in xmlTextReaderSetup",
32829: 	           xmlMemBlocks() - mem_base);
32830: 	    test_ret++;
32831:             printf(" %d", n_reader);
32832:             printf(" %d", n_input);
32833:             printf(" %d", n_URL);
32834:             printf(" %d", n_encoding);
32835:             printf(" %d", n_options);
32836:             printf("\n");
32837:         }
32838:     }
32839:     }
32840:     }
32841:     }
32842:     }
32843:     function_tests++;
32844: #endif
32845: 
32846:     return(test_ret);
32847: }
32848: 
32849: 
32850: static int
32851: test_xmlTextReaderStandalone(void) {
32852:     int test_ret = 0;
32853: 
32854: #if defined(LIBXML_READER_ENABLED)
32855:     int mem_base;
32856:     int ret_val;
32857:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32858:     int n_reader;
32859: 
32860:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32861:         mem_base = xmlMemBlocks();
32862:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32863: 
32864:         ret_val = xmlTextReaderStandalone(reader);
32865:         desret_int(ret_val);
32866:         call_tests++;
32867:         des_xmlTextReaderPtr(n_reader, reader, 0);
32868:         xmlResetLastError();
32869:         if (mem_base != xmlMemBlocks()) {
32870:             printf("Leak of %d blocks found in xmlTextReaderStandalone",
32871: 	           xmlMemBlocks() - mem_base);
32872: 	    test_ret++;
32873:             printf(" %d", n_reader);
32874:             printf("\n");
32875:         }
32876:     }
32877:     function_tests++;
32878: #endif
32879: 
32880:     return(test_ret);
32881: }
32882: 
32883: 
32884: static int
32885: test_xmlTextReaderValue(void) {
32886:     int test_ret = 0;
32887: 
32888: #if defined(LIBXML_READER_ENABLED)
32889:     int mem_base;
32890:     xmlChar * ret_val;
32891:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32892:     int n_reader;
32893: 
32894:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32895:         mem_base = xmlMemBlocks();
32896:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32897: 
32898:         ret_val = xmlTextReaderValue(reader);
32899:         desret_xmlChar_ptr(ret_val);
32900:         call_tests++;
32901:         des_xmlTextReaderPtr(n_reader, reader, 0);
32902:         xmlResetLastError();
32903:         if (mem_base != xmlMemBlocks()) {
32904:             printf("Leak of %d blocks found in xmlTextReaderValue",
32905: 	           xmlMemBlocks() - mem_base);
32906: 	    test_ret++;
32907:             printf(" %d", n_reader);
32908:             printf("\n");
32909:         }
32910:     }
32911:     function_tests++;
32912: #endif
32913: 
32914:     return(test_ret);
32915: }
32916: 
32917: 
32918: static int
32919: test_xmlTextReaderXmlLang(void) {
32920:     int test_ret = 0;
32921: 
32922: #if defined(LIBXML_READER_ENABLED)
32923:     int mem_base;
32924:     xmlChar * ret_val;
32925:     xmlTextReaderPtr reader; /* the xmlTextReaderPtr used */
32926:     int n_reader;
32927: 
32928:     for (n_reader = 0;n_reader < gen_nb_xmlTextReaderPtr;n_reader++) {
32929:         mem_base = xmlMemBlocks();
32930:         reader = gen_xmlTextReaderPtr(n_reader, 0);
32931: 
32932:         ret_val = xmlTextReaderXmlLang(reader);
32933:         desret_xmlChar_ptr(ret_val);
32934:         call_tests++;
32935:         des_xmlTextReaderPtr(n_reader, reader, 0);
32936:         xmlResetLastError();
32937:         if (mem_base != xmlMemBlocks()) {
32938:             printf("Leak of %d blocks found in xmlTextReaderXmlLang",
32939: 	           xmlMemBlocks() - mem_base);
32940: 	    test_ret++;
32941:             printf(" %d", n_reader);
32942:             printf("\n");
32943:         }
32944:     }
32945:     function_tests++;
32946: #endif
32947: 
32948:     return(test_ret);
32949: }
32950: 
32951: static int
32952: test_xmlreader(void) {
32953:     int test_ret = 0;
32954: 
32955:     if (quiet == 0) printf("Testing xmlreader : 76 of 86 functions ...\n");
32956:     test_ret += test_xmlNewTextReader();
32957:     test_ret += test_xmlNewTextReaderFilename();
32958:     test_ret += test_xmlReaderForDoc();
32959:     test_ret += test_xmlReaderForFile();
32960:     test_ret += test_xmlReaderForMemory();
32961:     test_ret += test_xmlReaderNewDoc();
32962:     test_ret += test_xmlReaderNewFile();
32963:     test_ret += test_xmlReaderNewMemory();
32964:     test_ret += test_xmlReaderNewWalker();
32965:     test_ret += test_xmlReaderWalker();
32966:     test_ret += test_xmlTextReaderAttributeCount();
32967:     test_ret += test_xmlTextReaderBaseUri();
32968:     test_ret += test_xmlTextReaderByteConsumed();
32969:     test_ret += test_xmlTextReaderClose();
32970:     test_ret += test_xmlTextReaderConstBaseUri();
32971:     test_ret += test_xmlTextReaderConstEncoding();
32972:     test_ret += test_xmlTextReaderConstLocalName();
32973:     test_ret += test_xmlTextReaderConstName();
32974:     test_ret += test_xmlTextReaderConstNamespaceUri();
32975:     test_ret += test_xmlTextReaderConstPrefix();
32976:     test_ret += test_xmlTextReaderConstString();
32977:     test_ret += test_xmlTextReaderConstValue();
32978:     test_ret += test_xmlTextReaderConstXmlLang();
32979:     test_ret += test_xmlTextReaderConstXmlVersion();
32980:     test_ret += test_xmlTextReaderCurrentDoc();
32981:     test_ret += test_xmlTextReaderCurrentNode();
32982:     test_ret += test_xmlTextReaderDepth();
32983:     test_ret += test_xmlTextReaderExpand();
32984:     test_ret += test_xmlTextReaderGetAttribute();
32985:     test_ret += test_xmlTextReaderGetAttributeNo();
32986:     test_ret += test_xmlTextReaderGetAttributeNs();
32987:     test_ret += test_xmlTextReaderGetErrorHandler();
32988:     test_ret += test_xmlTextReaderGetParserColumnNumber();
32989:     test_ret += test_xmlTextReaderGetParserLineNumber();
32990:     test_ret += test_xmlTextReaderGetParserProp();
32991:     test_ret += test_xmlTextReaderGetRemainder();
32992:     test_ret += test_xmlTextReaderHasAttributes();
32993:     test_ret += test_xmlTextReaderHasValue();
32994:     test_ret += test_xmlTextReaderIsDefault();
32995:     test_ret += test_xmlTextReaderIsEmptyElement();
32996:     test_ret += test_xmlTextReaderIsNamespaceDecl();
32997:     test_ret += test_xmlTextReaderIsValid();
32998:     test_ret += test_xmlTextReaderLocalName();
32999:     test_ret += test_xmlTextReaderLocatorBaseURI();
33000:     test_ret += test_xmlTextReaderLocatorLineNumber();
33001:     test_ret += test_xmlTextReaderLookupNamespace();
33002:     test_ret += test_xmlTextReaderMoveToAttribute();
33003:     test_ret += test_xmlTextReaderMoveToAttributeNo();
33004:     test_ret += test_xmlTextReaderMoveToAttributeNs();
33005:     test_ret += test_xmlTextReaderMoveToElement();
33006:     test_ret += test_xmlTextReaderMoveToFirstAttribute();
33007:     test_ret += test_xmlTextReaderMoveToNextAttribute();
33008:     test_ret += test_xmlTextReaderName();
33009:     test_ret += test_xmlTextReaderNamespaceUri();
33010:     test_ret += test_xmlTextReaderNext();
33011:     test_ret += test_xmlTextReaderNextSibling();
33012:     test_ret += test_xmlTextReaderNodeType();
33013:     test_ret += test_xmlTextReaderNormalization();
33014:     test_ret += test_xmlTextReaderPrefix();
33015:     test_ret += test_xmlTextReaderPreserve();
33016:     test_ret += test_xmlTextReaderPreservePattern();
33017:     test_ret += test_xmlTextReaderQuoteChar();
33018:     test_ret += test_xmlTextReaderRead();
33019:     test_ret += test_xmlTextReaderReadAttributeValue();
33020:     test_ret += test_xmlTextReaderReadState();
33021:     test_ret += test_xmlTextReaderRelaxNGSetSchema();
33022:     test_ret += test_xmlTextReaderRelaxNGValidate();
33023:     test_ret += test_xmlTextReaderRelaxNGValidateCtxt();
33024:     test_ret += test_xmlTextReaderSchemaValidate();
33025:     test_ret += test_xmlTextReaderSchemaValidateCtxt();
33026:     test_ret += test_xmlTextReaderSetErrorHandler();
33027:     test_ret += test_xmlTextReaderSetParserProp();
33028:     test_ret += test_xmlTextReaderSetSchema();
33029:     test_ret += test_xmlTextReaderSetStructuredErrorHandler();
33030:     test_ret += test_xmlTextReaderSetup();
33031:     test_ret += test_xmlTextReaderStandalone();
33032:     test_ret += test_xmlTextReaderValue();
33033:     test_ret += test_xmlTextReaderXmlLang();
33034: 
33035:     if (test_ret != 0)
33036: 	printf("Module xmlreader: %d errors\n", test_ret);
33037:     return(test_ret);
33038: }
33039: 
33040: static int
33041: test_xmlExpCtxtNbCons(void) {
33042:     int test_ret = 0;
33043: 
33044: #if defined(LIBXML_REGEXP_ENABLED) && defined(LIBXML_EXPR_ENABLED)
33045:     int mem_base;
33046:     int ret_val;
33047:     xmlExpCtxtPtr ctxt; /* an expression context */
33048:     int n_ctxt;
33049: 
33050:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlExpCtxtPtr;n_ctxt++) {
33051:         mem_base = xmlMemBlocks();
33052:         ctxt = gen_xmlExpCtxtPtr(n_ctxt, 0);
33053: 
33054:         ret_val = xmlExpCtxtNbCons(ctxt);
33055:         desret_int(ret_val);
33056:         call_tests++;
33057:         des_xmlExpCtxtPtr(n_ctxt, ctxt, 0);
33058:         xmlResetLastError();
33059:         if (mem_base != xmlMemBlocks()) {
33060:             printf("Leak of %d blocks found in xmlExpCtxtNbCons",
33061: 	           xmlMemBlocks() - mem_base);
33062: 	    test_ret++;
33063:             printf(" %d", n_ctxt);
33064:             printf("\n");
33065:         }
33066:     }
33067:     function_tests++;
33068: #endif
33069: 
33070:     return(test_ret);
33071: }
33072: 
33073: 
33074: static int
33075: test_xmlExpCtxtNbNodes(void) {
33076:     int test_ret = 0;
33077: 
33078: #if defined(LIBXML_REGEXP_ENABLED) && defined(LIBXML_EXPR_ENABLED)
33079:     int mem_base;
33080:     int ret_val;
33081:     xmlExpCtxtPtr ctxt; /* an expression context */
33082:     int n_ctxt;
33083: 
33084:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlExpCtxtPtr;n_ctxt++) {
33085:         mem_base = xmlMemBlocks();
33086:         ctxt = gen_xmlExpCtxtPtr(n_ctxt, 0);
33087: 
33088:         ret_val = xmlExpCtxtNbNodes(ctxt);
33089:         desret_int(ret_val);
33090:         call_tests++;
33091:         des_xmlExpCtxtPtr(n_ctxt, ctxt, 0);
33092:         xmlResetLastError();
33093:         if (mem_base != xmlMemBlocks()) {
33094:             printf("Leak of %d blocks found in xmlExpCtxtNbNodes",
33095: 	           xmlMemBlocks() - mem_base);
33096: 	    test_ret++;
33097:             printf(" %d", n_ctxt);
33098:             printf("\n");
33099:         }
33100:     }
33101:     function_tests++;
33102: #endif
33103: 
33104:     return(test_ret);
33105: }
33106: 
33107: 
33108: static int
33109: test_xmlExpDump(void) {
33110:     int test_ret = 0;
33111: 
33112: #if defined(LIBXML_REGEXP_ENABLED) && defined(LIBXML_EXPR_ENABLED)
33113:     int mem_base;
33114:     xmlBufferPtr buf; /* a buffer to receive the output */
33115:     int n_buf;
33116:     xmlExpNodePtr expr; /* the compiled expression */
33117:     int n_expr;
33118: 
33119:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
33120:     for (n_expr = 0;n_expr < gen_nb_xmlExpNodePtr;n_expr++) {
33121:         mem_base = xmlMemBlocks();
33122:         buf = gen_xmlBufferPtr(n_buf, 0);
33123:         expr = gen_xmlExpNodePtr(n_expr, 1);
33124: 
33125:         xmlExpDump(buf, expr);
33126:         call_tests++;
33127:         des_xmlBufferPtr(n_buf, buf, 0);
33128:         des_xmlExpNodePtr(n_expr, expr, 1);
33129:         xmlResetLastError();
33130:         if (mem_base != xmlMemBlocks()) {
33131:             printf("Leak of %d blocks found in xmlExpDump",
33132: 	           xmlMemBlocks() - mem_base);
33133: 	    test_ret++;
33134:             printf(" %d", n_buf);
33135:             printf(" %d", n_expr);
33136:             printf("\n");
33137:         }
33138:     }
33139:     }
33140:     function_tests++;
33141: #endif
33142: 
33143:     return(test_ret);
33144: }
33145: 
33146: 
33147: static int
33148: test_xmlExpExpDerive(void) {
33149:     int test_ret = 0;
33150: 
33151: 
33152:     /* missing type support */
33153:     return(test_ret);
33154: }
33155: 
33156: 
33157: static int
33158: test_xmlExpGetLanguage(void) {
33159:     int test_ret = 0;
33160: 
33161: #if defined(LIBXML_REGEXP_ENABLED) && defined(LIBXML_EXPR_ENABLED)
33162:     int mem_base;
33163:     int ret_val;
33164:     xmlExpCtxtPtr ctxt; /* the expression context */
33165:     int n_ctxt;
33166:     xmlExpNodePtr exp; /* the expression */
33167:     int n_exp;
33168:     xmlChar ** langList; /* where to store the tokens */
33169:     int n_langList;
33170:     int len; /* the allocated length of @list */
33171:     int n_len;
33172: 
33173:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlExpCtxtPtr;n_ctxt++) {
33174:     for (n_exp = 0;n_exp < gen_nb_xmlExpNodePtr;n_exp++) {
33175:     for (n_langList = 0;n_langList < gen_nb_const_xmlChar_ptr_ptr;n_langList++) {
33176:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
33177:         mem_base = xmlMemBlocks();
33178:         ctxt = gen_xmlExpCtxtPtr(n_ctxt, 0);
33179:         exp = gen_xmlExpNodePtr(n_exp, 1);
33180:         langList = gen_const_xmlChar_ptr_ptr(n_langList, 2);
33181:         len = gen_int(n_len, 3);
33182: 
33183:         ret_val = xmlExpGetLanguage(ctxt, exp, (const xmlChar **)langList, len);
33184:         desret_int(ret_val);
33185:         call_tests++;
33186:         des_xmlExpCtxtPtr(n_ctxt, ctxt, 0);
33187:         des_xmlExpNodePtr(n_exp, exp, 1);
33188:         des_const_xmlChar_ptr_ptr(n_langList, (const xmlChar **)langList, 2);
33189:         des_int(n_len, len, 3);
33190:         xmlResetLastError();
33191:         if (mem_base != xmlMemBlocks()) {
33192:             printf("Leak of %d blocks found in xmlExpGetLanguage",
33193: 	           xmlMemBlocks() - mem_base);
33194: 	    test_ret++;
33195:             printf(" %d", n_ctxt);
33196:             printf(" %d", n_exp);
33197:             printf(" %d", n_langList);
33198:             printf(" %d", n_len);
33199:             printf("\n");
33200:         }
33201:     }
33202:     }
33203:     }
33204:     }
33205:     function_tests++;
33206: #endif
33207: 
33208:     return(test_ret);
33209: }
33210: 
33211: 
33212: static int
33213: test_xmlExpGetStart(void) {
33214:     int test_ret = 0;
33215: 
33216: #if defined(LIBXML_REGEXP_ENABLED) && defined(LIBXML_EXPR_ENABLED)
33217:     int mem_base;
33218:     int ret_val;
33219:     xmlExpCtxtPtr ctxt; /* the expression context */
33220:     int n_ctxt;
33221:     xmlExpNodePtr exp; /* the expression */
33222:     int n_exp;
33223:     xmlChar ** tokList; /* where to store the tokens */
33224:     int n_tokList;
33225:     int len; /* the allocated length of @list */
33226:     int n_len;
33227: 
33228:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlExpCtxtPtr;n_ctxt++) {
33229:     for (n_exp = 0;n_exp < gen_nb_xmlExpNodePtr;n_exp++) {
33230:     for (n_tokList = 0;n_tokList < gen_nb_const_xmlChar_ptr_ptr;n_tokList++) {
33231:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
33232:         mem_base = xmlMemBlocks();
33233:         ctxt = gen_xmlExpCtxtPtr(n_ctxt, 0);
33234:         exp = gen_xmlExpNodePtr(n_exp, 1);
33235:         tokList = gen_const_xmlChar_ptr_ptr(n_tokList, 2);
33236:         len = gen_int(n_len, 3);
33237: 
33238:         ret_val = xmlExpGetStart(ctxt, exp, (const xmlChar **)tokList, len);
33239:         desret_int(ret_val);
33240:         call_tests++;
33241:         des_xmlExpCtxtPtr(n_ctxt, ctxt, 0);
33242:         des_xmlExpNodePtr(n_exp, exp, 1);
33243:         des_const_xmlChar_ptr_ptr(n_tokList, (const xmlChar **)tokList, 2);
33244:         des_int(n_len, len, 3);
33245:         xmlResetLastError();
33246:         if (mem_base != xmlMemBlocks()) {
33247:             printf("Leak of %d blocks found in xmlExpGetStart",
33248: 	           xmlMemBlocks() - mem_base);
33249: 	    test_ret++;
33250:             printf(" %d", n_ctxt);
33251:             printf(" %d", n_exp);
33252:             printf(" %d", n_tokList);
33253:             printf(" %d", n_len);
33254:             printf("\n");
33255:         }
33256:     }
33257:     }
33258:     }
33259:     }
33260:     function_tests++;
33261: #endif
33262: 
33263:     return(test_ret);
33264: }
33265: 
33266: 
33267: static int
33268: test_xmlExpIsNillable(void) {
33269:     int test_ret = 0;
33270: 
33271: #if defined(LIBXML_REGEXP_ENABLED) && defined(LIBXML_EXPR_ENABLED)
33272:     int mem_base;
33273:     int ret_val;
33274:     xmlExpNodePtr exp; /* the expression */
33275:     int n_exp;
33276: 
33277:     for (n_exp = 0;n_exp < gen_nb_xmlExpNodePtr;n_exp++) {
33278:         mem_base = xmlMemBlocks();
33279:         exp = gen_xmlExpNodePtr(n_exp, 0);
33280: 
33281:         ret_val = xmlExpIsNillable(exp);
33282:         desret_int(ret_val);
33283:         call_tests++;
33284:         des_xmlExpNodePtr(n_exp, exp, 0);
33285:         xmlResetLastError();
33286:         if (mem_base != xmlMemBlocks()) {
33287:             printf("Leak of %d blocks found in xmlExpIsNillable",
33288: 	           xmlMemBlocks() - mem_base);
33289: 	    test_ret++;
33290:             printf(" %d", n_exp);
33291:             printf("\n");
33292:         }
33293:     }
33294:     function_tests++;
33295: #endif
33296: 
33297:     return(test_ret);
33298: }
33299: 
33300: 
33301: static int
33302: test_xmlExpMaxToken(void) {
33303:     int test_ret = 0;
33304: 
33305: #if defined(LIBXML_REGEXP_ENABLED) && defined(LIBXML_EXPR_ENABLED)
33306:     int mem_base;
33307:     int ret_val;
33308:     xmlExpNodePtr expr; /* a compiled expression */
33309:     int n_expr;
33310: 
33311:     for (n_expr = 0;n_expr < gen_nb_xmlExpNodePtr;n_expr++) {
33312:         mem_base = xmlMemBlocks();
33313:         expr = gen_xmlExpNodePtr(n_expr, 0);
33314: 
33315:         ret_val = xmlExpMaxToken(expr);
33316:         desret_int(ret_val);
33317:         call_tests++;
33318:         des_xmlExpNodePtr(n_expr, expr, 0);
33319:         xmlResetLastError();
33320:         if (mem_base != xmlMemBlocks()) {
33321:             printf("Leak of %d blocks found in xmlExpMaxToken",
33322: 	           xmlMemBlocks() - mem_base);
33323: 	    test_ret++;
33324:             printf(" %d", n_expr);
33325:             printf("\n");
33326:         }
33327:     }
33328:     function_tests++;
33329: #endif
33330: 
33331:     return(test_ret);
33332: }
33333: 
33334: 
33335: static int
33336: test_xmlExpNewAtom(void) {
33337:     int test_ret = 0;
33338: 
33339: 
33340:     /* missing type support */
33341:     return(test_ret);
33342: }
33343: 
33344: 
33345: static int
33346: test_xmlExpNewCtxt(void) {
33347:     int test_ret = 0;
33348: 
33349: 
33350:     /* missing type support */
33351:     return(test_ret);
33352: }
33353: 
33354: 
33355: static int
33356: test_xmlExpNewOr(void) {
33357:     int test_ret = 0;
33358: 
33359: 
33360:     /* missing type support */
33361:     return(test_ret);
33362: }
33363: 
33364: 
33365: static int
33366: test_xmlExpNewRange(void) {
33367:     int test_ret = 0;
33368: 
33369: 
33370:     /* missing type support */
33371:     return(test_ret);
33372: }
33373: 
33374: 
33375: static int
33376: test_xmlExpNewSeq(void) {
33377:     int test_ret = 0;
33378: 
33379: 
33380:     /* missing type support */
33381:     return(test_ret);
33382: }
33383: 
33384: 
33385: static int
33386: test_xmlExpParse(void) {
33387:     int test_ret = 0;
33388: 
33389: 
33390:     /* missing type support */
33391:     return(test_ret);
33392: }
33393: 
33394: 
33395: static int
33396: test_xmlExpRef(void) {
33397:     int test_ret = 0;
33398: 
33399: #if defined(LIBXML_REGEXP_ENABLED) && defined(LIBXML_EXPR_ENABLED)
33400:     int mem_base;
33401:     xmlExpNodePtr exp; /* the expression */
33402:     int n_exp;
33403: 
33404:     for (n_exp = 0;n_exp < gen_nb_xmlExpNodePtr;n_exp++) {
33405:         mem_base = xmlMemBlocks();
33406:         exp = gen_xmlExpNodePtr(n_exp, 0);
33407: 
33408:         xmlExpRef(exp);
33409:         call_tests++;
33410:         des_xmlExpNodePtr(n_exp, exp, 0);
33411:         xmlResetLastError();
33412:         if (mem_base != xmlMemBlocks()) {
33413:             printf("Leak of %d blocks found in xmlExpRef",
33414: 	           xmlMemBlocks() - mem_base);
33415: 	    test_ret++;
33416:             printf(" %d", n_exp);
33417:             printf("\n");
33418:         }
33419:     }
33420:     function_tests++;
33421: #endif
33422: 
33423:     return(test_ret);
33424: }
33425: 
33426: 
33427: static int
33428: test_xmlExpStringDerive(void) {
33429:     int test_ret = 0;
33430: 
33431: 
33432:     /* missing type support */
33433:     return(test_ret);
33434: }
33435: 
33436: 
33437: static int
33438: test_xmlExpSubsume(void) {
33439:     int test_ret = 0;
33440: 
33441: #if defined(LIBXML_REGEXP_ENABLED) && defined(LIBXML_EXPR_ENABLED)
33442:     int mem_base;
33443:     int ret_val;
33444:     xmlExpCtxtPtr ctxt; /* the expressions context */
33445:     int n_ctxt;
33446:     xmlExpNodePtr exp; /* the englobing expression */
33447:     int n_exp;
33448:     xmlExpNodePtr sub; /* the subexpression */
33449:     int n_sub;
33450: 
33451:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlExpCtxtPtr;n_ctxt++) {
33452:     for (n_exp = 0;n_exp < gen_nb_xmlExpNodePtr;n_exp++) {
33453:     for (n_sub = 0;n_sub < gen_nb_xmlExpNodePtr;n_sub++) {
33454:         mem_base = xmlMemBlocks();
33455:         ctxt = gen_xmlExpCtxtPtr(n_ctxt, 0);
33456:         exp = gen_xmlExpNodePtr(n_exp, 1);
33457:         sub = gen_xmlExpNodePtr(n_sub, 2);
33458: 
33459:         ret_val = xmlExpSubsume(ctxt, exp, sub);
33460:         desret_int(ret_val);
33461:         call_tests++;
33462:         des_xmlExpCtxtPtr(n_ctxt, ctxt, 0);
33463:         des_xmlExpNodePtr(n_exp, exp, 1);
33464:         des_xmlExpNodePtr(n_sub, sub, 2);
33465:         xmlResetLastError();
33466:         if (mem_base != xmlMemBlocks()) {
33467:             printf("Leak of %d blocks found in xmlExpSubsume",
33468: 	           xmlMemBlocks() - mem_base);
33469: 	    test_ret++;
33470:             printf(" %d", n_ctxt);
33471:             printf(" %d", n_exp);
33472:             printf(" %d", n_sub);
33473:             printf("\n");
33474:         }
33475:     }
33476:     }
33477:     }
33478:     function_tests++;
33479: #endif
33480: 
33481:     return(test_ret);
33482: }
33483: 
33484: #ifdef LIBXML_REGEXP_ENABLED
33485: 
33486: #define gen_nb_xmlRegExecCtxtPtr 1
33487: static xmlRegExecCtxtPtr gen_xmlRegExecCtxtPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
33488:     return(NULL);
33489: }
33490: static void des_xmlRegExecCtxtPtr(int no ATTRIBUTE_UNUSED, xmlRegExecCtxtPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
33491: }
33492: #endif
33493: 
33494: 
33495: static int
33496: test_xmlRegExecErrInfo(void) {
33497:     int test_ret = 0;
33498: 
33499: #if defined(LIBXML_REGEXP_ENABLED)
33500:     int mem_base;
33501:     int ret_val;
33502:     xmlRegExecCtxtPtr exec; /* a regexp execution context generating an error */
33503:     int n_exec;
33504:     xmlChar ** string; /* return value for the error string */
33505:     int n_string;
33506:     int * nbval; /* pointer to the number of accepted values IN/OUT */
33507:     int n_nbval;
33508:     int * nbneg; /* return number of negative transitions */
33509:     int n_nbneg;
33510:     xmlChar ** values; /* pointer to the array of acceptable values */
33511:     int n_values;
33512:     int * terminal; /* return value if this was a terminal state */
33513:     int n_terminal;
33514: 
33515:     for (n_exec = 0;n_exec < gen_nb_xmlRegExecCtxtPtr;n_exec++) {
33516:     for (n_string = 0;n_string < gen_nb_const_xmlChar_ptr_ptr;n_string++) {
33517:     for (n_nbval = 0;n_nbval < gen_nb_int_ptr;n_nbval++) {
33518:     for (n_nbneg = 0;n_nbneg < gen_nb_int_ptr;n_nbneg++) {
33519:     for (n_values = 0;n_values < gen_nb_xmlChar_ptr_ptr;n_values++) {
33520:     for (n_terminal = 0;n_terminal < gen_nb_int_ptr;n_terminal++) {
33521:         mem_base = xmlMemBlocks();
33522:         exec = gen_xmlRegExecCtxtPtr(n_exec, 0);
33523:         string = gen_const_xmlChar_ptr_ptr(n_string, 1);
33524:         nbval = gen_int_ptr(n_nbval, 2);
33525:         nbneg = gen_int_ptr(n_nbneg, 3);
33526:         values = gen_xmlChar_ptr_ptr(n_values, 4);
33527:         terminal = gen_int_ptr(n_terminal, 5);
33528: 
33529:         ret_val = xmlRegExecErrInfo(exec, (const xmlChar **)string, nbval, nbneg, values, terminal);
33530:         desret_int(ret_val);
33531:         call_tests++;
33532:         des_xmlRegExecCtxtPtr(n_exec, exec, 0);
33533:         des_const_xmlChar_ptr_ptr(n_string, (const xmlChar **)string, 1);
33534:         des_int_ptr(n_nbval, nbval, 2);
33535:         des_int_ptr(n_nbneg, nbneg, 3);
33536:         des_xmlChar_ptr_ptr(n_values, values, 4);
33537:         des_int_ptr(n_terminal, terminal, 5);
33538:         xmlResetLastError();
33539:         if (mem_base != xmlMemBlocks()) {
33540:             printf("Leak of %d blocks found in xmlRegExecErrInfo",
33541: 	           xmlMemBlocks() - mem_base);
33542: 	    test_ret++;
33543:             printf(" %d", n_exec);
33544:             printf(" %d", n_string);
33545:             printf(" %d", n_nbval);
33546:             printf(" %d", n_nbneg);
33547:             printf(" %d", n_values);
33548:             printf(" %d", n_terminal);
33549:             printf("\n");
33550:         }
33551:     }
33552:     }
33553:     }
33554:     }
33555:     }
33556:     }
33557:     function_tests++;
33558: #endif
33559: 
33560:     return(test_ret);
33561: }
33562: 
33563: 
33564: static int
33565: test_xmlRegExecNextValues(void) {
33566:     int test_ret = 0;
33567: 
33568: #if defined(LIBXML_REGEXP_ENABLED)
33569:     int mem_base;
33570:     int ret_val;
33571:     xmlRegExecCtxtPtr exec; /* a regexp execution context */
33572:     int n_exec;
33573:     int * nbval; /* pointer to the number of accepted values IN/OUT */
33574:     int n_nbval;
33575:     int * nbneg; /* return number of negative transitions */
33576:     int n_nbneg;
33577:     xmlChar ** values; /* pointer to the array of acceptable values */
33578:     int n_values;
33579:     int * terminal; /* return value if this was a terminal state */
33580:     int n_terminal;
33581: 
33582:     for (n_exec = 0;n_exec < gen_nb_xmlRegExecCtxtPtr;n_exec++) {
33583:     for (n_nbval = 0;n_nbval < gen_nb_int_ptr;n_nbval++) {
33584:     for (n_nbneg = 0;n_nbneg < gen_nb_int_ptr;n_nbneg++) {
33585:     for (n_values = 0;n_values < gen_nb_xmlChar_ptr_ptr;n_values++) {
33586:     for (n_terminal = 0;n_terminal < gen_nb_int_ptr;n_terminal++) {
33587:         mem_base = xmlMemBlocks();
33588:         exec = gen_xmlRegExecCtxtPtr(n_exec, 0);
33589:         nbval = gen_int_ptr(n_nbval, 1);
33590:         nbneg = gen_int_ptr(n_nbneg, 2);
33591:         values = gen_xmlChar_ptr_ptr(n_values, 3);
33592:         terminal = gen_int_ptr(n_terminal, 4);
33593: 
33594:         ret_val = xmlRegExecNextValues(exec, nbval, nbneg, values, terminal);
33595:         desret_int(ret_val);
33596:         call_tests++;
33597:         des_xmlRegExecCtxtPtr(n_exec, exec, 0);
33598:         des_int_ptr(n_nbval, nbval, 1);
33599:         des_int_ptr(n_nbneg, nbneg, 2);
33600:         des_xmlChar_ptr_ptr(n_values, values, 3);
33601:         des_int_ptr(n_terminal, terminal, 4);
33602:         xmlResetLastError();
33603:         if (mem_base != xmlMemBlocks()) {
33604:             printf("Leak of %d blocks found in xmlRegExecNextValues",
33605: 	           xmlMemBlocks() - mem_base);
33606: 	    test_ret++;
33607:             printf(" %d", n_exec);
33608:             printf(" %d", n_nbval);
33609:             printf(" %d", n_nbneg);
33610:             printf(" %d", n_values);
33611:             printf(" %d", n_terminal);
33612:             printf("\n");
33613:         }
33614:     }
33615:     }
33616:     }
33617:     }
33618:     }
33619:     function_tests++;
33620: #endif
33621: 
33622:     return(test_ret);
33623: }
33624: 
33625: 
33626: static int
33627: test_xmlRegExecPushString(void) {
33628:     int test_ret = 0;
33629: 
33630: #if defined(LIBXML_REGEXP_ENABLED)
33631:     int mem_base;
33632:     int ret_val;
33633:     xmlRegExecCtxtPtr exec; /* a regexp execution context or NULL to indicate the end */
33634:     int n_exec;
33635:     xmlChar * value; /* a string token input */
33636:     int n_value;
33637:     void * data; /* data associated to the token to reuse in callbacks */
33638:     int n_data;
33639: 
33640:     for (n_exec = 0;n_exec < gen_nb_xmlRegExecCtxtPtr;n_exec++) {
33641:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
33642:     for (n_data = 0;n_data < gen_nb_userdata;n_data++) {
33643:         mem_base = xmlMemBlocks();
33644:         exec = gen_xmlRegExecCtxtPtr(n_exec, 0);
33645:         value = gen_const_xmlChar_ptr(n_value, 1);
33646:         data = gen_userdata(n_data, 2);
33647: 
33648:         ret_val = xmlRegExecPushString(exec, (const xmlChar *)value, data);
33649:         desret_int(ret_val);
33650:         call_tests++;
33651:         des_xmlRegExecCtxtPtr(n_exec, exec, 0);
33652:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 1);
33653:         des_userdata(n_data, data, 2);
33654:         xmlResetLastError();
33655:         if (mem_base != xmlMemBlocks()) {
33656:             printf("Leak of %d blocks found in xmlRegExecPushString",
33657: 	           xmlMemBlocks() - mem_base);
33658: 	    test_ret++;
33659:             printf(" %d", n_exec);
33660:             printf(" %d", n_value);
33661:             printf(" %d", n_data);
33662:             printf("\n");
33663:         }
33664:     }
33665:     }
33666:     }
33667:     function_tests++;
33668: #endif
33669: 
33670:     return(test_ret);
33671: }
33672: 
33673: 
33674: static int
33675: test_xmlRegExecPushString2(void) {
33676:     int test_ret = 0;
33677: 
33678: #if defined(LIBXML_REGEXP_ENABLED)
33679:     int mem_base;
33680:     int ret_val;
33681:     xmlRegExecCtxtPtr exec; /* a regexp execution context or NULL to indicate the end */
33682:     int n_exec;
33683:     xmlChar * value; /* the first string token input */
33684:     int n_value;
33685:     xmlChar * value2; /* the second string token input */
33686:     int n_value2;
33687:     void * data; /* data associated to the token to reuse in callbacks */
33688:     int n_data;
33689: 
33690:     for (n_exec = 0;n_exec < gen_nb_xmlRegExecCtxtPtr;n_exec++) {
33691:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
33692:     for (n_value2 = 0;n_value2 < gen_nb_const_xmlChar_ptr;n_value2++) {
33693:     for (n_data = 0;n_data < gen_nb_userdata;n_data++) {
33694:         mem_base = xmlMemBlocks();
33695:         exec = gen_xmlRegExecCtxtPtr(n_exec, 0);
33696:         value = gen_const_xmlChar_ptr(n_value, 1);
33697:         value2 = gen_const_xmlChar_ptr(n_value2, 2);
33698:         data = gen_userdata(n_data, 3);
33699: 
33700:         ret_val = xmlRegExecPushString2(exec, (const xmlChar *)value, (const xmlChar *)value2, data);
33701:         desret_int(ret_val);
33702:         call_tests++;
33703:         des_xmlRegExecCtxtPtr(n_exec, exec, 0);
33704:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 1);
33705:         des_const_xmlChar_ptr(n_value2, (const xmlChar *)value2, 2);
33706:         des_userdata(n_data, data, 3);
33707:         xmlResetLastError();
33708:         if (mem_base != xmlMemBlocks()) {
33709:             printf("Leak of %d blocks found in xmlRegExecPushString2",
33710: 	           xmlMemBlocks() - mem_base);
33711: 	    test_ret++;
33712:             printf(" %d", n_exec);
33713:             printf(" %d", n_value);
33714:             printf(" %d", n_value2);
33715:             printf(" %d", n_data);
33716:             printf("\n");
33717:         }
33718:     }
33719:     }
33720:     }
33721:     }
33722:     function_tests++;
33723: #endif
33724: 
33725:     return(test_ret);
33726: }
33727: 
33728: #ifdef LIBXML_REGEXP_ENABLED
33729: 
33730: #define gen_nb_xmlRegexpPtr 1
33731: static xmlRegexpPtr gen_xmlRegexpPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
33732:     return(NULL);
33733: }
33734: static void des_xmlRegexpPtr(int no ATTRIBUTE_UNUSED, xmlRegexpPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
33735: }
33736: #endif
33737: 
33738: 
33739: static int
33740: test_xmlRegNewExecCtxt(void) {
33741:     int test_ret = 0;
33742: 
33743: 
33744:     /* missing type support */
33745:     return(test_ret);
33746: }
33747: 
33748: 
33749: static int
33750: test_xmlRegexpCompile(void) {
33751:     int test_ret = 0;
33752: 
33753: 
33754:     /* missing type support */
33755:     return(test_ret);
33756: }
33757: 
33758: 
33759: static int
33760: test_xmlRegexpExec(void) {
33761:     int test_ret = 0;
33762: 
33763: #if defined(LIBXML_REGEXP_ENABLED)
33764:     int mem_base;
33765:     int ret_val;
33766:     xmlRegexpPtr comp; /* the compiled regular expression */
33767:     int n_comp;
33768:     xmlChar * content; /* the value to check against the regular expression */
33769:     int n_content;
33770: 
33771:     for (n_comp = 0;n_comp < gen_nb_xmlRegexpPtr;n_comp++) {
33772:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
33773:         mem_base = xmlMemBlocks();
33774:         comp = gen_xmlRegexpPtr(n_comp, 0);
33775:         content = gen_const_xmlChar_ptr(n_content, 1);
33776: 
33777:         ret_val = xmlRegexpExec(comp, (const xmlChar *)content);
33778:         desret_int(ret_val);
33779:         call_tests++;
33780:         des_xmlRegexpPtr(n_comp, comp, 0);
33781:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 1);
33782:         xmlResetLastError();
33783:         if (mem_base != xmlMemBlocks()) {
33784:             printf("Leak of %d blocks found in xmlRegexpExec",
33785: 	           xmlMemBlocks() - mem_base);
33786: 	    test_ret++;
33787:             printf(" %d", n_comp);
33788:             printf(" %d", n_content);
33789:             printf("\n");
33790:         }
33791:     }
33792:     }
33793:     function_tests++;
33794: #endif
33795: 
33796:     return(test_ret);
33797: }
33798: 
33799: 
33800: static int
33801: test_xmlRegexpIsDeterminist(void) {
33802:     int test_ret = 0;
33803: 
33804: #if defined(LIBXML_REGEXP_ENABLED)
33805:     int mem_base;
33806:     int ret_val;
33807:     xmlRegexpPtr comp; /* the compiled regular expression */
33808:     int n_comp;
33809: 
33810:     for (n_comp = 0;n_comp < gen_nb_xmlRegexpPtr;n_comp++) {
33811:         mem_base = xmlMemBlocks();
33812:         comp = gen_xmlRegexpPtr(n_comp, 0);
33813: 
33814:         ret_val = xmlRegexpIsDeterminist(comp);
33815:         desret_int(ret_val);
33816:         call_tests++;
33817:         des_xmlRegexpPtr(n_comp, comp, 0);
33818:         xmlResetLastError();
33819:         if (mem_base != xmlMemBlocks()) {
33820:             printf("Leak of %d blocks found in xmlRegexpIsDeterminist",
33821: 	           xmlMemBlocks() - mem_base);
33822: 	    test_ret++;
33823:             printf(" %d", n_comp);
33824:             printf("\n");
33825:         }
33826:     }
33827:     function_tests++;
33828: #endif
33829: 
33830:     return(test_ret);
33831: }
33832: 
33833: 
33834: static int
33835: test_xmlRegexpPrint(void) {
33836:     int test_ret = 0;
33837: 
33838: #if defined(LIBXML_REGEXP_ENABLED)
33839:     int mem_base;
33840:     FILE * output; /* the file for the output debug */
33841:     int n_output;
33842:     xmlRegexpPtr regexp; /* the compiled regexp */
33843:     int n_regexp;
33844: 
33845:     for (n_output = 0;n_output < gen_nb_FILE_ptr;n_output++) {
33846:     for (n_regexp = 0;n_regexp < gen_nb_xmlRegexpPtr;n_regexp++) {
33847:         mem_base = xmlMemBlocks();
33848:         output = gen_FILE_ptr(n_output, 0);
33849:         regexp = gen_xmlRegexpPtr(n_regexp, 1);
33850: 
33851:         xmlRegexpPrint(output, regexp);
33852:         call_tests++;
33853:         des_FILE_ptr(n_output, output, 0);
33854:         des_xmlRegexpPtr(n_regexp, regexp, 1);
33855:         xmlResetLastError();
33856:         if (mem_base != xmlMemBlocks()) {
33857:             printf("Leak of %d blocks found in xmlRegexpPrint",
33858: 	           xmlMemBlocks() - mem_base);
33859: 	    test_ret++;
33860:             printf(" %d", n_output);
33861:             printf(" %d", n_regexp);
33862:             printf("\n");
33863:         }
33864:     }
33865:     }
33866:     function_tests++;
33867: #endif
33868: 
33869:     return(test_ret);
33870: }
33871: 
33872: static int
33873: test_xmlregexp(void) {
33874:     int test_ret = 0;
33875: 
33876:     if (quiet == 0) printf("Testing xmlregexp : 16 of 30 functions ...\n");
33877:     test_ret += test_xmlExpCtxtNbCons();
33878:     test_ret += test_xmlExpCtxtNbNodes();
33879:     test_ret += test_xmlExpDump();
33880:     test_ret += test_xmlExpExpDerive();
33881:     test_ret += test_xmlExpGetLanguage();
33882:     test_ret += test_xmlExpGetStart();
33883:     test_ret += test_xmlExpIsNillable();
33884:     test_ret += test_xmlExpMaxToken();
33885:     test_ret += test_xmlExpNewAtom();
33886:     test_ret += test_xmlExpNewCtxt();
33887:     test_ret += test_xmlExpNewOr();
33888:     test_ret += test_xmlExpNewRange();
33889:     test_ret += test_xmlExpNewSeq();
33890:     test_ret += test_xmlExpParse();
33891:     test_ret += test_xmlExpRef();
33892:     test_ret += test_xmlExpStringDerive();
33893:     test_ret += test_xmlExpSubsume();
33894:     test_ret += test_xmlRegExecErrInfo();
33895:     test_ret += test_xmlRegExecNextValues();
33896:     test_ret += test_xmlRegExecPushString();
33897:     test_ret += test_xmlRegExecPushString2();
33898:     test_ret += test_xmlRegNewExecCtxt();
33899:     test_ret += test_xmlRegexpCompile();
33900:     test_ret += test_xmlRegexpExec();
33901:     test_ret += test_xmlRegexpIsDeterminist();
33902:     test_ret += test_xmlRegexpPrint();
33903: 
33904:     if (test_ret != 0)
33905: 	printf("Module xmlregexp: %d errors\n", test_ret);
33906:     return(test_ret);
33907: }
33908: #ifdef LIBXML_OUTPUT_ENABLED
33909: 
33910: #define gen_nb_xmlSaveCtxtPtr 1
33911: static xmlSaveCtxtPtr gen_xmlSaveCtxtPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
33912:     return(NULL);
33913: }
33914: static void des_xmlSaveCtxtPtr(int no ATTRIBUTE_UNUSED, xmlSaveCtxtPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
33915: }
33916: #endif
33917: 
33918: 
33919: static int
33920: test_xmlSaveClose(void) {
33921:     int test_ret = 0;
33922: 
33923: #if defined(LIBXML_OUTPUT_ENABLED)
33924:     int mem_base;
33925:     int ret_val;
33926:     xmlSaveCtxtPtr ctxt; /* a document saving context */
33927:     int n_ctxt;
33928: 
33929:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlSaveCtxtPtr;n_ctxt++) {
33930:         mem_base = xmlMemBlocks();
33931:         ctxt = gen_xmlSaveCtxtPtr(n_ctxt, 0);
33932: 
33933:         ret_val = xmlSaveClose(ctxt);
33934:         desret_int(ret_val);
33935:         call_tests++;
33936:         des_xmlSaveCtxtPtr(n_ctxt, ctxt, 0);
33937:         xmlResetLastError();
33938:         if (mem_base != xmlMemBlocks()) {
33939:             printf("Leak of %d blocks found in xmlSaveClose",
33940: 	           xmlMemBlocks() - mem_base);
33941: 	    test_ret++;
33942:             printf(" %d", n_ctxt);
33943:             printf("\n");
33944:         }
33945:     }
33946:     function_tests++;
33947: #endif
33948: 
33949:     return(test_ret);
33950: }
33951: 
33952: 
33953: static int
33954: test_xmlSaveDoc(void) {
33955:     int test_ret = 0;
33956: 
33957: #if defined(LIBXML_OUTPUT_ENABLED)
33958:     int mem_base;
33959:     long ret_val;
33960:     xmlSaveCtxtPtr ctxt; /* a document saving context */
33961:     int n_ctxt;
33962:     xmlDocPtr doc; /* a document */
33963:     int n_doc;
33964: 
33965:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlSaveCtxtPtr;n_ctxt++) {
33966:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
33967:         mem_base = xmlMemBlocks();
33968:         ctxt = gen_xmlSaveCtxtPtr(n_ctxt, 0);
33969:         doc = gen_xmlDocPtr(n_doc, 1);
33970: 
33971:         ret_val = xmlSaveDoc(ctxt, doc);
33972:         desret_long(ret_val);
33973:         call_tests++;
33974:         des_xmlSaveCtxtPtr(n_ctxt, ctxt, 0);
33975:         des_xmlDocPtr(n_doc, doc, 1);
33976:         xmlResetLastError();
33977:         if (mem_base != xmlMemBlocks()) {
33978:             printf("Leak of %d blocks found in xmlSaveDoc",
33979: 	           xmlMemBlocks() - mem_base);
33980: 	    test_ret++;
33981:             printf(" %d", n_ctxt);
33982:             printf(" %d", n_doc);
33983:             printf("\n");
33984:         }
33985:     }
33986:     }
33987:     function_tests++;
33988: #endif
33989: 
33990:     return(test_ret);
33991: }
33992: 
33993: 
33994: static int
33995: test_xmlSaveFlush(void) {
33996:     int test_ret = 0;
33997: 
33998: #if defined(LIBXML_OUTPUT_ENABLED)
33999:     int mem_base;
34000:     int ret_val;
34001:     xmlSaveCtxtPtr ctxt; /* a document saving context */
34002:     int n_ctxt;
34003: 
34004:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlSaveCtxtPtr;n_ctxt++) {
34005:         mem_base = xmlMemBlocks();
34006:         ctxt = gen_xmlSaveCtxtPtr(n_ctxt, 0);
34007: 
34008:         ret_val = xmlSaveFlush(ctxt);
34009:         desret_int(ret_val);
34010:         call_tests++;
34011:         des_xmlSaveCtxtPtr(n_ctxt, ctxt, 0);
34012:         xmlResetLastError();
34013:         if (mem_base != xmlMemBlocks()) {
34014:             printf("Leak of %d blocks found in xmlSaveFlush",
34015: 	           xmlMemBlocks() - mem_base);
34016: 	    test_ret++;
34017:             printf(" %d", n_ctxt);
34018:             printf("\n");
34019:         }
34020:     }
34021:     function_tests++;
34022: #endif
34023: 
34024:     return(test_ret);
34025: }
34026: 
34027: 
34028: static int
34029: test_xmlSaveSetAttrEscape(void) {
34030:     int test_ret = 0;
34031: 
34032: 
34033:     /* missing type support */
34034:     return(test_ret);
34035: }
34036: 
34037: 
34038: static int
34039: test_xmlSaveSetEscape(void) {
34040:     int test_ret = 0;
34041: 
34042: 
34043:     /* missing type support */
34044:     return(test_ret);
34045: }
34046: 
34047: 
34048: static int
34049: test_xmlSaveToBuffer(void) {
34050:     int test_ret = 0;
34051: 
34052: 
34053:     /* missing type support */
34054:     return(test_ret);
34055: }
34056: 
34057: 
34058: static int
34059: test_xmlSaveToFd(void) {
34060:     int test_ret = 0;
34061: 
34062: 
34063:     /* missing type support */
34064:     return(test_ret);
34065: }
34066: 
34067: 
34068: static int
34069: test_xmlSaveToFilename(void) {
34070:     int test_ret = 0;
34071: 
34072: 
34073:     /* missing type support */
34074:     return(test_ret);
34075: }
34076: 
34077: 
34078: static int
34079: test_xmlSaveTree(void) {
34080:     int test_ret = 0;
34081: 
34082: #if defined(LIBXML_OUTPUT_ENABLED)
34083:     int mem_base;
34084:     long ret_val;
34085:     xmlSaveCtxtPtr ctxt; /* a document saving context */
34086:     int n_ctxt;
34087:     xmlNodePtr node; /* the top node of the subtree to save */
34088:     int n_node;
34089: 
34090:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlSaveCtxtPtr;n_ctxt++) {
34091:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
34092:         mem_base = xmlMemBlocks();
34093:         ctxt = gen_xmlSaveCtxtPtr(n_ctxt, 0);
34094:         node = gen_xmlNodePtr(n_node, 1);
34095: 
34096:         ret_val = xmlSaveTree(ctxt, node);
34097:         desret_long(ret_val);
34098:         call_tests++;
34099:         des_xmlSaveCtxtPtr(n_ctxt, ctxt, 0);
34100:         des_xmlNodePtr(n_node, node, 1);
34101:         xmlResetLastError();
34102:         if (mem_base != xmlMemBlocks()) {
34103:             printf("Leak of %d blocks found in xmlSaveTree",
34104: 	           xmlMemBlocks() - mem_base);
34105: 	    test_ret++;
34106:             printf(" %d", n_ctxt);
34107:             printf(" %d", n_node);
34108:             printf("\n");
34109:         }
34110:     }
34111:     }
34112:     function_tests++;
34113: #endif
34114: 
34115:     return(test_ret);
34116: }
34117: 
34118: static int
34119: test_xmlsave(void) {
34120:     int test_ret = 0;
34121: 
34122:     if (quiet == 0) printf("Testing xmlsave : 4 of 10 functions ...\n");
34123:     test_ret += test_xmlSaveClose();
34124:     test_ret += test_xmlSaveDoc();
34125:     test_ret += test_xmlSaveFlush();
34126:     test_ret += test_xmlSaveSetAttrEscape();
34127:     test_ret += test_xmlSaveSetEscape();
34128:     test_ret += test_xmlSaveToBuffer();
34129:     test_ret += test_xmlSaveToFd();
34130:     test_ret += test_xmlSaveToFilename();
34131:     test_ret += test_xmlSaveTree();
34132: 
34133:     if (test_ret != 0)
34134: 	printf("Module xmlsave: %d errors\n", test_ret);
34135:     return(test_ret);
34136: }
34137: 
34138: static int
34139: test_xmlSchemaDump(void) {
34140:     int test_ret = 0;
34141: 
34142: #if defined(LIBXML_SCHEMAS_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
34143:     int mem_base;
34144:     FILE * output; /* the file output */
34145:     int n_output;
34146:     xmlSchemaPtr schema; /* a schema structure */
34147:     int n_schema;
34148: 
34149:     for (n_output = 0;n_output < gen_nb_FILE_ptr;n_output++) {
34150:     for (n_schema = 0;n_schema < gen_nb_xmlSchemaPtr;n_schema++) {
34151:         mem_base = xmlMemBlocks();
34152:         output = gen_FILE_ptr(n_output, 0);
34153:         schema = gen_xmlSchemaPtr(n_schema, 1);
34154: 
34155:         xmlSchemaDump(output, schema);
34156:         call_tests++;
34157:         des_FILE_ptr(n_output, output, 0);
34158:         des_xmlSchemaPtr(n_schema, schema, 1);
34159:         xmlResetLastError();
34160:         if (mem_base != xmlMemBlocks()) {
34161:             printf("Leak of %d blocks found in xmlSchemaDump",
34162: 	           xmlMemBlocks() - mem_base);
34163: 	    test_ret++;
34164:             printf(" %d", n_output);
34165:             printf(" %d", n_schema);
34166:             printf("\n");
34167:         }
34168:     }
34169:     }
34170:     function_tests++;
34171: #endif
34172: 
34173:     return(test_ret);
34174: }
34175: 
34176: #ifdef LIBXML_SCHEMAS_ENABLED
34177: 
34178: #define gen_nb_xmlSchemaParserCtxtPtr 1
34179: static xmlSchemaParserCtxtPtr gen_xmlSchemaParserCtxtPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
34180:     return(NULL);
34181: }
34182: static void des_xmlSchemaParserCtxtPtr(int no ATTRIBUTE_UNUSED, xmlSchemaParserCtxtPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
34183: }
34184: #endif
34185: 
34186: #ifdef LIBXML_SCHEMAS_ENABLED
34187: 
34188: #define gen_nb_xmlSchemaValidityErrorFunc_ptr 1
34189: static xmlSchemaValidityErrorFunc * gen_xmlSchemaValidityErrorFunc_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
34190:     return(NULL);
34191: }
34192: static void des_xmlSchemaValidityErrorFunc_ptr(int no ATTRIBUTE_UNUSED, xmlSchemaValidityErrorFunc * val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
34193: }
34194: #endif
34195: 
34196: #ifdef LIBXML_SCHEMAS_ENABLED
34197: 
34198: #define gen_nb_xmlSchemaValidityWarningFunc_ptr 1
34199: static xmlSchemaValidityWarningFunc * gen_xmlSchemaValidityWarningFunc_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
34200:     return(NULL);
34201: }
34202: static void des_xmlSchemaValidityWarningFunc_ptr(int no ATTRIBUTE_UNUSED, xmlSchemaValidityWarningFunc * val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
34203: }
34204: #endif
34205: 
34206: 
34207: static int
34208: test_xmlSchemaGetParserErrors(void) {
34209:     int test_ret = 0;
34210: 
34211: #if defined(LIBXML_SCHEMAS_ENABLED)
34212:     int mem_base;
34213:     int ret_val;
34214:     xmlSchemaParserCtxtPtr ctxt; /* a XMl-Schema parser context */
34215:     int n_ctxt;
34216:     xmlSchemaValidityErrorFunc * err; /* the error callback result */
34217:     int n_err;
34218:     xmlSchemaValidityWarningFunc * warn; /* the warning callback result */
34219:     int n_warn;
34220:     void ** ctx; /* contextual data for the callbacks result */
34221:     int n_ctx;
34222: 
34223:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlSchemaParserCtxtPtr;n_ctxt++) {
34224:     for (n_err = 0;n_err < gen_nb_xmlSchemaValidityErrorFunc_ptr;n_err++) {
34225:     for (n_warn = 0;n_warn < gen_nb_xmlSchemaValidityWarningFunc_ptr;n_warn++) {
34226:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr_ptr;n_ctx++) {
34227:         mem_base = xmlMemBlocks();
34228:         ctxt = gen_xmlSchemaParserCtxtPtr(n_ctxt, 0);
34229:         err = gen_xmlSchemaValidityErrorFunc_ptr(n_err, 1);
34230:         warn = gen_xmlSchemaValidityWarningFunc_ptr(n_warn, 2);
34231:         ctx = gen_void_ptr_ptr(n_ctx, 3);
34232: 
34233:         ret_val = xmlSchemaGetParserErrors(ctxt, err, warn, ctx);
34234:         desret_int(ret_val);
34235:         call_tests++;
34236:         des_xmlSchemaParserCtxtPtr(n_ctxt, ctxt, 0);
34237:         des_xmlSchemaValidityErrorFunc_ptr(n_err, err, 1);
34238:         des_xmlSchemaValidityWarningFunc_ptr(n_warn, warn, 2);
34239:         des_void_ptr_ptr(n_ctx, ctx, 3);
34240:         xmlResetLastError();
34241:         if (mem_base != xmlMemBlocks()) {
34242:             printf("Leak of %d blocks found in xmlSchemaGetParserErrors",
34243: 	           xmlMemBlocks() - mem_base);
34244: 	    test_ret++;
34245:             printf(" %d", n_ctxt);
34246:             printf(" %d", n_err);
34247:             printf(" %d", n_warn);
34248:             printf(" %d", n_ctx);
34249:             printf("\n");
34250:         }
34251:     }
34252:     }
34253:     }
34254:     }
34255:     function_tests++;
34256: #endif
34257: 
34258:     return(test_ret);
34259: }
34260: 
34261: 
34262: static int
34263: test_xmlSchemaGetValidErrors(void) {
34264:     int test_ret = 0;
34265: 
34266: #if defined(LIBXML_SCHEMAS_ENABLED)
34267:     int mem_base;
34268:     int ret_val;
34269:     xmlSchemaValidCtxtPtr ctxt; /* a XML-Schema validation context */
34270:     int n_ctxt;
34271:     xmlSchemaValidityErrorFunc * err; /* the error function result */
34272:     int n_err;
34273:     xmlSchemaValidityWarningFunc * warn; /* the warning function result */
34274:     int n_warn;
34275:     void ** ctx; /* the functions context result */
34276:     int n_ctx;
34277: 
34278:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlSchemaValidCtxtPtr;n_ctxt++) {
34279:     for (n_err = 0;n_err < gen_nb_xmlSchemaValidityErrorFunc_ptr;n_err++) {
34280:     for (n_warn = 0;n_warn < gen_nb_xmlSchemaValidityWarningFunc_ptr;n_warn++) {
34281:     for (n_ctx = 0;n_ctx < gen_nb_void_ptr_ptr;n_ctx++) {
34282:         mem_base = xmlMemBlocks();
34283:         ctxt = gen_xmlSchemaValidCtxtPtr(n_ctxt, 0);
34284:         err = gen_xmlSchemaValidityErrorFunc_ptr(n_err, 1);
34285:         warn = gen_xmlSchemaValidityWarningFunc_ptr(n_warn, 2);
34286:         ctx = gen_void_ptr_ptr(n_ctx, 3);
34287: 
34288:         ret_val = xmlSchemaGetValidErrors(ctxt, err, warn, ctx);
34289:         desret_int(ret_val);
34290:         call_tests++;
34291:         des_xmlSchemaValidCtxtPtr(n_ctxt, ctxt, 0);
34292:         des_xmlSchemaValidityErrorFunc_ptr(n_err, err, 1);
34293:         des_xmlSchemaValidityWarningFunc_ptr(n_warn, warn, 2);
34294:         des_void_ptr_ptr(n_ctx, ctx, 3);
34295:         xmlResetLastError();
34296:         if (mem_base != xmlMemBlocks()) {
34297:             printf("Leak of %d blocks found in xmlSchemaGetValidErrors",
34298: 	           xmlMemBlocks() - mem_base);
34299: 	    test_ret++;
34300:             printf(" %d", n_ctxt);
34301:             printf(" %d", n_err);
34302:             printf(" %d", n_warn);
34303:             printf(" %d", n_ctx);
34304:             printf("\n");
34305:         }
34306:     }
34307:     }
34308:     }
34309:     }
34310:     function_tests++;
34311: #endif
34312: 
34313:     return(test_ret);
34314: }
34315: 
34316: 
34317: static int
34318: test_xmlSchemaIsValid(void) {
34319:     int test_ret = 0;
34320: 
34321: #if defined(LIBXML_SCHEMAS_ENABLED)
34322:     int mem_base;
34323:     int ret_val;
34324:     xmlSchemaValidCtxtPtr ctxt; /* the schema validation context */
34325:     int n_ctxt;
34326: 
34327:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlSchemaValidCtxtPtr;n_ctxt++) {
34328:         mem_base = xmlMemBlocks();
34329:         ctxt = gen_xmlSchemaValidCtxtPtr(n_ctxt, 0);
34330: 
34331:         ret_val = xmlSchemaIsValid(ctxt);
34332:         desret_int(ret_val);
34333:         call_tests++;
34334:         des_xmlSchemaValidCtxtPtr(n_ctxt, ctxt, 0);
34335:         xmlResetLastError();
34336:         if (mem_base != xmlMemBlocks()) {
34337:             printf("Leak of %d blocks found in xmlSchemaIsValid",
34338: 	           xmlMemBlocks() - mem_base);
34339: 	    test_ret++;
34340:             printf(" %d", n_ctxt);
34341:             printf("\n");
34342:         }
34343:     }
34344:     function_tests++;
34345: #endif
34346: 
34347:     return(test_ret);
34348: }
34349: 
34350: 
34351: static int
34352: test_xmlSchemaNewDocParserCtxt(void) {
34353:     int test_ret = 0;
34354: 
34355: #if defined(LIBXML_SCHEMAS_ENABLED)
34356:     int mem_base;
34357:     xmlSchemaParserCtxtPtr ret_val;
34358:     xmlDocPtr doc; /* a preparsed document tree */
34359:     int n_doc;
34360: 
34361:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
34362:         mem_base = xmlMemBlocks();
34363:         doc = gen_xmlDocPtr(n_doc, 0);
34364: 
34365:         ret_val = xmlSchemaNewDocParserCtxt(doc);
34366:         desret_xmlSchemaParserCtxtPtr(ret_val);
34367:         call_tests++;
34368:         des_xmlDocPtr(n_doc, doc, 0);
34369:         xmlResetLastError();
34370:         if (mem_base != xmlMemBlocks()) {
34371:             printf("Leak of %d blocks found in xmlSchemaNewDocParserCtxt",
34372: 	           xmlMemBlocks() - mem_base);
34373: 	    test_ret++;
34374:             printf(" %d", n_doc);
34375:             printf("\n");
34376:         }
34377:     }
34378:     function_tests++;
34379: #endif
34380: 
34381:     return(test_ret);
34382: }
34383: 
34384: 
34385: static int
34386: test_xmlSchemaNewMemParserCtxt(void) {
34387:     int test_ret = 0;
34388: 
34389: #if defined(LIBXML_SCHEMAS_ENABLED)
34390:     int mem_base;
34391:     xmlSchemaParserCtxtPtr ret_val;
34392:     char * buffer; /* a pointer to a char array containing the schemas */
34393:     int n_buffer;
34394:     int size; /* the size of the array */
34395:     int n_size;
34396: 
34397:     for (n_buffer = 0;n_buffer < gen_nb_const_char_ptr;n_buffer++) {
34398:     for (n_size = 0;n_size < gen_nb_int;n_size++) {
34399:         mem_base = xmlMemBlocks();
34400:         buffer = gen_const_char_ptr(n_buffer, 0);
34401:         size = gen_int(n_size, 1);
34402: 
34403:         ret_val = xmlSchemaNewMemParserCtxt((const char *)buffer, size);
34404:         desret_xmlSchemaParserCtxtPtr(ret_val);
34405:         call_tests++;
34406:         des_const_char_ptr(n_buffer, (const char *)buffer, 0);
34407:         des_int(n_size, size, 1);
34408:         xmlResetLastError();
34409:         if (mem_base != xmlMemBlocks()) {
34410:             printf("Leak of %d blocks found in xmlSchemaNewMemParserCtxt",
34411: 	           xmlMemBlocks() - mem_base);
34412: 	    test_ret++;
34413:             printf(" %d", n_buffer);
34414:             printf(" %d", n_size);
34415:             printf("\n");
34416:         }
34417:     }
34418:     }
34419:     function_tests++;
34420: #endif
34421: 
34422:     return(test_ret);
34423: }
34424: 
34425: 
34426: static int
34427: test_xmlSchemaNewParserCtxt(void) {
34428:     int test_ret = 0;
34429: 
34430: #if defined(LIBXML_SCHEMAS_ENABLED)
34431:     int mem_base;
34432:     xmlSchemaParserCtxtPtr ret_val;
34433:     char * URL; /* the location of the schema */
34434:     int n_URL;
34435: 
34436:     for (n_URL = 0;n_URL < gen_nb_const_char_ptr;n_URL++) {
34437:         mem_base = xmlMemBlocks();
34438:         URL = gen_const_char_ptr(n_URL, 0);
34439: 
34440:         ret_val = xmlSchemaNewParserCtxt((const char *)URL);
34441:         desret_xmlSchemaParserCtxtPtr(ret_val);
34442:         call_tests++;
34443:         des_const_char_ptr(n_URL, (const char *)URL, 0);
34444:         xmlResetLastError();
34445:         if (mem_base != xmlMemBlocks()) {
34446:             printf("Leak of %d blocks found in xmlSchemaNewParserCtxt",
34447: 	           xmlMemBlocks() - mem_base);
34448: 	    test_ret++;
34449:             printf(" %d", n_URL);
34450:             printf("\n");
34451:         }
34452:     }
34453:     function_tests++;
34454: #endif
34455: 
34456:     return(test_ret);
34457: }
34458: 
34459: 
34460: static int
34461: test_xmlSchemaNewValidCtxt(void) {
34462:     int test_ret = 0;
34463: 
34464: 
34465:     /* missing type support */
34466:     return(test_ret);
34467: }
34468: 
34469: 
34470: static int
34471: test_xmlSchemaParse(void) {
34472:     int test_ret = 0;
34473: 
34474: 
34475:     /* missing type support */
34476:     return(test_ret);
34477: }
34478: 
34479: #ifdef LIBXML_SCHEMAS_ENABLED
34480: 
34481: #define gen_nb_xmlSAXHandlerPtr_ptr 1
34482: static xmlSAXHandlerPtr * gen_xmlSAXHandlerPtr_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
34483:     return(NULL);
34484: }
34485: static void des_xmlSAXHandlerPtr_ptr(int no ATTRIBUTE_UNUSED, xmlSAXHandlerPtr * val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
34486: }
34487: #endif
34488: 
34489: 
34490: static int
34491: test_xmlSchemaSAXPlug(void) {
34492:     int test_ret = 0;
34493: 
34494: 
34495:     /* missing type support */
34496:     return(test_ret);
34497: }
34498: 
34499: #ifdef LIBXML_SCHEMAS_ENABLED
34500: 
34501: #define gen_nb_xmlSchemaSAXPlugPtr 1
34502: static xmlSchemaSAXPlugPtr gen_xmlSchemaSAXPlugPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
34503:     return(NULL);
34504: }
34505: static void des_xmlSchemaSAXPlugPtr(int no ATTRIBUTE_UNUSED, xmlSchemaSAXPlugPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
34506: }
34507: #endif
34508: 
34509: 
34510: static int
34511: test_xmlSchemaSAXUnplug(void) {
34512:     int test_ret = 0;
34513: 
34514: #if defined(LIBXML_SCHEMAS_ENABLED)
34515:     int mem_base;
34516:     int ret_val;
34517:     xmlSchemaSAXPlugPtr plug; /* a data structure returned by xmlSchemaSAXPlug */
34518:     int n_plug;
34519: 
34520:     for (n_plug = 0;n_plug < gen_nb_xmlSchemaSAXPlugPtr;n_plug++) {
34521:         mem_base = xmlMemBlocks();
34522:         plug = gen_xmlSchemaSAXPlugPtr(n_plug, 0);
34523: 
34524:         ret_val = xmlSchemaSAXUnplug(plug);
34525:         desret_int(ret_val);
34526:         call_tests++;
34527:         des_xmlSchemaSAXPlugPtr(n_plug, plug, 0);
34528:         xmlResetLastError();
34529:         if (mem_base != xmlMemBlocks()) {
34530:             printf("Leak of %d blocks found in xmlSchemaSAXUnplug",
34531: 	           xmlMemBlocks() - mem_base);
34532: 	    test_ret++;
34533:             printf(" %d", n_plug);
34534:             printf("\n");
34535:         }
34536:     }
34537:     function_tests++;
34538: #endif
34539: 
34540:     return(test_ret);
34541: }
34542: 
34543: 
34544: static int
34545: test_xmlSchemaSetParserErrors(void) {
34546:     int test_ret = 0;
34547: 
34548: 
34549:     /* missing type support */
34550:     return(test_ret);
34551: }
34552: 
34553: 
34554: static int
34555: test_xmlSchemaSetParserStructuredErrors(void) {
34556:     int test_ret = 0;
34557: 
34558: 
34559:     /* missing type support */
34560:     return(test_ret);
34561: }
34562: 
34563: 
34564: static int
34565: test_xmlSchemaSetValidErrors(void) {
34566:     int test_ret = 0;
34567: 
34568: 
34569:     /* missing type support */
34570:     return(test_ret);
34571: }
34572: 
34573: 
34574: static int
34575: test_xmlSchemaSetValidOptions(void) {
34576:     int test_ret = 0;
34577: 
34578: #if defined(LIBXML_SCHEMAS_ENABLED)
34579:     int mem_base;
34580:     int ret_val;
34581:     xmlSchemaValidCtxtPtr ctxt; /* a schema validation context */
34582:     int n_ctxt;
34583:     int options; /* a combination of xmlSchemaValidOption */
34584:     int n_options;
34585: 
34586:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlSchemaValidCtxtPtr;n_ctxt++) {
34587:     for (n_options = 0;n_options < gen_nb_int;n_options++) {
34588:         mem_base = xmlMemBlocks();
34589:         ctxt = gen_xmlSchemaValidCtxtPtr(n_ctxt, 0);
34590:         options = gen_int(n_options, 1);
34591: 
34592:         ret_val = xmlSchemaSetValidOptions(ctxt, options);
34593:         desret_int(ret_val);
34594:         call_tests++;
34595:         des_xmlSchemaValidCtxtPtr(n_ctxt, ctxt, 0);
34596:         des_int(n_options, options, 1);
34597:         xmlResetLastError();
34598:         if (mem_base != xmlMemBlocks()) {
34599:             printf("Leak of %d blocks found in xmlSchemaSetValidOptions",
34600: 	           xmlMemBlocks() - mem_base);
34601: 	    test_ret++;
34602:             printf(" %d", n_ctxt);
34603:             printf(" %d", n_options);
34604:             printf("\n");
34605:         }
34606:     }
34607:     }
34608:     function_tests++;
34609: #endif
34610: 
34611:     return(test_ret);
34612: }
34613: 
34614: 
34615: static int
34616: test_xmlSchemaSetValidStructuredErrors(void) {
34617:     int test_ret = 0;
34618: 
34619: 
34620:     /* missing type support */
34621:     return(test_ret);
34622: }
34623: 
34624: 
34625: static int
34626: test_xmlSchemaValidCtxtGetOptions(void) {
34627:     int test_ret = 0;
34628: 
34629: #if defined(LIBXML_SCHEMAS_ENABLED)
34630:     int mem_base;
34631:     int ret_val;
34632:     xmlSchemaValidCtxtPtr ctxt; /* a schema validation context */
34633:     int n_ctxt;
34634: 
34635:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlSchemaValidCtxtPtr;n_ctxt++) {
34636:         mem_base = xmlMemBlocks();
34637:         ctxt = gen_xmlSchemaValidCtxtPtr(n_ctxt, 0);
34638: 
34639:         ret_val = xmlSchemaValidCtxtGetOptions(ctxt);
34640:         desret_int(ret_val);
34641:         call_tests++;
34642:         des_xmlSchemaValidCtxtPtr(n_ctxt, ctxt, 0);
34643:         xmlResetLastError();
34644:         if (mem_base != xmlMemBlocks()) {
34645:             printf("Leak of %d blocks found in xmlSchemaValidCtxtGetOptions",
34646: 	           xmlMemBlocks() - mem_base);
34647: 	    test_ret++;
34648:             printf(" %d", n_ctxt);
34649:             printf("\n");
34650:         }
34651:     }
34652:     function_tests++;
34653: #endif
34654: 
34655:     return(test_ret);
34656: }
34657: 
34658: 
34659: static int
34660: test_xmlSchemaValidCtxtGetParserCtxt(void) {
34661:     int test_ret = 0;
34662: 
34663: #if defined(LIBXML_SCHEMAS_ENABLED)
34664:     int mem_base;
34665:     xmlParserCtxtPtr ret_val;
34666:     xmlSchemaValidCtxtPtr ctxt; /* a schema validation context */
34667:     int n_ctxt;
34668: 
34669:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlSchemaValidCtxtPtr;n_ctxt++) {
34670:         mem_base = xmlMemBlocks();
34671:         ctxt = gen_xmlSchemaValidCtxtPtr(n_ctxt, 0);
34672: 
34673:         ret_val = xmlSchemaValidCtxtGetParserCtxt(ctxt);
34674:         desret_xmlParserCtxtPtr(ret_val);
34675:         call_tests++;
34676:         des_xmlSchemaValidCtxtPtr(n_ctxt, ctxt, 0);
34677:         xmlResetLastError();
34678:         if (mem_base != xmlMemBlocks()) {
34679:             printf("Leak of %d blocks found in xmlSchemaValidCtxtGetParserCtxt",
34680: 	           xmlMemBlocks() - mem_base);
34681: 	    test_ret++;
34682:             printf(" %d", n_ctxt);
34683:             printf("\n");
34684:         }
34685:     }
34686:     function_tests++;
34687: #endif
34688: 
34689:     return(test_ret);
34690: }
34691: 
34692: 
34693: static int
34694: test_xmlSchemaValidateDoc(void) {
34695:     int test_ret = 0;
34696: 
34697: #if defined(LIBXML_SCHEMAS_ENABLED)
34698:     int mem_base;
34699:     int ret_val;
34700:     xmlSchemaValidCtxtPtr ctxt; /* a schema validation context */
34701:     int n_ctxt;
34702:     xmlDocPtr doc; /* a parsed document tree */
34703:     int n_doc;
34704: 
34705:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlSchemaValidCtxtPtr;n_ctxt++) {
34706:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
34707:         mem_base = xmlMemBlocks();
34708:         ctxt = gen_xmlSchemaValidCtxtPtr(n_ctxt, 0);
34709:         doc = gen_xmlDocPtr(n_doc, 1);
34710: 
34711:         ret_val = xmlSchemaValidateDoc(ctxt, doc);
34712:         desret_int(ret_val);
34713:         call_tests++;
34714:         des_xmlSchemaValidCtxtPtr(n_ctxt, ctxt, 0);
34715:         des_xmlDocPtr(n_doc, doc, 1);
34716:         xmlResetLastError();
34717:         if (mem_base != xmlMemBlocks()) {
34718:             printf("Leak of %d blocks found in xmlSchemaValidateDoc",
34719: 	           xmlMemBlocks() - mem_base);
34720: 	    test_ret++;
34721:             printf(" %d", n_ctxt);
34722:             printf(" %d", n_doc);
34723:             printf("\n");
34724:         }
34725:     }
34726:     }
34727:     function_tests++;
34728: #endif
34729: 
34730:     return(test_ret);
34731: }
34732: 
34733: 
34734: static int
34735: test_xmlSchemaValidateFile(void) {
34736:     int test_ret = 0;
34737: 
34738: #if defined(LIBXML_SCHEMAS_ENABLED)
34739:     int mem_base;
34740:     int ret_val;
34741:     xmlSchemaValidCtxtPtr ctxt; /* a schema validation context */
34742:     int n_ctxt;
34743:     const char * filename; /* the URI of the instance */
34744:     int n_filename;
34745:     int options; /* a future set of options, currently unused */
34746:     int n_options;
34747: 
34748:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlSchemaValidCtxtPtr;n_ctxt++) {
34749:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
34750:     for (n_options = 0;n_options < gen_nb_int;n_options++) {
34751:         mem_base = xmlMemBlocks();
34752:         ctxt = gen_xmlSchemaValidCtxtPtr(n_ctxt, 0);
34753:         filename = gen_filepath(n_filename, 1);
34754:         options = gen_int(n_options, 2);
34755: 
34756:         ret_val = xmlSchemaValidateFile(ctxt, filename, options);
34757:         desret_int(ret_val);
34758:         call_tests++;
34759:         des_xmlSchemaValidCtxtPtr(n_ctxt, ctxt, 0);
34760:         des_filepath(n_filename, filename, 1);
34761:         des_int(n_options, options, 2);
34762:         xmlResetLastError();
34763:         if (mem_base != xmlMemBlocks()) {
34764:             printf("Leak of %d blocks found in xmlSchemaValidateFile",
34765: 	           xmlMemBlocks() - mem_base);
34766: 	    test_ret++;
34767:             printf(" %d", n_ctxt);
34768:             printf(" %d", n_filename);
34769:             printf(" %d", n_options);
34770:             printf("\n");
34771:         }
34772:     }
34773:     }
34774:     }
34775:     function_tests++;
34776: #endif
34777: 
34778:     return(test_ret);
34779: }
34780: 
34781: 
34782: static int
34783: test_xmlSchemaValidateOneElement(void) {
34784:     int test_ret = 0;
34785: 
34786: #if defined(LIBXML_SCHEMAS_ENABLED)
34787:     int mem_base;
34788:     int ret_val;
34789:     xmlSchemaValidCtxtPtr ctxt; /* a schema validation context */
34790:     int n_ctxt;
34791:     xmlNodePtr elem; /* an element node */
34792:     int n_elem;
34793: 
34794:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlSchemaValidCtxtPtr;n_ctxt++) {
34795:     for (n_elem = 0;n_elem < gen_nb_xmlNodePtr;n_elem++) {
34796:         mem_base = xmlMemBlocks();
34797:         ctxt = gen_xmlSchemaValidCtxtPtr(n_ctxt, 0);
34798:         elem = gen_xmlNodePtr(n_elem, 1);
34799: 
34800:         ret_val = xmlSchemaValidateOneElement(ctxt, elem);
34801:         desret_int(ret_val);
34802:         call_tests++;
34803:         des_xmlSchemaValidCtxtPtr(n_ctxt, ctxt, 0);
34804:         des_xmlNodePtr(n_elem, elem, 1);
34805:         xmlResetLastError();
34806:         if (mem_base != xmlMemBlocks()) {
34807:             printf("Leak of %d blocks found in xmlSchemaValidateOneElement",
34808: 	           xmlMemBlocks() - mem_base);
34809: 	    test_ret++;
34810:             printf(" %d", n_ctxt);
34811:             printf(" %d", n_elem);
34812:             printf("\n");
34813:         }
34814:     }
34815:     }
34816:     function_tests++;
34817: #endif
34818: 
34819:     return(test_ret);
34820: }
34821: 
34822: 
34823: static int
34824: test_xmlSchemaValidateSetFilename(void) {
34825:     int test_ret = 0;
34826: 
34827: #if defined(LIBXML_SCHEMAS_ENABLED)
34828:     int mem_base;
34829:     xmlSchemaValidCtxtPtr vctxt; /* the schema validation context */
34830:     int n_vctxt;
34831:     const char * filename; /* the file name */
34832:     int n_filename;
34833: 
34834:     for (n_vctxt = 0;n_vctxt < gen_nb_xmlSchemaValidCtxtPtr;n_vctxt++) {
34835:     for (n_filename = 0;n_filename < gen_nb_filepath;n_filename++) {
34836:         mem_base = xmlMemBlocks();
34837:         vctxt = gen_xmlSchemaValidCtxtPtr(n_vctxt, 0);
34838:         filename = gen_filepath(n_filename, 1);
34839: 
34840:         xmlSchemaValidateSetFilename(vctxt, filename);
34841:         call_tests++;
34842:         des_xmlSchemaValidCtxtPtr(n_vctxt, vctxt, 0);
34843:         des_filepath(n_filename, filename, 1);
34844:         xmlResetLastError();
34845:         if (mem_base != xmlMemBlocks()) {
34846:             printf("Leak of %d blocks found in xmlSchemaValidateSetFilename",
34847: 	           xmlMemBlocks() - mem_base);
34848: 	    test_ret++;
34849:             printf(" %d", n_vctxt);
34850:             printf(" %d", n_filename);
34851:             printf("\n");
34852:         }
34853:     }
34854:     }
34855:     function_tests++;
34856: #endif
34857: 
34858:     return(test_ret);
34859: }
34860: 
34861: 
34862: static int
34863: test_xmlSchemaValidateSetLocator(void) {
34864:     int test_ret = 0;
34865: 
34866: 
34867:     /* missing type support */
34868:     return(test_ret);
34869: }
34870: 
34871: 
34872: static int
34873: test_xmlSchemaValidateStream(void) {
34874:     int test_ret = 0;
34875: 
34876: #if defined(LIBXML_SCHEMAS_ENABLED)
34877:     int mem_base;
34878:     int ret_val;
34879:     xmlSchemaValidCtxtPtr ctxt; /* a schema validation context */
34880:     int n_ctxt;
34881:     xmlParserInputBufferPtr input; /* the input to use for reading the data */
34882:     int n_input;
34883:     xmlCharEncoding enc; /* an optional encoding information */
34884:     int n_enc;
34885:     xmlSAXHandlerPtr sax; /* a SAX handler for the resulting events */
34886:     int n_sax;
34887:     void * user_data; /* the context to provide to the SAX handler. */
34888:     int n_user_data;
34889: 
34890:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlSchemaValidCtxtPtr;n_ctxt++) {
34891:     for (n_input = 0;n_input < gen_nb_xmlParserInputBufferPtr;n_input++) {
34892:     for (n_enc = 0;n_enc < gen_nb_xmlCharEncoding;n_enc++) {
34893:     for (n_sax = 0;n_sax < gen_nb_xmlSAXHandlerPtr;n_sax++) {
34894:     for (n_user_data = 0;n_user_data < gen_nb_userdata;n_user_data++) {
34895:         mem_base = xmlMemBlocks();
34896:         ctxt = gen_xmlSchemaValidCtxtPtr(n_ctxt, 0);
34897:         input = gen_xmlParserInputBufferPtr(n_input, 1);
34898:         enc = gen_xmlCharEncoding(n_enc, 2);
34899:         sax = gen_xmlSAXHandlerPtr(n_sax, 3);
34900:         user_data = gen_userdata(n_user_data, 4);
34901: 
34902:         ret_val = xmlSchemaValidateStream(ctxt, input, enc, sax, user_data);
34903:         desret_int(ret_val);
34904:         call_tests++;
34905:         des_xmlSchemaValidCtxtPtr(n_ctxt, ctxt, 0);
34906:         des_xmlParserInputBufferPtr(n_input, input, 1);
34907:         des_xmlCharEncoding(n_enc, enc, 2);
34908:         des_xmlSAXHandlerPtr(n_sax, sax, 3);
34909:         des_userdata(n_user_data, user_data, 4);
34910:         xmlResetLastError();
34911:         if (mem_base != xmlMemBlocks()) {
34912:             printf("Leak of %d blocks found in xmlSchemaValidateStream",
34913: 	           xmlMemBlocks() - mem_base);
34914: 	    test_ret++;
34915:             printf(" %d", n_ctxt);
34916:             printf(" %d", n_input);
34917:             printf(" %d", n_enc);
34918:             printf(" %d", n_sax);
34919:             printf(" %d", n_user_data);
34920:             printf("\n");
34921:         }
34922:     }
34923:     }
34924:     }
34925:     }
34926:     }
34927:     function_tests++;
34928: #endif
34929: 
34930:     return(test_ret);
34931: }
34932: 
34933: static int
34934: test_xmlschemas(void) {
34935:     int test_ret = 0;
34936: 
34937:     if (quiet == 0) printf("Testing xmlschemas : 16 of 27 functions ...\n");
34938:     test_ret += test_xmlSchemaDump();
34939:     test_ret += test_xmlSchemaGetParserErrors();
34940:     test_ret += test_xmlSchemaGetValidErrors();
34941:     test_ret += test_xmlSchemaIsValid();
34942:     test_ret += test_xmlSchemaNewDocParserCtxt();
34943:     test_ret += test_xmlSchemaNewMemParserCtxt();
34944:     test_ret += test_xmlSchemaNewParserCtxt();
34945:     test_ret += test_xmlSchemaNewValidCtxt();
34946:     test_ret += test_xmlSchemaParse();
34947:     test_ret += test_xmlSchemaSAXPlug();
34948:     test_ret += test_xmlSchemaSAXUnplug();
34949:     test_ret += test_xmlSchemaSetParserErrors();
34950:     test_ret += test_xmlSchemaSetParserStructuredErrors();
34951:     test_ret += test_xmlSchemaSetValidErrors();
34952:     test_ret += test_xmlSchemaSetValidOptions();
34953:     test_ret += test_xmlSchemaSetValidStructuredErrors();
34954:     test_ret += test_xmlSchemaValidCtxtGetOptions();
34955:     test_ret += test_xmlSchemaValidCtxtGetParserCtxt();
34956:     test_ret += test_xmlSchemaValidateDoc();
34957:     test_ret += test_xmlSchemaValidateFile();
34958:     test_ret += test_xmlSchemaValidateOneElement();
34959:     test_ret += test_xmlSchemaValidateSetFilename();
34960:     test_ret += test_xmlSchemaValidateSetLocator();
34961:     test_ret += test_xmlSchemaValidateStream();
34962: 
34963:     if (test_ret != 0)
34964: 	printf("Module xmlschemas: %d errors\n", test_ret);
34965:     return(test_ret);
34966: }
34967: #ifdef LIBXML_SCHEMAS_ENABLED
34968: 
34969: #define gen_nb_xmlSchemaFacetPtr 1
34970: static xmlSchemaFacetPtr gen_xmlSchemaFacetPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
34971:     return(NULL);
34972: }
34973: static void des_xmlSchemaFacetPtr(int no ATTRIBUTE_UNUSED, xmlSchemaFacetPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
34974: }
34975: #endif
34976: 
34977: #ifdef LIBXML_SCHEMAS_ENABLED
34978: 
34979: #define gen_nb_xmlSchemaTypePtr 1
34980: static xmlSchemaTypePtr gen_xmlSchemaTypePtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
34981:     return(NULL);
34982: }
34983: static void des_xmlSchemaTypePtr(int no ATTRIBUTE_UNUSED, xmlSchemaTypePtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
34984: }
34985: #endif
34986: 
34987: 
34988: static int
34989: test_xmlSchemaCheckFacet(void) {
34990:     int test_ret = 0;
34991: 
34992: #if defined(LIBXML_SCHEMAS_ENABLED)
34993:     int mem_base;
34994:     int ret_val;
34995:     xmlSchemaFacetPtr facet; /* the facet */
34996:     int n_facet;
34997:     xmlSchemaTypePtr typeDecl; /* the schema type definition */
34998:     int n_typeDecl;
34999:     xmlSchemaParserCtxtPtr pctxt; /* the schema parser context or NULL */
35000:     int n_pctxt;
35001:     xmlChar * name; /* the optional name of the type */
35002:     int n_name;
35003: 
35004:     for (n_facet = 0;n_facet < gen_nb_xmlSchemaFacetPtr;n_facet++) {
35005:     for (n_typeDecl = 0;n_typeDecl < gen_nb_xmlSchemaTypePtr;n_typeDecl++) {
35006:     for (n_pctxt = 0;n_pctxt < gen_nb_xmlSchemaParserCtxtPtr;n_pctxt++) {
35007:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
35008:         mem_base = xmlMemBlocks();
35009:         facet = gen_xmlSchemaFacetPtr(n_facet, 0);
35010:         typeDecl = gen_xmlSchemaTypePtr(n_typeDecl, 1);
35011:         pctxt = gen_xmlSchemaParserCtxtPtr(n_pctxt, 2);
35012:         name = gen_const_xmlChar_ptr(n_name, 3);
35013: 
35014:         ret_val = xmlSchemaCheckFacet(facet, typeDecl, pctxt, (const xmlChar *)name);
35015:         desret_int(ret_val);
35016:         call_tests++;
35017:         des_xmlSchemaFacetPtr(n_facet, facet, 0);
35018:         des_xmlSchemaTypePtr(n_typeDecl, typeDecl, 1);
35019:         des_xmlSchemaParserCtxtPtr(n_pctxt, pctxt, 2);
35020:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 3);
35021:         xmlResetLastError();
35022:         if (mem_base != xmlMemBlocks()) {
35023:             printf("Leak of %d blocks found in xmlSchemaCheckFacet",
35024: 	           xmlMemBlocks() - mem_base);
35025: 	    test_ret++;
35026:             printf(" %d", n_facet);
35027:             printf(" %d", n_typeDecl);
35028:             printf(" %d", n_pctxt);
35029:             printf(" %d", n_name);
35030:             printf("\n");
35031:         }
35032:     }
35033:     }
35034:     }
35035:     }
35036:     function_tests++;
35037: #endif
35038: 
35039:     return(test_ret);
35040: }
35041: 
35042: 
35043: static int
35044: test_xmlSchemaCleanupTypes(void) {
35045:     int test_ret = 0;
35046: 
35047: #if defined(LIBXML_SCHEMAS_ENABLED)
35048: 
35049: 
35050:         xmlSchemaCleanupTypes();
35051:         call_tests++;
35052:         xmlResetLastError();
35053:     function_tests++;
35054: #endif
35055: 
35056:     return(test_ret);
35057: }
35058: 
35059: 
35060: static int
35061: test_xmlSchemaCollapseString(void) {
35062:     int test_ret = 0;
35063: 
35064: #if defined(LIBXML_SCHEMAS_ENABLED)
35065:     int mem_base;
35066:     xmlChar * ret_val;
35067:     xmlChar * value; /* a value */
35068:     int n_value;
35069: 
35070:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
35071:         mem_base = xmlMemBlocks();
35072:         value = gen_const_xmlChar_ptr(n_value, 0);
35073: 
35074:         ret_val = xmlSchemaCollapseString((const xmlChar *)value);
35075:         desret_xmlChar_ptr(ret_val);
35076:         call_tests++;
35077:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 0);
35078:         xmlResetLastError();
35079:         if (mem_base != xmlMemBlocks()) {
35080:             printf("Leak of %d blocks found in xmlSchemaCollapseString",
35081: 	           xmlMemBlocks() - mem_base);
35082: 	    test_ret++;
35083:             printf(" %d", n_value);
35084:             printf("\n");
35085:         }
35086:     }
35087:     function_tests++;
35088: #endif
35089: 
35090:     return(test_ret);
35091: }
35092: 
35093: #ifdef LIBXML_SCHEMAS_ENABLED
35094: 
35095: #define gen_nb_xmlSchemaValPtr 1
35096: static xmlSchemaValPtr gen_xmlSchemaValPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
35097:     return(NULL);
35098: }
35099: static void des_xmlSchemaValPtr(int no ATTRIBUTE_UNUSED, xmlSchemaValPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
35100: }
35101: #endif
35102: 
35103: 
35104: static int
35105: test_xmlSchemaCompareValues(void) {
35106:     int test_ret = 0;
35107: 
35108: #if defined(LIBXML_SCHEMAS_ENABLED)
35109:     int mem_base;
35110:     int ret_val;
35111:     xmlSchemaValPtr x; /* a first value */
35112:     int n_x;
35113:     xmlSchemaValPtr y; /* a second value */
35114:     int n_y;
35115: 
35116:     for (n_x = 0;n_x < gen_nb_xmlSchemaValPtr;n_x++) {
35117:     for (n_y = 0;n_y < gen_nb_xmlSchemaValPtr;n_y++) {
35118:         mem_base = xmlMemBlocks();
35119:         x = gen_xmlSchemaValPtr(n_x, 0);
35120:         y = gen_xmlSchemaValPtr(n_y, 1);
35121: 
35122:         ret_val = xmlSchemaCompareValues(x, y);
35123:         desret_int(ret_val);
35124:         call_tests++;
35125:         des_xmlSchemaValPtr(n_x, x, 0);
35126:         des_xmlSchemaValPtr(n_y, y, 1);
35127:         xmlResetLastError();
35128:         if (mem_base != xmlMemBlocks()) {
35129:             printf("Leak of %d blocks found in xmlSchemaCompareValues",
35130: 	           xmlMemBlocks() - mem_base);
35131: 	    test_ret++;
35132:             printf(" %d", n_x);
35133:             printf(" %d", n_y);
35134:             printf("\n");
35135:         }
35136:     }
35137:     }
35138:     function_tests++;
35139: #endif
35140: 
35141:     return(test_ret);
35142: }
35143: 
35144: 
35145: static int
35146: test_xmlSchemaCompareValuesWhtsp(void) {
35147:     int test_ret = 0;
35148: 
35149: #if defined(LIBXML_SCHEMAS_ENABLED)
35150:     int mem_base;
35151:     int ret_val;
35152:     xmlSchemaValPtr x; /* a first value */
35153:     int n_x;
35154:     xmlSchemaWhitespaceValueType xws; /* the whitespace value of x */
35155:     int n_xws;
35156:     xmlSchemaValPtr y; /* a second value */
35157:     int n_y;
35158:     xmlSchemaWhitespaceValueType yws; /* the whitespace value of y */
35159:     int n_yws;
35160: 
35161:     for (n_x = 0;n_x < gen_nb_xmlSchemaValPtr;n_x++) {
35162:     for (n_xws = 0;n_xws < gen_nb_xmlSchemaWhitespaceValueType;n_xws++) {
35163:     for (n_y = 0;n_y < gen_nb_xmlSchemaValPtr;n_y++) {
35164:     for (n_yws = 0;n_yws < gen_nb_xmlSchemaWhitespaceValueType;n_yws++) {
35165:         mem_base = xmlMemBlocks();
35166:         x = gen_xmlSchemaValPtr(n_x, 0);
35167:         xws = gen_xmlSchemaWhitespaceValueType(n_xws, 1);
35168:         y = gen_xmlSchemaValPtr(n_y, 2);
35169:         yws = gen_xmlSchemaWhitespaceValueType(n_yws, 3);
35170: 
35171:         ret_val = xmlSchemaCompareValuesWhtsp(x, xws, y, yws);
35172:         desret_int(ret_val);
35173:         call_tests++;
35174:         des_xmlSchemaValPtr(n_x, x, 0);
35175:         des_xmlSchemaWhitespaceValueType(n_xws, xws, 1);
35176:         des_xmlSchemaValPtr(n_y, y, 2);
35177:         des_xmlSchemaWhitespaceValueType(n_yws, yws, 3);
35178:         xmlResetLastError();
35179:         if (mem_base != xmlMemBlocks()) {
35180:             printf("Leak of %d blocks found in xmlSchemaCompareValuesWhtsp",
35181: 	           xmlMemBlocks() - mem_base);
35182: 	    test_ret++;
35183:             printf(" %d", n_x);
35184:             printf(" %d", n_xws);
35185:             printf(" %d", n_y);
35186:             printf(" %d", n_yws);
35187:             printf("\n");
35188:         }
35189:     }
35190:     }
35191:     }
35192:     }
35193:     function_tests++;
35194: #endif
35195: 
35196:     return(test_ret);
35197: }
35198: 
35199: 
35200: static int
35201: test_xmlSchemaCopyValue(void) {
35202:     int test_ret = 0;
35203: 
35204: 
35205:     /* missing type support */
35206:     return(test_ret);
35207: }
35208: 
35209: 
35210: static int
35211: test_xmlSchemaGetBuiltInListSimpleTypeItemType(void) {
35212:     int test_ret = 0;
35213: 
35214: #if defined(LIBXML_SCHEMAS_ENABLED)
35215:     int mem_base;
35216:     xmlSchemaTypePtr ret_val;
35217:     xmlSchemaTypePtr type; /* the built-in simple type. */
35218:     int n_type;
35219: 
35220:     for (n_type = 0;n_type < gen_nb_xmlSchemaTypePtr;n_type++) {
35221:         mem_base = xmlMemBlocks();
35222:         type = gen_xmlSchemaTypePtr(n_type, 0);
35223: 
35224:         ret_val = xmlSchemaGetBuiltInListSimpleTypeItemType(type);
35225:         desret_xmlSchemaTypePtr(ret_val);
35226:         call_tests++;
35227:         des_xmlSchemaTypePtr(n_type, type, 0);
35228:         xmlResetLastError();
35229:         if (mem_base != xmlMemBlocks()) {
35230:             printf("Leak of %d blocks found in xmlSchemaGetBuiltInListSimpleTypeItemType",
35231: 	           xmlMemBlocks() - mem_base);
35232: 	    test_ret++;
35233:             printf(" %d", n_type);
35234:             printf("\n");
35235:         }
35236:     }
35237:     function_tests++;
35238: #endif
35239: 
35240:     return(test_ret);
35241: }
35242: 
35243: 
35244: static int
35245: test_xmlSchemaGetBuiltInType(void) {
35246:     int test_ret = 0;
35247: 
35248: #if defined(LIBXML_SCHEMAS_ENABLED)
35249:     xmlSchemaTypePtr ret_val;
35250:     xmlSchemaValType type; /* the type of the built in type */
35251:     int n_type;
35252: 
35253:     for (n_type = 0;n_type < gen_nb_xmlSchemaValType;n_type++) {
35254:         type = gen_xmlSchemaValType(n_type, 0);
35255: 
35256:         ret_val = xmlSchemaGetBuiltInType(type);
35257:         desret_xmlSchemaTypePtr(ret_val);
35258:         call_tests++;
35259:         des_xmlSchemaValType(n_type, type, 0);
35260:         xmlResetLastError();
35261:     }
35262:     function_tests++;
35263: #endif
35264: 
35265:     return(test_ret);
35266: }
35267: 
35268: 
35269: static int
35270: test_xmlSchemaGetCanonValue(void) {
35271:     int test_ret = 0;
35272: 
35273: #if defined(LIBXML_SCHEMAS_ENABLED)
35274:     int mem_base;
35275:     int ret_val;
35276:     xmlSchemaValPtr val; /* the precomputed value */
35277:     int n_val;
35278:     xmlChar ** retValue; /* the returned value */
35279:     int n_retValue;
35280: 
35281:     for (n_val = 0;n_val < gen_nb_xmlSchemaValPtr;n_val++) {
35282:     for (n_retValue = 0;n_retValue < gen_nb_const_xmlChar_ptr_ptr;n_retValue++) {
35283:         mem_base = xmlMemBlocks();
35284:         val = gen_xmlSchemaValPtr(n_val, 0);
35285:         retValue = gen_const_xmlChar_ptr_ptr(n_retValue, 1);
35286: 
35287:         ret_val = xmlSchemaGetCanonValue(val, (const xmlChar **)retValue);
35288:         desret_int(ret_val);
35289:         call_tests++;
35290:         des_xmlSchemaValPtr(n_val, val, 0);
35291:         des_const_xmlChar_ptr_ptr(n_retValue, (const xmlChar **)retValue, 1);
35292:         xmlResetLastError();
35293:         if (mem_base != xmlMemBlocks()) {
35294:             printf("Leak of %d blocks found in xmlSchemaGetCanonValue",
35295: 	           xmlMemBlocks() - mem_base);
35296: 	    test_ret++;
35297:             printf(" %d", n_val);
35298:             printf(" %d", n_retValue);
35299:             printf("\n");
35300:         }
35301:     }
35302:     }
35303:     function_tests++;
35304: #endif
35305: 
35306:     return(test_ret);
35307: }
35308: 
35309: 
35310: static int
35311: test_xmlSchemaGetCanonValueWhtsp(void) {
35312:     int test_ret = 0;
35313: 
35314: #if defined(LIBXML_SCHEMAS_ENABLED)
35315:     int mem_base;
35316:     int ret_val;
35317:     xmlSchemaValPtr val; /* the precomputed value */
35318:     int n_val;
35319:     xmlChar ** retValue; /* the returned value */
35320:     int n_retValue;
35321:     xmlSchemaWhitespaceValueType ws; /* the whitespace type of the value */
35322:     int n_ws;
35323: 
35324:     for (n_val = 0;n_val < gen_nb_xmlSchemaValPtr;n_val++) {
35325:     for (n_retValue = 0;n_retValue < gen_nb_const_xmlChar_ptr_ptr;n_retValue++) {
35326:     for (n_ws = 0;n_ws < gen_nb_xmlSchemaWhitespaceValueType;n_ws++) {
35327:         mem_base = xmlMemBlocks();
35328:         val = gen_xmlSchemaValPtr(n_val, 0);
35329:         retValue = gen_const_xmlChar_ptr_ptr(n_retValue, 1);
35330:         ws = gen_xmlSchemaWhitespaceValueType(n_ws, 2);
35331: 
35332:         ret_val = xmlSchemaGetCanonValueWhtsp(val, (const xmlChar **)retValue, ws);
35333:         desret_int(ret_val);
35334:         call_tests++;
35335:         des_xmlSchemaValPtr(n_val, val, 0);
35336:         des_const_xmlChar_ptr_ptr(n_retValue, (const xmlChar **)retValue, 1);
35337:         des_xmlSchemaWhitespaceValueType(n_ws, ws, 2);
35338:         xmlResetLastError();
35339:         if (mem_base != xmlMemBlocks()) {
35340:             printf("Leak of %d blocks found in xmlSchemaGetCanonValueWhtsp",
35341: 	           xmlMemBlocks() - mem_base);
35342: 	    test_ret++;
35343:             printf(" %d", n_val);
35344:             printf(" %d", n_retValue);
35345:             printf(" %d", n_ws);
35346:             printf("\n");
35347:         }
35348:     }
35349:     }
35350:     }
35351:     function_tests++;
35352: #endif
35353: 
35354:     return(test_ret);
35355: }
35356: 
35357: 
35358: static int
35359: test_xmlSchemaGetFacetValueAsULong(void) {
35360:     int test_ret = 0;
35361: 
35362: #if defined(LIBXML_SCHEMAS_ENABLED)
35363:     int mem_base;
35364:     unsigned long ret_val;
35365:     xmlSchemaFacetPtr facet; /* an schemas type facet */
35366:     int n_facet;
35367: 
35368:     for (n_facet = 0;n_facet < gen_nb_xmlSchemaFacetPtr;n_facet++) {
35369:         mem_base = xmlMemBlocks();
35370:         facet = gen_xmlSchemaFacetPtr(n_facet, 0);
35371: 
35372:         ret_val = xmlSchemaGetFacetValueAsULong(facet);
35373:         desret_unsigned_long(ret_val);
35374:         call_tests++;
35375:         des_xmlSchemaFacetPtr(n_facet, facet, 0);
35376:         xmlResetLastError();
35377:         if (mem_base != xmlMemBlocks()) {
35378:             printf("Leak of %d blocks found in xmlSchemaGetFacetValueAsULong",
35379: 	           xmlMemBlocks() - mem_base);
35380: 	    test_ret++;
35381:             printf(" %d", n_facet);
35382:             printf("\n");
35383:         }
35384:     }
35385:     function_tests++;
35386: #endif
35387: 
35388:     return(test_ret);
35389: }
35390: 
35391: 
35392: static int
35393: test_xmlSchemaGetPredefinedType(void) {
35394:     int test_ret = 0;
35395: 
35396: #if defined(LIBXML_SCHEMAS_ENABLED)
35397:     int mem_base;
35398:     xmlSchemaTypePtr ret_val;
35399:     xmlChar * name; /* the type name */
35400:     int n_name;
35401:     xmlChar * ns; /* the URI of the namespace usually "http://www.w3.org/2001/XMLSchema" */
35402:     int n_ns;
35403: 
35404:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
35405:     for (n_ns = 0;n_ns < gen_nb_const_xmlChar_ptr;n_ns++) {
35406:         mem_base = xmlMemBlocks();
35407:         name = gen_const_xmlChar_ptr(n_name, 0);
35408:         ns = gen_const_xmlChar_ptr(n_ns, 1);
35409: 
35410:         ret_val = xmlSchemaGetPredefinedType((const xmlChar *)name, (const xmlChar *)ns);
35411:         desret_xmlSchemaTypePtr(ret_val);
35412:         call_tests++;
35413:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 0);
35414:         des_const_xmlChar_ptr(n_ns, (const xmlChar *)ns, 1);
35415:         xmlResetLastError();
35416:         if (mem_base != xmlMemBlocks()) {
35417:             printf("Leak of %d blocks found in xmlSchemaGetPredefinedType",
35418: 	           xmlMemBlocks() - mem_base);
35419: 	    test_ret++;
35420:             printf(" %d", n_name);
35421:             printf(" %d", n_ns);
35422:             printf("\n");
35423:         }
35424:     }
35425:     }
35426:     function_tests++;
35427: #endif
35428: 
35429:     return(test_ret);
35430: }
35431: 
35432: 
35433: static int
35434: test_xmlSchemaGetValType(void) {
35435:     int test_ret = 0;
35436: 
35437: #if defined(LIBXML_SCHEMAS_ENABLED)
35438:     int mem_base;
35439:     xmlSchemaValType ret_val;
35440:     xmlSchemaValPtr val; /* a schemas value */
35441:     int n_val;
35442: 
35443:     for (n_val = 0;n_val < gen_nb_xmlSchemaValPtr;n_val++) {
35444:         mem_base = xmlMemBlocks();
35445:         val = gen_xmlSchemaValPtr(n_val, 0);
35446: 
35447:         ret_val = xmlSchemaGetValType(val);
35448:         desret_xmlSchemaValType(ret_val);
35449:         call_tests++;
35450:         des_xmlSchemaValPtr(n_val, val, 0);
35451:         xmlResetLastError();
35452:         if (mem_base != xmlMemBlocks()) {
35453:             printf("Leak of %d blocks found in xmlSchemaGetValType",
35454: 	           xmlMemBlocks() - mem_base);
35455: 	    test_ret++;
35456:             printf(" %d", n_val);
35457:             printf("\n");
35458:         }
35459:     }
35460:     function_tests++;
35461: #endif
35462: 
35463:     return(test_ret);
35464: }
35465: 
35466: 
35467: static int
35468: test_xmlSchemaInitTypes(void) {
35469:     int test_ret = 0;
35470: 
35471: #if defined(LIBXML_SCHEMAS_ENABLED)
35472: 
35473: 
35474:         xmlSchemaInitTypes();
35475:         call_tests++;
35476:         xmlResetLastError();
35477:     function_tests++;
35478: #endif
35479: 
35480:     return(test_ret);
35481: }
35482: 
35483: 
35484: static int
35485: test_xmlSchemaIsBuiltInTypeFacet(void) {
35486:     int test_ret = 0;
35487: 
35488: #if defined(LIBXML_SCHEMAS_ENABLED)
35489:     int mem_base;
35490:     int ret_val;
35491:     xmlSchemaTypePtr type; /* the built-in type */
35492:     int n_type;
35493:     int facetType; /* the facet type */
35494:     int n_facetType;
35495: 
35496:     for (n_type = 0;n_type < gen_nb_xmlSchemaTypePtr;n_type++) {
35497:     for (n_facetType = 0;n_facetType < gen_nb_int;n_facetType++) {
35498:         mem_base = xmlMemBlocks();
35499:         type = gen_xmlSchemaTypePtr(n_type, 0);
35500:         facetType = gen_int(n_facetType, 1);
35501: 
35502:         ret_val = xmlSchemaIsBuiltInTypeFacet(type, facetType);
35503:         desret_int(ret_val);
35504:         call_tests++;
35505:         des_xmlSchemaTypePtr(n_type, type, 0);
35506:         des_int(n_facetType, facetType, 1);
35507:         xmlResetLastError();
35508:         if (mem_base != xmlMemBlocks()) {
35509:             printf("Leak of %d blocks found in xmlSchemaIsBuiltInTypeFacet",
35510: 	           xmlMemBlocks() - mem_base);
35511: 	    test_ret++;
35512:             printf(" %d", n_type);
35513:             printf(" %d", n_facetType);
35514:             printf("\n");
35515:         }
35516:     }
35517:     }
35518:     function_tests++;
35519: #endif
35520: 
35521:     return(test_ret);
35522: }
35523: 
35524: 
35525: static int
35526: test_xmlSchemaNewFacet(void) {
35527:     int test_ret = 0;
35528: 
35529: 
35530:     /* missing type support */
35531:     return(test_ret);
35532: }
35533: 
35534: 
35535: static int
35536: test_xmlSchemaNewNOTATIONValue(void) {
35537:     int test_ret = 0;
35538: 
35539: 
35540:     /* missing type support */
35541:     return(test_ret);
35542: }
35543: 
35544: 
35545: static int
35546: test_xmlSchemaNewQNameValue(void) {
35547:     int test_ret = 0;
35548: 
35549: 
35550:     /* missing type support */
35551:     return(test_ret);
35552: }
35553: 
35554: 
35555: static int
35556: test_xmlSchemaNewStringValue(void) {
35557:     int test_ret = 0;
35558: 
35559: 
35560:     /* missing type support */
35561:     return(test_ret);
35562: }
35563: 
35564: #ifdef LIBXML_SCHEMAS_ENABLED
35565: 
35566: #define gen_nb_xmlSchemaValPtr_ptr 1
35567: static xmlSchemaValPtr * gen_xmlSchemaValPtr_ptr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
35568:     return(NULL);
35569: }
35570: static void des_xmlSchemaValPtr_ptr(int no ATTRIBUTE_UNUSED, xmlSchemaValPtr * val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
35571: }
35572: #endif
35573: 
35574: 
35575: static int
35576: test_xmlSchemaValPredefTypeNode(void) {
35577:     int test_ret = 0;
35578: 
35579: #if defined(LIBXML_SCHEMAS_ENABLED)
35580:     int mem_base;
35581:     int ret_val;
35582:     xmlSchemaTypePtr type; /* the predefined type */
35583:     int n_type;
35584:     xmlChar * value; /* the value to check */
35585:     int n_value;
35586:     xmlSchemaValPtr * val; /* the return computed value */
35587:     int n_val;
35588:     xmlNodePtr node; /* the node containing the value */
35589:     int n_node;
35590: 
35591:     for (n_type = 0;n_type < gen_nb_xmlSchemaTypePtr;n_type++) {
35592:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
35593:     for (n_val = 0;n_val < gen_nb_xmlSchemaValPtr_ptr;n_val++) {
35594:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
35595:         mem_base = xmlMemBlocks();
35596:         type = gen_xmlSchemaTypePtr(n_type, 0);
35597:         value = gen_const_xmlChar_ptr(n_value, 1);
35598:         val = gen_xmlSchemaValPtr_ptr(n_val, 2);
35599:         node = gen_xmlNodePtr(n_node, 3);
35600: 
35601:         ret_val = xmlSchemaValPredefTypeNode(type, (const xmlChar *)value, val, node);
35602:         desret_int(ret_val);
35603:         call_tests++;
35604:         des_xmlSchemaTypePtr(n_type, type, 0);
35605:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 1);
35606:         des_xmlSchemaValPtr_ptr(n_val, val, 2);
35607:         des_xmlNodePtr(n_node, node, 3);
35608:         xmlResetLastError();
35609:         if (mem_base != xmlMemBlocks()) {
35610:             printf("Leak of %d blocks found in xmlSchemaValPredefTypeNode",
35611: 	           xmlMemBlocks() - mem_base);
35612: 	    test_ret++;
35613:             printf(" %d", n_type);
35614:             printf(" %d", n_value);
35615:             printf(" %d", n_val);
35616:             printf(" %d", n_node);
35617:             printf("\n");
35618:         }
35619:     }
35620:     }
35621:     }
35622:     }
35623:     function_tests++;
35624: #endif
35625: 
35626:     return(test_ret);
35627: }
35628: 
35629: 
35630: static int
35631: test_xmlSchemaValPredefTypeNodeNoNorm(void) {
35632:     int test_ret = 0;
35633: 
35634: #if defined(LIBXML_SCHEMAS_ENABLED)
35635:     int mem_base;
35636:     int ret_val;
35637:     xmlSchemaTypePtr type; /* the predefined type */
35638:     int n_type;
35639:     xmlChar * value; /* the value to check */
35640:     int n_value;
35641:     xmlSchemaValPtr * val; /* the return computed value */
35642:     int n_val;
35643:     xmlNodePtr node; /* the node containing the value */
35644:     int n_node;
35645: 
35646:     for (n_type = 0;n_type < gen_nb_xmlSchemaTypePtr;n_type++) {
35647:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
35648:     for (n_val = 0;n_val < gen_nb_xmlSchemaValPtr_ptr;n_val++) {
35649:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
35650:         mem_base = xmlMemBlocks();
35651:         type = gen_xmlSchemaTypePtr(n_type, 0);
35652:         value = gen_const_xmlChar_ptr(n_value, 1);
35653:         val = gen_xmlSchemaValPtr_ptr(n_val, 2);
35654:         node = gen_xmlNodePtr(n_node, 3);
35655: 
35656:         ret_val = xmlSchemaValPredefTypeNodeNoNorm(type, (const xmlChar *)value, val, node);
35657:         desret_int(ret_val);
35658:         call_tests++;
35659:         des_xmlSchemaTypePtr(n_type, type, 0);
35660:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 1);
35661:         des_xmlSchemaValPtr_ptr(n_val, val, 2);
35662:         des_xmlNodePtr(n_node, node, 3);
35663:         xmlResetLastError();
35664:         if (mem_base != xmlMemBlocks()) {
35665:             printf("Leak of %d blocks found in xmlSchemaValPredefTypeNodeNoNorm",
35666: 	           xmlMemBlocks() - mem_base);
35667: 	    test_ret++;
35668:             printf(" %d", n_type);
35669:             printf(" %d", n_value);
35670:             printf(" %d", n_val);
35671:             printf(" %d", n_node);
35672:             printf("\n");
35673:         }
35674:     }
35675:     }
35676:     }
35677:     }
35678:     function_tests++;
35679: #endif
35680: 
35681:     return(test_ret);
35682: }
35683: 
35684: 
35685: static int
35686: test_xmlSchemaValidateFacet(void) {
35687:     int test_ret = 0;
35688: 
35689: #if defined(LIBXML_SCHEMAS_ENABLED)
35690:     int mem_base;
35691:     int ret_val;
35692:     xmlSchemaTypePtr base; /* the base type */
35693:     int n_base;
35694:     xmlSchemaFacetPtr facet; /* the facet to check */
35695:     int n_facet;
35696:     xmlChar * value; /* the lexical repr of the value to validate */
35697:     int n_value;
35698:     xmlSchemaValPtr val; /* the precomputed value */
35699:     int n_val;
35700: 
35701:     for (n_base = 0;n_base < gen_nb_xmlSchemaTypePtr;n_base++) {
35702:     for (n_facet = 0;n_facet < gen_nb_xmlSchemaFacetPtr;n_facet++) {
35703:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
35704:     for (n_val = 0;n_val < gen_nb_xmlSchemaValPtr;n_val++) {
35705:         mem_base = xmlMemBlocks();
35706:         base = gen_xmlSchemaTypePtr(n_base, 0);
35707:         facet = gen_xmlSchemaFacetPtr(n_facet, 1);
35708:         value = gen_const_xmlChar_ptr(n_value, 2);
35709:         val = gen_xmlSchemaValPtr(n_val, 3);
35710: 
35711:         ret_val = xmlSchemaValidateFacet(base, facet, (const xmlChar *)value, val);
35712:         desret_int(ret_val);
35713:         call_tests++;
35714:         des_xmlSchemaTypePtr(n_base, base, 0);
35715:         des_xmlSchemaFacetPtr(n_facet, facet, 1);
35716:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 2);
35717:         des_xmlSchemaValPtr(n_val, val, 3);
35718:         xmlResetLastError();
35719:         if (mem_base != xmlMemBlocks()) {
35720:             printf("Leak of %d blocks found in xmlSchemaValidateFacet",
35721: 	           xmlMemBlocks() - mem_base);
35722: 	    test_ret++;
35723:             printf(" %d", n_base);
35724:             printf(" %d", n_facet);
35725:             printf(" %d", n_value);
35726:             printf(" %d", n_val);
35727:             printf("\n");
35728:         }
35729:     }
35730:     }
35731:     }
35732:     }
35733:     function_tests++;
35734: #endif
35735: 
35736:     return(test_ret);
35737: }
35738: 
35739: 
35740: static int
35741: test_xmlSchemaValidateFacetWhtsp(void) {
35742:     int test_ret = 0;
35743: 
35744: #if defined(LIBXML_SCHEMAS_ENABLED)
35745:     int mem_base;
35746:     int ret_val;
35747:     xmlSchemaFacetPtr facet; /* the facet to check */
35748:     int n_facet;
35749:     xmlSchemaWhitespaceValueType fws; /* the whitespace type of the facet's value */
35750:     int n_fws;
35751:     xmlSchemaValType valType; /* the built-in type of the value */
35752:     int n_valType;
35753:     xmlChar * value; /* the lexical (or normalized for pattern) repr of the value to validate */
35754:     int n_value;
35755:     xmlSchemaValPtr val; /* the precomputed value */
35756:     int n_val;
35757:     xmlSchemaWhitespaceValueType ws; /* the whitespace type of the value */
35758:     int n_ws;
35759: 
35760:     for (n_facet = 0;n_facet < gen_nb_xmlSchemaFacetPtr;n_facet++) {
35761:     for (n_fws = 0;n_fws < gen_nb_xmlSchemaWhitespaceValueType;n_fws++) {
35762:     for (n_valType = 0;n_valType < gen_nb_xmlSchemaValType;n_valType++) {
35763:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
35764:     for (n_val = 0;n_val < gen_nb_xmlSchemaValPtr;n_val++) {
35765:     for (n_ws = 0;n_ws < gen_nb_xmlSchemaWhitespaceValueType;n_ws++) {
35766:         mem_base = xmlMemBlocks();
35767:         facet = gen_xmlSchemaFacetPtr(n_facet, 0);
35768:         fws = gen_xmlSchemaWhitespaceValueType(n_fws, 1);
35769:         valType = gen_xmlSchemaValType(n_valType, 2);
35770:         value = gen_const_xmlChar_ptr(n_value, 3);
35771:         val = gen_xmlSchemaValPtr(n_val, 4);
35772:         ws = gen_xmlSchemaWhitespaceValueType(n_ws, 5);
35773: 
35774:         ret_val = xmlSchemaValidateFacetWhtsp(facet, fws, valType, (const xmlChar *)value, val, ws);
35775:         desret_int(ret_val);
35776:         call_tests++;
35777:         des_xmlSchemaFacetPtr(n_facet, facet, 0);
35778:         des_xmlSchemaWhitespaceValueType(n_fws, fws, 1);
35779:         des_xmlSchemaValType(n_valType, valType, 2);
35780:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 3);
35781:         des_xmlSchemaValPtr(n_val, val, 4);
35782:         des_xmlSchemaWhitespaceValueType(n_ws, ws, 5);
35783:         xmlResetLastError();
35784:         if (mem_base != xmlMemBlocks()) {
35785:             printf("Leak of %d blocks found in xmlSchemaValidateFacetWhtsp",
35786: 	           xmlMemBlocks() - mem_base);
35787: 	    test_ret++;
35788:             printf(" %d", n_facet);
35789:             printf(" %d", n_fws);
35790:             printf(" %d", n_valType);
35791:             printf(" %d", n_value);
35792:             printf(" %d", n_val);
35793:             printf(" %d", n_ws);
35794:             printf("\n");
35795:         }
35796:     }
35797:     }
35798:     }
35799:     }
35800:     }
35801:     }
35802:     function_tests++;
35803: #endif
35804: 
35805:     return(test_ret);
35806: }
35807: 
35808: 
35809: static int
35810: test_xmlSchemaValidateLengthFacet(void) {
35811:     int test_ret = 0;
35812: 
35813: #if defined(LIBXML_SCHEMAS_ENABLED)
35814:     int mem_base;
35815:     int ret_val;
35816:     xmlSchemaTypePtr type; /* the built-in type */
35817:     int n_type;
35818:     xmlSchemaFacetPtr facet; /* the facet to check */
35819:     int n_facet;
35820:     xmlChar * value; /* the lexical repr. of the value to be validated */
35821:     int n_value;
35822:     xmlSchemaValPtr val; /* the precomputed value */
35823:     int n_val;
35824:     unsigned long * length; /* the actual length of the value */
35825:     int n_length;
35826: 
35827:     for (n_type = 0;n_type < gen_nb_xmlSchemaTypePtr;n_type++) {
35828:     for (n_facet = 0;n_facet < gen_nb_xmlSchemaFacetPtr;n_facet++) {
35829:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
35830:     for (n_val = 0;n_val < gen_nb_xmlSchemaValPtr;n_val++) {
35831:     for (n_length = 0;n_length < gen_nb_unsigned_long_ptr;n_length++) {
35832:         mem_base = xmlMemBlocks();
35833:         type = gen_xmlSchemaTypePtr(n_type, 0);
35834:         facet = gen_xmlSchemaFacetPtr(n_facet, 1);
35835:         value = gen_const_xmlChar_ptr(n_value, 2);
35836:         val = gen_xmlSchemaValPtr(n_val, 3);
35837:         length = gen_unsigned_long_ptr(n_length, 4);
35838: 
35839:         ret_val = xmlSchemaValidateLengthFacet(type, facet, (const xmlChar *)value, val, length);
35840:         desret_int(ret_val);
35841:         call_tests++;
35842:         des_xmlSchemaTypePtr(n_type, type, 0);
35843:         des_xmlSchemaFacetPtr(n_facet, facet, 1);
35844:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 2);
35845:         des_xmlSchemaValPtr(n_val, val, 3);
35846:         des_unsigned_long_ptr(n_length, length, 4);
35847:         xmlResetLastError();
35848:         if (mem_base != xmlMemBlocks()) {
35849:             printf("Leak of %d blocks found in xmlSchemaValidateLengthFacet",
35850: 	           xmlMemBlocks() - mem_base);
35851: 	    test_ret++;
35852:             printf(" %d", n_type);
35853:             printf(" %d", n_facet);
35854:             printf(" %d", n_value);
35855:             printf(" %d", n_val);
35856:             printf(" %d", n_length);
35857:             printf("\n");
35858:         }
35859:     }
35860:     }
35861:     }
35862:     }
35863:     }
35864:     function_tests++;
35865: #endif
35866: 
35867:     return(test_ret);
35868: }
35869: 
35870: 
35871: static int
35872: test_xmlSchemaValidateLengthFacetWhtsp(void) {
35873:     int test_ret = 0;
35874: 
35875: #if defined(LIBXML_SCHEMAS_ENABLED)
35876:     int mem_base;
35877:     int ret_val;
35878:     xmlSchemaFacetPtr facet; /* the facet to check */
35879:     int n_facet;
35880:     xmlSchemaValType valType; /* the built-in type */
35881:     int n_valType;
35882:     xmlChar * value; /* the lexical repr. of the value to be validated */
35883:     int n_value;
35884:     xmlSchemaValPtr val; /* the precomputed value */
35885:     int n_val;
35886:     unsigned long * length; /* the actual length of the value */
35887:     int n_length;
35888:     xmlSchemaWhitespaceValueType ws; /* the whitespace type of the value */
35889:     int n_ws;
35890: 
35891:     for (n_facet = 0;n_facet < gen_nb_xmlSchemaFacetPtr;n_facet++) {
35892:     for (n_valType = 0;n_valType < gen_nb_xmlSchemaValType;n_valType++) {
35893:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
35894:     for (n_val = 0;n_val < gen_nb_xmlSchemaValPtr;n_val++) {
35895:     for (n_length = 0;n_length < gen_nb_unsigned_long_ptr;n_length++) {
35896:     for (n_ws = 0;n_ws < gen_nb_xmlSchemaWhitespaceValueType;n_ws++) {
35897:         mem_base = xmlMemBlocks();
35898:         facet = gen_xmlSchemaFacetPtr(n_facet, 0);
35899:         valType = gen_xmlSchemaValType(n_valType, 1);
35900:         value = gen_const_xmlChar_ptr(n_value, 2);
35901:         val = gen_xmlSchemaValPtr(n_val, 3);
35902:         length = gen_unsigned_long_ptr(n_length, 4);
35903:         ws = gen_xmlSchemaWhitespaceValueType(n_ws, 5);
35904: 
35905:         ret_val = xmlSchemaValidateLengthFacetWhtsp(facet, valType, (const xmlChar *)value, val, length, ws);
35906:         desret_int(ret_val);
35907:         call_tests++;
35908:         des_xmlSchemaFacetPtr(n_facet, facet, 0);
35909:         des_xmlSchemaValType(n_valType, valType, 1);
35910:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 2);
35911:         des_xmlSchemaValPtr(n_val, val, 3);
35912:         des_unsigned_long_ptr(n_length, length, 4);
35913:         des_xmlSchemaWhitespaceValueType(n_ws, ws, 5);
35914:         xmlResetLastError();
35915:         if (mem_base != xmlMemBlocks()) {
35916:             printf("Leak of %d blocks found in xmlSchemaValidateLengthFacetWhtsp",
35917: 	           xmlMemBlocks() - mem_base);
35918: 	    test_ret++;
35919:             printf(" %d", n_facet);
35920:             printf(" %d", n_valType);
35921:             printf(" %d", n_value);
35922:             printf(" %d", n_val);
35923:             printf(" %d", n_length);
35924:             printf(" %d", n_ws);
35925:             printf("\n");
35926:         }
35927:     }
35928:     }
35929:     }
35930:     }
35931:     }
35932:     }
35933:     function_tests++;
35934: #endif
35935: 
35936:     return(test_ret);
35937: }
35938: 
35939: 
35940: static int
35941: test_xmlSchemaValidateListSimpleTypeFacet(void) {
35942:     int test_ret = 0;
35943: 
35944: #if defined(LIBXML_SCHEMAS_ENABLED)
35945:     int mem_base;
35946:     int ret_val;
35947:     xmlSchemaFacetPtr facet; /* the facet to check */
35948:     int n_facet;
35949:     xmlChar * value; /* the lexical repr of the value to validate */
35950:     int n_value;
35951:     unsigned long actualLen; /* the number of list items */
35952:     int n_actualLen;
35953:     unsigned long * expectedLen; /* the resulting expected number of list items */
35954:     int n_expectedLen;
35955: 
35956:     for (n_facet = 0;n_facet < gen_nb_xmlSchemaFacetPtr;n_facet++) {
35957:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
35958:     for (n_actualLen = 0;n_actualLen < gen_nb_unsigned_long;n_actualLen++) {
35959:     for (n_expectedLen = 0;n_expectedLen < gen_nb_unsigned_long_ptr;n_expectedLen++) {
35960:         mem_base = xmlMemBlocks();
35961:         facet = gen_xmlSchemaFacetPtr(n_facet, 0);
35962:         value = gen_const_xmlChar_ptr(n_value, 1);
35963:         actualLen = gen_unsigned_long(n_actualLen, 2);
35964:         expectedLen = gen_unsigned_long_ptr(n_expectedLen, 3);
35965: 
35966:         ret_val = xmlSchemaValidateListSimpleTypeFacet(facet, (const xmlChar *)value, actualLen, expectedLen);
35967:         desret_int(ret_val);
35968:         call_tests++;
35969:         des_xmlSchemaFacetPtr(n_facet, facet, 0);
35970:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 1);
35971:         des_unsigned_long(n_actualLen, actualLen, 2);
35972:         des_unsigned_long_ptr(n_expectedLen, expectedLen, 3);
35973:         xmlResetLastError();
35974:         if (mem_base != xmlMemBlocks()) {
35975:             printf("Leak of %d blocks found in xmlSchemaValidateListSimpleTypeFacet",
35976: 	           xmlMemBlocks() - mem_base);
35977: 	    test_ret++;
35978:             printf(" %d", n_facet);
35979:             printf(" %d", n_value);
35980:             printf(" %d", n_actualLen);
35981:             printf(" %d", n_expectedLen);
35982:             printf("\n");
35983:         }
35984:     }
35985:     }
35986:     }
35987:     }
35988:     function_tests++;
35989: #endif
35990: 
35991:     return(test_ret);
35992: }
35993: 
35994: 
35995: static int
35996: test_xmlSchemaValidatePredefinedType(void) {
35997:     int test_ret = 0;
35998: 
35999: #if defined(LIBXML_SCHEMAS_ENABLED)
36000:     int mem_base;
36001:     int ret_val;
36002:     xmlSchemaTypePtr type; /* the predefined type */
36003:     int n_type;
36004:     xmlChar * value; /* the value to check */
36005:     int n_value;
36006:     xmlSchemaValPtr * val; /* the return computed value */
36007:     int n_val;
36008: 
36009:     for (n_type = 0;n_type < gen_nb_xmlSchemaTypePtr;n_type++) {
36010:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
36011:     for (n_val = 0;n_val < gen_nb_xmlSchemaValPtr_ptr;n_val++) {
36012:         mem_base = xmlMemBlocks();
36013:         type = gen_xmlSchemaTypePtr(n_type, 0);
36014:         value = gen_const_xmlChar_ptr(n_value, 1);
36015:         val = gen_xmlSchemaValPtr_ptr(n_val, 2);
36016: 
36017:         ret_val = xmlSchemaValidatePredefinedType(type, (const xmlChar *)value, val);
36018:         desret_int(ret_val);
36019:         call_tests++;
36020:         des_xmlSchemaTypePtr(n_type, type, 0);
36021:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 1);
36022:         des_xmlSchemaValPtr_ptr(n_val, val, 2);
36023:         xmlResetLastError();
36024:         if (mem_base != xmlMemBlocks()) {
36025:             printf("Leak of %d blocks found in xmlSchemaValidatePredefinedType",
36026: 	           xmlMemBlocks() - mem_base);
36027: 	    test_ret++;
36028:             printf(" %d", n_type);
36029:             printf(" %d", n_value);
36030:             printf(" %d", n_val);
36031:             printf("\n");
36032:         }
36033:     }
36034:     }
36035:     }
36036:     function_tests++;
36037: #endif
36038: 
36039:     return(test_ret);
36040: }
36041: 
36042: 
36043: static int
36044: test_xmlSchemaValueAppend(void) {
36045:     int test_ret = 0;
36046: 
36047: #if defined(LIBXML_SCHEMAS_ENABLED)
36048:     int mem_base;
36049:     int ret_val;
36050:     xmlSchemaValPtr prev; /* the value */
36051:     int n_prev;
36052:     xmlSchemaValPtr cur; /* the value to be appended */
36053:     int n_cur;
36054: 
36055:     for (n_prev = 0;n_prev < gen_nb_xmlSchemaValPtr;n_prev++) {
36056:     for (n_cur = 0;n_cur < gen_nb_xmlSchemaValPtr;n_cur++) {
36057:         mem_base = xmlMemBlocks();
36058:         prev = gen_xmlSchemaValPtr(n_prev, 0);
36059:         cur = gen_xmlSchemaValPtr(n_cur, 1);
36060: 
36061:         ret_val = xmlSchemaValueAppend(prev, cur);
36062:         desret_int(ret_val);
36063:         call_tests++;
36064:         des_xmlSchemaValPtr(n_prev, prev, 0);
36065:         des_xmlSchemaValPtr(n_cur, cur, 1);
36066:         xmlResetLastError();
36067:         if (mem_base != xmlMemBlocks()) {
36068:             printf("Leak of %d blocks found in xmlSchemaValueAppend",
36069: 	           xmlMemBlocks() - mem_base);
36070: 	    test_ret++;
36071:             printf(" %d", n_prev);
36072:             printf(" %d", n_cur);
36073:             printf("\n");
36074:         }
36075:     }
36076:     }
36077:     function_tests++;
36078: #endif
36079: 
36080:     return(test_ret);
36081: }
36082: 
36083: 
36084: static int
36085: test_xmlSchemaValueGetAsBoolean(void) {
36086:     int test_ret = 0;
36087: 
36088: #if defined(LIBXML_SCHEMAS_ENABLED)
36089:     int mem_base;
36090:     int ret_val;
36091:     xmlSchemaValPtr val; /* the value */
36092:     int n_val;
36093: 
36094:     for (n_val = 0;n_val < gen_nb_xmlSchemaValPtr;n_val++) {
36095:         mem_base = xmlMemBlocks();
36096:         val = gen_xmlSchemaValPtr(n_val, 0);
36097: 
36098:         ret_val = xmlSchemaValueGetAsBoolean(val);
36099:         desret_int(ret_val);
36100:         call_tests++;
36101:         des_xmlSchemaValPtr(n_val, val, 0);
36102:         xmlResetLastError();
36103:         if (mem_base != xmlMemBlocks()) {
36104:             printf("Leak of %d blocks found in xmlSchemaValueGetAsBoolean",
36105: 	           xmlMemBlocks() - mem_base);
36106: 	    test_ret++;
36107:             printf(" %d", n_val);
36108:             printf("\n");
36109:         }
36110:     }
36111:     function_tests++;
36112: #endif
36113: 
36114:     return(test_ret);
36115: }
36116: 
36117: 
36118: static int
36119: test_xmlSchemaValueGetAsString(void) {
36120:     int test_ret = 0;
36121: 
36122: #if defined(LIBXML_SCHEMAS_ENABLED)
36123:     int mem_base;
36124:     const xmlChar * ret_val;
36125:     xmlSchemaValPtr val; /* the value */
36126:     int n_val;
36127: 
36128:     for (n_val = 0;n_val < gen_nb_xmlSchemaValPtr;n_val++) {
36129:         mem_base = xmlMemBlocks();
36130:         val = gen_xmlSchemaValPtr(n_val, 0);
36131: 
36132:         ret_val = xmlSchemaValueGetAsString(val);
36133:         desret_const_xmlChar_ptr(ret_val);
36134:         call_tests++;
36135:         des_xmlSchemaValPtr(n_val, val, 0);
36136:         xmlResetLastError();
36137:         if (mem_base != xmlMemBlocks()) {
36138:             printf("Leak of %d blocks found in xmlSchemaValueGetAsString",
36139: 	           xmlMemBlocks() - mem_base);
36140: 	    test_ret++;
36141:             printf(" %d", n_val);
36142:             printf("\n");
36143:         }
36144:     }
36145:     function_tests++;
36146: #endif
36147: 
36148:     return(test_ret);
36149: }
36150: 
36151: 
36152: static int
36153: test_xmlSchemaValueGetNext(void) {
36154:     int test_ret = 0;
36155: 
36156: 
36157:     /* missing type support */
36158:     return(test_ret);
36159: }
36160: 
36161: 
36162: static int
36163: test_xmlSchemaWhiteSpaceReplace(void) {
36164:     int test_ret = 0;
36165: 
36166: #if defined(LIBXML_SCHEMAS_ENABLED)
36167:     int mem_base;
36168:     xmlChar * ret_val;
36169:     xmlChar * value; /* a value */
36170:     int n_value;
36171: 
36172:     for (n_value = 0;n_value < gen_nb_const_xmlChar_ptr;n_value++) {
36173:         mem_base = xmlMemBlocks();
36174:         value = gen_const_xmlChar_ptr(n_value, 0);
36175: 
36176:         ret_val = xmlSchemaWhiteSpaceReplace((const xmlChar *)value);
36177:         desret_xmlChar_ptr(ret_val);
36178:         call_tests++;
36179:         des_const_xmlChar_ptr(n_value, (const xmlChar *)value, 0);
36180:         xmlResetLastError();
36181:         if (mem_base != xmlMemBlocks()) {
36182:             printf("Leak of %d blocks found in xmlSchemaWhiteSpaceReplace",
36183: 	           xmlMemBlocks() - mem_base);
36184: 	    test_ret++;
36185:             printf(" %d", n_value);
36186:             printf("\n");
36187:         }
36188:     }
36189:     function_tests++;
36190: #endif
36191: 
36192:     return(test_ret);
36193: }
36194: 
36195: static int
36196: test_xmlschemastypes(void) {
36197:     int test_ret = 0;
36198: 
36199:     if (quiet == 0) printf("Testing xmlschemastypes : 26 of 34 functions ...\n");
36200:     test_ret += test_xmlSchemaCheckFacet();
36201:     test_ret += test_xmlSchemaCleanupTypes();
36202:     test_ret += test_xmlSchemaCollapseString();
36203:     test_ret += test_xmlSchemaCompareValues();
36204:     test_ret += test_xmlSchemaCompareValuesWhtsp();
36205:     test_ret += test_xmlSchemaCopyValue();
36206:     test_ret += test_xmlSchemaGetBuiltInListSimpleTypeItemType();
36207:     test_ret += test_xmlSchemaGetBuiltInType();
36208:     test_ret += test_xmlSchemaGetCanonValue();
36209:     test_ret += test_xmlSchemaGetCanonValueWhtsp();
36210:     test_ret += test_xmlSchemaGetFacetValueAsULong();
36211:     test_ret += test_xmlSchemaGetPredefinedType();
36212:     test_ret += test_xmlSchemaGetValType();
36213:     test_ret += test_xmlSchemaInitTypes();
36214:     test_ret += test_xmlSchemaIsBuiltInTypeFacet();
36215:     test_ret += test_xmlSchemaNewFacet();
36216:     test_ret += test_xmlSchemaNewNOTATIONValue();
36217:     test_ret += test_xmlSchemaNewQNameValue();
36218:     test_ret += test_xmlSchemaNewStringValue();
36219:     test_ret += test_xmlSchemaValPredefTypeNode();
36220:     test_ret += test_xmlSchemaValPredefTypeNodeNoNorm();
36221:     test_ret += test_xmlSchemaValidateFacet();
36222:     test_ret += test_xmlSchemaValidateFacetWhtsp();
36223:     test_ret += test_xmlSchemaValidateLengthFacet();
36224:     test_ret += test_xmlSchemaValidateLengthFacetWhtsp();
36225:     test_ret += test_xmlSchemaValidateListSimpleTypeFacet();
36226:     test_ret += test_xmlSchemaValidatePredefinedType();
36227:     test_ret += test_xmlSchemaValueAppend();
36228:     test_ret += test_xmlSchemaValueGetAsBoolean();
36229:     test_ret += test_xmlSchemaValueGetAsString();
36230:     test_ret += test_xmlSchemaValueGetNext();
36231:     test_ret += test_xmlSchemaWhiteSpaceReplace();
36232: 
36233:     if (test_ret != 0)
36234: 	printf("Module xmlschemastypes: %d errors\n", test_ret);
36235:     return(test_ret);
36236: }
36237: 
36238: static int
36239: test_xmlCharStrdup(void) {
36240:     int test_ret = 0;
36241: 
36242:     int mem_base;
36243:     xmlChar * ret_val;
36244:     char * cur; /* the input char * */
36245:     int n_cur;
36246: 
36247:     for (n_cur = 0;n_cur < gen_nb_const_char_ptr;n_cur++) {
36248:         mem_base = xmlMemBlocks();
36249:         cur = gen_const_char_ptr(n_cur, 0);
36250: 
36251:         ret_val = xmlCharStrdup((const char *)cur);
36252:         desret_xmlChar_ptr(ret_val);
36253:         call_tests++;
36254:         des_const_char_ptr(n_cur, (const char *)cur, 0);
36255:         xmlResetLastError();
36256:         if (mem_base != xmlMemBlocks()) {
36257:             printf("Leak of %d blocks found in xmlCharStrdup",
36258: 	           xmlMemBlocks() - mem_base);
36259: 	    test_ret++;
36260:             printf(" %d", n_cur);
36261:             printf("\n");
36262:         }
36263:     }
36264:     function_tests++;
36265: 
36266:     return(test_ret);
36267: }
36268: 
36269: 
36270: static int
36271: test_xmlCharStrndup(void) {
36272:     int test_ret = 0;
36273: 
36274:     int mem_base;
36275:     xmlChar * ret_val;
36276:     char * cur; /* the input char * */
36277:     int n_cur;
36278:     int len; /* the len of @cur */
36279:     int n_len;
36280: 
36281:     for (n_cur = 0;n_cur < gen_nb_const_char_ptr;n_cur++) {
36282:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
36283:         mem_base = xmlMemBlocks();
36284:         cur = gen_const_char_ptr(n_cur, 0);
36285:         len = gen_int(n_len, 1);
36286: 
36287:         ret_val = xmlCharStrndup((const char *)cur, len);
36288:         desret_xmlChar_ptr(ret_val);
36289:         call_tests++;
36290:         des_const_char_ptr(n_cur, (const char *)cur, 0);
36291:         des_int(n_len, len, 1);
36292:         xmlResetLastError();
36293:         if (mem_base != xmlMemBlocks()) {
36294:             printf("Leak of %d blocks found in xmlCharStrndup",
36295: 	           xmlMemBlocks() - mem_base);
36296: 	    test_ret++;
36297:             printf(" %d", n_cur);
36298:             printf(" %d", n_len);
36299:             printf("\n");
36300:         }
36301:     }
36302:     }
36303:     function_tests++;
36304: 
36305:     return(test_ret);
36306: }
36307: 
36308: 
36309: static int
36310: test_xmlCheckUTF8(void) {
36311:     int test_ret = 0;
36312: 
36313:     int mem_base;
36314:     int ret_val;
36315:     unsigned char * utf; /* Pointer to putative UTF-8 encoded string. */
36316:     int n_utf;
36317: 
36318:     for (n_utf = 0;n_utf < gen_nb_const_unsigned_char_ptr;n_utf++) {
36319:         mem_base = xmlMemBlocks();
36320:         utf = gen_const_unsigned_char_ptr(n_utf, 0);
36321: 
36322:         ret_val = xmlCheckUTF8((const unsigned char *)utf);
36323:         desret_int(ret_val);
36324:         call_tests++;
36325:         des_const_unsigned_char_ptr(n_utf, (const unsigned char *)utf, 0);
36326:         xmlResetLastError();
36327:         if (mem_base != xmlMemBlocks()) {
36328:             printf("Leak of %d blocks found in xmlCheckUTF8",
36329: 	           xmlMemBlocks() - mem_base);
36330: 	    test_ret++;
36331:             printf(" %d", n_utf);
36332:             printf("\n");
36333:         }
36334:     }
36335:     function_tests++;
36336: 
36337:     return(test_ret);
36338: }
36339: 
36340: 
36341: static int
36342: test_xmlGetUTF8Char(void) {
36343:     int test_ret = 0;
36344: 
36345:     int mem_base;
36346:     int ret_val;
36347:     unsigned char * utf; /* a sequence of UTF-8 encoded bytes */
36348:     int n_utf;
36349:     int * len; /* a pointer to the minimum number of bytes present in the sequence.  This is used to assure the next character is completely contained within the sequence. */
36350:     int n_len;
36351: 
36352:     for (n_utf = 0;n_utf < gen_nb_const_unsigned_char_ptr;n_utf++) {
36353:     for (n_len = 0;n_len < gen_nb_int_ptr;n_len++) {
36354:         mem_base = xmlMemBlocks();
36355:         utf = gen_const_unsigned_char_ptr(n_utf, 0);
36356:         len = gen_int_ptr(n_len, 1);
36357: 
36358:         ret_val = xmlGetUTF8Char((const unsigned char *)utf, len);
36359:         desret_int(ret_val);
36360:         call_tests++;
36361:         des_const_unsigned_char_ptr(n_utf, (const unsigned char *)utf, 0);
36362:         des_int_ptr(n_len, len, 1);
36363:         xmlResetLastError();
36364:         if (mem_base != xmlMemBlocks()) {
36365:             printf("Leak of %d blocks found in xmlGetUTF8Char",
36366: 	           xmlMemBlocks() - mem_base);
36367: 	    test_ret++;
36368:             printf(" %d", n_utf);
36369:             printf(" %d", n_len);
36370:             printf("\n");
36371:         }
36372:     }
36373:     }
36374:     function_tests++;
36375: 
36376:     return(test_ret);
36377: }
36378: 
36379: 
36380: static int
36381: test_xmlStrEqual(void) {
36382:     int test_ret = 0;
36383: 
36384:     int mem_base;
36385:     int ret_val;
36386:     xmlChar * str1; /* the first xmlChar * */
36387:     int n_str1;
36388:     xmlChar * str2; /* the second xmlChar * */
36389:     int n_str2;
36390: 
36391:     for (n_str1 = 0;n_str1 < gen_nb_const_xmlChar_ptr;n_str1++) {
36392:     for (n_str2 = 0;n_str2 < gen_nb_const_xmlChar_ptr;n_str2++) {
36393:         mem_base = xmlMemBlocks();
36394:         str1 = gen_const_xmlChar_ptr(n_str1, 0);
36395:         str2 = gen_const_xmlChar_ptr(n_str2, 1);
36396: 
36397:         ret_val = xmlStrEqual((const xmlChar *)str1, (const xmlChar *)str2);
36398:         desret_int(ret_val);
36399:         call_tests++;
36400:         des_const_xmlChar_ptr(n_str1, (const xmlChar *)str1, 0);
36401:         des_const_xmlChar_ptr(n_str2, (const xmlChar *)str2, 1);
36402:         xmlResetLastError();
36403:         if (mem_base != xmlMemBlocks()) {
36404:             printf("Leak of %d blocks found in xmlStrEqual",
36405: 	           xmlMemBlocks() - mem_base);
36406: 	    test_ret++;
36407:             printf(" %d", n_str1);
36408:             printf(" %d", n_str2);
36409:             printf("\n");
36410:         }
36411:     }
36412:     }
36413:     function_tests++;
36414: 
36415:     return(test_ret);
36416: }
36417: 
36418: 
36419: static int
36420: test_xmlStrPrintf(void) {
36421:     int test_ret = 0;
36422: 
36423: 
36424:     /* missing type support */
36425:     return(test_ret);
36426: }
36427: 
36428: 
36429: static int
36430: test_xmlStrQEqual(void) {
36431:     int test_ret = 0;
36432: 
36433:     int mem_base;
36434:     int ret_val;
36435:     xmlChar * pref; /* the prefix of the QName */
36436:     int n_pref;
36437:     xmlChar * name; /* the localname of the QName */
36438:     int n_name;
36439:     xmlChar * str; /* the second xmlChar * */
36440:     int n_str;
36441: 
36442:     for (n_pref = 0;n_pref < gen_nb_const_xmlChar_ptr;n_pref++) {
36443:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
36444:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
36445:         mem_base = xmlMemBlocks();
36446:         pref = gen_const_xmlChar_ptr(n_pref, 0);
36447:         name = gen_const_xmlChar_ptr(n_name, 1);
36448:         str = gen_const_xmlChar_ptr(n_str, 2);
36449: 
36450:         ret_val = xmlStrQEqual((const xmlChar *)pref, (const xmlChar *)name, (const xmlChar *)str);
36451:         desret_int(ret_val);
36452:         call_tests++;
36453:         des_const_xmlChar_ptr(n_pref, (const xmlChar *)pref, 0);
36454:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
36455:         des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 2);
36456:         xmlResetLastError();
36457:         if (mem_base != xmlMemBlocks()) {
36458:             printf("Leak of %d blocks found in xmlStrQEqual",
36459: 	           xmlMemBlocks() - mem_base);
36460: 	    test_ret++;
36461:             printf(" %d", n_pref);
36462:             printf(" %d", n_name);
36463:             printf(" %d", n_str);
36464:             printf("\n");
36465:         }
36466:     }
36467:     }
36468:     }
36469:     function_tests++;
36470: 
36471:     return(test_ret);
36472: }
36473: 
36474: 
36475: static int
36476: test_xmlStrVPrintf(void) {
36477:     int test_ret = 0;
36478: 
36479: 
36480:     /* missing type support */
36481:     return(test_ret);
36482: }
36483: 
36484: 
36485: static int
36486: test_xmlStrcasecmp(void) {
36487:     int test_ret = 0;
36488: 
36489:     int mem_base;
36490:     int ret_val;
36491:     xmlChar * str1; /* the first xmlChar * */
36492:     int n_str1;
36493:     xmlChar * str2; /* the second xmlChar * */
36494:     int n_str2;
36495: 
36496:     for (n_str1 = 0;n_str1 < gen_nb_const_xmlChar_ptr;n_str1++) {
36497:     for (n_str2 = 0;n_str2 < gen_nb_const_xmlChar_ptr;n_str2++) {
36498:         mem_base = xmlMemBlocks();
36499:         str1 = gen_const_xmlChar_ptr(n_str1, 0);
36500:         str2 = gen_const_xmlChar_ptr(n_str2, 1);
36501: 
36502:         ret_val = xmlStrcasecmp((const xmlChar *)str1, (const xmlChar *)str2);
36503:         desret_int(ret_val);
36504:         call_tests++;
36505:         des_const_xmlChar_ptr(n_str1, (const xmlChar *)str1, 0);
36506:         des_const_xmlChar_ptr(n_str2, (const xmlChar *)str2, 1);
36507:         xmlResetLastError();
36508:         if (mem_base != xmlMemBlocks()) {
36509:             printf("Leak of %d blocks found in xmlStrcasecmp",
36510: 	           xmlMemBlocks() - mem_base);
36511: 	    test_ret++;
36512:             printf(" %d", n_str1);
36513:             printf(" %d", n_str2);
36514:             printf("\n");
36515:         }
36516:     }
36517:     }
36518:     function_tests++;
36519: 
36520:     return(test_ret);
36521: }
36522: 
36523: 
36524: static int
36525: test_xmlStrcasestr(void) {
36526:     int test_ret = 0;
36527: 
36528:     int mem_base;
36529:     const xmlChar * ret_val;
36530:     xmlChar * str; /* the xmlChar * array (haystack) */
36531:     int n_str;
36532:     xmlChar * val; /* the xmlChar to search (needle) */
36533:     int n_val;
36534: 
36535:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
36536:     for (n_val = 0;n_val < gen_nb_const_xmlChar_ptr;n_val++) {
36537:         mem_base = xmlMemBlocks();
36538:         str = gen_const_xmlChar_ptr(n_str, 0);
36539:         val = gen_const_xmlChar_ptr(n_val, 1);
36540: 
36541:         ret_val = xmlStrcasestr((const xmlChar *)str, (const xmlChar *)val);
36542:         desret_const_xmlChar_ptr(ret_val);
36543:         call_tests++;
36544:         des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 0);
36545:         des_const_xmlChar_ptr(n_val, (const xmlChar *)val, 1);
36546:         xmlResetLastError();
36547:         if (mem_base != xmlMemBlocks()) {
36548:             printf("Leak of %d blocks found in xmlStrcasestr",
36549: 	           xmlMemBlocks() - mem_base);
36550: 	    test_ret++;
36551:             printf(" %d", n_str);
36552:             printf(" %d", n_val);
36553:             printf("\n");
36554:         }
36555:     }
36556:     }
36557:     function_tests++;
36558: 
36559:     return(test_ret);
36560: }
36561: 
36562: 
36563: static int
36564: test_xmlStrchr(void) {
36565:     int test_ret = 0;
36566: 
36567:     int mem_base;
36568:     const xmlChar * ret_val;
36569:     xmlChar * str; /* the xmlChar * array */
36570:     int n_str;
36571:     xmlChar val; /* the xmlChar to search */
36572:     int n_val;
36573: 
36574:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
36575:     for (n_val = 0;n_val < gen_nb_xmlChar;n_val++) {
36576:         mem_base = xmlMemBlocks();
36577:         str = gen_const_xmlChar_ptr(n_str, 0);
36578:         val = gen_xmlChar(n_val, 1);
36579: 
36580:         ret_val = xmlStrchr((const xmlChar *)str, val);
36581:         desret_const_xmlChar_ptr(ret_val);
36582:         call_tests++;
36583:         des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 0);
36584:         des_xmlChar(n_val, val, 1);
36585:         xmlResetLastError();
36586:         if (mem_base != xmlMemBlocks()) {
36587:             printf("Leak of %d blocks found in xmlStrchr",
36588: 	           xmlMemBlocks() - mem_base);
36589: 	    test_ret++;
36590:             printf(" %d", n_str);
36591:             printf(" %d", n_val);
36592:             printf("\n");
36593:         }
36594:     }
36595:     }
36596:     function_tests++;
36597: 
36598:     return(test_ret);
36599: }
36600: 
36601: 
36602: static int
36603: test_xmlStrcmp(void) {
36604:     int test_ret = 0;
36605: 
36606:     int mem_base;
36607:     int ret_val;
36608:     xmlChar * str1; /* the first xmlChar * */
36609:     int n_str1;
36610:     xmlChar * str2; /* the second xmlChar * */
36611:     int n_str2;
36612: 
36613:     for (n_str1 = 0;n_str1 < gen_nb_const_xmlChar_ptr;n_str1++) {
36614:     for (n_str2 = 0;n_str2 < gen_nb_const_xmlChar_ptr;n_str2++) {
36615:         mem_base = xmlMemBlocks();
36616:         str1 = gen_const_xmlChar_ptr(n_str1, 0);
36617:         str2 = gen_const_xmlChar_ptr(n_str2, 1);
36618: 
36619:         ret_val = xmlStrcmp((const xmlChar *)str1, (const xmlChar *)str2);
36620:         desret_int(ret_val);
36621:         call_tests++;
36622:         des_const_xmlChar_ptr(n_str1, (const xmlChar *)str1, 0);
36623:         des_const_xmlChar_ptr(n_str2, (const xmlChar *)str2, 1);
36624:         xmlResetLastError();
36625:         if (mem_base != xmlMemBlocks()) {
36626:             printf("Leak of %d blocks found in xmlStrcmp",
36627: 	           xmlMemBlocks() - mem_base);
36628: 	    test_ret++;
36629:             printf(" %d", n_str1);
36630:             printf(" %d", n_str2);
36631:             printf("\n");
36632:         }
36633:     }
36634:     }
36635:     function_tests++;
36636: 
36637:     return(test_ret);
36638: }
36639: 
36640: 
36641: static int
36642: test_xmlStrdup(void) {
36643:     int test_ret = 0;
36644: 
36645:     int mem_base;
36646:     xmlChar * ret_val;
36647:     xmlChar * cur; /* the input xmlChar * */
36648:     int n_cur;
36649: 
36650:     for (n_cur = 0;n_cur < gen_nb_const_xmlChar_ptr;n_cur++) {
36651:         mem_base = xmlMemBlocks();
36652:         cur = gen_const_xmlChar_ptr(n_cur, 0);
36653: 
36654:         ret_val = xmlStrdup((const xmlChar *)cur);
36655:         desret_xmlChar_ptr(ret_val);
36656:         call_tests++;
36657:         des_const_xmlChar_ptr(n_cur, (const xmlChar *)cur, 0);
36658:         xmlResetLastError();
36659:         if (mem_base != xmlMemBlocks()) {
36660:             printf("Leak of %d blocks found in xmlStrdup",
36661: 	           xmlMemBlocks() - mem_base);
36662: 	    test_ret++;
36663:             printf(" %d", n_cur);
36664:             printf("\n");
36665:         }
36666:     }
36667:     function_tests++;
36668: 
36669:     return(test_ret);
36670: }
36671: 
36672: 
36673: static int
36674: test_xmlStrlen(void) {
36675:     int test_ret = 0;
36676: 
36677:     int mem_base;
36678:     int ret_val;
36679:     xmlChar * str; /* the xmlChar * array */
36680:     int n_str;
36681: 
36682:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
36683:         mem_base = xmlMemBlocks();
36684:         str = gen_const_xmlChar_ptr(n_str, 0);
36685: 
36686:         ret_val = xmlStrlen((const xmlChar *)str);
36687:         desret_int(ret_val);
36688:         call_tests++;
36689:         des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 0);
36690:         xmlResetLastError();
36691:         if (mem_base != xmlMemBlocks()) {
36692:             printf("Leak of %d blocks found in xmlStrlen",
36693: 	           xmlMemBlocks() - mem_base);
36694: 	    test_ret++;
36695:             printf(" %d", n_str);
36696:             printf("\n");
36697:         }
36698:     }
36699:     function_tests++;
36700: 
36701:     return(test_ret);
36702: }
36703: 
36704: 
36705: static int
36706: test_xmlStrncasecmp(void) {
36707:     int test_ret = 0;
36708: 
36709:     int mem_base;
36710:     int ret_val;
36711:     xmlChar * str1; /* the first xmlChar * */
36712:     int n_str1;
36713:     xmlChar * str2; /* the second xmlChar * */
36714:     int n_str2;
36715:     int len; /* the max comparison length */
36716:     int n_len;
36717: 
36718:     for (n_str1 = 0;n_str1 < gen_nb_const_xmlChar_ptr;n_str1++) {
36719:     for (n_str2 = 0;n_str2 < gen_nb_const_xmlChar_ptr;n_str2++) {
36720:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
36721:         mem_base = xmlMemBlocks();
36722:         str1 = gen_const_xmlChar_ptr(n_str1, 0);
36723:         str2 = gen_const_xmlChar_ptr(n_str2, 1);
36724:         len = gen_int(n_len, 2);
36725: 
36726:         ret_val = xmlStrncasecmp((const xmlChar *)str1, (const xmlChar *)str2, len);
36727:         desret_int(ret_val);
36728:         call_tests++;
36729:         des_const_xmlChar_ptr(n_str1, (const xmlChar *)str1, 0);
36730:         des_const_xmlChar_ptr(n_str2, (const xmlChar *)str2, 1);
36731:         des_int(n_len, len, 2);
36732:         xmlResetLastError();
36733:         if (mem_base != xmlMemBlocks()) {
36734:             printf("Leak of %d blocks found in xmlStrncasecmp",
36735: 	           xmlMemBlocks() - mem_base);
36736: 	    test_ret++;
36737:             printf(" %d", n_str1);
36738:             printf(" %d", n_str2);
36739:             printf(" %d", n_len);
36740:             printf("\n");
36741:         }
36742:     }
36743:     }
36744:     }
36745:     function_tests++;
36746: 
36747:     return(test_ret);
36748: }
36749: 
36750: 
36751: static int
36752: test_xmlStrncatNew(void) {
36753:     int test_ret = 0;
36754: 
36755:     int mem_base;
36756:     xmlChar * ret_val;
36757:     xmlChar * str1; /* first xmlChar string */
36758:     int n_str1;
36759:     xmlChar * str2; /* second xmlChar string */
36760:     int n_str2;
36761:     int len; /* the len of @str2 or < 0 */
36762:     int n_len;
36763: 
36764:     for (n_str1 = 0;n_str1 < gen_nb_const_xmlChar_ptr;n_str1++) {
36765:     for (n_str2 = 0;n_str2 < gen_nb_const_xmlChar_ptr;n_str2++) {
36766:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
36767:         mem_base = xmlMemBlocks();
36768:         str1 = gen_const_xmlChar_ptr(n_str1, 0);
36769:         str2 = gen_const_xmlChar_ptr(n_str2, 1);
36770:         len = gen_int(n_len, 2);
36771: 
36772:         ret_val = xmlStrncatNew((const xmlChar *)str1, (const xmlChar *)str2, len);
36773:         desret_xmlChar_ptr(ret_val);
36774:         call_tests++;
36775:         des_const_xmlChar_ptr(n_str1, (const xmlChar *)str1, 0);
36776:         des_const_xmlChar_ptr(n_str2, (const xmlChar *)str2, 1);
36777:         des_int(n_len, len, 2);
36778:         xmlResetLastError();
36779:         if (mem_base != xmlMemBlocks()) {
36780:             printf("Leak of %d blocks found in xmlStrncatNew",
36781: 	           xmlMemBlocks() - mem_base);
36782: 	    test_ret++;
36783:             printf(" %d", n_str1);
36784:             printf(" %d", n_str2);
36785:             printf(" %d", n_len);
36786:             printf("\n");
36787:         }
36788:     }
36789:     }
36790:     }
36791:     function_tests++;
36792: 
36793:     return(test_ret);
36794: }
36795: 
36796: 
36797: static int
36798: test_xmlStrncmp(void) {
36799:     int test_ret = 0;
36800: 
36801:     int mem_base;
36802:     int ret_val;
36803:     xmlChar * str1; /* the first xmlChar * */
36804:     int n_str1;
36805:     xmlChar * str2; /* the second xmlChar * */
36806:     int n_str2;
36807:     int len; /* the max comparison length */
36808:     int n_len;
36809: 
36810:     for (n_str1 = 0;n_str1 < gen_nb_const_xmlChar_ptr;n_str1++) {
36811:     for (n_str2 = 0;n_str2 < gen_nb_const_xmlChar_ptr;n_str2++) {
36812:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
36813:         mem_base = xmlMemBlocks();
36814:         str1 = gen_const_xmlChar_ptr(n_str1, 0);
36815:         str2 = gen_const_xmlChar_ptr(n_str2, 1);
36816:         len = gen_int(n_len, 2);
36817: 
36818:         ret_val = xmlStrncmp((const xmlChar *)str1, (const xmlChar *)str2, len);
36819:         desret_int(ret_val);
36820:         call_tests++;
36821:         des_const_xmlChar_ptr(n_str1, (const xmlChar *)str1, 0);
36822:         des_const_xmlChar_ptr(n_str2, (const xmlChar *)str2, 1);
36823:         des_int(n_len, len, 2);
36824:         xmlResetLastError();
36825:         if (mem_base != xmlMemBlocks()) {
36826:             printf("Leak of %d blocks found in xmlStrncmp",
36827: 	           xmlMemBlocks() - mem_base);
36828: 	    test_ret++;
36829:             printf(" %d", n_str1);
36830:             printf(" %d", n_str2);
36831:             printf(" %d", n_len);
36832:             printf("\n");
36833:         }
36834:     }
36835:     }
36836:     }
36837:     function_tests++;
36838: 
36839:     return(test_ret);
36840: }
36841: 
36842: 
36843: static int
36844: test_xmlStrndup(void) {
36845:     int test_ret = 0;
36846: 
36847:     int mem_base;
36848:     xmlChar * ret_val;
36849:     xmlChar * cur; /* the input xmlChar * */
36850:     int n_cur;
36851:     int len; /* the len of @cur */
36852:     int n_len;
36853: 
36854:     for (n_cur = 0;n_cur < gen_nb_const_xmlChar_ptr;n_cur++) {
36855:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
36856:         mem_base = xmlMemBlocks();
36857:         cur = gen_const_xmlChar_ptr(n_cur, 0);
36858:         len = gen_int(n_len, 1);
36859: 
36860:         ret_val = xmlStrndup((const xmlChar *)cur, len);
36861:         desret_xmlChar_ptr(ret_val);
36862:         call_tests++;
36863:         des_const_xmlChar_ptr(n_cur, (const xmlChar *)cur, 0);
36864:         des_int(n_len, len, 1);
36865:         xmlResetLastError();
36866:         if (mem_base != xmlMemBlocks()) {
36867:             printf("Leak of %d blocks found in xmlStrndup",
36868: 	           xmlMemBlocks() - mem_base);
36869: 	    test_ret++;
36870:             printf(" %d", n_cur);
36871:             printf(" %d", n_len);
36872:             printf("\n");
36873:         }
36874:     }
36875:     }
36876:     function_tests++;
36877: 
36878:     return(test_ret);
36879: }
36880: 
36881: 
36882: static int
36883: test_xmlStrstr(void) {
36884:     int test_ret = 0;
36885: 
36886:     int mem_base;
36887:     const xmlChar * ret_val;
36888:     xmlChar * str; /* the xmlChar * array (haystack) */
36889:     int n_str;
36890:     xmlChar * val; /* the xmlChar to search (needle) */
36891:     int n_val;
36892: 
36893:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
36894:     for (n_val = 0;n_val < gen_nb_const_xmlChar_ptr;n_val++) {
36895:         mem_base = xmlMemBlocks();
36896:         str = gen_const_xmlChar_ptr(n_str, 0);
36897:         val = gen_const_xmlChar_ptr(n_val, 1);
36898: 
36899:         ret_val = xmlStrstr((const xmlChar *)str, (const xmlChar *)val);
36900:         desret_const_xmlChar_ptr(ret_val);
36901:         call_tests++;
36902:         des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 0);
36903:         des_const_xmlChar_ptr(n_val, (const xmlChar *)val, 1);
36904:         xmlResetLastError();
36905:         if (mem_base != xmlMemBlocks()) {
36906:             printf("Leak of %d blocks found in xmlStrstr",
36907: 	           xmlMemBlocks() - mem_base);
36908: 	    test_ret++;
36909:             printf(" %d", n_str);
36910:             printf(" %d", n_val);
36911:             printf("\n");
36912:         }
36913:     }
36914:     }
36915:     function_tests++;
36916: 
36917:     return(test_ret);
36918: }
36919: 
36920: 
36921: static int
36922: test_xmlStrsub(void) {
36923:     int test_ret = 0;
36924: 
36925:     int mem_base;
36926:     xmlChar * ret_val;
36927:     xmlChar * str; /* the xmlChar * array (haystack) */
36928:     int n_str;
36929:     int start; /* the index of the first char (zero based) */
36930:     int n_start;
36931:     int len; /* the length of the substring */
36932:     int n_len;
36933: 
36934:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
36935:     for (n_start = 0;n_start < gen_nb_int;n_start++) {
36936:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
36937:         mem_base = xmlMemBlocks();
36938:         str = gen_const_xmlChar_ptr(n_str, 0);
36939:         start = gen_int(n_start, 1);
36940:         len = gen_int(n_len, 2);
36941: 
36942:         ret_val = xmlStrsub((const xmlChar *)str, start, len);
36943:         desret_xmlChar_ptr(ret_val);
36944:         call_tests++;
36945:         des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 0);
36946:         des_int(n_start, start, 1);
36947:         des_int(n_len, len, 2);
36948:         xmlResetLastError();
36949:         if (mem_base != xmlMemBlocks()) {
36950:             printf("Leak of %d blocks found in xmlStrsub",
36951: 	           xmlMemBlocks() - mem_base);
36952: 	    test_ret++;
36953:             printf(" %d", n_str);
36954:             printf(" %d", n_start);
36955:             printf(" %d", n_len);
36956:             printf("\n");
36957:         }
36958:     }
36959:     }
36960:     }
36961:     function_tests++;
36962: 
36963:     return(test_ret);
36964: }
36965: 
36966: 
36967: static int
36968: test_xmlUTF8Charcmp(void) {
36969:     int test_ret = 0;
36970: 
36971:     int mem_base;
36972:     int ret_val;
36973:     xmlChar * utf1; /* pointer to first UTF8 char */
36974:     int n_utf1;
36975:     xmlChar * utf2; /* pointer to second UTF8 char */
36976:     int n_utf2;
36977: 
36978:     for (n_utf1 = 0;n_utf1 < gen_nb_const_xmlChar_ptr;n_utf1++) {
36979:     for (n_utf2 = 0;n_utf2 < gen_nb_const_xmlChar_ptr;n_utf2++) {
36980:         mem_base = xmlMemBlocks();
36981:         utf1 = gen_const_xmlChar_ptr(n_utf1, 0);
36982:         utf2 = gen_const_xmlChar_ptr(n_utf2, 1);
36983: 
36984:         ret_val = xmlUTF8Charcmp((const xmlChar *)utf1, (const xmlChar *)utf2);
36985:         desret_int(ret_val);
36986:         call_tests++;
36987:         des_const_xmlChar_ptr(n_utf1, (const xmlChar *)utf1, 0);
36988:         des_const_xmlChar_ptr(n_utf2, (const xmlChar *)utf2, 1);
36989:         xmlResetLastError();
36990:         if (mem_base != xmlMemBlocks()) {
36991:             printf("Leak of %d blocks found in xmlUTF8Charcmp",
36992: 	           xmlMemBlocks() - mem_base);
36993: 	    test_ret++;
36994:             printf(" %d", n_utf1);
36995:             printf(" %d", n_utf2);
36996:             printf("\n");
36997:         }
36998:     }
36999:     }
37000:     function_tests++;
37001: 
37002:     return(test_ret);
37003: }
37004: 
37005: 
37006: static int
37007: test_xmlUTF8Size(void) {
37008:     int test_ret = 0;
37009: 
37010:     int mem_base;
37011:     int ret_val;
37012:     xmlChar * utf; /* pointer to the UTF8 character */
37013:     int n_utf;
37014: 
37015:     for (n_utf = 0;n_utf < gen_nb_const_xmlChar_ptr;n_utf++) {
37016:         mem_base = xmlMemBlocks();
37017:         utf = gen_const_xmlChar_ptr(n_utf, 0);
37018: 
37019:         ret_val = xmlUTF8Size((const xmlChar *)utf);
37020:         desret_int(ret_val);
37021:         call_tests++;
37022:         des_const_xmlChar_ptr(n_utf, (const xmlChar *)utf, 0);
37023:         xmlResetLastError();
37024:         if (mem_base != xmlMemBlocks()) {
37025:             printf("Leak of %d blocks found in xmlUTF8Size",
37026: 	           xmlMemBlocks() - mem_base);
37027: 	    test_ret++;
37028:             printf(" %d", n_utf);
37029:             printf("\n");
37030:         }
37031:     }
37032:     function_tests++;
37033: 
37034:     return(test_ret);
37035: }
37036: 
37037: 
37038: static int
37039: test_xmlUTF8Strlen(void) {
37040:     int test_ret = 0;
37041: 
37042:     int mem_base;
37043:     int ret_val;
37044:     xmlChar * utf; /* a sequence of UTF-8 encoded bytes */
37045:     int n_utf;
37046: 
37047:     for (n_utf = 0;n_utf < gen_nb_const_xmlChar_ptr;n_utf++) {
37048:         mem_base = xmlMemBlocks();
37049:         utf = gen_const_xmlChar_ptr(n_utf, 0);
37050: 
37051:         ret_val = xmlUTF8Strlen((const xmlChar *)utf);
37052:         desret_int(ret_val);
37053:         call_tests++;
37054:         des_const_xmlChar_ptr(n_utf, (const xmlChar *)utf, 0);
37055:         xmlResetLastError();
37056:         if (mem_base != xmlMemBlocks()) {
37057:             printf("Leak of %d blocks found in xmlUTF8Strlen",
37058: 	           xmlMemBlocks() - mem_base);
37059: 	    test_ret++;
37060:             printf(" %d", n_utf);
37061:             printf("\n");
37062:         }
37063:     }
37064:     function_tests++;
37065: 
37066:     return(test_ret);
37067: }
37068: 
37069: 
37070: static int
37071: test_xmlUTF8Strloc(void) {
37072:     int test_ret = 0;
37073: 
37074:     int mem_base;
37075:     int ret_val;
37076:     xmlChar * utf; /* the input UTF8 * */
37077:     int n_utf;
37078:     xmlChar * utfchar; /* the UTF8 character to be found */
37079:     int n_utfchar;
37080: 
37081:     for (n_utf = 0;n_utf < gen_nb_const_xmlChar_ptr;n_utf++) {
37082:     for (n_utfchar = 0;n_utfchar < gen_nb_const_xmlChar_ptr;n_utfchar++) {
37083:         mem_base = xmlMemBlocks();
37084:         utf = gen_const_xmlChar_ptr(n_utf, 0);
37085:         utfchar = gen_const_xmlChar_ptr(n_utfchar, 1);
37086: 
37087:         ret_val = xmlUTF8Strloc((const xmlChar *)utf, (const xmlChar *)utfchar);
37088:         desret_int(ret_val);
37089:         call_tests++;
37090:         des_const_xmlChar_ptr(n_utf, (const xmlChar *)utf, 0);
37091:         des_const_xmlChar_ptr(n_utfchar, (const xmlChar *)utfchar, 1);
37092:         xmlResetLastError();
37093:         if (mem_base != xmlMemBlocks()) {
37094:             printf("Leak of %d blocks found in xmlUTF8Strloc",
37095: 	           xmlMemBlocks() - mem_base);
37096: 	    test_ret++;
37097:             printf(" %d", n_utf);
37098:             printf(" %d", n_utfchar);
37099:             printf("\n");
37100:         }
37101:     }
37102:     }
37103:     function_tests++;
37104: 
37105:     return(test_ret);
37106: }
37107: 
37108: 
37109: static int
37110: test_xmlUTF8Strndup(void) {
37111:     int test_ret = 0;
37112: 
37113:     int mem_base;
37114:     xmlChar * ret_val;
37115:     xmlChar * utf; /* the input UTF8 * */
37116:     int n_utf;
37117:     int len; /* the len of @utf (in chars) */
37118:     int n_len;
37119: 
37120:     for (n_utf = 0;n_utf < gen_nb_const_xmlChar_ptr;n_utf++) {
37121:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
37122:         mem_base = xmlMemBlocks();
37123:         utf = gen_const_xmlChar_ptr(n_utf, 0);
37124:         len = gen_int(n_len, 1);
37125: 
37126:         ret_val = xmlUTF8Strndup((const xmlChar *)utf, len);
37127:         desret_xmlChar_ptr(ret_val);
37128:         call_tests++;
37129:         des_const_xmlChar_ptr(n_utf, (const xmlChar *)utf, 0);
37130:         des_int(n_len, len, 1);
37131:         xmlResetLastError();
37132:         if (mem_base != xmlMemBlocks()) {
37133:             printf("Leak of %d blocks found in xmlUTF8Strndup",
37134: 	           xmlMemBlocks() - mem_base);
37135: 	    test_ret++;
37136:             printf(" %d", n_utf);
37137:             printf(" %d", n_len);
37138:             printf("\n");
37139:         }
37140:     }
37141:     }
37142:     function_tests++;
37143: 
37144:     return(test_ret);
37145: }
37146: 
37147: 
37148: static int
37149: test_xmlUTF8Strpos(void) {
37150:     int test_ret = 0;
37151: 
37152:     int mem_base;
37153:     const xmlChar * ret_val;
37154:     xmlChar * utf; /* the input UTF8 * */
37155:     int n_utf;
37156:     int pos; /* the position of the desired UTF8 char (in chars) */
37157:     int n_pos;
37158: 
37159:     for (n_utf = 0;n_utf < gen_nb_const_xmlChar_ptr;n_utf++) {
37160:     for (n_pos = 0;n_pos < gen_nb_int;n_pos++) {
37161:         mem_base = xmlMemBlocks();
37162:         utf = gen_const_xmlChar_ptr(n_utf, 0);
37163:         pos = gen_int(n_pos, 1);
37164: 
37165:         ret_val = xmlUTF8Strpos((const xmlChar *)utf, pos);
37166:         desret_const_xmlChar_ptr(ret_val);
37167:         call_tests++;
37168:         des_const_xmlChar_ptr(n_utf, (const xmlChar *)utf, 0);
37169:         des_int(n_pos, pos, 1);
37170:         xmlResetLastError();
37171:         if (mem_base != xmlMemBlocks()) {
37172:             printf("Leak of %d blocks found in xmlUTF8Strpos",
37173: 	           xmlMemBlocks() - mem_base);
37174: 	    test_ret++;
37175:             printf(" %d", n_utf);
37176:             printf(" %d", n_pos);
37177:             printf("\n");
37178:         }
37179:     }
37180:     }
37181:     function_tests++;
37182: 
37183:     return(test_ret);
37184: }
37185: 
37186: 
37187: static int
37188: test_xmlUTF8Strsize(void) {
37189:     int test_ret = 0;
37190: 
37191:     int mem_base;
37192:     int ret_val;
37193:     xmlChar * utf; /* a sequence of UTF-8 encoded bytes */
37194:     int n_utf;
37195:     int len; /* the number of characters in the array */
37196:     int n_len;
37197: 
37198:     for (n_utf = 0;n_utf < gen_nb_const_xmlChar_ptr;n_utf++) {
37199:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
37200:         mem_base = xmlMemBlocks();
37201:         utf = gen_const_xmlChar_ptr(n_utf, 0);
37202:         len = gen_int(n_len, 1);
37203: 
37204:         ret_val = xmlUTF8Strsize((const xmlChar *)utf, len);
37205:         desret_int(ret_val);
37206:         call_tests++;
37207:         des_const_xmlChar_ptr(n_utf, (const xmlChar *)utf, 0);
37208:         des_int(n_len, len, 1);
37209:         xmlResetLastError();
37210:         if (mem_base != xmlMemBlocks()) {
37211:             printf("Leak of %d blocks found in xmlUTF8Strsize",
37212: 	           xmlMemBlocks() - mem_base);
37213: 	    test_ret++;
37214:             printf(" %d", n_utf);
37215:             printf(" %d", n_len);
37216:             printf("\n");
37217:         }
37218:     }
37219:     }
37220:     function_tests++;
37221: 
37222:     return(test_ret);
37223: }
37224: 
37225: 
37226: static int
37227: test_xmlUTF8Strsub(void) {
37228:     int test_ret = 0;
37229: 
37230:     int mem_base;
37231:     xmlChar * ret_val;
37232:     xmlChar * utf; /* a sequence of UTF-8 encoded bytes */
37233:     int n_utf;
37234:     int start; /* relative pos of first char */
37235:     int n_start;
37236:     int len; /* total number to copy */
37237:     int n_len;
37238: 
37239:     for (n_utf = 0;n_utf < gen_nb_const_xmlChar_ptr;n_utf++) {
37240:     for (n_start = 0;n_start < gen_nb_int;n_start++) {
37241:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
37242:         mem_base = xmlMemBlocks();
37243:         utf = gen_const_xmlChar_ptr(n_utf, 0);
37244:         start = gen_int(n_start, 1);
37245:         len = gen_int(n_len, 2);
37246: 
37247:         ret_val = xmlUTF8Strsub((const xmlChar *)utf, start, len);
37248:         desret_xmlChar_ptr(ret_val);
37249:         call_tests++;
37250:         des_const_xmlChar_ptr(n_utf, (const xmlChar *)utf, 0);
37251:         des_int(n_start, start, 1);
37252:         des_int(n_len, len, 2);
37253:         xmlResetLastError();
37254:         if (mem_base != xmlMemBlocks()) {
37255:             printf("Leak of %d blocks found in xmlUTF8Strsub",
37256: 	           xmlMemBlocks() - mem_base);
37257: 	    test_ret++;
37258:             printf(" %d", n_utf);
37259:             printf(" %d", n_start);
37260:             printf(" %d", n_len);
37261:             printf("\n");
37262:         }
37263:     }
37264:     }
37265:     }
37266:     function_tests++;
37267: 
37268:     return(test_ret);
37269: }
37270: 
37271: static int
37272: test_xmlstring(void) {
37273:     int test_ret = 0;
37274: 
37275:     if (quiet == 0) printf("Testing xmlstring : 26 of 30 functions ...\n");
37276:     test_ret += test_xmlCharStrdup();
37277:     test_ret += test_xmlCharStrndup();
37278:     test_ret += test_xmlCheckUTF8();
37279:     test_ret += test_xmlGetUTF8Char();
37280:     test_ret += test_xmlStrEqual();
37281:     test_ret += test_xmlStrPrintf();
37282:     test_ret += test_xmlStrQEqual();
37283:     test_ret += test_xmlStrVPrintf();
37284:     test_ret += test_xmlStrcasecmp();
37285:     test_ret += test_xmlStrcasestr();
37286:     test_ret += test_xmlStrchr();
37287:     test_ret += test_xmlStrcmp();
37288:     test_ret += test_xmlStrdup();
37289:     test_ret += test_xmlStrlen();
37290:     test_ret += test_xmlStrncasecmp();
37291:     test_ret += test_xmlStrncatNew();
37292:     test_ret += test_xmlStrncmp();
37293:     test_ret += test_xmlStrndup();
37294:     test_ret += test_xmlStrstr();
37295:     test_ret += test_xmlStrsub();
37296:     test_ret += test_xmlUTF8Charcmp();
37297:     test_ret += test_xmlUTF8Size();
37298:     test_ret += test_xmlUTF8Strlen();
37299:     test_ret += test_xmlUTF8Strloc();
37300:     test_ret += test_xmlUTF8Strndup();
37301:     test_ret += test_xmlUTF8Strpos();
37302:     test_ret += test_xmlUTF8Strsize();
37303:     test_ret += test_xmlUTF8Strsub();
37304: 
37305:     if (test_ret != 0)
37306: 	printf("Module xmlstring: %d errors\n", test_ret);
37307:     return(test_ret);
37308: }
37309: 
37310: static int
37311: test_xmlUCSIsAegeanNumbers(void) {
37312:     int test_ret = 0;
37313: 
37314: #if defined(LIBXML_UNICODE_ENABLED)
37315:     int mem_base;
37316:     int ret_val;
37317:     int code; /* UCS code point */
37318:     int n_code;
37319: 
37320:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
37321:         mem_base = xmlMemBlocks();
37322:         code = gen_int(n_code, 0);
37323: 
37324:         ret_val = xmlUCSIsAegeanNumbers(code);
37325:         desret_int(ret_val);
37326:         call_tests++;
37327:         des_int(n_code, code, 0);
37328:         xmlResetLastError();
37329:         if (mem_base != xmlMemBlocks()) {
37330:             printf("Leak of %d blocks found in xmlUCSIsAegeanNumbers",
37331: 	           xmlMemBlocks() - mem_base);
37332: 	    test_ret++;
37333:             printf(" %d", n_code);
37334:             printf("\n");
37335:         }
37336:     }
37337:     function_tests++;
37338: #endif
37339: 
37340:     return(test_ret);
37341: }
37342: 
37343: 
37344: static int
37345: test_xmlUCSIsAlphabeticPresentationForms(void) {
37346:     int test_ret = 0;
37347: 
37348: #if defined(LIBXML_UNICODE_ENABLED)
37349:     int mem_base;
37350:     int ret_val;
37351:     int code; /* UCS code point */
37352:     int n_code;
37353: 
37354:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
37355:         mem_base = xmlMemBlocks();
37356:         code = gen_int(n_code, 0);
37357: 
37358:         ret_val = xmlUCSIsAlphabeticPresentationForms(code);
37359:         desret_int(ret_val);
37360:         call_tests++;
37361:         des_int(n_code, code, 0);
37362:         xmlResetLastError();
37363:         if (mem_base != xmlMemBlocks()) {
37364:             printf("Leak of %d blocks found in xmlUCSIsAlphabeticPresentationForms",
37365: 	           xmlMemBlocks() - mem_base);
37366: 	    test_ret++;
37367:             printf(" %d", n_code);
37368:             printf("\n");
37369:         }
37370:     }
37371:     function_tests++;
37372: #endif
37373: 
37374:     return(test_ret);
37375: }
37376: 
37377: 
37378: static int
37379: test_xmlUCSIsArabic(void) {
37380:     int test_ret = 0;
37381: 
37382: #if defined(LIBXML_UNICODE_ENABLED)
37383:     int mem_base;
37384:     int ret_val;
37385:     int code; /* UCS code point */
37386:     int n_code;
37387: 
37388:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
37389:         mem_base = xmlMemBlocks();
37390:         code = gen_int(n_code, 0);
37391: 
37392:         ret_val = xmlUCSIsArabic(code);
37393:         desret_int(ret_val);
37394:         call_tests++;
37395:         des_int(n_code, code, 0);
37396:         xmlResetLastError();
37397:         if (mem_base != xmlMemBlocks()) {
37398:             printf("Leak of %d blocks found in xmlUCSIsArabic",
37399: 	           xmlMemBlocks() - mem_base);
37400: 	    test_ret++;
37401:             printf(" %d", n_code);
37402:             printf("\n");
37403:         }
37404:     }
37405:     function_tests++;
37406: #endif
37407: 
37408:     return(test_ret);
37409: }
37410: 
37411: 
37412: static int
37413: test_xmlUCSIsArabicPresentationFormsA(void) {
37414:     int test_ret = 0;
37415: 
37416: #if defined(LIBXML_UNICODE_ENABLED)
37417:     int mem_base;
37418:     int ret_val;
37419:     int code; /* UCS code point */
37420:     int n_code;
37421: 
37422:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
37423:         mem_base = xmlMemBlocks();
37424:         code = gen_int(n_code, 0);
37425: 
37426:         ret_val = xmlUCSIsArabicPresentationFormsA(code);
37427:         desret_int(ret_val);
37428:         call_tests++;
37429:         des_int(n_code, code, 0);
37430:         xmlResetLastError();
37431:         if (mem_base != xmlMemBlocks()) {
37432:             printf("Leak of %d blocks found in xmlUCSIsArabicPresentationFormsA",
37433: 	           xmlMemBlocks() - mem_base);
37434: 	    test_ret++;
37435:             printf(" %d", n_code);
37436:             printf("\n");
37437:         }
37438:     }
37439:     function_tests++;
37440: #endif
37441: 
37442:     return(test_ret);
37443: }
37444: 
37445: 
37446: static int
37447: test_xmlUCSIsArabicPresentationFormsB(void) {
37448:     int test_ret = 0;
37449: 
37450: #if defined(LIBXML_UNICODE_ENABLED)
37451:     int mem_base;
37452:     int ret_val;
37453:     int code; /* UCS code point */
37454:     int n_code;
37455: 
37456:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
37457:         mem_base = xmlMemBlocks();
37458:         code = gen_int(n_code, 0);
37459: 
37460:         ret_val = xmlUCSIsArabicPresentationFormsB(code);
37461:         desret_int(ret_val);
37462:         call_tests++;
37463:         des_int(n_code, code, 0);
37464:         xmlResetLastError();
37465:         if (mem_base != xmlMemBlocks()) {
37466:             printf("Leak of %d blocks found in xmlUCSIsArabicPresentationFormsB",
37467: 	           xmlMemBlocks() - mem_base);
37468: 	    test_ret++;
37469:             printf(" %d", n_code);
37470:             printf("\n");
37471:         }
37472:     }
37473:     function_tests++;
37474: #endif
37475: 
37476:     return(test_ret);
37477: }
37478: 
37479: 
37480: static int
37481: test_xmlUCSIsArmenian(void) {
37482:     int test_ret = 0;
37483: 
37484: #if defined(LIBXML_UNICODE_ENABLED)
37485:     int mem_base;
37486:     int ret_val;
37487:     int code; /* UCS code point */
37488:     int n_code;
37489: 
37490:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
37491:         mem_base = xmlMemBlocks();
37492:         code = gen_int(n_code, 0);
37493: 
37494:         ret_val = xmlUCSIsArmenian(code);
37495:         desret_int(ret_val);
37496:         call_tests++;
37497:         des_int(n_code, code, 0);
37498:         xmlResetLastError();
37499:         if (mem_base != xmlMemBlocks()) {
37500:             printf("Leak of %d blocks found in xmlUCSIsArmenian",
37501: 	           xmlMemBlocks() - mem_base);
37502: 	    test_ret++;
37503:             printf(" %d", n_code);
37504:             printf("\n");
37505:         }
37506:     }
37507:     function_tests++;
37508: #endif
37509: 
37510:     return(test_ret);
37511: }
37512: 
37513: 
37514: static int
37515: test_xmlUCSIsArrows(void) {
37516:     int test_ret = 0;
37517: 
37518: #if defined(LIBXML_UNICODE_ENABLED)
37519:     int mem_base;
37520:     int ret_val;
37521:     int code; /* UCS code point */
37522:     int n_code;
37523: 
37524:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
37525:         mem_base = xmlMemBlocks();
37526:         code = gen_int(n_code, 0);
37527: 
37528:         ret_val = xmlUCSIsArrows(code);
37529:         desret_int(ret_val);
37530:         call_tests++;
37531:         des_int(n_code, code, 0);
37532:         xmlResetLastError();
37533:         if (mem_base != xmlMemBlocks()) {
37534:             printf("Leak of %d blocks found in xmlUCSIsArrows",
37535: 	           xmlMemBlocks() - mem_base);
37536: 	    test_ret++;
37537:             printf(" %d", n_code);
37538:             printf("\n");
37539:         }
37540:     }
37541:     function_tests++;
37542: #endif
37543: 
37544:     return(test_ret);
37545: }
37546: 
37547: 
37548: static int
37549: test_xmlUCSIsBasicLatin(void) {
37550:     int test_ret = 0;
37551: 
37552: #if defined(LIBXML_UNICODE_ENABLED)
37553:     int mem_base;
37554:     int ret_val;
37555:     int code; /* UCS code point */
37556:     int n_code;
37557: 
37558:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
37559:         mem_base = xmlMemBlocks();
37560:         code = gen_int(n_code, 0);
37561: 
37562:         ret_val = xmlUCSIsBasicLatin(code);
37563:         desret_int(ret_val);
37564:         call_tests++;
37565:         des_int(n_code, code, 0);
37566:         xmlResetLastError();
37567:         if (mem_base != xmlMemBlocks()) {
37568:             printf("Leak of %d blocks found in xmlUCSIsBasicLatin",
37569: 	           xmlMemBlocks() - mem_base);
37570: 	    test_ret++;
37571:             printf(" %d", n_code);
37572:             printf("\n");
37573:         }
37574:     }
37575:     function_tests++;
37576: #endif
37577: 
37578:     return(test_ret);
37579: }
37580: 
37581: 
37582: static int
37583: test_xmlUCSIsBengali(void) {
37584:     int test_ret = 0;
37585: 
37586: #if defined(LIBXML_UNICODE_ENABLED)
37587:     int mem_base;
37588:     int ret_val;
37589:     int code; /* UCS code point */
37590:     int n_code;
37591: 
37592:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
37593:         mem_base = xmlMemBlocks();
37594:         code = gen_int(n_code, 0);
37595: 
37596:         ret_val = xmlUCSIsBengali(code);
37597:         desret_int(ret_val);
37598:         call_tests++;
37599:         des_int(n_code, code, 0);
37600:         xmlResetLastError();
37601:         if (mem_base != xmlMemBlocks()) {
37602:             printf("Leak of %d blocks found in xmlUCSIsBengali",
37603: 	           xmlMemBlocks() - mem_base);
37604: 	    test_ret++;
37605:             printf(" %d", n_code);
37606:             printf("\n");
37607:         }
37608:     }
37609:     function_tests++;
37610: #endif
37611: 
37612:     return(test_ret);
37613: }
37614: 
37615: 
37616: static int
37617: test_xmlUCSIsBlock(void) {
37618:     int test_ret = 0;
37619: 
37620: #if defined(LIBXML_UNICODE_ENABLED)
37621:     int mem_base;
37622:     int ret_val;
37623:     int code; /* UCS code point */
37624:     int n_code;
37625:     char * block; /* UCS block name */
37626:     int n_block;
37627: 
37628:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
37629:     for (n_block = 0;n_block < gen_nb_const_char_ptr;n_block++) {
37630:         mem_base = xmlMemBlocks();
37631:         code = gen_int(n_code, 0);
37632:         block = gen_const_char_ptr(n_block, 1);
37633: 
37634:         ret_val = xmlUCSIsBlock(code, (const char *)block);
37635:         desret_int(ret_val);
37636:         call_tests++;
37637:         des_int(n_code, code, 0);
37638:         des_const_char_ptr(n_block, (const char *)block, 1);
37639:         xmlResetLastError();
37640:         if (mem_base != xmlMemBlocks()) {
37641:             printf("Leak of %d blocks found in xmlUCSIsBlock",
37642: 	           xmlMemBlocks() - mem_base);
37643: 	    test_ret++;
37644:             printf(" %d", n_code);
37645:             printf(" %d", n_block);
37646:             printf("\n");
37647:         }
37648:     }
37649:     }
37650:     function_tests++;
37651: #endif
37652: 
37653:     return(test_ret);
37654: }
37655: 
37656: 
37657: static int
37658: test_xmlUCSIsBlockElements(void) {
37659:     int test_ret = 0;
37660: 
37661: #if defined(LIBXML_UNICODE_ENABLED)
37662:     int mem_base;
37663:     int ret_val;
37664:     int code; /* UCS code point */
37665:     int n_code;
37666: 
37667:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
37668:         mem_base = xmlMemBlocks();
37669:         code = gen_int(n_code, 0);
37670: 
37671:         ret_val = xmlUCSIsBlockElements(code);
37672:         desret_int(ret_val);
37673:         call_tests++;
37674:         des_int(n_code, code, 0);
37675:         xmlResetLastError();
37676:         if (mem_base != xmlMemBlocks()) {
37677:             printf("Leak of %d blocks found in xmlUCSIsBlockElements",
37678: 	           xmlMemBlocks() - mem_base);
37679: 	    test_ret++;
37680:             printf(" %d", n_code);
37681:             printf("\n");
37682:         }
37683:     }
37684:     function_tests++;
37685: #endif
37686: 
37687:     return(test_ret);
37688: }
37689: 
37690: 
37691: static int
37692: test_xmlUCSIsBopomofo(void) {
37693:     int test_ret = 0;
37694: 
37695: #if defined(LIBXML_UNICODE_ENABLED)
37696:     int mem_base;
37697:     int ret_val;
37698:     int code; /* UCS code point */
37699:     int n_code;
37700: 
37701:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
37702:         mem_base = xmlMemBlocks();
37703:         code = gen_int(n_code, 0);
37704: 
37705:         ret_val = xmlUCSIsBopomofo(code);
37706:         desret_int(ret_val);
37707:         call_tests++;
37708:         des_int(n_code, code, 0);
37709:         xmlResetLastError();
37710:         if (mem_base != xmlMemBlocks()) {
37711:             printf("Leak of %d blocks found in xmlUCSIsBopomofo",
37712: 	           xmlMemBlocks() - mem_base);
37713: 	    test_ret++;
37714:             printf(" %d", n_code);
37715:             printf("\n");
37716:         }
37717:     }
37718:     function_tests++;
37719: #endif
37720: 
37721:     return(test_ret);
37722: }
37723: 
37724: 
37725: static int
37726: test_xmlUCSIsBopomofoExtended(void) {
37727:     int test_ret = 0;
37728: 
37729: #if defined(LIBXML_UNICODE_ENABLED)
37730:     int mem_base;
37731:     int ret_val;
37732:     int code; /* UCS code point */
37733:     int n_code;
37734: 
37735:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
37736:         mem_base = xmlMemBlocks();
37737:         code = gen_int(n_code, 0);
37738: 
37739:         ret_val = xmlUCSIsBopomofoExtended(code);
37740:         desret_int(ret_val);
37741:         call_tests++;
37742:         des_int(n_code, code, 0);
37743:         xmlResetLastError();
37744:         if (mem_base != xmlMemBlocks()) {
37745:             printf("Leak of %d blocks found in xmlUCSIsBopomofoExtended",
37746: 	           xmlMemBlocks() - mem_base);
37747: 	    test_ret++;
37748:             printf(" %d", n_code);
37749:             printf("\n");
37750:         }
37751:     }
37752:     function_tests++;
37753: #endif
37754: 
37755:     return(test_ret);
37756: }
37757: 
37758: 
37759: static int
37760: test_xmlUCSIsBoxDrawing(void) {
37761:     int test_ret = 0;
37762: 
37763: #if defined(LIBXML_UNICODE_ENABLED)
37764:     int mem_base;
37765:     int ret_val;
37766:     int code; /* UCS code point */
37767:     int n_code;
37768: 
37769:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
37770:         mem_base = xmlMemBlocks();
37771:         code = gen_int(n_code, 0);
37772: 
37773:         ret_val = xmlUCSIsBoxDrawing(code);
37774:         desret_int(ret_val);
37775:         call_tests++;
37776:         des_int(n_code, code, 0);
37777:         xmlResetLastError();
37778:         if (mem_base != xmlMemBlocks()) {
37779:             printf("Leak of %d blocks found in xmlUCSIsBoxDrawing",
37780: 	           xmlMemBlocks() - mem_base);
37781: 	    test_ret++;
37782:             printf(" %d", n_code);
37783:             printf("\n");
37784:         }
37785:     }
37786:     function_tests++;
37787: #endif
37788: 
37789:     return(test_ret);
37790: }
37791: 
37792: 
37793: static int
37794: test_xmlUCSIsBraillePatterns(void) {
37795:     int test_ret = 0;
37796: 
37797: #if defined(LIBXML_UNICODE_ENABLED)
37798:     int mem_base;
37799:     int ret_val;
37800:     int code; /* UCS code point */
37801:     int n_code;
37802: 
37803:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
37804:         mem_base = xmlMemBlocks();
37805:         code = gen_int(n_code, 0);
37806: 
37807:         ret_val = xmlUCSIsBraillePatterns(code);
37808:         desret_int(ret_val);
37809:         call_tests++;
37810:         des_int(n_code, code, 0);
37811:         xmlResetLastError();
37812:         if (mem_base != xmlMemBlocks()) {
37813:             printf("Leak of %d blocks found in xmlUCSIsBraillePatterns",
37814: 	           xmlMemBlocks() - mem_base);
37815: 	    test_ret++;
37816:             printf(" %d", n_code);
37817:             printf("\n");
37818:         }
37819:     }
37820:     function_tests++;
37821: #endif
37822: 
37823:     return(test_ret);
37824: }
37825: 
37826: 
37827: static int
37828: test_xmlUCSIsBuhid(void) {
37829:     int test_ret = 0;
37830: 
37831: #if defined(LIBXML_UNICODE_ENABLED)
37832:     int mem_base;
37833:     int ret_val;
37834:     int code; /* UCS code point */
37835:     int n_code;
37836: 
37837:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
37838:         mem_base = xmlMemBlocks();
37839:         code = gen_int(n_code, 0);
37840: 
37841:         ret_val = xmlUCSIsBuhid(code);
37842:         desret_int(ret_val);
37843:         call_tests++;
37844:         des_int(n_code, code, 0);
37845:         xmlResetLastError();
37846:         if (mem_base != xmlMemBlocks()) {
37847:             printf("Leak of %d blocks found in xmlUCSIsBuhid",
37848: 	           xmlMemBlocks() - mem_base);
37849: 	    test_ret++;
37850:             printf(" %d", n_code);
37851:             printf("\n");
37852:         }
37853:     }
37854:     function_tests++;
37855: #endif
37856: 
37857:     return(test_ret);
37858: }
37859: 
37860: 
37861: static int
37862: test_xmlUCSIsByzantineMusicalSymbols(void) {
37863:     int test_ret = 0;
37864: 
37865: #if defined(LIBXML_UNICODE_ENABLED)
37866:     int mem_base;
37867:     int ret_val;
37868:     int code; /* UCS code point */
37869:     int n_code;
37870: 
37871:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
37872:         mem_base = xmlMemBlocks();
37873:         code = gen_int(n_code, 0);
37874: 
37875:         ret_val = xmlUCSIsByzantineMusicalSymbols(code);
37876:         desret_int(ret_val);
37877:         call_tests++;
37878:         des_int(n_code, code, 0);
37879:         xmlResetLastError();
37880:         if (mem_base != xmlMemBlocks()) {
37881:             printf("Leak of %d blocks found in xmlUCSIsByzantineMusicalSymbols",
37882: 	           xmlMemBlocks() - mem_base);
37883: 	    test_ret++;
37884:             printf(" %d", n_code);
37885:             printf("\n");
37886:         }
37887:     }
37888:     function_tests++;
37889: #endif
37890: 
37891:     return(test_ret);
37892: }
37893: 
37894: 
37895: static int
37896: test_xmlUCSIsCJKCompatibility(void) {
37897:     int test_ret = 0;
37898: 
37899: #if defined(LIBXML_UNICODE_ENABLED)
37900:     int mem_base;
37901:     int ret_val;
37902:     int code; /* UCS code point */
37903:     int n_code;
37904: 
37905:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
37906:         mem_base = xmlMemBlocks();
37907:         code = gen_int(n_code, 0);
37908: 
37909:         ret_val = xmlUCSIsCJKCompatibility(code);
37910:         desret_int(ret_val);
37911:         call_tests++;
37912:         des_int(n_code, code, 0);
37913:         xmlResetLastError();
37914:         if (mem_base != xmlMemBlocks()) {
37915:             printf("Leak of %d blocks found in xmlUCSIsCJKCompatibility",
37916: 	           xmlMemBlocks() - mem_base);
37917: 	    test_ret++;
37918:             printf(" %d", n_code);
37919:             printf("\n");
37920:         }
37921:     }
37922:     function_tests++;
37923: #endif
37924: 
37925:     return(test_ret);
37926: }
37927: 
37928: 
37929: static int
37930: test_xmlUCSIsCJKCompatibilityForms(void) {
37931:     int test_ret = 0;
37932: 
37933: #if defined(LIBXML_UNICODE_ENABLED)
37934:     int mem_base;
37935:     int ret_val;
37936:     int code; /* UCS code point */
37937:     int n_code;
37938: 
37939:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
37940:         mem_base = xmlMemBlocks();
37941:         code = gen_int(n_code, 0);
37942: 
37943:         ret_val = xmlUCSIsCJKCompatibilityForms(code);
37944:         desret_int(ret_val);
37945:         call_tests++;
37946:         des_int(n_code, code, 0);
37947:         xmlResetLastError();
37948:         if (mem_base != xmlMemBlocks()) {
37949:             printf("Leak of %d blocks found in xmlUCSIsCJKCompatibilityForms",
37950: 	           xmlMemBlocks() - mem_base);
37951: 	    test_ret++;
37952:             printf(" %d", n_code);
37953:             printf("\n");
37954:         }
37955:     }
37956:     function_tests++;
37957: #endif
37958: 
37959:     return(test_ret);
37960: }
37961: 
37962: 
37963: static int
37964: test_xmlUCSIsCJKCompatibilityIdeographs(void) {
37965:     int test_ret = 0;
37966: 
37967: #if defined(LIBXML_UNICODE_ENABLED)
37968:     int mem_base;
37969:     int ret_val;
37970:     int code; /* UCS code point */
37971:     int n_code;
37972: 
37973:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
37974:         mem_base = xmlMemBlocks();
37975:         code = gen_int(n_code, 0);
37976: 
37977:         ret_val = xmlUCSIsCJKCompatibilityIdeographs(code);
37978:         desret_int(ret_val);
37979:         call_tests++;
37980:         des_int(n_code, code, 0);
37981:         xmlResetLastError();
37982:         if (mem_base != xmlMemBlocks()) {
37983:             printf("Leak of %d blocks found in xmlUCSIsCJKCompatibilityIdeographs",
37984: 	           xmlMemBlocks() - mem_base);
37985: 	    test_ret++;
37986:             printf(" %d", n_code);
37987:             printf("\n");
37988:         }
37989:     }
37990:     function_tests++;
37991: #endif
37992: 
37993:     return(test_ret);
37994: }
37995: 
37996: 
37997: static int
37998: test_xmlUCSIsCJKCompatibilityIdeographsSupplement(void) {
37999:     int test_ret = 0;
38000: 
38001: #if defined(LIBXML_UNICODE_ENABLED)
38002:     int mem_base;
38003:     int ret_val;
38004:     int code; /* UCS code point */
38005:     int n_code;
38006: 
38007:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38008:         mem_base = xmlMemBlocks();
38009:         code = gen_int(n_code, 0);
38010: 
38011:         ret_val = xmlUCSIsCJKCompatibilityIdeographsSupplement(code);
38012:         desret_int(ret_val);
38013:         call_tests++;
38014:         des_int(n_code, code, 0);
38015:         xmlResetLastError();
38016:         if (mem_base != xmlMemBlocks()) {
38017:             printf("Leak of %d blocks found in xmlUCSIsCJKCompatibilityIdeographsSupplement",
38018: 	           xmlMemBlocks() - mem_base);
38019: 	    test_ret++;
38020:             printf(" %d", n_code);
38021:             printf("\n");
38022:         }
38023:     }
38024:     function_tests++;
38025: #endif
38026: 
38027:     return(test_ret);
38028: }
38029: 
38030: 
38031: static int
38032: test_xmlUCSIsCJKRadicalsSupplement(void) {
38033:     int test_ret = 0;
38034: 
38035: #if defined(LIBXML_UNICODE_ENABLED)
38036:     int mem_base;
38037:     int ret_val;
38038:     int code; /* UCS code point */
38039:     int n_code;
38040: 
38041:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38042:         mem_base = xmlMemBlocks();
38043:         code = gen_int(n_code, 0);
38044: 
38045:         ret_val = xmlUCSIsCJKRadicalsSupplement(code);
38046:         desret_int(ret_val);
38047:         call_tests++;
38048:         des_int(n_code, code, 0);
38049:         xmlResetLastError();
38050:         if (mem_base != xmlMemBlocks()) {
38051:             printf("Leak of %d blocks found in xmlUCSIsCJKRadicalsSupplement",
38052: 	           xmlMemBlocks() - mem_base);
38053: 	    test_ret++;
38054:             printf(" %d", n_code);
38055:             printf("\n");
38056:         }
38057:     }
38058:     function_tests++;
38059: #endif
38060: 
38061:     return(test_ret);
38062: }
38063: 
38064: 
38065: static int
38066: test_xmlUCSIsCJKSymbolsandPunctuation(void) {
38067:     int test_ret = 0;
38068: 
38069: #if defined(LIBXML_UNICODE_ENABLED)
38070:     int mem_base;
38071:     int ret_val;
38072:     int code; /* UCS code point */
38073:     int n_code;
38074: 
38075:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38076:         mem_base = xmlMemBlocks();
38077:         code = gen_int(n_code, 0);
38078: 
38079:         ret_val = xmlUCSIsCJKSymbolsandPunctuation(code);
38080:         desret_int(ret_val);
38081:         call_tests++;
38082:         des_int(n_code, code, 0);
38083:         xmlResetLastError();
38084:         if (mem_base != xmlMemBlocks()) {
38085:             printf("Leak of %d blocks found in xmlUCSIsCJKSymbolsandPunctuation",
38086: 	           xmlMemBlocks() - mem_base);
38087: 	    test_ret++;
38088:             printf(" %d", n_code);
38089:             printf("\n");
38090:         }
38091:     }
38092:     function_tests++;
38093: #endif
38094: 
38095:     return(test_ret);
38096: }
38097: 
38098: 
38099: static int
38100: test_xmlUCSIsCJKUnifiedIdeographs(void) {
38101:     int test_ret = 0;
38102: 
38103: #if defined(LIBXML_UNICODE_ENABLED)
38104:     int mem_base;
38105:     int ret_val;
38106:     int code; /* UCS code point */
38107:     int n_code;
38108: 
38109:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38110:         mem_base = xmlMemBlocks();
38111:         code = gen_int(n_code, 0);
38112: 
38113:         ret_val = xmlUCSIsCJKUnifiedIdeographs(code);
38114:         desret_int(ret_val);
38115:         call_tests++;
38116:         des_int(n_code, code, 0);
38117:         xmlResetLastError();
38118:         if (mem_base != xmlMemBlocks()) {
38119:             printf("Leak of %d blocks found in xmlUCSIsCJKUnifiedIdeographs",
38120: 	           xmlMemBlocks() - mem_base);
38121: 	    test_ret++;
38122:             printf(" %d", n_code);
38123:             printf("\n");
38124:         }
38125:     }
38126:     function_tests++;
38127: #endif
38128: 
38129:     return(test_ret);
38130: }
38131: 
38132: 
38133: static int
38134: test_xmlUCSIsCJKUnifiedIdeographsExtensionA(void) {
38135:     int test_ret = 0;
38136: 
38137: #if defined(LIBXML_UNICODE_ENABLED)
38138:     int mem_base;
38139:     int ret_val;
38140:     int code; /* UCS code point */
38141:     int n_code;
38142: 
38143:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38144:         mem_base = xmlMemBlocks();
38145:         code = gen_int(n_code, 0);
38146: 
38147:         ret_val = xmlUCSIsCJKUnifiedIdeographsExtensionA(code);
38148:         desret_int(ret_val);
38149:         call_tests++;
38150:         des_int(n_code, code, 0);
38151:         xmlResetLastError();
38152:         if (mem_base != xmlMemBlocks()) {
38153:             printf("Leak of %d blocks found in xmlUCSIsCJKUnifiedIdeographsExtensionA",
38154: 	           xmlMemBlocks() - mem_base);
38155: 	    test_ret++;
38156:             printf(" %d", n_code);
38157:             printf("\n");
38158:         }
38159:     }
38160:     function_tests++;
38161: #endif
38162: 
38163:     return(test_ret);
38164: }
38165: 
38166: 
38167: static int
38168: test_xmlUCSIsCJKUnifiedIdeographsExtensionB(void) {
38169:     int test_ret = 0;
38170: 
38171: #if defined(LIBXML_UNICODE_ENABLED)
38172:     int mem_base;
38173:     int ret_val;
38174:     int code; /* UCS code point */
38175:     int n_code;
38176: 
38177:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38178:         mem_base = xmlMemBlocks();
38179:         code = gen_int(n_code, 0);
38180: 
38181:         ret_val = xmlUCSIsCJKUnifiedIdeographsExtensionB(code);
38182:         desret_int(ret_val);
38183:         call_tests++;
38184:         des_int(n_code, code, 0);
38185:         xmlResetLastError();
38186:         if (mem_base != xmlMemBlocks()) {
38187:             printf("Leak of %d blocks found in xmlUCSIsCJKUnifiedIdeographsExtensionB",
38188: 	           xmlMemBlocks() - mem_base);
38189: 	    test_ret++;
38190:             printf(" %d", n_code);
38191:             printf("\n");
38192:         }
38193:     }
38194:     function_tests++;
38195: #endif
38196: 
38197:     return(test_ret);
38198: }
38199: 
38200: 
38201: static int
38202: test_xmlUCSIsCat(void) {
38203:     int test_ret = 0;
38204: 
38205: #if defined(LIBXML_UNICODE_ENABLED)
38206:     int mem_base;
38207:     int ret_val;
38208:     int code; /* UCS code point */
38209:     int n_code;
38210:     char * cat; /* UCS Category name */
38211:     int n_cat;
38212: 
38213:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38214:     for (n_cat = 0;n_cat < gen_nb_const_char_ptr;n_cat++) {
38215:         mem_base = xmlMemBlocks();
38216:         code = gen_int(n_code, 0);
38217:         cat = gen_const_char_ptr(n_cat, 1);
38218: 
38219:         ret_val = xmlUCSIsCat(code, (const char *)cat);
38220:         desret_int(ret_val);
38221:         call_tests++;
38222:         des_int(n_code, code, 0);
38223:         des_const_char_ptr(n_cat, (const char *)cat, 1);
38224:         xmlResetLastError();
38225:         if (mem_base != xmlMemBlocks()) {
38226:             printf("Leak of %d blocks found in xmlUCSIsCat",
38227: 	           xmlMemBlocks() - mem_base);
38228: 	    test_ret++;
38229:             printf(" %d", n_code);
38230:             printf(" %d", n_cat);
38231:             printf("\n");
38232:         }
38233:     }
38234:     }
38235:     function_tests++;
38236: #endif
38237: 
38238:     return(test_ret);
38239: }
38240: 
38241: 
38242: static int
38243: test_xmlUCSIsCatC(void) {
38244:     int test_ret = 0;
38245: 
38246: #if defined(LIBXML_UNICODE_ENABLED)
38247:     int mem_base;
38248:     int ret_val;
38249:     int code; /* UCS code point */
38250:     int n_code;
38251: 
38252:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38253:         mem_base = xmlMemBlocks();
38254:         code = gen_int(n_code, 0);
38255: 
38256:         ret_val = xmlUCSIsCatC(code);
38257:         desret_int(ret_val);
38258:         call_tests++;
38259:         des_int(n_code, code, 0);
38260:         xmlResetLastError();
38261:         if (mem_base != xmlMemBlocks()) {
38262:             printf("Leak of %d blocks found in xmlUCSIsCatC",
38263: 	           xmlMemBlocks() - mem_base);
38264: 	    test_ret++;
38265:             printf(" %d", n_code);
38266:             printf("\n");
38267:         }
38268:     }
38269:     function_tests++;
38270: #endif
38271: 
38272:     return(test_ret);
38273: }
38274: 
38275: 
38276: static int
38277: test_xmlUCSIsCatCc(void) {
38278:     int test_ret = 0;
38279: 
38280: #if defined(LIBXML_UNICODE_ENABLED)
38281:     int mem_base;
38282:     int ret_val;
38283:     int code; /* UCS code point */
38284:     int n_code;
38285: 
38286:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38287:         mem_base = xmlMemBlocks();
38288:         code = gen_int(n_code, 0);
38289: 
38290:         ret_val = xmlUCSIsCatCc(code);
38291:         desret_int(ret_val);
38292:         call_tests++;
38293:         des_int(n_code, code, 0);
38294:         xmlResetLastError();
38295:         if (mem_base != xmlMemBlocks()) {
38296:             printf("Leak of %d blocks found in xmlUCSIsCatCc",
38297: 	           xmlMemBlocks() - mem_base);
38298: 	    test_ret++;
38299:             printf(" %d", n_code);
38300:             printf("\n");
38301:         }
38302:     }
38303:     function_tests++;
38304: #endif
38305: 
38306:     return(test_ret);
38307: }
38308: 
38309: 
38310: static int
38311: test_xmlUCSIsCatCf(void) {
38312:     int test_ret = 0;
38313: 
38314: #if defined(LIBXML_UNICODE_ENABLED)
38315:     int mem_base;
38316:     int ret_val;
38317:     int code; /* UCS code point */
38318:     int n_code;
38319: 
38320:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38321:         mem_base = xmlMemBlocks();
38322:         code = gen_int(n_code, 0);
38323: 
38324:         ret_val = xmlUCSIsCatCf(code);
38325:         desret_int(ret_val);
38326:         call_tests++;
38327:         des_int(n_code, code, 0);
38328:         xmlResetLastError();
38329:         if (mem_base != xmlMemBlocks()) {
38330:             printf("Leak of %d blocks found in xmlUCSIsCatCf",
38331: 	           xmlMemBlocks() - mem_base);
38332: 	    test_ret++;
38333:             printf(" %d", n_code);
38334:             printf("\n");
38335:         }
38336:     }
38337:     function_tests++;
38338: #endif
38339: 
38340:     return(test_ret);
38341: }
38342: 
38343: 
38344: static int
38345: test_xmlUCSIsCatCo(void) {
38346:     int test_ret = 0;
38347: 
38348: #if defined(LIBXML_UNICODE_ENABLED)
38349:     int mem_base;
38350:     int ret_val;
38351:     int code; /* UCS code point */
38352:     int n_code;
38353: 
38354:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38355:         mem_base = xmlMemBlocks();
38356:         code = gen_int(n_code, 0);
38357: 
38358:         ret_val = xmlUCSIsCatCo(code);
38359:         desret_int(ret_val);
38360:         call_tests++;
38361:         des_int(n_code, code, 0);
38362:         xmlResetLastError();
38363:         if (mem_base != xmlMemBlocks()) {
38364:             printf("Leak of %d blocks found in xmlUCSIsCatCo",
38365: 	           xmlMemBlocks() - mem_base);
38366: 	    test_ret++;
38367:             printf(" %d", n_code);
38368:             printf("\n");
38369:         }
38370:     }
38371:     function_tests++;
38372: #endif
38373: 
38374:     return(test_ret);
38375: }
38376: 
38377: 
38378: static int
38379: test_xmlUCSIsCatCs(void) {
38380:     int test_ret = 0;
38381: 
38382: #if defined(LIBXML_UNICODE_ENABLED)
38383:     int mem_base;
38384:     int ret_val;
38385:     int code; /* UCS code point */
38386:     int n_code;
38387: 
38388:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38389:         mem_base = xmlMemBlocks();
38390:         code = gen_int(n_code, 0);
38391: 
38392:         ret_val = xmlUCSIsCatCs(code);
38393:         desret_int(ret_val);
38394:         call_tests++;
38395:         des_int(n_code, code, 0);
38396:         xmlResetLastError();
38397:         if (mem_base != xmlMemBlocks()) {
38398:             printf("Leak of %d blocks found in xmlUCSIsCatCs",
38399: 	           xmlMemBlocks() - mem_base);
38400: 	    test_ret++;
38401:             printf(" %d", n_code);
38402:             printf("\n");
38403:         }
38404:     }
38405:     function_tests++;
38406: #endif
38407: 
38408:     return(test_ret);
38409: }
38410: 
38411: 
38412: static int
38413: test_xmlUCSIsCatL(void) {
38414:     int test_ret = 0;
38415: 
38416: #if defined(LIBXML_UNICODE_ENABLED)
38417:     int mem_base;
38418:     int ret_val;
38419:     int code; /* UCS code point */
38420:     int n_code;
38421: 
38422:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38423:         mem_base = xmlMemBlocks();
38424:         code = gen_int(n_code, 0);
38425: 
38426:         ret_val = xmlUCSIsCatL(code);
38427:         desret_int(ret_val);
38428:         call_tests++;
38429:         des_int(n_code, code, 0);
38430:         xmlResetLastError();
38431:         if (mem_base != xmlMemBlocks()) {
38432:             printf("Leak of %d blocks found in xmlUCSIsCatL",
38433: 	           xmlMemBlocks() - mem_base);
38434: 	    test_ret++;
38435:             printf(" %d", n_code);
38436:             printf("\n");
38437:         }
38438:     }
38439:     function_tests++;
38440: #endif
38441: 
38442:     return(test_ret);
38443: }
38444: 
38445: 
38446: static int
38447: test_xmlUCSIsCatLl(void) {
38448:     int test_ret = 0;
38449: 
38450: #if defined(LIBXML_UNICODE_ENABLED)
38451:     int mem_base;
38452:     int ret_val;
38453:     int code; /* UCS code point */
38454:     int n_code;
38455: 
38456:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38457:         mem_base = xmlMemBlocks();
38458:         code = gen_int(n_code, 0);
38459: 
38460:         ret_val = xmlUCSIsCatLl(code);
38461:         desret_int(ret_val);
38462:         call_tests++;
38463:         des_int(n_code, code, 0);
38464:         xmlResetLastError();
38465:         if (mem_base != xmlMemBlocks()) {
38466:             printf("Leak of %d blocks found in xmlUCSIsCatLl",
38467: 	           xmlMemBlocks() - mem_base);
38468: 	    test_ret++;
38469:             printf(" %d", n_code);
38470:             printf("\n");
38471:         }
38472:     }
38473:     function_tests++;
38474: #endif
38475: 
38476:     return(test_ret);
38477: }
38478: 
38479: 
38480: static int
38481: test_xmlUCSIsCatLm(void) {
38482:     int test_ret = 0;
38483: 
38484: #if defined(LIBXML_UNICODE_ENABLED)
38485:     int mem_base;
38486:     int ret_val;
38487:     int code; /* UCS code point */
38488:     int n_code;
38489: 
38490:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38491:         mem_base = xmlMemBlocks();
38492:         code = gen_int(n_code, 0);
38493: 
38494:         ret_val = xmlUCSIsCatLm(code);
38495:         desret_int(ret_val);
38496:         call_tests++;
38497:         des_int(n_code, code, 0);
38498:         xmlResetLastError();
38499:         if (mem_base != xmlMemBlocks()) {
38500:             printf("Leak of %d blocks found in xmlUCSIsCatLm",
38501: 	           xmlMemBlocks() - mem_base);
38502: 	    test_ret++;
38503:             printf(" %d", n_code);
38504:             printf("\n");
38505:         }
38506:     }
38507:     function_tests++;
38508: #endif
38509: 
38510:     return(test_ret);
38511: }
38512: 
38513: 
38514: static int
38515: test_xmlUCSIsCatLo(void) {
38516:     int test_ret = 0;
38517: 
38518: #if defined(LIBXML_UNICODE_ENABLED)
38519:     int mem_base;
38520:     int ret_val;
38521:     int code; /* UCS code point */
38522:     int n_code;
38523: 
38524:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38525:         mem_base = xmlMemBlocks();
38526:         code = gen_int(n_code, 0);
38527: 
38528:         ret_val = xmlUCSIsCatLo(code);
38529:         desret_int(ret_val);
38530:         call_tests++;
38531:         des_int(n_code, code, 0);
38532:         xmlResetLastError();
38533:         if (mem_base != xmlMemBlocks()) {
38534:             printf("Leak of %d blocks found in xmlUCSIsCatLo",
38535: 	           xmlMemBlocks() - mem_base);
38536: 	    test_ret++;
38537:             printf(" %d", n_code);
38538:             printf("\n");
38539:         }
38540:     }
38541:     function_tests++;
38542: #endif
38543: 
38544:     return(test_ret);
38545: }
38546: 
38547: 
38548: static int
38549: test_xmlUCSIsCatLt(void) {
38550:     int test_ret = 0;
38551: 
38552: #if defined(LIBXML_UNICODE_ENABLED)
38553:     int mem_base;
38554:     int ret_val;
38555:     int code; /* UCS code point */
38556:     int n_code;
38557: 
38558:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38559:         mem_base = xmlMemBlocks();
38560:         code = gen_int(n_code, 0);
38561: 
38562:         ret_val = xmlUCSIsCatLt(code);
38563:         desret_int(ret_val);
38564:         call_tests++;
38565:         des_int(n_code, code, 0);
38566:         xmlResetLastError();
38567:         if (mem_base != xmlMemBlocks()) {
38568:             printf("Leak of %d blocks found in xmlUCSIsCatLt",
38569: 	           xmlMemBlocks() - mem_base);
38570: 	    test_ret++;
38571:             printf(" %d", n_code);
38572:             printf("\n");
38573:         }
38574:     }
38575:     function_tests++;
38576: #endif
38577: 
38578:     return(test_ret);
38579: }
38580: 
38581: 
38582: static int
38583: test_xmlUCSIsCatLu(void) {
38584:     int test_ret = 0;
38585: 
38586: #if defined(LIBXML_UNICODE_ENABLED)
38587:     int mem_base;
38588:     int ret_val;
38589:     int code; /* UCS code point */
38590:     int n_code;
38591: 
38592:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38593:         mem_base = xmlMemBlocks();
38594:         code = gen_int(n_code, 0);
38595: 
38596:         ret_val = xmlUCSIsCatLu(code);
38597:         desret_int(ret_val);
38598:         call_tests++;
38599:         des_int(n_code, code, 0);
38600:         xmlResetLastError();
38601:         if (mem_base != xmlMemBlocks()) {
38602:             printf("Leak of %d blocks found in xmlUCSIsCatLu",
38603: 	           xmlMemBlocks() - mem_base);
38604: 	    test_ret++;
38605:             printf(" %d", n_code);
38606:             printf("\n");
38607:         }
38608:     }
38609:     function_tests++;
38610: #endif
38611: 
38612:     return(test_ret);
38613: }
38614: 
38615: 
38616: static int
38617: test_xmlUCSIsCatM(void) {
38618:     int test_ret = 0;
38619: 
38620: #if defined(LIBXML_UNICODE_ENABLED)
38621:     int mem_base;
38622:     int ret_val;
38623:     int code; /* UCS code point */
38624:     int n_code;
38625: 
38626:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38627:         mem_base = xmlMemBlocks();
38628:         code = gen_int(n_code, 0);
38629: 
38630:         ret_val = xmlUCSIsCatM(code);
38631:         desret_int(ret_val);
38632:         call_tests++;
38633:         des_int(n_code, code, 0);
38634:         xmlResetLastError();
38635:         if (mem_base != xmlMemBlocks()) {
38636:             printf("Leak of %d blocks found in xmlUCSIsCatM",
38637: 	           xmlMemBlocks() - mem_base);
38638: 	    test_ret++;
38639:             printf(" %d", n_code);
38640:             printf("\n");
38641:         }
38642:     }
38643:     function_tests++;
38644: #endif
38645: 
38646:     return(test_ret);
38647: }
38648: 
38649: 
38650: static int
38651: test_xmlUCSIsCatMc(void) {
38652:     int test_ret = 0;
38653: 
38654: #if defined(LIBXML_UNICODE_ENABLED)
38655:     int mem_base;
38656:     int ret_val;
38657:     int code; /* UCS code point */
38658:     int n_code;
38659: 
38660:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38661:         mem_base = xmlMemBlocks();
38662:         code = gen_int(n_code, 0);
38663: 
38664:         ret_val = xmlUCSIsCatMc(code);
38665:         desret_int(ret_val);
38666:         call_tests++;
38667:         des_int(n_code, code, 0);
38668:         xmlResetLastError();
38669:         if (mem_base != xmlMemBlocks()) {
38670:             printf("Leak of %d blocks found in xmlUCSIsCatMc",
38671: 	           xmlMemBlocks() - mem_base);
38672: 	    test_ret++;
38673:             printf(" %d", n_code);
38674:             printf("\n");
38675:         }
38676:     }
38677:     function_tests++;
38678: #endif
38679: 
38680:     return(test_ret);
38681: }
38682: 
38683: 
38684: static int
38685: test_xmlUCSIsCatMe(void) {
38686:     int test_ret = 0;
38687: 
38688: #if defined(LIBXML_UNICODE_ENABLED)
38689:     int mem_base;
38690:     int ret_val;
38691:     int code; /* UCS code point */
38692:     int n_code;
38693: 
38694:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38695:         mem_base = xmlMemBlocks();
38696:         code = gen_int(n_code, 0);
38697: 
38698:         ret_val = xmlUCSIsCatMe(code);
38699:         desret_int(ret_val);
38700:         call_tests++;
38701:         des_int(n_code, code, 0);
38702:         xmlResetLastError();
38703:         if (mem_base != xmlMemBlocks()) {
38704:             printf("Leak of %d blocks found in xmlUCSIsCatMe",
38705: 	           xmlMemBlocks() - mem_base);
38706: 	    test_ret++;
38707:             printf(" %d", n_code);
38708:             printf("\n");
38709:         }
38710:     }
38711:     function_tests++;
38712: #endif
38713: 
38714:     return(test_ret);
38715: }
38716: 
38717: 
38718: static int
38719: test_xmlUCSIsCatMn(void) {
38720:     int test_ret = 0;
38721: 
38722: #if defined(LIBXML_UNICODE_ENABLED)
38723:     int mem_base;
38724:     int ret_val;
38725:     int code; /* UCS code point */
38726:     int n_code;
38727: 
38728:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38729:         mem_base = xmlMemBlocks();
38730:         code = gen_int(n_code, 0);
38731: 
38732:         ret_val = xmlUCSIsCatMn(code);
38733:         desret_int(ret_val);
38734:         call_tests++;
38735:         des_int(n_code, code, 0);
38736:         xmlResetLastError();
38737:         if (mem_base != xmlMemBlocks()) {
38738:             printf("Leak of %d blocks found in xmlUCSIsCatMn",
38739: 	           xmlMemBlocks() - mem_base);
38740: 	    test_ret++;
38741:             printf(" %d", n_code);
38742:             printf("\n");
38743:         }
38744:     }
38745:     function_tests++;
38746: #endif
38747: 
38748:     return(test_ret);
38749: }
38750: 
38751: 
38752: static int
38753: test_xmlUCSIsCatN(void) {
38754:     int test_ret = 0;
38755: 
38756: #if defined(LIBXML_UNICODE_ENABLED)
38757:     int mem_base;
38758:     int ret_val;
38759:     int code; /* UCS code point */
38760:     int n_code;
38761: 
38762:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38763:         mem_base = xmlMemBlocks();
38764:         code = gen_int(n_code, 0);
38765: 
38766:         ret_val = xmlUCSIsCatN(code);
38767:         desret_int(ret_val);
38768:         call_tests++;
38769:         des_int(n_code, code, 0);
38770:         xmlResetLastError();
38771:         if (mem_base != xmlMemBlocks()) {
38772:             printf("Leak of %d blocks found in xmlUCSIsCatN",
38773: 	           xmlMemBlocks() - mem_base);
38774: 	    test_ret++;
38775:             printf(" %d", n_code);
38776:             printf("\n");
38777:         }
38778:     }
38779:     function_tests++;
38780: #endif
38781: 
38782:     return(test_ret);
38783: }
38784: 
38785: 
38786: static int
38787: test_xmlUCSIsCatNd(void) {
38788:     int test_ret = 0;
38789: 
38790: #if defined(LIBXML_UNICODE_ENABLED)
38791:     int mem_base;
38792:     int ret_val;
38793:     int code; /* UCS code point */
38794:     int n_code;
38795: 
38796:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38797:         mem_base = xmlMemBlocks();
38798:         code = gen_int(n_code, 0);
38799: 
38800:         ret_val = xmlUCSIsCatNd(code);
38801:         desret_int(ret_val);
38802:         call_tests++;
38803:         des_int(n_code, code, 0);
38804:         xmlResetLastError();
38805:         if (mem_base != xmlMemBlocks()) {
38806:             printf("Leak of %d blocks found in xmlUCSIsCatNd",
38807: 	           xmlMemBlocks() - mem_base);
38808: 	    test_ret++;
38809:             printf(" %d", n_code);
38810:             printf("\n");
38811:         }
38812:     }
38813:     function_tests++;
38814: #endif
38815: 
38816:     return(test_ret);
38817: }
38818: 
38819: 
38820: static int
38821: test_xmlUCSIsCatNl(void) {
38822:     int test_ret = 0;
38823: 
38824: #if defined(LIBXML_UNICODE_ENABLED)
38825:     int mem_base;
38826:     int ret_val;
38827:     int code; /* UCS code point */
38828:     int n_code;
38829: 
38830:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38831:         mem_base = xmlMemBlocks();
38832:         code = gen_int(n_code, 0);
38833: 
38834:         ret_val = xmlUCSIsCatNl(code);
38835:         desret_int(ret_val);
38836:         call_tests++;
38837:         des_int(n_code, code, 0);
38838:         xmlResetLastError();
38839:         if (mem_base != xmlMemBlocks()) {
38840:             printf("Leak of %d blocks found in xmlUCSIsCatNl",
38841: 	           xmlMemBlocks() - mem_base);
38842: 	    test_ret++;
38843:             printf(" %d", n_code);
38844:             printf("\n");
38845:         }
38846:     }
38847:     function_tests++;
38848: #endif
38849: 
38850:     return(test_ret);
38851: }
38852: 
38853: 
38854: static int
38855: test_xmlUCSIsCatNo(void) {
38856:     int test_ret = 0;
38857: 
38858: #if defined(LIBXML_UNICODE_ENABLED)
38859:     int mem_base;
38860:     int ret_val;
38861:     int code; /* UCS code point */
38862:     int n_code;
38863: 
38864:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38865:         mem_base = xmlMemBlocks();
38866:         code = gen_int(n_code, 0);
38867: 
38868:         ret_val = xmlUCSIsCatNo(code);
38869:         desret_int(ret_val);
38870:         call_tests++;
38871:         des_int(n_code, code, 0);
38872:         xmlResetLastError();
38873:         if (mem_base != xmlMemBlocks()) {
38874:             printf("Leak of %d blocks found in xmlUCSIsCatNo",
38875: 	           xmlMemBlocks() - mem_base);
38876: 	    test_ret++;
38877:             printf(" %d", n_code);
38878:             printf("\n");
38879:         }
38880:     }
38881:     function_tests++;
38882: #endif
38883: 
38884:     return(test_ret);
38885: }
38886: 
38887: 
38888: static int
38889: test_xmlUCSIsCatP(void) {
38890:     int test_ret = 0;
38891: 
38892: #if defined(LIBXML_UNICODE_ENABLED)
38893:     int mem_base;
38894:     int ret_val;
38895:     int code; /* UCS code point */
38896:     int n_code;
38897: 
38898:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38899:         mem_base = xmlMemBlocks();
38900:         code = gen_int(n_code, 0);
38901: 
38902:         ret_val = xmlUCSIsCatP(code);
38903:         desret_int(ret_val);
38904:         call_tests++;
38905:         des_int(n_code, code, 0);
38906:         xmlResetLastError();
38907:         if (mem_base != xmlMemBlocks()) {
38908:             printf("Leak of %d blocks found in xmlUCSIsCatP",
38909: 	           xmlMemBlocks() - mem_base);
38910: 	    test_ret++;
38911:             printf(" %d", n_code);
38912:             printf("\n");
38913:         }
38914:     }
38915:     function_tests++;
38916: #endif
38917: 
38918:     return(test_ret);
38919: }
38920: 
38921: 
38922: static int
38923: test_xmlUCSIsCatPc(void) {
38924:     int test_ret = 0;
38925: 
38926: #if defined(LIBXML_UNICODE_ENABLED)
38927:     int mem_base;
38928:     int ret_val;
38929:     int code; /* UCS code point */
38930:     int n_code;
38931: 
38932:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38933:         mem_base = xmlMemBlocks();
38934:         code = gen_int(n_code, 0);
38935: 
38936:         ret_val = xmlUCSIsCatPc(code);
38937:         desret_int(ret_val);
38938:         call_tests++;
38939:         des_int(n_code, code, 0);
38940:         xmlResetLastError();
38941:         if (mem_base != xmlMemBlocks()) {
38942:             printf("Leak of %d blocks found in xmlUCSIsCatPc",
38943: 	           xmlMemBlocks() - mem_base);
38944: 	    test_ret++;
38945:             printf(" %d", n_code);
38946:             printf("\n");
38947:         }
38948:     }
38949:     function_tests++;
38950: #endif
38951: 
38952:     return(test_ret);
38953: }
38954: 
38955: 
38956: static int
38957: test_xmlUCSIsCatPd(void) {
38958:     int test_ret = 0;
38959: 
38960: #if defined(LIBXML_UNICODE_ENABLED)
38961:     int mem_base;
38962:     int ret_val;
38963:     int code; /* UCS code point */
38964:     int n_code;
38965: 
38966:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
38967:         mem_base = xmlMemBlocks();
38968:         code = gen_int(n_code, 0);
38969: 
38970:         ret_val = xmlUCSIsCatPd(code);
38971:         desret_int(ret_val);
38972:         call_tests++;
38973:         des_int(n_code, code, 0);
38974:         xmlResetLastError();
38975:         if (mem_base != xmlMemBlocks()) {
38976:             printf("Leak of %d blocks found in xmlUCSIsCatPd",
38977: 	           xmlMemBlocks() - mem_base);
38978: 	    test_ret++;
38979:             printf(" %d", n_code);
38980:             printf("\n");
38981:         }
38982:     }
38983:     function_tests++;
38984: #endif
38985: 
38986:     return(test_ret);
38987: }
38988: 
38989: 
38990: static int
38991: test_xmlUCSIsCatPe(void) {
38992:     int test_ret = 0;
38993: 
38994: #if defined(LIBXML_UNICODE_ENABLED)
38995:     int mem_base;
38996:     int ret_val;
38997:     int code; /* UCS code point */
38998:     int n_code;
38999: 
39000:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39001:         mem_base = xmlMemBlocks();
39002:         code = gen_int(n_code, 0);
39003: 
39004:         ret_val = xmlUCSIsCatPe(code);
39005:         desret_int(ret_val);
39006:         call_tests++;
39007:         des_int(n_code, code, 0);
39008:         xmlResetLastError();
39009:         if (mem_base != xmlMemBlocks()) {
39010:             printf("Leak of %d blocks found in xmlUCSIsCatPe",
39011: 	           xmlMemBlocks() - mem_base);
39012: 	    test_ret++;
39013:             printf(" %d", n_code);
39014:             printf("\n");
39015:         }
39016:     }
39017:     function_tests++;
39018: #endif
39019: 
39020:     return(test_ret);
39021: }
39022: 
39023: 
39024: static int
39025: test_xmlUCSIsCatPf(void) {
39026:     int test_ret = 0;
39027: 
39028: #if defined(LIBXML_UNICODE_ENABLED)
39029:     int mem_base;
39030:     int ret_val;
39031:     int code; /* UCS code point */
39032:     int n_code;
39033: 
39034:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39035:         mem_base = xmlMemBlocks();
39036:         code = gen_int(n_code, 0);
39037: 
39038:         ret_val = xmlUCSIsCatPf(code);
39039:         desret_int(ret_val);
39040:         call_tests++;
39041:         des_int(n_code, code, 0);
39042:         xmlResetLastError();
39043:         if (mem_base != xmlMemBlocks()) {
39044:             printf("Leak of %d blocks found in xmlUCSIsCatPf",
39045: 	           xmlMemBlocks() - mem_base);
39046: 	    test_ret++;
39047:             printf(" %d", n_code);
39048:             printf("\n");
39049:         }
39050:     }
39051:     function_tests++;
39052: #endif
39053: 
39054:     return(test_ret);
39055: }
39056: 
39057: 
39058: static int
39059: test_xmlUCSIsCatPi(void) {
39060:     int test_ret = 0;
39061: 
39062: #if defined(LIBXML_UNICODE_ENABLED)
39063:     int mem_base;
39064:     int ret_val;
39065:     int code; /* UCS code point */
39066:     int n_code;
39067: 
39068:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39069:         mem_base = xmlMemBlocks();
39070:         code = gen_int(n_code, 0);
39071: 
39072:         ret_val = xmlUCSIsCatPi(code);
39073:         desret_int(ret_val);
39074:         call_tests++;
39075:         des_int(n_code, code, 0);
39076:         xmlResetLastError();
39077:         if (mem_base != xmlMemBlocks()) {
39078:             printf("Leak of %d blocks found in xmlUCSIsCatPi",
39079: 	           xmlMemBlocks() - mem_base);
39080: 	    test_ret++;
39081:             printf(" %d", n_code);
39082:             printf("\n");
39083:         }
39084:     }
39085:     function_tests++;
39086: #endif
39087: 
39088:     return(test_ret);
39089: }
39090: 
39091: 
39092: static int
39093: test_xmlUCSIsCatPo(void) {
39094:     int test_ret = 0;
39095: 
39096: #if defined(LIBXML_UNICODE_ENABLED)
39097:     int mem_base;
39098:     int ret_val;
39099:     int code; /* UCS code point */
39100:     int n_code;
39101: 
39102:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39103:         mem_base = xmlMemBlocks();
39104:         code = gen_int(n_code, 0);
39105: 
39106:         ret_val = xmlUCSIsCatPo(code);
39107:         desret_int(ret_val);
39108:         call_tests++;
39109:         des_int(n_code, code, 0);
39110:         xmlResetLastError();
39111:         if (mem_base != xmlMemBlocks()) {
39112:             printf("Leak of %d blocks found in xmlUCSIsCatPo",
39113: 	           xmlMemBlocks() - mem_base);
39114: 	    test_ret++;
39115:             printf(" %d", n_code);
39116:             printf("\n");
39117:         }
39118:     }
39119:     function_tests++;
39120: #endif
39121: 
39122:     return(test_ret);
39123: }
39124: 
39125: 
39126: static int
39127: test_xmlUCSIsCatPs(void) {
39128:     int test_ret = 0;
39129: 
39130: #if defined(LIBXML_UNICODE_ENABLED)
39131:     int mem_base;
39132:     int ret_val;
39133:     int code; /* UCS code point */
39134:     int n_code;
39135: 
39136:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39137:         mem_base = xmlMemBlocks();
39138:         code = gen_int(n_code, 0);
39139: 
39140:         ret_val = xmlUCSIsCatPs(code);
39141:         desret_int(ret_val);
39142:         call_tests++;
39143:         des_int(n_code, code, 0);
39144:         xmlResetLastError();
39145:         if (mem_base != xmlMemBlocks()) {
39146:             printf("Leak of %d blocks found in xmlUCSIsCatPs",
39147: 	           xmlMemBlocks() - mem_base);
39148: 	    test_ret++;
39149:             printf(" %d", n_code);
39150:             printf("\n");
39151:         }
39152:     }
39153:     function_tests++;
39154: #endif
39155: 
39156:     return(test_ret);
39157: }
39158: 
39159: 
39160: static int
39161: test_xmlUCSIsCatS(void) {
39162:     int test_ret = 0;
39163: 
39164: #if defined(LIBXML_UNICODE_ENABLED)
39165:     int mem_base;
39166:     int ret_val;
39167:     int code; /* UCS code point */
39168:     int n_code;
39169: 
39170:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39171:         mem_base = xmlMemBlocks();
39172:         code = gen_int(n_code, 0);
39173: 
39174:         ret_val = xmlUCSIsCatS(code);
39175:         desret_int(ret_val);
39176:         call_tests++;
39177:         des_int(n_code, code, 0);
39178:         xmlResetLastError();
39179:         if (mem_base != xmlMemBlocks()) {
39180:             printf("Leak of %d blocks found in xmlUCSIsCatS",
39181: 	           xmlMemBlocks() - mem_base);
39182: 	    test_ret++;
39183:             printf(" %d", n_code);
39184:             printf("\n");
39185:         }
39186:     }
39187:     function_tests++;
39188: #endif
39189: 
39190:     return(test_ret);
39191: }
39192: 
39193: 
39194: static int
39195: test_xmlUCSIsCatSc(void) {
39196:     int test_ret = 0;
39197: 
39198: #if defined(LIBXML_UNICODE_ENABLED)
39199:     int mem_base;
39200:     int ret_val;
39201:     int code; /* UCS code point */
39202:     int n_code;
39203: 
39204:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39205:         mem_base = xmlMemBlocks();
39206:         code = gen_int(n_code, 0);
39207: 
39208:         ret_val = xmlUCSIsCatSc(code);
39209:         desret_int(ret_val);
39210:         call_tests++;
39211:         des_int(n_code, code, 0);
39212:         xmlResetLastError();
39213:         if (mem_base != xmlMemBlocks()) {
39214:             printf("Leak of %d blocks found in xmlUCSIsCatSc",
39215: 	           xmlMemBlocks() - mem_base);
39216: 	    test_ret++;
39217:             printf(" %d", n_code);
39218:             printf("\n");
39219:         }
39220:     }
39221:     function_tests++;
39222: #endif
39223: 
39224:     return(test_ret);
39225: }
39226: 
39227: 
39228: static int
39229: test_xmlUCSIsCatSk(void) {
39230:     int test_ret = 0;
39231: 
39232: #if defined(LIBXML_UNICODE_ENABLED)
39233:     int mem_base;
39234:     int ret_val;
39235:     int code; /* UCS code point */
39236:     int n_code;
39237: 
39238:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39239:         mem_base = xmlMemBlocks();
39240:         code = gen_int(n_code, 0);
39241: 
39242:         ret_val = xmlUCSIsCatSk(code);
39243:         desret_int(ret_val);
39244:         call_tests++;
39245:         des_int(n_code, code, 0);
39246:         xmlResetLastError();
39247:         if (mem_base != xmlMemBlocks()) {
39248:             printf("Leak of %d blocks found in xmlUCSIsCatSk",
39249: 	           xmlMemBlocks() - mem_base);
39250: 	    test_ret++;
39251:             printf(" %d", n_code);
39252:             printf("\n");
39253:         }
39254:     }
39255:     function_tests++;
39256: #endif
39257: 
39258:     return(test_ret);
39259: }
39260: 
39261: 
39262: static int
39263: test_xmlUCSIsCatSm(void) {
39264:     int test_ret = 0;
39265: 
39266: #if defined(LIBXML_UNICODE_ENABLED)
39267:     int mem_base;
39268:     int ret_val;
39269:     int code; /* UCS code point */
39270:     int n_code;
39271: 
39272:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39273:         mem_base = xmlMemBlocks();
39274:         code = gen_int(n_code, 0);
39275: 
39276:         ret_val = xmlUCSIsCatSm(code);
39277:         desret_int(ret_val);
39278:         call_tests++;
39279:         des_int(n_code, code, 0);
39280:         xmlResetLastError();
39281:         if (mem_base != xmlMemBlocks()) {
39282:             printf("Leak of %d blocks found in xmlUCSIsCatSm",
39283: 	           xmlMemBlocks() - mem_base);
39284: 	    test_ret++;
39285:             printf(" %d", n_code);
39286:             printf("\n");
39287:         }
39288:     }
39289:     function_tests++;
39290: #endif
39291: 
39292:     return(test_ret);
39293: }
39294: 
39295: 
39296: static int
39297: test_xmlUCSIsCatSo(void) {
39298:     int test_ret = 0;
39299: 
39300: #if defined(LIBXML_UNICODE_ENABLED)
39301:     int mem_base;
39302:     int ret_val;
39303:     int code; /* UCS code point */
39304:     int n_code;
39305: 
39306:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39307:         mem_base = xmlMemBlocks();
39308:         code = gen_int(n_code, 0);
39309: 
39310:         ret_val = xmlUCSIsCatSo(code);
39311:         desret_int(ret_val);
39312:         call_tests++;
39313:         des_int(n_code, code, 0);
39314:         xmlResetLastError();
39315:         if (mem_base != xmlMemBlocks()) {
39316:             printf("Leak of %d blocks found in xmlUCSIsCatSo",
39317: 	           xmlMemBlocks() - mem_base);
39318: 	    test_ret++;
39319:             printf(" %d", n_code);
39320:             printf("\n");
39321:         }
39322:     }
39323:     function_tests++;
39324: #endif
39325: 
39326:     return(test_ret);
39327: }
39328: 
39329: 
39330: static int
39331: test_xmlUCSIsCatZ(void) {
39332:     int test_ret = 0;
39333: 
39334: #if defined(LIBXML_UNICODE_ENABLED)
39335:     int mem_base;
39336:     int ret_val;
39337:     int code; /* UCS code point */
39338:     int n_code;
39339: 
39340:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39341:         mem_base = xmlMemBlocks();
39342:         code = gen_int(n_code, 0);
39343: 
39344:         ret_val = xmlUCSIsCatZ(code);
39345:         desret_int(ret_val);
39346:         call_tests++;
39347:         des_int(n_code, code, 0);
39348:         xmlResetLastError();
39349:         if (mem_base != xmlMemBlocks()) {
39350:             printf("Leak of %d blocks found in xmlUCSIsCatZ",
39351: 	           xmlMemBlocks() - mem_base);
39352: 	    test_ret++;
39353:             printf(" %d", n_code);
39354:             printf("\n");
39355:         }
39356:     }
39357:     function_tests++;
39358: #endif
39359: 
39360:     return(test_ret);
39361: }
39362: 
39363: 
39364: static int
39365: test_xmlUCSIsCatZl(void) {
39366:     int test_ret = 0;
39367: 
39368: #if defined(LIBXML_UNICODE_ENABLED)
39369:     int mem_base;
39370:     int ret_val;
39371:     int code; /* UCS code point */
39372:     int n_code;
39373: 
39374:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39375:         mem_base = xmlMemBlocks();
39376:         code = gen_int(n_code, 0);
39377: 
39378:         ret_val = xmlUCSIsCatZl(code);
39379:         desret_int(ret_val);
39380:         call_tests++;
39381:         des_int(n_code, code, 0);
39382:         xmlResetLastError();
39383:         if (mem_base != xmlMemBlocks()) {
39384:             printf("Leak of %d blocks found in xmlUCSIsCatZl",
39385: 	           xmlMemBlocks() - mem_base);
39386: 	    test_ret++;
39387:             printf(" %d", n_code);
39388:             printf("\n");
39389:         }
39390:     }
39391:     function_tests++;
39392: #endif
39393: 
39394:     return(test_ret);
39395: }
39396: 
39397: 
39398: static int
39399: test_xmlUCSIsCatZp(void) {
39400:     int test_ret = 0;
39401: 
39402: #if defined(LIBXML_UNICODE_ENABLED)
39403:     int mem_base;
39404:     int ret_val;
39405:     int code; /* UCS code point */
39406:     int n_code;
39407: 
39408:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39409:         mem_base = xmlMemBlocks();
39410:         code = gen_int(n_code, 0);
39411: 
39412:         ret_val = xmlUCSIsCatZp(code);
39413:         desret_int(ret_val);
39414:         call_tests++;
39415:         des_int(n_code, code, 0);
39416:         xmlResetLastError();
39417:         if (mem_base != xmlMemBlocks()) {
39418:             printf("Leak of %d blocks found in xmlUCSIsCatZp",
39419: 	           xmlMemBlocks() - mem_base);
39420: 	    test_ret++;
39421:             printf(" %d", n_code);
39422:             printf("\n");
39423:         }
39424:     }
39425:     function_tests++;
39426: #endif
39427: 
39428:     return(test_ret);
39429: }
39430: 
39431: 
39432: static int
39433: test_xmlUCSIsCatZs(void) {
39434:     int test_ret = 0;
39435: 
39436: #if defined(LIBXML_UNICODE_ENABLED)
39437:     int mem_base;
39438:     int ret_val;
39439:     int code; /* UCS code point */
39440:     int n_code;
39441: 
39442:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39443:         mem_base = xmlMemBlocks();
39444:         code = gen_int(n_code, 0);
39445: 
39446:         ret_val = xmlUCSIsCatZs(code);
39447:         desret_int(ret_val);
39448:         call_tests++;
39449:         des_int(n_code, code, 0);
39450:         xmlResetLastError();
39451:         if (mem_base != xmlMemBlocks()) {
39452:             printf("Leak of %d blocks found in xmlUCSIsCatZs",
39453: 	           xmlMemBlocks() - mem_base);
39454: 	    test_ret++;
39455:             printf(" %d", n_code);
39456:             printf("\n");
39457:         }
39458:     }
39459:     function_tests++;
39460: #endif
39461: 
39462:     return(test_ret);
39463: }
39464: 
39465: 
39466: static int
39467: test_xmlUCSIsCherokee(void) {
39468:     int test_ret = 0;
39469: 
39470: #if defined(LIBXML_UNICODE_ENABLED)
39471:     int mem_base;
39472:     int ret_val;
39473:     int code; /* UCS code point */
39474:     int n_code;
39475: 
39476:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39477:         mem_base = xmlMemBlocks();
39478:         code = gen_int(n_code, 0);
39479: 
39480:         ret_val = xmlUCSIsCherokee(code);
39481:         desret_int(ret_val);
39482:         call_tests++;
39483:         des_int(n_code, code, 0);
39484:         xmlResetLastError();
39485:         if (mem_base != xmlMemBlocks()) {
39486:             printf("Leak of %d blocks found in xmlUCSIsCherokee",
39487: 	           xmlMemBlocks() - mem_base);
39488: 	    test_ret++;
39489:             printf(" %d", n_code);
39490:             printf("\n");
39491:         }
39492:     }
39493:     function_tests++;
39494: #endif
39495: 
39496:     return(test_ret);
39497: }
39498: 
39499: 
39500: static int
39501: test_xmlUCSIsCombiningDiacriticalMarks(void) {
39502:     int test_ret = 0;
39503: 
39504: #if defined(LIBXML_UNICODE_ENABLED)
39505:     int mem_base;
39506:     int ret_val;
39507:     int code; /* UCS code point */
39508:     int n_code;
39509: 
39510:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39511:         mem_base = xmlMemBlocks();
39512:         code = gen_int(n_code, 0);
39513: 
39514:         ret_val = xmlUCSIsCombiningDiacriticalMarks(code);
39515:         desret_int(ret_val);
39516:         call_tests++;
39517:         des_int(n_code, code, 0);
39518:         xmlResetLastError();
39519:         if (mem_base != xmlMemBlocks()) {
39520:             printf("Leak of %d blocks found in xmlUCSIsCombiningDiacriticalMarks",
39521: 	           xmlMemBlocks() - mem_base);
39522: 	    test_ret++;
39523:             printf(" %d", n_code);
39524:             printf("\n");
39525:         }
39526:     }
39527:     function_tests++;
39528: #endif
39529: 
39530:     return(test_ret);
39531: }
39532: 
39533: 
39534: static int
39535: test_xmlUCSIsCombiningDiacriticalMarksforSymbols(void) {
39536:     int test_ret = 0;
39537: 
39538: #if defined(LIBXML_UNICODE_ENABLED)
39539:     int mem_base;
39540:     int ret_val;
39541:     int code; /* UCS code point */
39542:     int n_code;
39543: 
39544:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39545:         mem_base = xmlMemBlocks();
39546:         code = gen_int(n_code, 0);
39547: 
39548:         ret_val = xmlUCSIsCombiningDiacriticalMarksforSymbols(code);
39549:         desret_int(ret_val);
39550:         call_tests++;
39551:         des_int(n_code, code, 0);
39552:         xmlResetLastError();
39553:         if (mem_base != xmlMemBlocks()) {
39554:             printf("Leak of %d blocks found in xmlUCSIsCombiningDiacriticalMarksforSymbols",
39555: 	           xmlMemBlocks() - mem_base);
39556: 	    test_ret++;
39557:             printf(" %d", n_code);
39558:             printf("\n");
39559:         }
39560:     }
39561:     function_tests++;
39562: #endif
39563: 
39564:     return(test_ret);
39565: }
39566: 
39567: 
39568: static int
39569: test_xmlUCSIsCombiningHalfMarks(void) {
39570:     int test_ret = 0;
39571: 
39572: #if defined(LIBXML_UNICODE_ENABLED)
39573:     int mem_base;
39574:     int ret_val;
39575:     int code; /* UCS code point */
39576:     int n_code;
39577: 
39578:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39579:         mem_base = xmlMemBlocks();
39580:         code = gen_int(n_code, 0);
39581: 
39582:         ret_val = xmlUCSIsCombiningHalfMarks(code);
39583:         desret_int(ret_val);
39584:         call_tests++;
39585:         des_int(n_code, code, 0);
39586:         xmlResetLastError();
39587:         if (mem_base != xmlMemBlocks()) {
39588:             printf("Leak of %d blocks found in xmlUCSIsCombiningHalfMarks",
39589: 	           xmlMemBlocks() - mem_base);
39590: 	    test_ret++;
39591:             printf(" %d", n_code);
39592:             printf("\n");
39593:         }
39594:     }
39595:     function_tests++;
39596: #endif
39597: 
39598:     return(test_ret);
39599: }
39600: 
39601: 
39602: static int
39603: test_xmlUCSIsCombiningMarksforSymbols(void) {
39604:     int test_ret = 0;
39605: 
39606: #if defined(LIBXML_UNICODE_ENABLED)
39607:     int mem_base;
39608:     int ret_val;
39609:     int code; /* UCS code point */
39610:     int n_code;
39611: 
39612:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39613:         mem_base = xmlMemBlocks();
39614:         code = gen_int(n_code, 0);
39615: 
39616:         ret_val = xmlUCSIsCombiningMarksforSymbols(code);
39617:         desret_int(ret_val);
39618:         call_tests++;
39619:         des_int(n_code, code, 0);
39620:         xmlResetLastError();
39621:         if (mem_base != xmlMemBlocks()) {
39622:             printf("Leak of %d blocks found in xmlUCSIsCombiningMarksforSymbols",
39623: 	           xmlMemBlocks() - mem_base);
39624: 	    test_ret++;
39625:             printf(" %d", n_code);
39626:             printf("\n");
39627:         }
39628:     }
39629:     function_tests++;
39630: #endif
39631: 
39632:     return(test_ret);
39633: }
39634: 
39635: 
39636: static int
39637: test_xmlUCSIsControlPictures(void) {
39638:     int test_ret = 0;
39639: 
39640: #if defined(LIBXML_UNICODE_ENABLED)
39641:     int mem_base;
39642:     int ret_val;
39643:     int code; /* UCS code point */
39644:     int n_code;
39645: 
39646:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39647:         mem_base = xmlMemBlocks();
39648:         code = gen_int(n_code, 0);
39649: 
39650:         ret_val = xmlUCSIsControlPictures(code);
39651:         desret_int(ret_val);
39652:         call_tests++;
39653:         des_int(n_code, code, 0);
39654:         xmlResetLastError();
39655:         if (mem_base != xmlMemBlocks()) {
39656:             printf("Leak of %d blocks found in xmlUCSIsControlPictures",
39657: 	           xmlMemBlocks() - mem_base);
39658: 	    test_ret++;
39659:             printf(" %d", n_code);
39660:             printf("\n");
39661:         }
39662:     }
39663:     function_tests++;
39664: #endif
39665: 
39666:     return(test_ret);
39667: }
39668: 
39669: 
39670: static int
39671: test_xmlUCSIsCurrencySymbols(void) {
39672:     int test_ret = 0;
39673: 
39674: #if defined(LIBXML_UNICODE_ENABLED)
39675:     int mem_base;
39676:     int ret_val;
39677:     int code; /* UCS code point */
39678:     int n_code;
39679: 
39680:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39681:         mem_base = xmlMemBlocks();
39682:         code = gen_int(n_code, 0);
39683: 
39684:         ret_val = xmlUCSIsCurrencySymbols(code);
39685:         desret_int(ret_val);
39686:         call_tests++;
39687:         des_int(n_code, code, 0);
39688:         xmlResetLastError();
39689:         if (mem_base != xmlMemBlocks()) {
39690:             printf("Leak of %d blocks found in xmlUCSIsCurrencySymbols",
39691: 	           xmlMemBlocks() - mem_base);
39692: 	    test_ret++;
39693:             printf(" %d", n_code);
39694:             printf("\n");
39695:         }
39696:     }
39697:     function_tests++;
39698: #endif
39699: 
39700:     return(test_ret);
39701: }
39702: 
39703: 
39704: static int
39705: test_xmlUCSIsCypriotSyllabary(void) {
39706:     int test_ret = 0;
39707: 
39708: #if defined(LIBXML_UNICODE_ENABLED)
39709:     int mem_base;
39710:     int ret_val;
39711:     int code; /* UCS code point */
39712:     int n_code;
39713: 
39714:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39715:         mem_base = xmlMemBlocks();
39716:         code = gen_int(n_code, 0);
39717: 
39718:         ret_val = xmlUCSIsCypriotSyllabary(code);
39719:         desret_int(ret_val);
39720:         call_tests++;
39721:         des_int(n_code, code, 0);
39722:         xmlResetLastError();
39723:         if (mem_base != xmlMemBlocks()) {
39724:             printf("Leak of %d blocks found in xmlUCSIsCypriotSyllabary",
39725: 	           xmlMemBlocks() - mem_base);
39726: 	    test_ret++;
39727:             printf(" %d", n_code);
39728:             printf("\n");
39729:         }
39730:     }
39731:     function_tests++;
39732: #endif
39733: 
39734:     return(test_ret);
39735: }
39736: 
39737: 
39738: static int
39739: test_xmlUCSIsCyrillic(void) {
39740:     int test_ret = 0;
39741: 
39742: #if defined(LIBXML_UNICODE_ENABLED)
39743:     int mem_base;
39744:     int ret_val;
39745:     int code; /* UCS code point */
39746:     int n_code;
39747: 
39748:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39749:         mem_base = xmlMemBlocks();
39750:         code = gen_int(n_code, 0);
39751: 
39752:         ret_val = xmlUCSIsCyrillic(code);
39753:         desret_int(ret_val);
39754:         call_tests++;
39755:         des_int(n_code, code, 0);
39756:         xmlResetLastError();
39757:         if (mem_base != xmlMemBlocks()) {
39758:             printf("Leak of %d blocks found in xmlUCSIsCyrillic",
39759: 	           xmlMemBlocks() - mem_base);
39760: 	    test_ret++;
39761:             printf(" %d", n_code);
39762:             printf("\n");
39763:         }
39764:     }
39765:     function_tests++;
39766: #endif
39767: 
39768:     return(test_ret);
39769: }
39770: 
39771: 
39772: static int
39773: test_xmlUCSIsCyrillicSupplement(void) {
39774:     int test_ret = 0;
39775: 
39776: #if defined(LIBXML_UNICODE_ENABLED)
39777:     int mem_base;
39778:     int ret_val;
39779:     int code; /* UCS code point */
39780:     int n_code;
39781: 
39782:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39783:         mem_base = xmlMemBlocks();
39784:         code = gen_int(n_code, 0);
39785: 
39786:         ret_val = xmlUCSIsCyrillicSupplement(code);
39787:         desret_int(ret_val);
39788:         call_tests++;
39789:         des_int(n_code, code, 0);
39790:         xmlResetLastError();
39791:         if (mem_base != xmlMemBlocks()) {
39792:             printf("Leak of %d blocks found in xmlUCSIsCyrillicSupplement",
39793: 	           xmlMemBlocks() - mem_base);
39794: 	    test_ret++;
39795:             printf(" %d", n_code);
39796:             printf("\n");
39797:         }
39798:     }
39799:     function_tests++;
39800: #endif
39801: 
39802:     return(test_ret);
39803: }
39804: 
39805: 
39806: static int
39807: test_xmlUCSIsDeseret(void) {
39808:     int test_ret = 0;
39809: 
39810: #if defined(LIBXML_UNICODE_ENABLED)
39811:     int mem_base;
39812:     int ret_val;
39813:     int code; /* UCS code point */
39814:     int n_code;
39815: 
39816:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39817:         mem_base = xmlMemBlocks();
39818:         code = gen_int(n_code, 0);
39819: 
39820:         ret_val = xmlUCSIsDeseret(code);
39821:         desret_int(ret_val);
39822:         call_tests++;
39823:         des_int(n_code, code, 0);
39824:         xmlResetLastError();
39825:         if (mem_base != xmlMemBlocks()) {
39826:             printf("Leak of %d blocks found in xmlUCSIsDeseret",
39827: 	           xmlMemBlocks() - mem_base);
39828: 	    test_ret++;
39829:             printf(" %d", n_code);
39830:             printf("\n");
39831:         }
39832:     }
39833:     function_tests++;
39834: #endif
39835: 
39836:     return(test_ret);
39837: }
39838: 
39839: 
39840: static int
39841: test_xmlUCSIsDevanagari(void) {
39842:     int test_ret = 0;
39843: 
39844: #if defined(LIBXML_UNICODE_ENABLED)
39845:     int mem_base;
39846:     int ret_val;
39847:     int code; /* UCS code point */
39848:     int n_code;
39849: 
39850:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39851:         mem_base = xmlMemBlocks();
39852:         code = gen_int(n_code, 0);
39853: 
39854:         ret_val = xmlUCSIsDevanagari(code);
39855:         desret_int(ret_val);
39856:         call_tests++;
39857:         des_int(n_code, code, 0);
39858:         xmlResetLastError();
39859:         if (mem_base != xmlMemBlocks()) {
39860:             printf("Leak of %d blocks found in xmlUCSIsDevanagari",
39861: 	           xmlMemBlocks() - mem_base);
39862: 	    test_ret++;
39863:             printf(" %d", n_code);
39864:             printf("\n");
39865:         }
39866:     }
39867:     function_tests++;
39868: #endif
39869: 
39870:     return(test_ret);
39871: }
39872: 
39873: 
39874: static int
39875: test_xmlUCSIsDingbats(void) {
39876:     int test_ret = 0;
39877: 
39878: #if defined(LIBXML_UNICODE_ENABLED)
39879:     int mem_base;
39880:     int ret_val;
39881:     int code; /* UCS code point */
39882:     int n_code;
39883: 
39884:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39885:         mem_base = xmlMemBlocks();
39886:         code = gen_int(n_code, 0);
39887: 
39888:         ret_val = xmlUCSIsDingbats(code);
39889:         desret_int(ret_val);
39890:         call_tests++;
39891:         des_int(n_code, code, 0);
39892:         xmlResetLastError();
39893:         if (mem_base != xmlMemBlocks()) {
39894:             printf("Leak of %d blocks found in xmlUCSIsDingbats",
39895: 	           xmlMemBlocks() - mem_base);
39896: 	    test_ret++;
39897:             printf(" %d", n_code);
39898:             printf("\n");
39899:         }
39900:     }
39901:     function_tests++;
39902: #endif
39903: 
39904:     return(test_ret);
39905: }
39906: 
39907: 
39908: static int
39909: test_xmlUCSIsEnclosedAlphanumerics(void) {
39910:     int test_ret = 0;
39911: 
39912: #if defined(LIBXML_UNICODE_ENABLED)
39913:     int mem_base;
39914:     int ret_val;
39915:     int code; /* UCS code point */
39916:     int n_code;
39917: 
39918:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39919:         mem_base = xmlMemBlocks();
39920:         code = gen_int(n_code, 0);
39921: 
39922:         ret_val = xmlUCSIsEnclosedAlphanumerics(code);
39923:         desret_int(ret_val);
39924:         call_tests++;
39925:         des_int(n_code, code, 0);
39926:         xmlResetLastError();
39927:         if (mem_base != xmlMemBlocks()) {
39928:             printf("Leak of %d blocks found in xmlUCSIsEnclosedAlphanumerics",
39929: 	           xmlMemBlocks() - mem_base);
39930: 	    test_ret++;
39931:             printf(" %d", n_code);
39932:             printf("\n");
39933:         }
39934:     }
39935:     function_tests++;
39936: #endif
39937: 
39938:     return(test_ret);
39939: }
39940: 
39941: 
39942: static int
39943: test_xmlUCSIsEnclosedCJKLettersandMonths(void) {
39944:     int test_ret = 0;
39945: 
39946: #if defined(LIBXML_UNICODE_ENABLED)
39947:     int mem_base;
39948:     int ret_val;
39949:     int code; /* UCS code point */
39950:     int n_code;
39951: 
39952:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39953:         mem_base = xmlMemBlocks();
39954:         code = gen_int(n_code, 0);
39955: 
39956:         ret_val = xmlUCSIsEnclosedCJKLettersandMonths(code);
39957:         desret_int(ret_val);
39958:         call_tests++;
39959:         des_int(n_code, code, 0);
39960:         xmlResetLastError();
39961:         if (mem_base != xmlMemBlocks()) {
39962:             printf("Leak of %d blocks found in xmlUCSIsEnclosedCJKLettersandMonths",
39963: 	           xmlMemBlocks() - mem_base);
39964: 	    test_ret++;
39965:             printf(" %d", n_code);
39966:             printf("\n");
39967:         }
39968:     }
39969:     function_tests++;
39970: #endif
39971: 
39972:     return(test_ret);
39973: }
39974: 
39975: 
39976: static int
39977: test_xmlUCSIsEthiopic(void) {
39978:     int test_ret = 0;
39979: 
39980: #if defined(LIBXML_UNICODE_ENABLED)
39981:     int mem_base;
39982:     int ret_val;
39983:     int code; /* UCS code point */
39984:     int n_code;
39985: 
39986:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
39987:         mem_base = xmlMemBlocks();
39988:         code = gen_int(n_code, 0);
39989: 
39990:         ret_val = xmlUCSIsEthiopic(code);
39991:         desret_int(ret_val);
39992:         call_tests++;
39993:         des_int(n_code, code, 0);
39994:         xmlResetLastError();
39995:         if (mem_base != xmlMemBlocks()) {
39996:             printf("Leak of %d blocks found in xmlUCSIsEthiopic",
39997: 	           xmlMemBlocks() - mem_base);
39998: 	    test_ret++;
39999:             printf(" %d", n_code);
40000:             printf("\n");
40001:         }
40002:     }
40003:     function_tests++;
40004: #endif
40005: 
40006:     return(test_ret);
40007: }
40008: 
40009: 
40010: static int
40011: test_xmlUCSIsGeneralPunctuation(void) {
40012:     int test_ret = 0;
40013: 
40014: #if defined(LIBXML_UNICODE_ENABLED)
40015:     int mem_base;
40016:     int ret_val;
40017:     int code; /* UCS code point */
40018:     int n_code;
40019: 
40020:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40021:         mem_base = xmlMemBlocks();
40022:         code = gen_int(n_code, 0);
40023: 
40024:         ret_val = xmlUCSIsGeneralPunctuation(code);
40025:         desret_int(ret_val);
40026:         call_tests++;
40027:         des_int(n_code, code, 0);
40028:         xmlResetLastError();
40029:         if (mem_base != xmlMemBlocks()) {
40030:             printf("Leak of %d blocks found in xmlUCSIsGeneralPunctuation",
40031: 	           xmlMemBlocks() - mem_base);
40032: 	    test_ret++;
40033:             printf(" %d", n_code);
40034:             printf("\n");
40035:         }
40036:     }
40037:     function_tests++;
40038: #endif
40039: 
40040:     return(test_ret);
40041: }
40042: 
40043: 
40044: static int
40045: test_xmlUCSIsGeometricShapes(void) {
40046:     int test_ret = 0;
40047: 
40048: #if defined(LIBXML_UNICODE_ENABLED)
40049:     int mem_base;
40050:     int ret_val;
40051:     int code; /* UCS code point */
40052:     int n_code;
40053: 
40054:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40055:         mem_base = xmlMemBlocks();
40056:         code = gen_int(n_code, 0);
40057: 
40058:         ret_val = xmlUCSIsGeometricShapes(code);
40059:         desret_int(ret_val);
40060:         call_tests++;
40061:         des_int(n_code, code, 0);
40062:         xmlResetLastError();
40063:         if (mem_base != xmlMemBlocks()) {
40064:             printf("Leak of %d blocks found in xmlUCSIsGeometricShapes",
40065: 	           xmlMemBlocks() - mem_base);
40066: 	    test_ret++;
40067:             printf(" %d", n_code);
40068:             printf("\n");
40069:         }
40070:     }
40071:     function_tests++;
40072: #endif
40073: 
40074:     return(test_ret);
40075: }
40076: 
40077: 
40078: static int
40079: test_xmlUCSIsGeorgian(void) {
40080:     int test_ret = 0;
40081: 
40082: #if defined(LIBXML_UNICODE_ENABLED)
40083:     int mem_base;
40084:     int ret_val;
40085:     int code; /* UCS code point */
40086:     int n_code;
40087: 
40088:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40089:         mem_base = xmlMemBlocks();
40090:         code = gen_int(n_code, 0);
40091: 
40092:         ret_val = xmlUCSIsGeorgian(code);
40093:         desret_int(ret_val);
40094:         call_tests++;
40095:         des_int(n_code, code, 0);
40096:         xmlResetLastError();
40097:         if (mem_base != xmlMemBlocks()) {
40098:             printf("Leak of %d blocks found in xmlUCSIsGeorgian",
40099: 	           xmlMemBlocks() - mem_base);
40100: 	    test_ret++;
40101:             printf(" %d", n_code);
40102:             printf("\n");
40103:         }
40104:     }
40105:     function_tests++;
40106: #endif
40107: 
40108:     return(test_ret);
40109: }
40110: 
40111: 
40112: static int
40113: test_xmlUCSIsGothic(void) {
40114:     int test_ret = 0;
40115: 
40116: #if defined(LIBXML_UNICODE_ENABLED)
40117:     int mem_base;
40118:     int ret_val;
40119:     int code; /* UCS code point */
40120:     int n_code;
40121: 
40122:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40123:         mem_base = xmlMemBlocks();
40124:         code = gen_int(n_code, 0);
40125: 
40126:         ret_val = xmlUCSIsGothic(code);
40127:         desret_int(ret_val);
40128:         call_tests++;
40129:         des_int(n_code, code, 0);
40130:         xmlResetLastError();
40131:         if (mem_base != xmlMemBlocks()) {
40132:             printf("Leak of %d blocks found in xmlUCSIsGothic",
40133: 	           xmlMemBlocks() - mem_base);
40134: 	    test_ret++;
40135:             printf(" %d", n_code);
40136:             printf("\n");
40137:         }
40138:     }
40139:     function_tests++;
40140: #endif
40141: 
40142:     return(test_ret);
40143: }
40144: 
40145: 
40146: static int
40147: test_xmlUCSIsGreek(void) {
40148:     int test_ret = 0;
40149: 
40150: #if defined(LIBXML_UNICODE_ENABLED)
40151:     int mem_base;
40152:     int ret_val;
40153:     int code; /* UCS code point */
40154:     int n_code;
40155: 
40156:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40157:         mem_base = xmlMemBlocks();
40158:         code = gen_int(n_code, 0);
40159: 
40160:         ret_val = xmlUCSIsGreek(code);
40161:         desret_int(ret_val);
40162:         call_tests++;
40163:         des_int(n_code, code, 0);
40164:         xmlResetLastError();
40165:         if (mem_base != xmlMemBlocks()) {
40166:             printf("Leak of %d blocks found in xmlUCSIsGreek",
40167: 	           xmlMemBlocks() - mem_base);
40168: 	    test_ret++;
40169:             printf(" %d", n_code);
40170:             printf("\n");
40171:         }
40172:     }
40173:     function_tests++;
40174: #endif
40175: 
40176:     return(test_ret);
40177: }
40178: 
40179: 
40180: static int
40181: test_xmlUCSIsGreekExtended(void) {
40182:     int test_ret = 0;
40183: 
40184: #if defined(LIBXML_UNICODE_ENABLED)
40185:     int mem_base;
40186:     int ret_val;
40187:     int code; /* UCS code point */
40188:     int n_code;
40189: 
40190:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40191:         mem_base = xmlMemBlocks();
40192:         code = gen_int(n_code, 0);
40193: 
40194:         ret_val = xmlUCSIsGreekExtended(code);
40195:         desret_int(ret_val);
40196:         call_tests++;
40197:         des_int(n_code, code, 0);
40198:         xmlResetLastError();
40199:         if (mem_base != xmlMemBlocks()) {
40200:             printf("Leak of %d blocks found in xmlUCSIsGreekExtended",
40201: 	           xmlMemBlocks() - mem_base);
40202: 	    test_ret++;
40203:             printf(" %d", n_code);
40204:             printf("\n");
40205:         }
40206:     }
40207:     function_tests++;
40208: #endif
40209: 
40210:     return(test_ret);
40211: }
40212: 
40213: 
40214: static int
40215: test_xmlUCSIsGreekandCoptic(void) {
40216:     int test_ret = 0;
40217: 
40218: #if defined(LIBXML_UNICODE_ENABLED)
40219:     int mem_base;
40220:     int ret_val;
40221:     int code; /* UCS code point */
40222:     int n_code;
40223: 
40224:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40225:         mem_base = xmlMemBlocks();
40226:         code = gen_int(n_code, 0);
40227: 
40228:         ret_val = xmlUCSIsGreekandCoptic(code);
40229:         desret_int(ret_val);
40230:         call_tests++;
40231:         des_int(n_code, code, 0);
40232:         xmlResetLastError();
40233:         if (mem_base != xmlMemBlocks()) {
40234:             printf("Leak of %d blocks found in xmlUCSIsGreekandCoptic",
40235: 	           xmlMemBlocks() - mem_base);
40236: 	    test_ret++;
40237:             printf(" %d", n_code);
40238:             printf("\n");
40239:         }
40240:     }
40241:     function_tests++;
40242: #endif
40243: 
40244:     return(test_ret);
40245: }
40246: 
40247: 
40248: static int
40249: test_xmlUCSIsGujarati(void) {
40250:     int test_ret = 0;
40251: 
40252: #if defined(LIBXML_UNICODE_ENABLED)
40253:     int mem_base;
40254:     int ret_val;
40255:     int code; /* UCS code point */
40256:     int n_code;
40257: 
40258:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40259:         mem_base = xmlMemBlocks();
40260:         code = gen_int(n_code, 0);
40261: 
40262:         ret_val = xmlUCSIsGujarati(code);
40263:         desret_int(ret_val);
40264:         call_tests++;
40265:         des_int(n_code, code, 0);
40266:         xmlResetLastError();
40267:         if (mem_base != xmlMemBlocks()) {
40268:             printf("Leak of %d blocks found in xmlUCSIsGujarati",
40269: 	           xmlMemBlocks() - mem_base);
40270: 	    test_ret++;
40271:             printf(" %d", n_code);
40272:             printf("\n");
40273:         }
40274:     }
40275:     function_tests++;
40276: #endif
40277: 
40278:     return(test_ret);
40279: }
40280: 
40281: 
40282: static int
40283: test_xmlUCSIsGurmukhi(void) {
40284:     int test_ret = 0;
40285: 
40286: #if defined(LIBXML_UNICODE_ENABLED)
40287:     int mem_base;
40288:     int ret_val;
40289:     int code; /* UCS code point */
40290:     int n_code;
40291: 
40292:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40293:         mem_base = xmlMemBlocks();
40294:         code = gen_int(n_code, 0);
40295: 
40296:         ret_val = xmlUCSIsGurmukhi(code);
40297:         desret_int(ret_val);
40298:         call_tests++;
40299:         des_int(n_code, code, 0);
40300:         xmlResetLastError();
40301:         if (mem_base != xmlMemBlocks()) {
40302:             printf("Leak of %d blocks found in xmlUCSIsGurmukhi",
40303: 	           xmlMemBlocks() - mem_base);
40304: 	    test_ret++;
40305:             printf(" %d", n_code);
40306:             printf("\n");
40307:         }
40308:     }
40309:     function_tests++;
40310: #endif
40311: 
40312:     return(test_ret);
40313: }
40314: 
40315: 
40316: static int
40317: test_xmlUCSIsHalfwidthandFullwidthForms(void) {
40318:     int test_ret = 0;
40319: 
40320: #if defined(LIBXML_UNICODE_ENABLED)
40321:     int mem_base;
40322:     int ret_val;
40323:     int code; /* UCS code point */
40324:     int n_code;
40325: 
40326:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40327:         mem_base = xmlMemBlocks();
40328:         code = gen_int(n_code, 0);
40329: 
40330:         ret_val = xmlUCSIsHalfwidthandFullwidthForms(code);
40331:         desret_int(ret_val);
40332:         call_tests++;
40333:         des_int(n_code, code, 0);
40334:         xmlResetLastError();
40335:         if (mem_base != xmlMemBlocks()) {
40336:             printf("Leak of %d blocks found in xmlUCSIsHalfwidthandFullwidthForms",
40337: 	           xmlMemBlocks() - mem_base);
40338: 	    test_ret++;
40339:             printf(" %d", n_code);
40340:             printf("\n");
40341:         }
40342:     }
40343:     function_tests++;
40344: #endif
40345: 
40346:     return(test_ret);
40347: }
40348: 
40349: 
40350: static int
40351: test_xmlUCSIsHangulCompatibilityJamo(void) {
40352:     int test_ret = 0;
40353: 
40354: #if defined(LIBXML_UNICODE_ENABLED)
40355:     int mem_base;
40356:     int ret_val;
40357:     int code; /* UCS code point */
40358:     int n_code;
40359: 
40360:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40361:         mem_base = xmlMemBlocks();
40362:         code = gen_int(n_code, 0);
40363: 
40364:         ret_val = xmlUCSIsHangulCompatibilityJamo(code);
40365:         desret_int(ret_val);
40366:         call_tests++;
40367:         des_int(n_code, code, 0);
40368:         xmlResetLastError();
40369:         if (mem_base != xmlMemBlocks()) {
40370:             printf("Leak of %d blocks found in xmlUCSIsHangulCompatibilityJamo",
40371: 	           xmlMemBlocks() - mem_base);
40372: 	    test_ret++;
40373:             printf(" %d", n_code);
40374:             printf("\n");
40375:         }
40376:     }
40377:     function_tests++;
40378: #endif
40379: 
40380:     return(test_ret);
40381: }
40382: 
40383: 
40384: static int
40385: test_xmlUCSIsHangulJamo(void) {
40386:     int test_ret = 0;
40387: 
40388: #if defined(LIBXML_UNICODE_ENABLED)
40389:     int mem_base;
40390:     int ret_val;
40391:     int code; /* UCS code point */
40392:     int n_code;
40393: 
40394:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40395:         mem_base = xmlMemBlocks();
40396:         code = gen_int(n_code, 0);
40397: 
40398:         ret_val = xmlUCSIsHangulJamo(code);
40399:         desret_int(ret_val);
40400:         call_tests++;
40401:         des_int(n_code, code, 0);
40402:         xmlResetLastError();
40403:         if (mem_base != xmlMemBlocks()) {
40404:             printf("Leak of %d blocks found in xmlUCSIsHangulJamo",
40405: 	           xmlMemBlocks() - mem_base);
40406: 	    test_ret++;
40407:             printf(" %d", n_code);
40408:             printf("\n");
40409:         }
40410:     }
40411:     function_tests++;
40412: #endif
40413: 
40414:     return(test_ret);
40415: }
40416: 
40417: 
40418: static int
40419: test_xmlUCSIsHangulSyllables(void) {
40420:     int test_ret = 0;
40421: 
40422: #if defined(LIBXML_UNICODE_ENABLED)
40423:     int mem_base;
40424:     int ret_val;
40425:     int code; /* UCS code point */
40426:     int n_code;
40427: 
40428:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40429:         mem_base = xmlMemBlocks();
40430:         code = gen_int(n_code, 0);
40431: 
40432:         ret_val = xmlUCSIsHangulSyllables(code);
40433:         desret_int(ret_val);
40434:         call_tests++;
40435:         des_int(n_code, code, 0);
40436:         xmlResetLastError();
40437:         if (mem_base != xmlMemBlocks()) {
40438:             printf("Leak of %d blocks found in xmlUCSIsHangulSyllables",
40439: 	           xmlMemBlocks() - mem_base);
40440: 	    test_ret++;
40441:             printf(" %d", n_code);
40442:             printf("\n");
40443:         }
40444:     }
40445:     function_tests++;
40446: #endif
40447: 
40448:     return(test_ret);
40449: }
40450: 
40451: 
40452: static int
40453: test_xmlUCSIsHanunoo(void) {
40454:     int test_ret = 0;
40455: 
40456: #if defined(LIBXML_UNICODE_ENABLED)
40457:     int mem_base;
40458:     int ret_val;
40459:     int code; /* UCS code point */
40460:     int n_code;
40461: 
40462:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40463:         mem_base = xmlMemBlocks();
40464:         code = gen_int(n_code, 0);
40465: 
40466:         ret_val = xmlUCSIsHanunoo(code);
40467:         desret_int(ret_val);
40468:         call_tests++;
40469:         des_int(n_code, code, 0);
40470:         xmlResetLastError();
40471:         if (mem_base != xmlMemBlocks()) {
40472:             printf("Leak of %d blocks found in xmlUCSIsHanunoo",
40473: 	           xmlMemBlocks() - mem_base);
40474: 	    test_ret++;
40475:             printf(" %d", n_code);
40476:             printf("\n");
40477:         }
40478:     }
40479:     function_tests++;
40480: #endif
40481: 
40482:     return(test_ret);
40483: }
40484: 
40485: 
40486: static int
40487: test_xmlUCSIsHebrew(void) {
40488:     int test_ret = 0;
40489: 
40490: #if defined(LIBXML_UNICODE_ENABLED)
40491:     int mem_base;
40492:     int ret_val;
40493:     int code; /* UCS code point */
40494:     int n_code;
40495: 
40496:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40497:         mem_base = xmlMemBlocks();
40498:         code = gen_int(n_code, 0);
40499: 
40500:         ret_val = xmlUCSIsHebrew(code);
40501:         desret_int(ret_val);
40502:         call_tests++;
40503:         des_int(n_code, code, 0);
40504:         xmlResetLastError();
40505:         if (mem_base != xmlMemBlocks()) {
40506:             printf("Leak of %d blocks found in xmlUCSIsHebrew",
40507: 	           xmlMemBlocks() - mem_base);
40508: 	    test_ret++;
40509:             printf(" %d", n_code);
40510:             printf("\n");
40511:         }
40512:     }
40513:     function_tests++;
40514: #endif
40515: 
40516:     return(test_ret);
40517: }
40518: 
40519: 
40520: static int
40521: test_xmlUCSIsHighPrivateUseSurrogates(void) {
40522:     int test_ret = 0;
40523: 
40524: #if defined(LIBXML_UNICODE_ENABLED)
40525:     int mem_base;
40526:     int ret_val;
40527:     int code; /* UCS code point */
40528:     int n_code;
40529: 
40530:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40531:         mem_base = xmlMemBlocks();
40532:         code = gen_int(n_code, 0);
40533: 
40534:         ret_val = xmlUCSIsHighPrivateUseSurrogates(code);
40535:         desret_int(ret_val);
40536:         call_tests++;
40537:         des_int(n_code, code, 0);
40538:         xmlResetLastError();
40539:         if (mem_base != xmlMemBlocks()) {
40540:             printf("Leak of %d blocks found in xmlUCSIsHighPrivateUseSurrogates",
40541: 	           xmlMemBlocks() - mem_base);
40542: 	    test_ret++;
40543:             printf(" %d", n_code);
40544:             printf("\n");
40545:         }
40546:     }
40547:     function_tests++;
40548: #endif
40549: 
40550:     return(test_ret);
40551: }
40552: 
40553: 
40554: static int
40555: test_xmlUCSIsHighSurrogates(void) {
40556:     int test_ret = 0;
40557: 
40558: #if defined(LIBXML_UNICODE_ENABLED)
40559:     int mem_base;
40560:     int ret_val;
40561:     int code; /* UCS code point */
40562:     int n_code;
40563: 
40564:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40565:         mem_base = xmlMemBlocks();
40566:         code = gen_int(n_code, 0);
40567: 
40568:         ret_val = xmlUCSIsHighSurrogates(code);
40569:         desret_int(ret_val);
40570:         call_tests++;
40571:         des_int(n_code, code, 0);
40572:         xmlResetLastError();
40573:         if (mem_base != xmlMemBlocks()) {
40574:             printf("Leak of %d blocks found in xmlUCSIsHighSurrogates",
40575: 	           xmlMemBlocks() - mem_base);
40576: 	    test_ret++;
40577:             printf(" %d", n_code);
40578:             printf("\n");
40579:         }
40580:     }
40581:     function_tests++;
40582: #endif
40583: 
40584:     return(test_ret);
40585: }
40586: 
40587: 
40588: static int
40589: test_xmlUCSIsHiragana(void) {
40590:     int test_ret = 0;
40591: 
40592: #if defined(LIBXML_UNICODE_ENABLED)
40593:     int mem_base;
40594:     int ret_val;
40595:     int code; /* UCS code point */
40596:     int n_code;
40597: 
40598:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40599:         mem_base = xmlMemBlocks();
40600:         code = gen_int(n_code, 0);
40601: 
40602:         ret_val = xmlUCSIsHiragana(code);
40603:         desret_int(ret_val);
40604:         call_tests++;
40605:         des_int(n_code, code, 0);
40606:         xmlResetLastError();
40607:         if (mem_base != xmlMemBlocks()) {
40608:             printf("Leak of %d blocks found in xmlUCSIsHiragana",
40609: 	           xmlMemBlocks() - mem_base);
40610: 	    test_ret++;
40611:             printf(" %d", n_code);
40612:             printf("\n");
40613:         }
40614:     }
40615:     function_tests++;
40616: #endif
40617: 
40618:     return(test_ret);
40619: }
40620: 
40621: 
40622: static int
40623: test_xmlUCSIsIPAExtensions(void) {
40624:     int test_ret = 0;
40625: 
40626: #if defined(LIBXML_UNICODE_ENABLED)
40627:     int mem_base;
40628:     int ret_val;
40629:     int code; /* UCS code point */
40630:     int n_code;
40631: 
40632:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40633:         mem_base = xmlMemBlocks();
40634:         code = gen_int(n_code, 0);
40635: 
40636:         ret_val = xmlUCSIsIPAExtensions(code);
40637:         desret_int(ret_val);
40638:         call_tests++;
40639:         des_int(n_code, code, 0);
40640:         xmlResetLastError();
40641:         if (mem_base != xmlMemBlocks()) {
40642:             printf("Leak of %d blocks found in xmlUCSIsIPAExtensions",
40643: 	           xmlMemBlocks() - mem_base);
40644: 	    test_ret++;
40645:             printf(" %d", n_code);
40646:             printf("\n");
40647:         }
40648:     }
40649:     function_tests++;
40650: #endif
40651: 
40652:     return(test_ret);
40653: }
40654: 
40655: 
40656: static int
40657: test_xmlUCSIsIdeographicDescriptionCharacters(void) {
40658:     int test_ret = 0;
40659: 
40660: #if defined(LIBXML_UNICODE_ENABLED)
40661:     int mem_base;
40662:     int ret_val;
40663:     int code; /* UCS code point */
40664:     int n_code;
40665: 
40666:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40667:         mem_base = xmlMemBlocks();
40668:         code = gen_int(n_code, 0);
40669: 
40670:         ret_val = xmlUCSIsIdeographicDescriptionCharacters(code);
40671:         desret_int(ret_val);
40672:         call_tests++;
40673:         des_int(n_code, code, 0);
40674:         xmlResetLastError();
40675:         if (mem_base != xmlMemBlocks()) {
40676:             printf("Leak of %d blocks found in xmlUCSIsIdeographicDescriptionCharacters",
40677: 	           xmlMemBlocks() - mem_base);
40678: 	    test_ret++;
40679:             printf(" %d", n_code);
40680:             printf("\n");
40681:         }
40682:     }
40683:     function_tests++;
40684: #endif
40685: 
40686:     return(test_ret);
40687: }
40688: 
40689: 
40690: static int
40691: test_xmlUCSIsKanbun(void) {
40692:     int test_ret = 0;
40693: 
40694: #if defined(LIBXML_UNICODE_ENABLED)
40695:     int mem_base;
40696:     int ret_val;
40697:     int code; /* UCS code point */
40698:     int n_code;
40699: 
40700:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40701:         mem_base = xmlMemBlocks();
40702:         code = gen_int(n_code, 0);
40703: 
40704:         ret_val = xmlUCSIsKanbun(code);
40705:         desret_int(ret_val);
40706:         call_tests++;
40707:         des_int(n_code, code, 0);
40708:         xmlResetLastError();
40709:         if (mem_base != xmlMemBlocks()) {
40710:             printf("Leak of %d blocks found in xmlUCSIsKanbun",
40711: 	           xmlMemBlocks() - mem_base);
40712: 	    test_ret++;
40713:             printf(" %d", n_code);
40714:             printf("\n");
40715:         }
40716:     }
40717:     function_tests++;
40718: #endif
40719: 
40720:     return(test_ret);
40721: }
40722: 
40723: 
40724: static int
40725: test_xmlUCSIsKangxiRadicals(void) {
40726:     int test_ret = 0;
40727: 
40728: #if defined(LIBXML_UNICODE_ENABLED)
40729:     int mem_base;
40730:     int ret_val;
40731:     int code; /* UCS code point */
40732:     int n_code;
40733: 
40734:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40735:         mem_base = xmlMemBlocks();
40736:         code = gen_int(n_code, 0);
40737: 
40738:         ret_val = xmlUCSIsKangxiRadicals(code);
40739:         desret_int(ret_val);
40740:         call_tests++;
40741:         des_int(n_code, code, 0);
40742:         xmlResetLastError();
40743:         if (mem_base != xmlMemBlocks()) {
40744:             printf("Leak of %d blocks found in xmlUCSIsKangxiRadicals",
40745: 	           xmlMemBlocks() - mem_base);
40746: 	    test_ret++;
40747:             printf(" %d", n_code);
40748:             printf("\n");
40749:         }
40750:     }
40751:     function_tests++;
40752: #endif
40753: 
40754:     return(test_ret);
40755: }
40756: 
40757: 
40758: static int
40759: test_xmlUCSIsKannada(void) {
40760:     int test_ret = 0;
40761: 
40762: #if defined(LIBXML_UNICODE_ENABLED)
40763:     int mem_base;
40764:     int ret_val;
40765:     int code; /* UCS code point */
40766:     int n_code;
40767: 
40768:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40769:         mem_base = xmlMemBlocks();
40770:         code = gen_int(n_code, 0);
40771: 
40772:         ret_val = xmlUCSIsKannada(code);
40773:         desret_int(ret_val);
40774:         call_tests++;
40775:         des_int(n_code, code, 0);
40776:         xmlResetLastError();
40777:         if (mem_base != xmlMemBlocks()) {
40778:             printf("Leak of %d blocks found in xmlUCSIsKannada",
40779: 	           xmlMemBlocks() - mem_base);
40780: 	    test_ret++;
40781:             printf(" %d", n_code);
40782:             printf("\n");
40783:         }
40784:     }
40785:     function_tests++;
40786: #endif
40787: 
40788:     return(test_ret);
40789: }
40790: 
40791: 
40792: static int
40793: test_xmlUCSIsKatakana(void) {
40794:     int test_ret = 0;
40795: 
40796: #if defined(LIBXML_UNICODE_ENABLED)
40797:     int mem_base;
40798:     int ret_val;
40799:     int code; /* UCS code point */
40800:     int n_code;
40801: 
40802:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40803:         mem_base = xmlMemBlocks();
40804:         code = gen_int(n_code, 0);
40805: 
40806:         ret_val = xmlUCSIsKatakana(code);
40807:         desret_int(ret_val);
40808:         call_tests++;
40809:         des_int(n_code, code, 0);
40810:         xmlResetLastError();
40811:         if (mem_base != xmlMemBlocks()) {
40812:             printf("Leak of %d blocks found in xmlUCSIsKatakana",
40813: 	           xmlMemBlocks() - mem_base);
40814: 	    test_ret++;
40815:             printf(" %d", n_code);
40816:             printf("\n");
40817:         }
40818:     }
40819:     function_tests++;
40820: #endif
40821: 
40822:     return(test_ret);
40823: }
40824: 
40825: 
40826: static int
40827: test_xmlUCSIsKatakanaPhoneticExtensions(void) {
40828:     int test_ret = 0;
40829: 
40830: #if defined(LIBXML_UNICODE_ENABLED)
40831:     int mem_base;
40832:     int ret_val;
40833:     int code; /* UCS code point */
40834:     int n_code;
40835: 
40836:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40837:         mem_base = xmlMemBlocks();
40838:         code = gen_int(n_code, 0);
40839: 
40840:         ret_val = xmlUCSIsKatakanaPhoneticExtensions(code);
40841:         desret_int(ret_val);
40842:         call_tests++;
40843:         des_int(n_code, code, 0);
40844:         xmlResetLastError();
40845:         if (mem_base != xmlMemBlocks()) {
40846:             printf("Leak of %d blocks found in xmlUCSIsKatakanaPhoneticExtensions",
40847: 	           xmlMemBlocks() - mem_base);
40848: 	    test_ret++;
40849:             printf(" %d", n_code);
40850:             printf("\n");
40851:         }
40852:     }
40853:     function_tests++;
40854: #endif
40855: 
40856:     return(test_ret);
40857: }
40858: 
40859: 
40860: static int
40861: test_xmlUCSIsKhmer(void) {
40862:     int test_ret = 0;
40863: 
40864: #if defined(LIBXML_UNICODE_ENABLED)
40865:     int mem_base;
40866:     int ret_val;
40867:     int code; /* UCS code point */
40868:     int n_code;
40869: 
40870:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40871:         mem_base = xmlMemBlocks();
40872:         code = gen_int(n_code, 0);
40873: 
40874:         ret_val = xmlUCSIsKhmer(code);
40875:         desret_int(ret_val);
40876:         call_tests++;
40877:         des_int(n_code, code, 0);
40878:         xmlResetLastError();
40879:         if (mem_base != xmlMemBlocks()) {
40880:             printf("Leak of %d blocks found in xmlUCSIsKhmer",
40881: 	           xmlMemBlocks() - mem_base);
40882: 	    test_ret++;
40883:             printf(" %d", n_code);
40884:             printf("\n");
40885:         }
40886:     }
40887:     function_tests++;
40888: #endif
40889: 
40890:     return(test_ret);
40891: }
40892: 
40893: 
40894: static int
40895: test_xmlUCSIsKhmerSymbols(void) {
40896:     int test_ret = 0;
40897: 
40898: #if defined(LIBXML_UNICODE_ENABLED)
40899:     int mem_base;
40900:     int ret_val;
40901:     int code; /* UCS code point */
40902:     int n_code;
40903: 
40904:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40905:         mem_base = xmlMemBlocks();
40906:         code = gen_int(n_code, 0);
40907: 
40908:         ret_val = xmlUCSIsKhmerSymbols(code);
40909:         desret_int(ret_val);
40910:         call_tests++;
40911:         des_int(n_code, code, 0);
40912:         xmlResetLastError();
40913:         if (mem_base != xmlMemBlocks()) {
40914:             printf("Leak of %d blocks found in xmlUCSIsKhmerSymbols",
40915: 	           xmlMemBlocks() - mem_base);
40916: 	    test_ret++;
40917:             printf(" %d", n_code);
40918:             printf("\n");
40919:         }
40920:     }
40921:     function_tests++;
40922: #endif
40923: 
40924:     return(test_ret);
40925: }
40926: 
40927: 
40928: static int
40929: test_xmlUCSIsLao(void) {
40930:     int test_ret = 0;
40931: 
40932: #if defined(LIBXML_UNICODE_ENABLED)
40933:     int mem_base;
40934:     int ret_val;
40935:     int code; /* UCS code point */
40936:     int n_code;
40937: 
40938:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40939:         mem_base = xmlMemBlocks();
40940:         code = gen_int(n_code, 0);
40941: 
40942:         ret_val = xmlUCSIsLao(code);
40943:         desret_int(ret_val);
40944:         call_tests++;
40945:         des_int(n_code, code, 0);
40946:         xmlResetLastError();
40947:         if (mem_base != xmlMemBlocks()) {
40948:             printf("Leak of %d blocks found in xmlUCSIsLao",
40949: 	           xmlMemBlocks() - mem_base);
40950: 	    test_ret++;
40951:             printf(" %d", n_code);
40952:             printf("\n");
40953:         }
40954:     }
40955:     function_tests++;
40956: #endif
40957: 
40958:     return(test_ret);
40959: }
40960: 
40961: 
40962: static int
40963: test_xmlUCSIsLatin1Supplement(void) {
40964:     int test_ret = 0;
40965: 
40966: #if defined(LIBXML_UNICODE_ENABLED)
40967:     int mem_base;
40968:     int ret_val;
40969:     int code; /* UCS code point */
40970:     int n_code;
40971: 
40972:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
40973:         mem_base = xmlMemBlocks();
40974:         code = gen_int(n_code, 0);
40975: 
40976:         ret_val = xmlUCSIsLatin1Supplement(code);
40977:         desret_int(ret_val);
40978:         call_tests++;
40979:         des_int(n_code, code, 0);
40980:         xmlResetLastError();
40981:         if (mem_base != xmlMemBlocks()) {
40982:             printf("Leak of %d blocks found in xmlUCSIsLatin1Supplement",
40983: 	           xmlMemBlocks() - mem_base);
40984: 	    test_ret++;
40985:             printf(" %d", n_code);
40986:             printf("\n");
40987:         }
40988:     }
40989:     function_tests++;
40990: #endif
40991: 
40992:     return(test_ret);
40993: }
40994: 
40995: 
40996: static int
40997: test_xmlUCSIsLatinExtendedA(void) {
40998:     int test_ret = 0;
40999: 
41000: #if defined(LIBXML_UNICODE_ENABLED)
41001:     int mem_base;
41002:     int ret_val;
41003:     int code; /* UCS code point */
41004:     int n_code;
41005: 
41006:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41007:         mem_base = xmlMemBlocks();
41008:         code = gen_int(n_code, 0);
41009: 
41010:         ret_val = xmlUCSIsLatinExtendedA(code);
41011:         desret_int(ret_val);
41012:         call_tests++;
41013:         des_int(n_code, code, 0);
41014:         xmlResetLastError();
41015:         if (mem_base != xmlMemBlocks()) {
41016:             printf("Leak of %d blocks found in xmlUCSIsLatinExtendedA",
41017: 	           xmlMemBlocks() - mem_base);
41018: 	    test_ret++;
41019:             printf(" %d", n_code);
41020:             printf("\n");
41021:         }
41022:     }
41023:     function_tests++;
41024: #endif
41025: 
41026:     return(test_ret);
41027: }
41028: 
41029: 
41030: static int
41031: test_xmlUCSIsLatinExtendedAdditional(void) {
41032:     int test_ret = 0;
41033: 
41034: #if defined(LIBXML_UNICODE_ENABLED)
41035:     int mem_base;
41036:     int ret_val;
41037:     int code; /* UCS code point */
41038:     int n_code;
41039: 
41040:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41041:         mem_base = xmlMemBlocks();
41042:         code = gen_int(n_code, 0);
41043: 
41044:         ret_val = xmlUCSIsLatinExtendedAdditional(code);
41045:         desret_int(ret_val);
41046:         call_tests++;
41047:         des_int(n_code, code, 0);
41048:         xmlResetLastError();
41049:         if (mem_base != xmlMemBlocks()) {
41050:             printf("Leak of %d blocks found in xmlUCSIsLatinExtendedAdditional",
41051: 	           xmlMemBlocks() - mem_base);
41052: 	    test_ret++;
41053:             printf(" %d", n_code);
41054:             printf("\n");
41055:         }
41056:     }
41057:     function_tests++;
41058: #endif
41059: 
41060:     return(test_ret);
41061: }
41062: 
41063: 
41064: static int
41065: test_xmlUCSIsLatinExtendedB(void) {
41066:     int test_ret = 0;
41067: 
41068: #if defined(LIBXML_UNICODE_ENABLED)
41069:     int mem_base;
41070:     int ret_val;
41071:     int code; /* UCS code point */
41072:     int n_code;
41073: 
41074:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41075:         mem_base = xmlMemBlocks();
41076:         code = gen_int(n_code, 0);
41077: 
41078:         ret_val = xmlUCSIsLatinExtendedB(code);
41079:         desret_int(ret_val);
41080:         call_tests++;
41081:         des_int(n_code, code, 0);
41082:         xmlResetLastError();
41083:         if (mem_base != xmlMemBlocks()) {
41084:             printf("Leak of %d blocks found in xmlUCSIsLatinExtendedB",
41085: 	           xmlMemBlocks() - mem_base);
41086: 	    test_ret++;
41087:             printf(" %d", n_code);
41088:             printf("\n");
41089:         }
41090:     }
41091:     function_tests++;
41092: #endif
41093: 
41094:     return(test_ret);
41095: }
41096: 
41097: 
41098: static int
41099: test_xmlUCSIsLetterlikeSymbols(void) {
41100:     int test_ret = 0;
41101: 
41102: #if defined(LIBXML_UNICODE_ENABLED)
41103:     int mem_base;
41104:     int ret_val;
41105:     int code; /* UCS code point */
41106:     int n_code;
41107: 
41108:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41109:         mem_base = xmlMemBlocks();
41110:         code = gen_int(n_code, 0);
41111: 
41112:         ret_val = xmlUCSIsLetterlikeSymbols(code);
41113:         desret_int(ret_val);
41114:         call_tests++;
41115:         des_int(n_code, code, 0);
41116:         xmlResetLastError();
41117:         if (mem_base != xmlMemBlocks()) {
41118:             printf("Leak of %d blocks found in xmlUCSIsLetterlikeSymbols",
41119: 	           xmlMemBlocks() - mem_base);
41120: 	    test_ret++;
41121:             printf(" %d", n_code);
41122:             printf("\n");
41123:         }
41124:     }
41125:     function_tests++;
41126: #endif
41127: 
41128:     return(test_ret);
41129: }
41130: 
41131: 
41132: static int
41133: test_xmlUCSIsLimbu(void) {
41134:     int test_ret = 0;
41135: 
41136: #if defined(LIBXML_UNICODE_ENABLED)
41137:     int mem_base;
41138:     int ret_val;
41139:     int code; /* UCS code point */
41140:     int n_code;
41141: 
41142:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41143:         mem_base = xmlMemBlocks();
41144:         code = gen_int(n_code, 0);
41145: 
41146:         ret_val = xmlUCSIsLimbu(code);
41147:         desret_int(ret_val);
41148:         call_tests++;
41149:         des_int(n_code, code, 0);
41150:         xmlResetLastError();
41151:         if (mem_base != xmlMemBlocks()) {
41152:             printf("Leak of %d blocks found in xmlUCSIsLimbu",
41153: 	           xmlMemBlocks() - mem_base);
41154: 	    test_ret++;
41155:             printf(" %d", n_code);
41156:             printf("\n");
41157:         }
41158:     }
41159:     function_tests++;
41160: #endif
41161: 
41162:     return(test_ret);
41163: }
41164: 
41165: 
41166: static int
41167: test_xmlUCSIsLinearBIdeograms(void) {
41168:     int test_ret = 0;
41169: 
41170: #if defined(LIBXML_UNICODE_ENABLED)
41171:     int mem_base;
41172:     int ret_val;
41173:     int code; /* UCS code point */
41174:     int n_code;
41175: 
41176:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41177:         mem_base = xmlMemBlocks();
41178:         code = gen_int(n_code, 0);
41179: 
41180:         ret_val = xmlUCSIsLinearBIdeograms(code);
41181:         desret_int(ret_val);
41182:         call_tests++;
41183:         des_int(n_code, code, 0);
41184:         xmlResetLastError();
41185:         if (mem_base != xmlMemBlocks()) {
41186:             printf("Leak of %d blocks found in xmlUCSIsLinearBIdeograms",
41187: 	           xmlMemBlocks() - mem_base);
41188: 	    test_ret++;
41189:             printf(" %d", n_code);
41190:             printf("\n");
41191:         }
41192:     }
41193:     function_tests++;
41194: #endif
41195: 
41196:     return(test_ret);
41197: }
41198: 
41199: 
41200: static int
41201: test_xmlUCSIsLinearBSyllabary(void) {
41202:     int test_ret = 0;
41203: 
41204: #if defined(LIBXML_UNICODE_ENABLED)
41205:     int mem_base;
41206:     int ret_val;
41207:     int code; /* UCS code point */
41208:     int n_code;
41209: 
41210:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41211:         mem_base = xmlMemBlocks();
41212:         code = gen_int(n_code, 0);
41213: 
41214:         ret_val = xmlUCSIsLinearBSyllabary(code);
41215:         desret_int(ret_val);
41216:         call_tests++;
41217:         des_int(n_code, code, 0);
41218:         xmlResetLastError();
41219:         if (mem_base != xmlMemBlocks()) {
41220:             printf("Leak of %d blocks found in xmlUCSIsLinearBSyllabary",
41221: 	           xmlMemBlocks() - mem_base);
41222: 	    test_ret++;
41223:             printf(" %d", n_code);
41224:             printf("\n");
41225:         }
41226:     }
41227:     function_tests++;
41228: #endif
41229: 
41230:     return(test_ret);
41231: }
41232: 
41233: 
41234: static int
41235: test_xmlUCSIsLowSurrogates(void) {
41236:     int test_ret = 0;
41237: 
41238: #if defined(LIBXML_UNICODE_ENABLED)
41239:     int mem_base;
41240:     int ret_val;
41241:     int code; /* UCS code point */
41242:     int n_code;
41243: 
41244:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41245:         mem_base = xmlMemBlocks();
41246:         code = gen_int(n_code, 0);
41247: 
41248:         ret_val = xmlUCSIsLowSurrogates(code);
41249:         desret_int(ret_val);
41250:         call_tests++;
41251:         des_int(n_code, code, 0);
41252:         xmlResetLastError();
41253:         if (mem_base != xmlMemBlocks()) {
41254:             printf("Leak of %d blocks found in xmlUCSIsLowSurrogates",
41255: 	           xmlMemBlocks() - mem_base);
41256: 	    test_ret++;
41257:             printf(" %d", n_code);
41258:             printf("\n");
41259:         }
41260:     }
41261:     function_tests++;
41262: #endif
41263: 
41264:     return(test_ret);
41265: }
41266: 
41267: 
41268: static int
41269: test_xmlUCSIsMalayalam(void) {
41270:     int test_ret = 0;
41271: 
41272: #if defined(LIBXML_UNICODE_ENABLED)
41273:     int mem_base;
41274:     int ret_val;
41275:     int code; /* UCS code point */
41276:     int n_code;
41277: 
41278:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41279:         mem_base = xmlMemBlocks();
41280:         code = gen_int(n_code, 0);
41281: 
41282:         ret_val = xmlUCSIsMalayalam(code);
41283:         desret_int(ret_val);
41284:         call_tests++;
41285:         des_int(n_code, code, 0);
41286:         xmlResetLastError();
41287:         if (mem_base != xmlMemBlocks()) {
41288:             printf("Leak of %d blocks found in xmlUCSIsMalayalam",
41289: 	           xmlMemBlocks() - mem_base);
41290: 	    test_ret++;
41291:             printf(" %d", n_code);
41292:             printf("\n");
41293:         }
41294:     }
41295:     function_tests++;
41296: #endif
41297: 
41298:     return(test_ret);
41299: }
41300: 
41301: 
41302: static int
41303: test_xmlUCSIsMathematicalAlphanumericSymbols(void) {
41304:     int test_ret = 0;
41305: 
41306: #if defined(LIBXML_UNICODE_ENABLED)
41307:     int mem_base;
41308:     int ret_val;
41309:     int code; /* UCS code point */
41310:     int n_code;
41311: 
41312:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41313:         mem_base = xmlMemBlocks();
41314:         code = gen_int(n_code, 0);
41315: 
41316:         ret_val = xmlUCSIsMathematicalAlphanumericSymbols(code);
41317:         desret_int(ret_val);
41318:         call_tests++;
41319:         des_int(n_code, code, 0);
41320:         xmlResetLastError();
41321:         if (mem_base != xmlMemBlocks()) {
41322:             printf("Leak of %d blocks found in xmlUCSIsMathematicalAlphanumericSymbols",
41323: 	           xmlMemBlocks() - mem_base);
41324: 	    test_ret++;
41325:             printf(" %d", n_code);
41326:             printf("\n");
41327:         }
41328:     }
41329:     function_tests++;
41330: #endif
41331: 
41332:     return(test_ret);
41333: }
41334: 
41335: 
41336: static int
41337: test_xmlUCSIsMathematicalOperators(void) {
41338:     int test_ret = 0;
41339: 
41340: #if defined(LIBXML_UNICODE_ENABLED)
41341:     int mem_base;
41342:     int ret_val;
41343:     int code; /* UCS code point */
41344:     int n_code;
41345: 
41346:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41347:         mem_base = xmlMemBlocks();
41348:         code = gen_int(n_code, 0);
41349: 
41350:         ret_val = xmlUCSIsMathematicalOperators(code);
41351:         desret_int(ret_val);
41352:         call_tests++;
41353:         des_int(n_code, code, 0);
41354:         xmlResetLastError();
41355:         if (mem_base != xmlMemBlocks()) {
41356:             printf("Leak of %d blocks found in xmlUCSIsMathematicalOperators",
41357: 	           xmlMemBlocks() - mem_base);
41358: 	    test_ret++;
41359:             printf(" %d", n_code);
41360:             printf("\n");
41361:         }
41362:     }
41363:     function_tests++;
41364: #endif
41365: 
41366:     return(test_ret);
41367: }
41368: 
41369: 
41370: static int
41371: test_xmlUCSIsMiscellaneousMathematicalSymbolsA(void) {
41372:     int test_ret = 0;
41373: 
41374: #if defined(LIBXML_UNICODE_ENABLED)
41375:     int mem_base;
41376:     int ret_val;
41377:     int code; /* UCS code point */
41378:     int n_code;
41379: 
41380:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41381:         mem_base = xmlMemBlocks();
41382:         code = gen_int(n_code, 0);
41383: 
41384:         ret_val = xmlUCSIsMiscellaneousMathematicalSymbolsA(code);
41385:         desret_int(ret_val);
41386:         call_tests++;
41387:         des_int(n_code, code, 0);
41388:         xmlResetLastError();
41389:         if (mem_base != xmlMemBlocks()) {
41390:             printf("Leak of %d blocks found in xmlUCSIsMiscellaneousMathematicalSymbolsA",
41391: 	           xmlMemBlocks() - mem_base);
41392: 	    test_ret++;
41393:             printf(" %d", n_code);
41394:             printf("\n");
41395:         }
41396:     }
41397:     function_tests++;
41398: #endif
41399: 
41400:     return(test_ret);
41401: }
41402: 
41403: 
41404: static int
41405: test_xmlUCSIsMiscellaneousMathematicalSymbolsB(void) {
41406:     int test_ret = 0;
41407: 
41408: #if defined(LIBXML_UNICODE_ENABLED)
41409:     int mem_base;
41410:     int ret_val;
41411:     int code; /* UCS code point */
41412:     int n_code;
41413: 
41414:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41415:         mem_base = xmlMemBlocks();
41416:         code = gen_int(n_code, 0);
41417: 
41418:         ret_val = xmlUCSIsMiscellaneousMathematicalSymbolsB(code);
41419:         desret_int(ret_val);
41420:         call_tests++;
41421:         des_int(n_code, code, 0);
41422:         xmlResetLastError();
41423:         if (mem_base != xmlMemBlocks()) {
41424:             printf("Leak of %d blocks found in xmlUCSIsMiscellaneousMathematicalSymbolsB",
41425: 	           xmlMemBlocks() - mem_base);
41426: 	    test_ret++;
41427:             printf(" %d", n_code);
41428:             printf("\n");
41429:         }
41430:     }
41431:     function_tests++;
41432: #endif
41433: 
41434:     return(test_ret);
41435: }
41436: 
41437: 
41438: static int
41439: test_xmlUCSIsMiscellaneousSymbols(void) {
41440:     int test_ret = 0;
41441: 
41442: #if defined(LIBXML_UNICODE_ENABLED)
41443:     int mem_base;
41444:     int ret_val;
41445:     int code; /* UCS code point */
41446:     int n_code;
41447: 
41448:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41449:         mem_base = xmlMemBlocks();
41450:         code = gen_int(n_code, 0);
41451: 
41452:         ret_val = xmlUCSIsMiscellaneousSymbols(code);
41453:         desret_int(ret_val);
41454:         call_tests++;
41455:         des_int(n_code, code, 0);
41456:         xmlResetLastError();
41457:         if (mem_base != xmlMemBlocks()) {
41458:             printf("Leak of %d blocks found in xmlUCSIsMiscellaneousSymbols",
41459: 	           xmlMemBlocks() - mem_base);
41460: 	    test_ret++;
41461:             printf(" %d", n_code);
41462:             printf("\n");
41463:         }
41464:     }
41465:     function_tests++;
41466: #endif
41467: 
41468:     return(test_ret);
41469: }
41470: 
41471: 
41472: static int
41473: test_xmlUCSIsMiscellaneousSymbolsandArrows(void) {
41474:     int test_ret = 0;
41475: 
41476: #if defined(LIBXML_UNICODE_ENABLED)
41477:     int mem_base;
41478:     int ret_val;
41479:     int code; /* UCS code point */
41480:     int n_code;
41481: 
41482:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41483:         mem_base = xmlMemBlocks();
41484:         code = gen_int(n_code, 0);
41485: 
41486:         ret_val = xmlUCSIsMiscellaneousSymbolsandArrows(code);
41487:         desret_int(ret_val);
41488:         call_tests++;
41489:         des_int(n_code, code, 0);
41490:         xmlResetLastError();
41491:         if (mem_base != xmlMemBlocks()) {
41492:             printf("Leak of %d blocks found in xmlUCSIsMiscellaneousSymbolsandArrows",
41493: 	           xmlMemBlocks() - mem_base);
41494: 	    test_ret++;
41495:             printf(" %d", n_code);
41496:             printf("\n");
41497:         }
41498:     }
41499:     function_tests++;
41500: #endif
41501: 
41502:     return(test_ret);
41503: }
41504: 
41505: 
41506: static int
41507: test_xmlUCSIsMiscellaneousTechnical(void) {
41508:     int test_ret = 0;
41509: 
41510: #if defined(LIBXML_UNICODE_ENABLED)
41511:     int mem_base;
41512:     int ret_val;
41513:     int code; /* UCS code point */
41514:     int n_code;
41515: 
41516:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41517:         mem_base = xmlMemBlocks();
41518:         code = gen_int(n_code, 0);
41519: 
41520:         ret_val = xmlUCSIsMiscellaneousTechnical(code);
41521:         desret_int(ret_val);
41522:         call_tests++;
41523:         des_int(n_code, code, 0);
41524:         xmlResetLastError();
41525:         if (mem_base != xmlMemBlocks()) {
41526:             printf("Leak of %d blocks found in xmlUCSIsMiscellaneousTechnical",
41527: 	           xmlMemBlocks() - mem_base);
41528: 	    test_ret++;
41529:             printf(" %d", n_code);
41530:             printf("\n");
41531:         }
41532:     }
41533:     function_tests++;
41534: #endif
41535: 
41536:     return(test_ret);
41537: }
41538: 
41539: 
41540: static int
41541: test_xmlUCSIsMongolian(void) {
41542:     int test_ret = 0;
41543: 
41544: #if defined(LIBXML_UNICODE_ENABLED)
41545:     int mem_base;
41546:     int ret_val;
41547:     int code; /* UCS code point */
41548:     int n_code;
41549: 
41550:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41551:         mem_base = xmlMemBlocks();
41552:         code = gen_int(n_code, 0);
41553: 
41554:         ret_val = xmlUCSIsMongolian(code);
41555:         desret_int(ret_val);
41556:         call_tests++;
41557:         des_int(n_code, code, 0);
41558:         xmlResetLastError();
41559:         if (mem_base != xmlMemBlocks()) {
41560:             printf("Leak of %d blocks found in xmlUCSIsMongolian",
41561: 	           xmlMemBlocks() - mem_base);
41562: 	    test_ret++;
41563:             printf(" %d", n_code);
41564:             printf("\n");
41565:         }
41566:     }
41567:     function_tests++;
41568: #endif
41569: 
41570:     return(test_ret);
41571: }
41572: 
41573: 
41574: static int
41575: test_xmlUCSIsMusicalSymbols(void) {
41576:     int test_ret = 0;
41577: 
41578: #if defined(LIBXML_UNICODE_ENABLED)
41579:     int mem_base;
41580:     int ret_val;
41581:     int code; /* UCS code point */
41582:     int n_code;
41583: 
41584:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41585:         mem_base = xmlMemBlocks();
41586:         code = gen_int(n_code, 0);
41587: 
41588:         ret_val = xmlUCSIsMusicalSymbols(code);
41589:         desret_int(ret_val);
41590:         call_tests++;
41591:         des_int(n_code, code, 0);
41592:         xmlResetLastError();
41593:         if (mem_base != xmlMemBlocks()) {
41594:             printf("Leak of %d blocks found in xmlUCSIsMusicalSymbols",
41595: 	           xmlMemBlocks() - mem_base);
41596: 	    test_ret++;
41597:             printf(" %d", n_code);
41598:             printf("\n");
41599:         }
41600:     }
41601:     function_tests++;
41602: #endif
41603: 
41604:     return(test_ret);
41605: }
41606: 
41607: 
41608: static int
41609: test_xmlUCSIsMyanmar(void) {
41610:     int test_ret = 0;
41611: 
41612: #if defined(LIBXML_UNICODE_ENABLED)
41613:     int mem_base;
41614:     int ret_val;
41615:     int code; /* UCS code point */
41616:     int n_code;
41617: 
41618:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41619:         mem_base = xmlMemBlocks();
41620:         code = gen_int(n_code, 0);
41621: 
41622:         ret_val = xmlUCSIsMyanmar(code);
41623:         desret_int(ret_val);
41624:         call_tests++;
41625:         des_int(n_code, code, 0);
41626:         xmlResetLastError();
41627:         if (mem_base != xmlMemBlocks()) {
41628:             printf("Leak of %d blocks found in xmlUCSIsMyanmar",
41629: 	           xmlMemBlocks() - mem_base);
41630: 	    test_ret++;
41631:             printf(" %d", n_code);
41632:             printf("\n");
41633:         }
41634:     }
41635:     function_tests++;
41636: #endif
41637: 
41638:     return(test_ret);
41639: }
41640: 
41641: 
41642: static int
41643: test_xmlUCSIsNumberForms(void) {
41644:     int test_ret = 0;
41645: 
41646: #if defined(LIBXML_UNICODE_ENABLED)
41647:     int mem_base;
41648:     int ret_val;
41649:     int code; /* UCS code point */
41650:     int n_code;
41651: 
41652:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41653:         mem_base = xmlMemBlocks();
41654:         code = gen_int(n_code, 0);
41655: 
41656:         ret_val = xmlUCSIsNumberForms(code);
41657:         desret_int(ret_val);
41658:         call_tests++;
41659:         des_int(n_code, code, 0);
41660:         xmlResetLastError();
41661:         if (mem_base != xmlMemBlocks()) {
41662:             printf("Leak of %d blocks found in xmlUCSIsNumberForms",
41663: 	           xmlMemBlocks() - mem_base);
41664: 	    test_ret++;
41665:             printf(" %d", n_code);
41666:             printf("\n");
41667:         }
41668:     }
41669:     function_tests++;
41670: #endif
41671: 
41672:     return(test_ret);
41673: }
41674: 
41675: 
41676: static int
41677: test_xmlUCSIsOgham(void) {
41678:     int test_ret = 0;
41679: 
41680: #if defined(LIBXML_UNICODE_ENABLED)
41681:     int mem_base;
41682:     int ret_val;
41683:     int code; /* UCS code point */
41684:     int n_code;
41685: 
41686:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41687:         mem_base = xmlMemBlocks();
41688:         code = gen_int(n_code, 0);
41689: 
41690:         ret_val = xmlUCSIsOgham(code);
41691:         desret_int(ret_val);
41692:         call_tests++;
41693:         des_int(n_code, code, 0);
41694:         xmlResetLastError();
41695:         if (mem_base != xmlMemBlocks()) {
41696:             printf("Leak of %d blocks found in xmlUCSIsOgham",
41697: 	           xmlMemBlocks() - mem_base);
41698: 	    test_ret++;
41699:             printf(" %d", n_code);
41700:             printf("\n");
41701:         }
41702:     }
41703:     function_tests++;
41704: #endif
41705: 
41706:     return(test_ret);
41707: }
41708: 
41709: 
41710: static int
41711: test_xmlUCSIsOldItalic(void) {
41712:     int test_ret = 0;
41713: 
41714: #if defined(LIBXML_UNICODE_ENABLED)
41715:     int mem_base;
41716:     int ret_val;
41717:     int code; /* UCS code point */
41718:     int n_code;
41719: 
41720:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41721:         mem_base = xmlMemBlocks();
41722:         code = gen_int(n_code, 0);
41723: 
41724:         ret_val = xmlUCSIsOldItalic(code);
41725:         desret_int(ret_val);
41726:         call_tests++;
41727:         des_int(n_code, code, 0);
41728:         xmlResetLastError();
41729:         if (mem_base != xmlMemBlocks()) {
41730:             printf("Leak of %d blocks found in xmlUCSIsOldItalic",
41731: 	           xmlMemBlocks() - mem_base);
41732: 	    test_ret++;
41733:             printf(" %d", n_code);
41734:             printf("\n");
41735:         }
41736:     }
41737:     function_tests++;
41738: #endif
41739: 
41740:     return(test_ret);
41741: }
41742: 
41743: 
41744: static int
41745: test_xmlUCSIsOpticalCharacterRecognition(void) {
41746:     int test_ret = 0;
41747: 
41748: #if defined(LIBXML_UNICODE_ENABLED)
41749:     int mem_base;
41750:     int ret_val;
41751:     int code; /* UCS code point */
41752:     int n_code;
41753: 
41754:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41755:         mem_base = xmlMemBlocks();
41756:         code = gen_int(n_code, 0);
41757: 
41758:         ret_val = xmlUCSIsOpticalCharacterRecognition(code);
41759:         desret_int(ret_val);
41760:         call_tests++;
41761:         des_int(n_code, code, 0);
41762:         xmlResetLastError();
41763:         if (mem_base != xmlMemBlocks()) {
41764:             printf("Leak of %d blocks found in xmlUCSIsOpticalCharacterRecognition",
41765: 	           xmlMemBlocks() - mem_base);
41766: 	    test_ret++;
41767:             printf(" %d", n_code);
41768:             printf("\n");
41769:         }
41770:     }
41771:     function_tests++;
41772: #endif
41773: 
41774:     return(test_ret);
41775: }
41776: 
41777: 
41778: static int
41779: test_xmlUCSIsOriya(void) {
41780:     int test_ret = 0;
41781: 
41782: #if defined(LIBXML_UNICODE_ENABLED)
41783:     int mem_base;
41784:     int ret_val;
41785:     int code; /* UCS code point */
41786:     int n_code;
41787: 
41788:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41789:         mem_base = xmlMemBlocks();
41790:         code = gen_int(n_code, 0);
41791: 
41792:         ret_val = xmlUCSIsOriya(code);
41793:         desret_int(ret_val);
41794:         call_tests++;
41795:         des_int(n_code, code, 0);
41796:         xmlResetLastError();
41797:         if (mem_base != xmlMemBlocks()) {
41798:             printf("Leak of %d blocks found in xmlUCSIsOriya",
41799: 	           xmlMemBlocks() - mem_base);
41800: 	    test_ret++;
41801:             printf(" %d", n_code);
41802:             printf("\n");
41803:         }
41804:     }
41805:     function_tests++;
41806: #endif
41807: 
41808:     return(test_ret);
41809: }
41810: 
41811: 
41812: static int
41813: test_xmlUCSIsOsmanya(void) {
41814:     int test_ret = 0;
41815: 
41816: #if defined(LIBXML_UNICODE_ENABLED)
41817:     int mem_base;
41818:     int ret_val;
41819:     int code; /* UCS code point */
41820:     int n_code;
41821: 
41822:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41823:         mem_base = xmlMemBlocks();
41824:         code = gen_int(n_code, 0);
41825: 
41826:         ret_val = xmlUCSIsOsmanya(code);
41827:         desret_int(ret_val);
41828:         call_tests++;
41829:         des_int(n_code, code, 0);
41830:         xmlResetLastError();
41831:         if (mem_base != xmlMemBlocks()) {
41832:             printf("Leak of %d blocks found in xmlUCSIsOsmanya",
41833: 	           xmlMemBlocks() - mem_base);
41834: 	    test_ret++;
41835:             printf(" %d", n_code);
41836:             printf("\n");
41837:         }
41838:     }
41839:     function_tests++;
41840: #endif
41841: 
41842:     return(test_ret);
41843: }
41844: 
41845: 
41846: static int
41847: test_xmlUCSIsPhoneticExtensions(void) {
41848:     int test_ret = 0;
41849: 
41850: #if defined(LIBXML_UNICODE_ENABLED)
41851:     int mem_base;
41852:     int ret_val;
41853:     int code; /* UCS code point */
41854:     int n_code;
41855: 
41856:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41857:         mem_base = xmlMemBlocks();
41858:         code = gen_int(n_code, 0);
41859: 
41860:         ret_val = xmlUCSIsPhoneticExtensions(code);
41861:         desret_int(ret_val);
41862:         call_tests++;
41863:         des_int(n_code, code, 0);
41864:         xmlResetLastError();
41865:         if (mem_base != xmlMemBlocks()) {
41866:             printf("Leak of %d blocks found in xmlUCSIsPhoneticExtensions",
41867: 	           xmlMemBlocks() - mem_base);
41868: 	    test_ret++;
41869:             printf(" %d", n_code);
41870:             printf("\n");
41871:         }
41872:     }
41873:     function_tests++;
41874: #endif
41875: 
41876:     return(test_ret);
41877: }
41878: 
41879: 
41880: static int
41881: test_xmlUCSIsPrivateUse(void) {
41882:     int test_ret = 0;
41883: 
41884: #if defined(LIBXML_UNICODE_ENABLED)
41885:     int mem_base;
41886:     int ret_val;
41887:     int code; /* UCS code point */
41888:     int n_code;
41889: 
41890:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41891:         mem_base = xmlMemBlocks();
41892:         code = gen_int(n_code, 0);
41893: 
41894:         ret_val = xmlUCSIsPrivateUse(code);
41895:         desret_int(ret_val);
41896:         call_tests++;
41897:         des_int(n_code, code, 0);
41898:         xmlResetLastError();
41899:         if (mem_base != xmlMemBlocks()) {
41900:             printf("Leak of %d blocks found in xmlUCSIsPrivateUse",
41901: 	           xmlMemBlocks() - mem_base);
41902: 	    test_ret++;
41903:             printf(" %d", n_code);
41904:             printf("\n");
41905:         }
41906:     }
41907:     function_tests++;
41908: #endif
41909: 
41910:     return(test_ret);
41911: }
41912: 
41913: 
41914: static int
41915: test_xmlUCSIsPrivateUseArea(void) {
41916:     int test_ret = 0;
41917: 
41918: #if defined(LIBXML_UNICODE_ENABLED)
41919:     int mem_base;
41920:     int ret_val;
41921:     int code; /* UCS code point */
41922:     int n_code;
41923: 
41924:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41925:         mem_base = xmlMemBlocks();
41926:         code = gen_int(n_code, 0);
41927: 
41928:         ret_val = xmlUCSIsPrivateUseArea(code);
41929:         desret_int(ret_val);
41930:         call_tests++;
41931:         des_int(n_code, code, 0);
41932:         xmlResetLastError();
41933:         if (mem_base != xmlMemBlocks()) {
41934:             printf("Leak of %d blocks found in xmlUCSIsPrivateUseArea",
41935: 	           xmlMemBlocks() - mem_base);
41936: 	    test_ret++;
41937:             printf(" %d", n_code);
41938:             printf("\n");
41939:         }
41940:     }
41941:     function_tests++;
41942: #endif
41943: 
41944:     return(test_ret);
41945: }
41946: 
41947: 
41948: static int
41949: test_xmlUCSIsRunic(void) {
41950:     int test_ret = 0;
41951: 
41952: #if defined(LIBXML_UNICODE_ENABLED)
41953:     int mem_base;
41954:     int ret_val;
41955:     int code; /* UCS code point */
41956:     int n_code;
41957: 
41958:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41959:         mem_base = xmlMemBlocks();
41960:         code = gen_int(n_code, 0);
41961: 
41962:         ret_val = xmlUCSIsRunic(code);
41963:         desret_int(ret_val);
41964:         call_tests++;
41965:         des_int(n_code, code, 0);
41966:         xmlResetLastError();
41967:         if (mem_base != xmlMemBlocks()) {
41968:             printf("Leak of %d blocks found in xmlUCSIsRunic",
41969: 	           xmlMemBlocks() - mem_base);
41970: 	    test_ret++;
41971:             printf(" %d", n_code);
41972:             printf("\n");
41973:         }
41974:     }
41975:     function_tests++;
41976: #endif
41977: 
41978:     return(test_ret);
41979: }
41980: 
41981: 
41982: static int
41983: test_xmlUCSIsShavian(void) {
41984:     int test_ret = 0;
41985: 
41986: #if defined(LIBXML_UNICODE_ENABLED)
41987:     int mem_base;
41988:     int ret_val;
41989:     int code; /* UCS code point */
41990:     int n_code;
41991: 
41992:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
41993:         mem_base = xmlMemBlocks();
41994:         code = gen_int(n_code, 0);
41995: 
41996:         ret_val = xmlUCSIsShavian(code);
41997:         desret_int(ret_val);
41998:         call_tests++;
41999:         des_int(n_code, code, 0);
42000:         xmlResetLastError();
42001:         if (mem_base != xmlMemBlocks()) {
42002:             printf("Leak of %d blocks found in xmlUCSIsShavian",
42003: 	           xmlMemBlocks() - mem_base);
42004: 	    test_ret++;
42005:             printf(" %d", n_code);
42006:             printf("\n");
42007:         }
42008:     }
42009:     function_tests++;
42010: #endif
42011: 
42012:     return(test_ret);
42013: }
42014: 
42015: 
42016: static int
42017: test_xmlUCSIsSinhala(void) {
42018:     int test_ret = 0;
42019: 
42020: #if defined(LIBXML_UNICODE_ENABLED)
42021:     int mem_base;
42022:     int ret_val;
42023:     int code; /* UCS code point */
42024:     int n_code;
42025: 
42026:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42027:         mem_base = xmlMemBlocks();
42028:         code = gen_int(n_code, 0);
42029: 
42030:         ret_val = xmlUCSIsSinhala(code);
42031:         desret_int(ret_val);
42032:         call_tests++;
42033:         des_int(n_code, code, 0);
42034:         xmlResetLastError();
42035:         if (mem_base != xmlMemBlocks()) {
42036:             printf("Leak of %d blocks found in xmlUCSIsSinhala",
42037: 	           xmlMemBlocks() - mem_base);
42038: 	    test_ret++;
42039:             printf(" %d", n_code);
42040:             printf("\n");
42041:         }
42042:     }
42043:     function_tests++;
42044: #endif
42045: 
42046:     return(test_ret);
42047: }
42048: 
42049: 
42050: static int
42051: test_xmlUCSIsSmallFormVariants(void) {
42052:     int test_ret = 0;
42053: 
42054: #if defined(LIBXML_UNICODE_ENABLED)
42055:     int mem_base;
42056:     int ret_val;
42057:     int code; /* UCS code point */
42058:     int n_code;
42059: 
42060:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42061:         mem_base = xmlMemBlocks();
42062:         code = gen_int(n_code, 0);
42063: 
42064:         ret_val = xmlUCSIsSmallFormVariants(code);
42065:         desret_int(ret_val);
42066:         call_tests++;
42067:         des_int(n_code, code, 0);
42068:         xmlResetLastError();
42069:         if (mem_base != xmlMemBlocks()) {
42070:             printf("Leak of %d blocks found in xmlUCSIsSmallFormVariants",
42071: 	           xmlMemBlocks() - mem_base);
42072: 	    test_ret++;
42073:             printf(" %d", n_code);
42074:             printf("\n");
42075:         }
42076:     }
42077:     function_tests++;
42078: #endif
42079: 
42080:     return(test_ret);
42081: }
42082: 
42083: 
42084: static int
42085: test_xmlUCSIsSpacingModifierLetters(void) {
42086:     int test_ret = 0;
42087: 
42088: #if defined(LIBXML_UNICODE_ENABLED)
42089:     int mem_base;
42090:     int ret_val;
42091:     int code; /* UCS code point */
42092:     int n_code;
42093: 
42094:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42095:         mem_base = xmlMemBlocks();
42096:         code = gen_int(n_code, 0);
42097: 
42098:         ret_val = xmlUCSIsSpacingModifierLetters(code);
42099:         desret_int(ret_val);
42100:         call_tests++;
42101:         des_int(n_code, code, 0);
42102:         xmlResetLastError();
42103:         if (mem_base != xmlMemBlocks()) {
42104:             printf("Leak of %d blocks found in xmlUCSIsSpacingModifierLetters",
42105: 	           xmlMemBlocks() - mem_base);
42106: 	    test_ret++;
42107:             printf(" %d", n_code);
42108:             printf("\n");
42109:         }
42110:     }
42111:     function_tests++;
42112: #endif
42113: 
42114:     return(test_ret);
42115: }
42116: 
42117: 
42118: static int
42119: test_xmlUCSIsSpecials(void) {
42120:     int test_ret = 0;
42121: 
42122: #if defined(LIBXML_UNICODE_ENABLED)
42123:     int mem_base;
42124:     int ret_val;
42125:     int code; /* UCS code point */
42126:     int n_code;
42127: 
42128:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42129:         mem_base = xmlMemBlocks();
42130:         code = gen_int(n_code, 0);
42131: 
42132:         ret_val = xmlUCSIsSpecials(code);
42133:         desret_int(ret_val);
42134:         call_tests++;
42135:         des_int(n_code, code, 0);
42136:         xmlResetLastError();
42137:         if (mem_base != xmlMemBlocks()) {
42138:             printf("Leak of %d blocks found in xmlUCSIsSpecials",
42139: 	           xmlMemBlocks() - mem_base);
42140: 	    test_ret++;
42141:             printf(" %d", n_code);
42142:             printf("\n");
42143:         }
42144:     }
42145:     function_tests++;
42146: #endif
42147: 
42148:     return(test_ret);
42149: }
42150: 
42151: 
42152: static int
42153: test_xmlUCSIsSuperscriptsandSubscripts(void) {
42154:     int test_ret = 0;
42155: 
42156: #if defined(LIBXML_UNICODE_ENABLED)
42157:     int mem_base;
42158:     int ret_val;
42159:     int code; /* UCS code point */
42160:     int n_code;
42161: 
42162:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42163:         mem_base = xmlMemBlocks();
42164:         code = gen_int(n_code, 0);
42165: 
42166:         ret_val = xmlUCSIsSuperscriptsandSubscripts(code);
42167:         desret_int(ret_val);
42168:         call_tests++;
42169:         des_int(n_code, code, 0);
42170:         xmlResetLastError();
42171:         if (mem_base != xmlMemBlocks()) {
42172:             printf("Leak of %d blocks found in xmlUCSIsSuperscriptsandSubscripts",
42173: 	           xmlMemBlocks() - mem_base);
42174: 	    test_ret++;
42175:             printf(" %d", n_code);
42176:             printf("\n");
42177:         }
42178:     }
42179:     function_tests++;
42180: #endif
42181: 
42182:     return(test_ret);
42183: }
42184: 
42185: 
42186: static int
42187: test_xmlUCSIsSupplementalArrowsA(void) {
42188:     int test_ret = 0;
42189: 
42190: #if defined(LIBXML_UNICODE_ENABLED)
42191:     int mem_base;
42192:     int ret_val;
42193:     int code; /* UCS code point */
42194:     int n_code;
42195: 
42196:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42197:         mem_base = xmlMemBlocks();
42198:         code = gen_int(n_code, 0);
42199: 
42200:         ret_val = xmlUCSIsSupplementalArrowsA(code);
42201:         desret_int(ret_val);
42202:         call_tests++;
42203:         des_int(n_code, code, 0);
42204:         xmlResetLastError();
42205:         if (mem_base != xmlMemBlocks()) {
42206:             printf("Leak of %d blocks found in xmlUCSIsSupplementalArrowsA",
42207: 	           xmlMemBlocks() - mem_base);
42208: 	    test_ret++;
42209:             printf(" %d", n_code);
42210:             printf("\n");
42211:         }
42212:     }
42213:     function_tests++;
42214: #endif
42215: 
42216:     return(test_ret);
42217: }
42218: 
42219: 
42220: static int
42221: test_xmlUCSIsSupplementalArrowsB(void) {
42222:     int test_ret = 0;
42223: 
42224: #if defined(LIBXML_UNICODE_ENABLED)
42225:     int mem_base;
42226:     int ret_val;
42227:     int code; /* UCS code point */
42228:     int n_code;
42229: 
42230:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42231:         mem_base = xmlMemBlocks();
42232:         code = gen_int(n_code, 0);
42233: 
42234:         ret_val = xmlUCSIsSupplementalArrowsB(code);
42235:         desret_int(ret_val);
42236:         call_tests++;
42237:         des_int(n_code, code, 0);
42238:         xmlResetLastError();
42239:         if (mem_base != xmlMemBlocks()) {
42240:             printf("Leak of %d blocks found in xmlUCSIsSupplementalArrowsB",
42241: 	           xmlMemBlocks() - mem_base);
42242: 	    test_ret++;
42243:             printf(" %d", n_code);
42244:             printf("\n");
42245:         }
42246:     }
42247:     function_tests++;
42248: #endif
42249: 
42250:     return(test_ret);
42251: }
42252: 
42253: 
42254: static int
42255: test_xmlUCSIsSupplementalMathematicalOperators(void) {
42256:     int test_ret = 0;
42257: 
42258: #if defined(LIBXML_UNICODE_ENABLED)
42259:     int mem_base;
42260:     int ret_val;
42261:     int code; /* UCS code point */
42262:     int n_code;
42263: 
42264:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42265:         mem_base = xmlMemBlocks();
42266:         code = gen_int(n_code, 0);
42267: 
42268:         ret_val = xmlUCSIsSupplementalMathematicalOperators(code);
42269:         desret_int(ret_val);
42270:         call_tests++;
42271:         des_int(n_code, code, 0);
42272:         xmlResetLastError();
42273:         if (mem_base != xmlMemBlocks()) {
42274:             printf("Leak of %d blocks found in xmlUCSIsSupplementalMathematicalOperators",
42275: 	           xmlMemBlocks() - mem_base);
42276: 	    test_ret++;
42277:             printf(" %d", n_code);
42278:             printf("\n");
42279:         }
42280:     }
42281:     function_tests++;
42282: #endif
42283: 
42284:     return(test_ret);
42285: }
42286: 
42287: 
42288: static int
42289: test_xmlUCSIsSupplementaryPrivateUseAreaA(void) {
42290:     int test_ret = 0;
42291: 
42292: #if defined(LIBXML_UNICODE_ENABLED)
42293:     int mem_base;
42294:     int ret_val;
42295:     int code; /* UCS code point */
42296:     int n_code;
42297: 
42298:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42299:         mem_base = xmlMemBlocks();
42300:         code = gen_int(n_code, 0);
42301: 
42302:         ret_val = xmlUCSIsSupplementaryPrivateUseAreaA(code);
42303:         desret_int(ret_val);
42304:         call_tests++;
42305:         des_int(n_code, code, 0);
42306:         xmlResetLastError();
42307:         if (mem_base != xmlMemBlocks()) {
42308:             printf("Leak of %d blocks found in xmlUCSIsSupplementaryPrivateUseAreaA",
42309: 	           xmlMemBlocks() - mem_base);
42310: 	    test_ret++;
42311:             printf(" %d", n_code);
42312:             printf("\n");
42313:         }
42314:     }
42315:     function_tests++;
42316: #endif
42317: 
42318:     return(test_ret);
42319: }
42320: 
42321: 
42322: static int
42323: test_xmlUCSIsSupplementaryPrivateUseAreaB(void) {
42324:     int test_ret = 0;
42325: 
42326: #if defined(LIBXML_UNICODE_ENABLED)
42327:     int mem_base;
42328:     int ret_val;
42329:     int code; /* UCS code point */
42330:     int n_code;
42331: 
42332:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42333:         mem_base = xmlMemBlocks();
42334:         code = gen_int(n_code, 0);
42335: 
42336:         ret_val = xmlUCSIsSupplementaryPrivateUseAreaB(code);
42337:         desret_int(ret_val);
42338:         call_tests++;
42339:         des_int(n_code, code, 0);
42340:         xmlResetLastError();
42341:         if (mem_base != xmlMemBlocks()) {
42342:             printf("Leak of %d blocks found in xmlUCSIsSupplementaryPrivateUseAreaB",
42343: 	           xmlMemBlocks() - mem_base);
42344: 	    test_ret++;
42345:             printf(" %d", n_code);
42346:             printf("\n");
42347:         }
42348:     }
42349:     function_tests++;
42350: #endif
42351: 
42352:     return(test_ret);
42353: }
42354: 
42355: 
42356: static int
42357: test_xmlUCSIsSyriac(void) {
42358:     int test_ret = 0;
42359: 
42360: #if defined(LIBXML_UNICODE_ENABLED)
42361:     int mem_base;
42362:     int ret_val;
42363:     int code; /* UCS code point */
42364:     int n_code;
42365: 
42366:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42367:         mem_base = xmlMemBlocks();
42368:         code = gen_int(n_code, 0);
42369: 
42370:         ret_val = xmlUCSIsSyriac(code);
42371:         desret_int(ret_val);
42372:         call_tests++;
42373:         des_int(n_code, code, 0);
42374:         xmlResetLastError();
42375:         if (mem_base != xmlMemBlocks()) {
42376:             printf("Leak of %d blocks found in xmlUCSIsSyriac",
42377: 	           xmlMemBlocks() - mem_base);
42378: 	    test_ret++;
42379:             printf(" %d", n_code);
42380:             printf("\n");
42381:         }
42382:     }
42383:     function_tests++;
42384: #endif
42385: 
42386:     return(test_ret);
42387: }
42388: 
42389: 
42390: static int
42391: test_xmlUCSIsTagalog(void) {
42392:     int test_ret = 0;
42393: 
42394: #if defined(LIBXML_UNICODE_ENABLED)
42395:     int mem_base;
42396:     int ret_val;
42397:     int code; /* UCS code point */
42398:     int n_code;
42399: 
42400:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42401:         mem_base = xmlMemBlocks();
42402:         code = gen_int(n_code, 0);
42403: 
42404:         ret_val = xmlUCSIsTagalog(code);
42405:         desret_int(ret_val);
42406:         call_tests++;
42407:         des_int(n_code, code, 0);
42408:         xmlResetLastError();
42409:         if (mem_base != xmlMemBlocks()) {
42410:             printf("Leak of %d blocks found in xmlUCSIsTagalog",
42411: 	           xmlMemBlocks() - mem_base);
42412: 	    test_ret++;
42413:             printf(" %d", n_code);
42414:             printf("\n");
42415:         }
42416:     }
42417:     function_tests++;
42418: #endif
42419: 
42420:     return(test_ret);
42421: }
42422: 
42423: 
42424: static int
42425: test_xmlUCSIsTagbanwa(void) {
42426:     int test_ret = 0;
42427: 
42428: #if defined(LIBXML_UNICODE_ENABLED)
42429:     int mem_base;
42430:     int ret_val;
42431:     int code; /* UCS code point */
42432:     int n_code;
42433: 
42434:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42435:         mem_base = xmlMemBlocks();
42436:         code = gen_int(n_code, 0);
42437: 
42438:         ret_val = xmlUCSIsTagbanwa(code);
42439:         desret_int(ret_val);
42440:         call_tests++;
42441:         des_int(n_code, code, 0);
42442:         xmlResetLastError();
42443:         if (mem_base != xmlMemBlocks()) {
42444:             printf("Leak of %d blocks found in xmlUCSIsTagbanwa",
42445: 	           xmlMemBlocks() - mem_base);
42446: 	    test_ret++;
42447:             printf(" %d", n_code);
42448:             printf("\n");
42449:         }
42450:     }
42451:     function_tests++;
42452: #endif
42453: 
42454:     return(test_ret);
42455: }
42456: 
42457: 
42458: static int
42459: test_xmlUCSIsTags(void) {
42460:     int test_ret = 0;
42461: 
42462: #if defined(LIBXML_UNICODE_ENABLED)
42463:     int mem_base;
42464:     int ret_val;
42465:     int code; /* UCS code point */
42466:     int n_code;
42467: 
42468:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42469:         mem_base = xmlMemBlocks();
42470:         code = gen_int(n_code, 0);
42471: 
42472:         ret_val = xmlUCSIsTags(code);
42473:         desret_int(ret_val);
42474:         call_tests++;
42475:         des_int(n_code, code, 0);
42476:         xmlResetLastError();
42477:         if (mem_base != xmlMemBlocks()) {
42478:             printf("Leak of %d blocks found in xmlUCSIsTags",
42479: 	           xmlMemBlocks() - mem_base);
42480: 	    test_ret++;
42481:             printf(" %d", n_code);
42482:             printf("\n");
42483:         }
42484:     }
42485:     function_tests++;
42486: #endif
42487: 
42488:     return(test_ret);
42489: }
42490: 
42491: 
42492: static int
42493: test_xmlUCSIsTaiLe(void) {
42494:     int test_ret = 0;
42495: 
42496: #if defined(LIBXML_UNICODE_ENABLED)
42497:     int mem_base;
42498:     int ret_val;
42499:     int code; /* UCS code point */
42500:     int n_code;
42501: 
42502:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42503:         mem_base = xmlMemBlocks();
42504:         code = gen_int(n_code, 0);
42505: 
42506:         ret_val = xmlUCSIsTaiLe(code);
42507:         desret_int(ret_val);
42508:         call_tests++;
42509:         des_int(n_code, code, 0);
42510:         xmlResetLastError();
42511:         if (mem_base != xmlMemBlocks()) {
42512:             printf("Leak of %d blocks found in xmlUCSIsTaiLe",
42513: 	           xmlMemBlocks() - mem_base);
42514: 	    test_ret++;
42515:             printf(" %d", n_code);
42516:             printf("\n");
42517:         }
42518:     }
42519:     function_tests++;
42520: #endif
42521: 
42522:     return(test_ret);
42523: }
42524: 
42525: 
42526: static int
42527: test_xmlUCSIsTaiXuanJingSymbols(void) {
42528:     int test_ret = 0;
42529: 
42530: #if defined(LIBXML_UNICODE_ENABLED)
42531:     int mem_base;
42532:     int ret_val;
42533:     int code; /* UCS code point */
42534:     int n_code;
42535: 
42536:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42537:         mem_base = xmlMemBlocks();
42538:         code = gen_int(n_code, 0);
42539: 
42540:         ret_val = xmlUCSIsTaiXuanJingSymbols(code);
42541:         desret_int(ret_val);
42542:         call_tests++;
42543:         des_int(n_code, code, 0);
42544:         xmlResetLastError();
42545:         if (mem_base != xmlMemBlocks()) {
42546:             printf("Leak of %d blocks found in xmlUCSIsTaiXuanJingSymbols",
42547: 	           xmlMemBlocks() - mem_base);
42548: 	    test_ret++;
42549:             printf(" %d", n_code);
42550:             printf("\n");
42551:         }
42552:     }
42553:     function_tests++;
42554: #endif
42555: 
42556:     return(test_ret);
42557: }
42558: 
42559: 
42560: static int
42561: test_xmlUCSIsTamil(void) {
42562:     int test_ret = 0;
42563: 
42564: #if defined(LIBXML_UNICODE_ENABLED)
42565:     int mem_base;
42566:     int ret_val;
42567:     int code; /* UCS code point */
42568:     int n_code;
42569: 
42570:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42571:         mem_base = xmlMemBlocks();
42572:         code = gen_int(n_code, 0);
42573: 
42574:         ret_val = xmlUCSIsTamil(code);
42575:         desret_int(ret_val);
42576:         call_tests++;
42577:         des_int(n_code, code, 0);
42578:         xmlResetLastError();
42579:         if (mem_base != xmlMemBlocks()) {
42580:             printf("Leak of %d blocks found in xmlUCSIsTamil",
42581: 	           xmlMemBlocks() - mem_base);
42582: 	    test_ret++;
42583:             printf(" %d", n_code);
42584:             printf("\n");
42585:         }
42586:     }
42587:     function_tests++;
42588: #endif
42589: 
42590:     return(test_ret);
42591: }
42592: 
42593: 
42594: static int
42595: test_xmlUCSIsTelugu(void) {
42596:     int test_ret = 0;
42597: 
42598: #if defined(LIBXML_UNICODE_ENABLED)
42599:     int mem_base;
42600:     int ret_val;
42601:     int code; /* UCS code point */
42602:     int n_code;
42603: 
42604:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42605:         mem_base = xmlMemBlocks();
42606:         code = gen_int(n_code, 0);
42607: 
42608:         ret_val = xmlUCSIsTelugu(code);
42609:         desret_int(ret_val);
42610:         call_tests++;
42611:         des_int(n_code, code, 0);
42612:         xmlResetLastError();
42613:         if (mem_base != xmlMemBlocks()) {
42614:             printf("Leak of %d blocks found in xmlUCSIsTelugu",
42615: 	           xmlMemBlocks() - mem_base);
42616: 	    test_ret++;
42617:             printf(" %d", n_code);
42618:             printf("\n");
42619:         }
42620:     }
42621:     function_tests++;
42622: #endif
42623: 
42624:     return(test_ret);
42625: }
42626: 
42627: 
42628: static int
42629: test_xmlUCSIsThaana(void) {
42630:     int test_ret = 0;
42631: 
42632: #if defined(LIBXML_UNICODE_ENABLED)
42633:     int mem_base;
42634:     int ret_val;
42635:     int code; /* UCS code point */
42636:     int n_code;
42637: 
42638:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42639:         mem_base = xmlMemBlocks();
42640:         code = gen_int(n_code, 0);
42641: 
42642:         ret_val = xmlUCSIsThaana(code);
42643:         desret_int(ret_val);
42644:         call_tests++;
42645:         des_int(n_code, code, 0);
42646:         xmlResetLastError();
42647:         if (mem_base != xmlMemBlocks()) {
42648:             printf("Leak of %d blocks found in xmlUCSIsThaana",
42649: 	           xmlMemBlocks() - mem_base);
42650: 	    test_ret++;
42651:             printf(" %d", n_code);
42652:             printf("\n");
42653:         }
42654:     }
42655:     function_tests++;
42656: #endif
42657: 
42658:     return(test_ret);
42659: }
42660: 
42661: 
42662: static int
42663: test_xmlUCSIsThai(void) {
42664:     int test_ret = 0;
42665: 
42666: #if defined(LIBXML_UNICODE_ENABLED)
42667:     int mem_base;
42668:     int ret_val;
42669:     int code; /* UCS code point */
42670:     int n_code;
42671: 
42672:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42673:         mem_base = xmlMemBlocks();
42674:         code = gen_int(n_code, 0);
42675: 
42676:         ret_val = xmlUCSIsThai(code);
42677:         desret_int(ret_val);
42678:         call_tests++;
42679:         des_int(n_code, code, 0);
42680:         xmlResetLastError();
42681:         if (mem_base != xmlMemBlocks()) {
42682:             printf("Leak of %d blocks found in xmlUCSIsThai",
42683: 	           xmlMemBlocks() - mem_base);
42684: 	    test_ret++;
42685:             printf(" %d", n_code);
42686:             printf("\n");
42687:         }
42688:     }
42689:     function_tests++;
42690: #endif
42691: 
42692:     return(test_ret);
42693: }
42694: 
42695: 
42696: static int
42697: test_xmlUCSIsTibetan(void) {
42698:     int test_ret = 0;
42699: 
42700: #if defined(LIBXML_UNICODE_ENABLED)
42701:     int mem_base;
42702:     int ret_val;
42703:     int code; /* UCS code point */
42704:     int n_code;
42705: 
42706:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42707:         mem_base = xmlMemBlocks();
42708:         code = gen_int(n_code, 0);
42709: 
42710:         ret_val = xmlUCSIsTibetan(code);
42711:         desret_int(ret_val);
42712:         call_tests++;
42713:         des_int(n_code, code, 0);
42714:         xmlResetLastError();
42715:         if (mem_base != xmlMemBlocks()) {
42716:             printf("Leak of %d blocks found in xmlUCSIsTibetan",
42717: 	           xmlMemBlocks() - mem_base);
42718: 	    test_ret++;
42719:             printf(" %d", n_code);
42720:             printf("\n");
42721:         }
42722:     }
42723:     function_tests++;
42724: #endif
42725: 
42726:     return(test_ret);
42727: }
42728: 
42729: 
42730: static int
42731: test_xmlUCSIsUgaritic(void) {
42732:     int test_ret = 0;
42733: 
42734: #if defined(LIBXML_UNICODE_ENABLED)
42735:     int mem_base;
42736:     int ret_val;
42737:     int code; /* UCS code point */
42738:     int n_code;
42739: 
42740:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42741:         mem_base = xmlMemBlocks();
42742:         code = gen_int(n_code, 0);
42743: 
42744:         ret_val = xmlUCSIsUgaritic(code);
42745:         desret_int(ret_val);
42746:         call_tests++;
42747:         des_int(n_code, code, 0);
42748:         xmlResetLastError();
42749:         if (mem_base != xmlMemBlocks()) {
42750:             printf("Leak of %d blocks found in xmlUCSIsUgaritic",
42751: 	           xmlMemBlocks() - mem_base);
42752: 	    test_ret++;
42753:             printf(" %d", n_code);
42754:             printf("\n");
42755:         }
42756:     }
42757:     function_tests++;
42758: #endif
42759: 
42760:     return(test_ret);
42761: }
42762: 
42763: 
42764: static int
42765: test_xmlUCSIsUnifiedCanadianAboriginalSyllabics(void) {
42766:     int test_ret = 0;
42767: 
42768: #if defined(LIBXML_UNICODE_ENABLED)
42769:     int mem_base;
42770:     int ret_val;
42771:     int code; /* UCS code point */
42772:     int n_code;
42773: 
42774:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42775:         mem_base = xmlMemBlocks();
42776:         code = gen_int(n_code, 0);
42777: 
42778:         ret_val = xmlUCSIsUnifiedCanadianAboriginalSyllabics(code);
42779:         desret_int(ret_val);
42780:         call_tests++;
42781:         des_int(n_code, code, 0);
42782:         xmlResetLastError();
42783:         if (mem_base != xmlMemBlocks()) {
42784:             printf("Leak of %d blocks found in xmlUCSIsUnifiedCanadianAboriginalSyllabics",
42785: 	           xmlMemBlocks() - mem_base);
42786: 	    test_ret++;
42787:             printf(" %d", n_code);
42788:             printf("\n");
42789:         }
42790:     }
42791:     function_tests++;
42792: #endif
42793: 
42794:     return(test_ret);
42795: }
42796: 
42797: 
42798: static int
42799: test_xmlUCSIsVariationSelectors(void) {
42800:     int test_ret = 0;
42801: 
42802: #if defined(LIBXML_UNICODE_ENABLED)
42803:     int mem_base;
42804:     int ret_val;
42805:     int code; /* UCS code point */
42806:     int n_code;
42807: 
42808:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42809:         mem_base = xmlMemBlocks();
42810:         code = gen_int(n_code, 0);
42811: 
42812:         ret_val = xmlUCSIsVariationSelectors(code);
42813:         desret_int(ret_val);
42814:         call_tests++;
42815:         des_int(n_code, code, 0);
42816:         xmlResetLastError();
42817:         if (mem_base != xmlMemBlocks()) {
42818:             printf("Leak of %d blocks found in xmlUCSIsVariationSelectors",
42819: 	           xmlMemBlocks() - mem_base);
42820: 	    test_ret++;
42821:             printf(" %d", n_code);
42822:             printf("\n");
42823:         }
42824:     }
42825:     function_tests++;
42826: #endif
42827: 
42828:     return(test_ret);
42829: }
42830: 
42831: 
42832: static int
42833: test_xmlUCSIsVariationSelectorsSupplement(void) {
42834:     int test_ret = 0;
42835: 
42836: #if defined(LIBXML_UNICODE_ENABLED)
42837:     int mem_base;
42838:     int ret_val;
42839:     int code; /* UCS code point */
42840:     int n_code;
42841: 
42842:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42843:         mem_base = xmlMemBlocks();
42844:         code = gen_int(n_code, 0);
42845: 
42846:         ret_val = xmlUCSIsVariationSelectorsSupplement(code);
42847:         desret_int(ret_val);
42848:         call_tests++;
42849:         des_int(n_code, code, 0);
42850:         xmlResetLastError();
42851:         if (mem_base != xmlMemBlocks()) {
42852:             printf("Leak of %d blocks found in xmlUCSIsVariationSelectorsSupplement",
42853: 	           xmlMemBlocks() - mem_base);
42854: 	    test_ret++;
42855:             printf(" %d", n_code);
42856:             printf("\n");
42857:         }
42858:     }
42859:     function_tests++;
42860: #endif
42861: 
42862:     return(test_ret);
42863: }
42864: 
42865: 
42866: static int
42867: test_xmlUCSIsYiRadicals(void) {
42868:     int test_ret = 0;
42869: 
42870: #if defined(LIBXML_UNICODE_ENABLED)
42871:     int mem_base;
42872:     int ret_val;
42873:     int code; /* UCS code point */
42874:     int n_code;
42875: 
42876:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42877:         mem_base = xmlMemBlocks();
42878:         code = gen_int(n_code, 0);
42879: 
42880:         ret_val = xmlUCSIsYiRadicals(code);
42881:         desret_int(ret_val);
42882:         call_tests++;
42883:         des_int(n_code, code, 0);
42884:         xmlResetLastError();
42885:         if (mem_base != xmlMemBlocks()) {
42886:             printf("Leak of %d blocks found in xmlUCSIsYiRadicals",
42887: 	           xmlMemBlocks() - mem_base);
42888: 	    test_ret++;
42889:             printf(" %d", n_code);
42890:             printf("\n");
42891:         }
42892:     }
42893:     function_tests++;
42894: #endif
42895: 
42896:     return(test_ret);
42897: }
42898: 
42899: 
42900: static int
42901: test_xmlUCSIsYiSyllables(void) {
42902:     int test_ret = 0;
42903: 
42904: #if defined(LIBXML_UNICODE_ENABLED)
42905:     int mem_base;
42906:     int ret_val;
42907:     int code; /* UCS code point */
42908:     int n_code;
42909: 
42910:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42911:         mem_base = xmlMemBlocks();
42912:         code = gen_int(n_code, 0);
42913: 
42914:         ret_val = xmlUCSIsYiSyllables(code);
42915:         desret_int(ret_val);
42916:         call_tests++;
42917:         des_int(n_code, code, 0);
42918:         xmlResetLastError();
42919:         if (mem_base != xmlMemBlocks()) {
42920:             printf("Leak of %d blocks found in xmlUCSIsYiSyllables",
42921: 	           xmlMemBlocks() - mem_base);
42922: 	    test_ret++;
42923:             printf(" %d", n_code);
42924:             printf("\n");
42925:         }
42926:     }
42927:     function_tests++;
42928: #endif
42929: 
42930:     return(test_ret);
42931: }
42932: 
42933: 
42934: static int
42935: test_xmlUCSIsYijingHexagramSymbols(void) {
42936:     int test_ret = 0;
42937: 
42938: #if defined(LIBXML_UNICODE_ENABLED)
42939:     int mem_base;
42940:     int ret_val;
42941:     int code; /* UCS code point */
42942:     int n_code;
42943: 
42944:     for (n_code = 0;n_code < gen_nb_int;n_code++) {
42945:         mem_base = xmlMemBlocks();
42946:         code = gen_int(n_code, 0);
42947: 
42948:         ret_val = xmlUCSIsYijingHexagramSymbols(code);
42949:         desret_int(ret_val);
42950:         call_tests++;
42951:         des_int(n_code, code, 0);
42952:         xmlResetLastError();
42953:         if (mem_base != xmlMemBlocks()) {
42954:             printf("Leak of %d blocks found in xmlUCSIsYijingHexagramSymbols",
42955: 	           xmlMemBlocks() - mem_base);
42956: 	    test_ret++;
42957:             printf(" %d", n_code);
42958:             printf("\n");
42959:         }
42960:     }
42961:     function_tests++;
42962: #endif
42963: 
42964:     return(test_ret);
42965: }
42966: 
42967: static int
42968: test_xmlunicode(void) {
42969:     int test_ret = 0;
42970: 
42971:     if (quiet == 0) printf("Testing xmlunicode : 166 of 166 functions ...\n");
42972:     test_ret += test_xmlUCSIsAegeanNumbers();
42973:     test_ret += test_xmlUCSIsAlphabeticPresentationForms();
42974:     test_ret += test_xmlUCSIsArabic();
42975:     test_ret += test_xmlUCSIsArabicPresentationFormsA();
42976:     test_ret += test_xmlUCSIsArabicPresentationFormsB();
42977:     test_ret += test_xmlUCSIsArmenian();
42978:     test_ret += test_xmlUCSIsArrows();
42979:     test_ret += test_xmlUCSIsBasicLatin();
42980:     test_ret += test_xmlUCSIsBengali();
42981:     test_ret += test_xmlUCSIsBlock();
42982:     test_ret += test_xmlUCSIsBlockElements();
42983:     test_ret += test_xmlUCSIsBopomofo();
42984:     test_ret += test_xmlUCSIsBopomofoExtended();
42985:     test_ret += test_xmlUCSIsBoxDrawing();
42986:     test_ret += test_xmlUCSIsBraillePatterns();
42987:     test_ret += test_xmlUCSIsBuhid();
42988:     test_ret += test_xmlUCSIsByzantineMusicalSymbols();
42989:     test_ret += test_xmlUCSIsCJKCompatibility();
42990:     test_ret += test_xmlUCSIsCJKCompatibilityForms();
42991:     test_ret += test_xmlUCSIsCJKCompatibilityIdeographs();
42992:     test_ret += test_xmlUCSIsCJKCompatibilityIdeographsSupplement();
42993:     test_ret += test_xmlUCSIsCJKRadicalsSupplement();
42994:     test_ret += test_xmlUCSIsCJKSymbolsandPunctuation();
42995:     test_ret += test_xmlUCSIsCJKUnifiedIdeographs();
42996:     test_ret += test_xmlUCSIsCJKUnifiedIdeographsExtensionA();
42997:     test_ret += test_xmlUCSIsCJKUnifiedIdeographsExtensionB();
42998:     test_ret += test_xmlUCSIsCat();
42999:     test_ret += test_xmlUCSIsCatC();
43000:     test_ret += test_xmlUCSIsCatCc();
43001:     test_ret += test_xmlUCSIsCatCf();
43002:     test_ret += test_xmlUCSIsCatCo();
43003:     test_ret += test_xmlUCSIsCatCs();
43004:     test_ret += test_xmlUCSIsCatL();
43005:     test_ret += test_xmlUCSIsCatLl();
43006:     test_ret += test_xmlUCSIsCatLm();
43007:     test_ret += test_xmlUCSIsCatLo();
43008:     test_ret += test_xmlUCSIsCatLt();
43009:     test_ret += test_xmlUCSIsCatLu();
43010:     test_ret += test_xmlUCSIsCatM();
43011:     test_ret += test_xmlUCSIsCatMc();
43012:     test_ret += test_xmlUCSIsCatMe();
43013:     test_ret += test_xmlUCSIsCatMn();
43014:     test_ret += test_xmlUCSIsCatN();
43015:     test_ret += test_xmlUCSIsCatNd();
43016:     test_ret += test_xmlUCSIsCatNl();
43017:     test_ret += test_xmlUCSIsCatNo();
43018:     test_ret += test_xmlUCSIsCatP();
43019:     test_ret += test_xmlUCSIsCatPc();
43020:     test_ret += test_xmlUCSIsCatPd();
43021:     test_ret += test_xmlUCSIsCatPe();
43022:     test_ret += test_xmlUCSIsCatPf();
43023:     test_ret += test_xmlUCSIsCatPi();
43024:     test_ret += test_xmlUCSIsCatPo();
43025:     test_ret += test_xmlUCSIsCatPs();
43026:     test_ret += test_xmlUCSIsCatS();
43027:     test_ret += test_xmlUCSIsCatSc();
43028:     test_ret += test_xmlUCSIsCatSk();
43029:     test_ret += test_xmlUCSIsCatSm();
43030:     test_ret += test_xmlUCSIsCatSo();
43031:     test_ret += test_xmlUCSIsCatZ();
43032:     test_ret += test_xmlUCSIsCatZl();
43033:     test_ret += test_xmlUCSIsCatZp();
43034:     test_ret += test_xmlUCSIsCatZs();
43035:     test_ret += test_xmlUCSIsCherokee();
43036:     test_ret += test_xmlUCSIsCombiningDiacriticalMarks();
43037:     test_ret += test_xmlUCSIsCombiningDiacriticalMarksforSymbols();
43038:     test_ret += test_xmlUCSIsCombiningHalfMarks();
43039:     test_ret += test_xmlUCSIsCombiningMarksforSymbols();
43040:     test_ret += test_xmlUCSIsControlPictures();
43041:     test_ret += test_xmlUCSIsCurrencySymbols();
43042:     test_ret += test_xmlUCSIsCypriotSyllabary();
43043:     test_ret += test_xmlUCSIsCyrillic();
43044:     test_ret += test_xmlUCSIsCyrillicSupplement();
43045:     test_ret += test_xmlUCSIsDeseret();
43046:     test_ret += test_xmlUCSIsDevanagari();
43047:     test_ret += test_xmlUCSIsDingbats();
43048:     test_ret += test_xmlUCSIsEnclosedAlphanumerics();
43049:     test_ret += test_xmlUCSIsEnclosedCJKLettersandMonths();
43050:     test_ret += test_xmlUCSIsEthiopic();
43051:     test_ret += test_xmlUCSIsGeneralPunctuation();
43052:     test_ret += test_xmlUCSIsGeometricShapes();
43053:     test_ret += test_xmlUCSIsGeorgian();
43054:     test_ret += test_xmlUCSIsGothic();
43055:     test_ret += test_xmlUCSIsGreek();
43056:     test_ret += test_xmlUCSIsGreekExtended();
43057:     test_ret += test_xmlUCSIsGreekandCoptic();
43058:     test_ret += test_xmlUCSIsGujarati();
43059:     test_ret += test_xmlUCSIsGurmukhi();
43060:     test_ret += test_xmlUCSIsHalfwidthandFullwidthForms();
43061:     test_ret += test_xmlUCSIsHangulCompatibilityJamo();
43062:     test_ret += test_xmlUCSIsHangulJamo();
43063:     test_ret += test_xmlUCSIsHangulSyllables();
43064:     test_ret += test_xmlUCSIsHanunoo();
43065:     test_ret += test_xmlUCSIsHebrew();
43066:     test_ret += test_xmlUCSIsHighPrivateUseSurrogates();
43067:     test_ret += test_xmlUCSIsHighSurrogates();
43068:     test_ret += test_xmlUCSIsHiragana();
43069:     test_ret += test_xmlUCSIsIPAExtensions();
43070:     test_ret += test_xmlUCSIsIdeographicDescriptionCharacters();
43071:     test_ret += test_xmlUCSIsKanbun();
43072:     test_ret += test_xmlUCSIsKangxiRadicals();
43073:     test_ret += test_xmlUCSIsKannada();
43074:     test_ret += test_xmlUCSIsKatakana();
43075:     test_ret += test_xmlUCSIsKatakanaPhoneticExtensions();
43076:     test_ret += test_xmlUCSIsKhmer();
43077:     test_ret += test_xmlUCSIsKhmerSymbols();
43078:     test_ret += test_xmlUCSIsLao();
43079:     test_ret += test_xmlUCSIsLatin1Supplement();
43080:     test_ret += test_xmlUCSIsLatinExtendedA();
43081:     test_ret += test_xmlUCSIsLatinExtendedAdditional();
43082:     test_ret += test_xmlUCSIsLatinExtendedB();
43083:     test_ret += test_xmlUCSIsLetterlikeSymbols();
43084:     test_ret += test_xmlUCSIsLimbu();
43085:     test_ret += test_xmlUCSIsLinearBIdeograms();
43086:     test_ret += test_xmlUCSIsLinearBSyllabary();
43087:     test_ret += test_xmlUCSIsLowSurrogates();
43088:     test_ret += test_xmlUCSIsMalayalam();
43089:     test_ret += test_xmlUCSIsMathematicalAlphanumericSymbols();
43090:     test_ret += test_xmlUCSIsMathematicalOperators();
43091:     test_ret += test_xmlUCSIsMiscellaneousMathematicalSymbolsA();
43092:     test_ret += test_xmlUCSIsMiscellaneousMathematicalSymbolsB();
43093:     test_ret += test_xmlUCSIsMiscellaneousSymbols();
43094:     test_ret += test_xmlUCSIsMiscellaneousSymbolsandArrows();
43095:     test_ret += test_xmlUCSIsMiscellaneousTechnical();
43096:     test_ret += test_xmlUCSIsMongolian();
43097:     test_ret += test_xmlUCSIsMusicalSymbols();
43098:     test_ret += test_xmlUCSIsMyanmar();
43099:     test_ret += test_xmlUCSIsNumberForms();
43100:     test_ret += test_xmlUCSIsOgham();
43101:     test_ret += test_xmlUCSIsOldItalic();
43102:     test_ret += test_xmlUCSIsOpticalCharacterRecognition();
43103:     test_ret += test_xmlUCSIsOriya();
43104:     test_ret += test_xmlUCSIsOsmanya();
43105:     test_ret += test_xmlUCSIsPhoneticExtensions();
43106:     test_ret += test_xmlUCSIsPrivateUse();
43107:     test_ret += test_xmlUCSIsPrivateUseArea();
43108:     test_ret += test_xmlUCSIsRunic();
43109:     test_ret += test_xmlUCSIsShavian();
43110:     test_ret += test_xmlUCSIsSinhala();
43111:     test_ret += test_xmlUCSIsSmallFormVariants();
43112:     test_ret += test_xmlUCSIsSpacingModifierLetters();
43113:     test_ret += test_xmlUCSIsSpecials();
43114:     test_ret += test_xmlUCSIsSuperscriptsandSubscripts();
43115:     test_ret += test_xmlUCSIsSupplementalArrowsA();
43116:     test_ret += test_xmlUCSIsSupplementalArrowsB();
43117:     test_ret += test_xmlUCSIsSupplementalMathematicalOperators();
43118:     test_ret += test_xmlUCSIsSupplementaryPrivateUseAreaA();
43119:     test_ret += test_xmlUCSIsSupplementaryPrivateUseAreaB();
43120:     test_ret += test_xmlUCSIsSyriac();
43121:     test_ret += test_xmlUCSIsTagalog();
43122:     test_ret += test_xmlUCSIsTagbanwa();
43123:     test_ret += test_xmlUCSIsTags();
43124:     test_ret += test_xmlUCSIsTaiLe();
43125:     test_ret += test_xmlUCSIsTaiXuanJingSymbols();
43126:     test_ret += test_xmlUCSIsTamil();
43127:     test_ret += test_xmlUCSIsTelugu();
43128:     test_ret += test_xmlUCSIsThaana();
43129:     test_ret += test_xmlUCSIsThai();
43130:     test_ret += test_xmlUCSIsTibetan();
43131:     test_ret += test_xmlUCSIsUgaritic();
43132:     test_ret += test_xmlUCSIsUnifiedCanadianAboriginalSyllabics();
43133:     test_ret += test_xmlUCSIsVariationSelectors();
43134:     test_ret += test_xmlUCSIsVariationSelectorsSupplement();
43135:     test_ret += test_xmlUCSIsYiRadicals();
43136:     test_ret += test_xmlUCSIsYiSyllables();
43137:     test_ret += test_xmlUCSIsYijingHexagramSymbols();
43138: 
43139:     if (test_ret != 0)
43140: 	printf("Module xmlunicode: %d errors\n", test_ret);
43141:     return(test_ret);
43142: }
43143: 
43144: static int
43145: test_xmlNewTextWriter(void) {
43146:     int test_ret = 0;
43147: 
43148: #if defined(LIBXML_WRITER_ENABLED)
43149:     int mem_base;
43150:     xmlTextWriterPtr ret_val;
43151:     xmlOutputBufferPtr out; /* an xmlOutputBufferPtr */
43152:     int n_out;
43153: 
43154:     for (n_out = 0;n_out < gen_nb_xmlOutputBufferPtr;n_out++) {
43155:         mem_base = xmlMemBlocks();
43156:         out = gen_xmlOutputBufferPtr(n_out, 0);
43157: 
43158:         ret_val = xmlNewTextWriter(out);
43159:         if (ret_val != NULL) out = NULL;
43160:         desret_xmlTextWriterPtr(ret_val);
43161:         call_tests++;
43162:         des_xmlOutputBufferPtr(n_out, out, 0);
43163:         xmlResetLastError();
43164:         if (mem_base != xmlMemBlocks()) {
43165:             printf("Leak of %d blocks found in xmlNewTextWriter",
43166: 	           xmlMemBlocks() - mem_base);
43167: 	    test_ret++;
43168:             printf(" %d", n_out);
43169:             printf("\n");
43170:         }
43171:     }
43172:     function_tests++;
43173: #endif
43174: 
43175:     return(test_ret);
43176: }
43177: 
43178: 
43179: static int
43180: test_xmlNewTextWriterFilename(void) {
43181:     int test_ret = 0;
43182: 
43183: #if defined(LIBXML_WRITER_ENABLED)
43184:     int mem_base;
43185:     xmlTextWriterPtr ret_val;
43186:     const char * uri; /* the URI of the resource for the output */
43187:     int n_uri;
43188:     int compression; /* compress the output? */
43189:     int n_compression;
43190: 
43191:     for (n_uri = 0;n_uri < gen_nb_fileoutput;n_uri++) {
43192:     for (n_compression = 0;n_compression < gen_nb_int;n_compression++) {
43193:         mem_base = xmlMemBlocks();
43194:         uri = gen_fileoutput(n_uri, 0);
43195:         compression = gen_int(n_compression, 1);
43196: 
43197:         ret_val = xmlNewTextWriterFilename(uri, compression);
43198:         desret_xmlTextWriterPtr(ret_val);
43199:         call_tests++;
43200:         des_fileoutput(n_uri, uri, 0);
43201:         des_int(n_compression, compression, 1);
43202:         xmlResetLastError();
43203:         if (mem_base != xmlMemBlocks()) {
43204:             printf("Leak of %d blocks found in xmlNewTextWriterFilename",
43205: 	           xmlMemBlocks() - mem_base);
43206: 	    test_ret++;
43207:             printf(" %d", n_uri);
43208:             printf(" %d", n_compression);
43209:             printf("\n");
43210:         }
43211:     }
43212:     }
43213:     function_tests++;
43214: #endif
43215: 
43216:     return(test_ret);
43217: }
43218: 
43219: 
43220: static int
43221: test_xmlNewTextWriterMemory(void) {
43222:     int test_ret = 0;
43223: 
43224: #if defined(LIBXML_WRITER_ENABLED)
43225:     int mem_base;
43226:     xmlTextWriterPtr ret_val;
43227:     xmlBufferPtr buf; /* xmlBufferPtr */
43228:     int n_buf;
43229:     int compression; /* compress the output? */
43230:     int n_compression;
43231: 
43232:     for (n_buf = 0;n_buf < gen_nb_xmlBufferPtr;n_buf++) {
43233:     for (n_compression = 0;n_compression < gen_nb_int;n_compression++) {
43234:         mem_base = xmlMemBlocks();
43235:         buf = gen_xmlBufferPtr(n_buf, 0);
43236:         compression = gen_int(n_compression, 1);
43237: 
43238:         ret_val = xmlNewTextWriterMemory(buf, compression);
43239:         desret_xmlTextWriterPtr(ret_val);
43240:         call_tests++;
43241:         des_xmlBufferPtr(n_buf, buf, 0);
43242:         des_int(n_compression, compression, 1);
43243:         xmlResetLastError();
43244:         if (mem_base != xmlMemBlocks()) {
43245:             printf("Leak of %d blocks found in xmlNewTextWriterMemory",
43246: 	           xmlMemBlocks() - mem_base);
43247: 	    test_ret++;
43248:             printf(" %d", n_buf);
43249:             printf(" %d", n_compression);
43250:             printf("\n");
43251:         }
43252:     }
43253:     }
43254:     function_tests++;
43255: #endif
43256: 
43257:     return(test_ret);
43258: }
43259: 
43260: 
43261: static int
43262: test_xmlNewTextWriterPushParser(void) {
43263:     int test_ret = 0;
43264: 
43265: #if defined(LIBXML_WRITER_ENABLED)
43266:     int mem_base;
43267:     xmlTextWriterPtr ret_val;
43268:     xmlParserCtxtPtr ctxt; /* xmlParserCtxtPtr to hold the new XML document tree */
43269:     int n_ctxt;
43270:     int compression; /* compress the output? */
43271:     int n_compression;
43272: 
43273:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlParserCtxtPtr;n_ctxt++) {
43274:     for (n_compression = 0;n_compression < gen_nb_int;n_compression++) {
43275:         mem_base = xmlMemBlocks();
43276:         ctxt = gen_xmlParserCtxtPtr(n_ctxt, 0);
43277:         compression = gen_int(n_compression, 1);
43278: 
43279:         ret_val = xmlNewTextWriterPushParser(ctxt, compression);
43280:         if (ctxt != NULL) {xmlFreeDoc(ctxt->myDoc); ctxt->myDoc = NULL;} if (ret_val != NULL) ctxt = NULL;
43281:         desret_xmlTextWriterPtr(ret_val);
43282:         call_tests++;
43283:         des_xmlParserCtxtPtr(n_ctxt, ctxt, 0);
43284:         des_int(n_compression, compression, 1);
43285:         xmlResetLastError();
43286:         if (mem_base != xmlMemBlocks()) {
43287:             printf("Leak of %d blocks found in xmlNewTextWriterPushParser",
43288: 	           xmlMemBlocks() - mem_base);
43289: 	    test_ret++;
43290:             printf(" %d", n_ctxt);
43291:             printf(" %d", n_compression);
43292:             printf("\n");
43293:         }
43294:     }
43295:     }
43296:     function_tests++;
43297: #endif
43298: 
43299:     return(test_ret);
43300: }
43301: 
43302: 
43303: static int
43304: test_xmlNewTextWriterTree(void) {
43305:     int test_ret = 0;
43306: 
43307: #if defined(LIBXML_WRITER_ENABLED)
43308:     int mem_base;
43309:     xmlTextWriterPtr ret_val;
43310:     xmlDocPtr doc; /* xmlDocPtr */
43311:     int n_doc;
43312:     xmlNodePtr node; /* xmlNodePtr or NULL for doc->children */
43313:     int n_node;
43314:     int compression; /* compress the output? */
43315:     int n_compression;
43316: 
43317:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
43318:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
43319:     for (n_compression = 0;n_compression < gen_nb_int;n_compression++) {
43320:         mem_base = xmlMemBlocks();
43321:         doc = gen_xmlDocPtr(n_doc, 0);
43322:         node = gen_xmlNodePtr(n_node, 1);
43323:         compression = gen_int(n_compression, 2);
43324: 
43325:         ret_val = xmlNewTextWriterTree(doc, node, compression);
43326:         desret_xmlTextWriterPtr(ret_val);
43327:         call_tests++;
43328:         des_xmlDocPtr(n_doc, doc, 0);
43329:         des_xmlNodePtr(n_node, node, 1);
43330:         des_int(n_compression, compression, 2);
43331:         xmlResetLastError();
43332:         if (mem_base != xmlMemBlocks()) {
43333:             printf("Leak of %d blocks found in xmlNewTextWriterTree",
43334: 	           xmlMemBlocks() - mem_base);
43335: 	    test_ret++;
43336:             printf(" %d", n_doc);
43337:             printf(" %d", n_node);
43338:             printf(" %d", n_compression);
43339:             printf("\n");
43340:         }
43341:     }
43342:     }
43343:     }
43344:     function_tests++;
43345: #endif
43346: 
43347:     return(test_ret);
43348: }
43349: 
43350: 
43351: static int
43352: test_xmlTextWriterEndAttribute(void) {
43353:     int test_ret = 0;
43354: 
43355: #if defined(LIBXML_WRITER_ENABLED)
43356:     int mem_base;
43357:     int ret_val;
43358:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
43359:     int n_writer;
43360: 
43361:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
43362:         mem_base = xmlMemBlocks();
43363:         writer = gen_xmlTextWriterPtr(n_writer, 0);
43364: 
43365:         ret_val = xmlTextWriterEndAttribute(writer);
43366:         desret_int(ret_val);
43367:         call_tests++;
43368:         des_xmlTextWriterPtr(n_writer, writer, 0);
43369:         xmlResetLastError();
43370:         if (mem_base != xmlMemBlocks()) {
43371:             printf("Leak of %d blocks found in xmlTextWriterEndAttribute",
43372: 	           xmlMemBlocks() - mem_base);
43373: 	    test_ret++;
43374:             printf(" %d", n_writer);
43375:             printf("\n");
43376:         }
43377:     }
43378:     function_tests++;
43379: #endif
43380: 
43381:     return(test_ret);
43382: }
43383: 
43384: 
43385: static int
43386: test_xmlTextWriterEndCDATA(void) {
43387:     int test_ret = 0;
43388: 
43389: #if defined(LIBXML_WRITER_ENABLED)
43390:     int mem_base;
43391:     int ret_val;
43392:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
43393:     int n_writer;
43394: 
43395:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
43396:         mem_base = xmlMemBlocks();
43397:         writer = gen_xmlTextWriterPtr(n_writer, 0);
43398: 
43399:         ret_val = xmlTextWriterEndCDATA(writer);
43400:         desret_int(ret_val);
43401:         call_tests++;
43402:         des_xmlTextWriterPtr(n_writer, writer, 0);
43403:         xmlResetLastError();
43404:         if (mem_base != xmlMemBlocks()) {
43405:             printf("Leak of %d blocks found in xmlTextWriterEndCDATA",
43406: 	           xmlMemBlocks() - mem_base);
43407: 	    test_ret++;
43408:             printf(" %d", n_writer);
43409:             printf("\n");
43410:         }
43411:     }
43412:     function_tests++;
43413: #endif
43414: 
43415:     return(test_ret);
43416: }
43417: 
43418: 
43419: static int
43420: test_xmlTextWriterEndComment(void) {
43421:     int test_ret = 0;
43422: 
43423: #if defined(LIBXML_WRITER_ENABLED)
43424:     int mem_base;
43425:     int ret_val;
43426:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
43427:     int n_writer;
43428: 
43429:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
43430:         mem_base = xmlMemBlocks();
43431:         writer = gen_xmlTextWriterPtr(n_writer, 0);
43432: 
43433:         ret_val = xmlTextWriterEndComment(writer);
43434:         desret_int(ret_val);
43435:         call_tests++;
43436:         des_xmlTextWriterPtr(n_writer, writer, 0);
43437:         xmlResetLastError();
43438:         if (mem_base != xmlMemBlocks()) {
43439:             printf("Leak of %d blocks found in xmlTextWriterEndComment",
43440: 	           xmlMemBlocks() - mem_base);
43441: 	    test_ret++;
43442:             printf(" %d", n_writer);
43443:             printf("\n");
43444:         }
43445:     }
43446:     function_tests++;
43447: #endif
43448: 
43449:     return(test_ret);
43450: }
43451: 
43452: 
43453: static int
43454: test_xmlTextWriterEndDTD(void) {
43455:     int test_ret = 0;
43456: 
43457: #if defined(LIBXML_WRITER_ENABLED)
43458:     int mem_base;
43459:     int ret_val;
43460:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
43461:     int n_writer;
43462: 
43463:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
43464:         mem_base = xmlMemBlocks();
43465:         writer = gen_xmlTextWriterPtr(n_writer, 0);
43466: 
43467:         ret_val = xmlTextWriterEndDTD(writer);
43468:         desret_int(ret_val);
43469:         call_tests++;
43470:         des_xmlTextWriterPtr(n_writer, writer, 0);
43471:         xmlResetLastError();
43472:         if (mem_base != xmlMemBlocks()) {
43473:             printf("Leak of %d blocks found in xmlTextWriterEndDTD",
43474: 	           xmlMemBlocks() - mem_base);
43475: 	    test_ret++;
43476:             printf(" %d", n_writer);
43477:             printf("\n");
43478:         }
43479:     }
43480:     function_tests++;
43481: #endif
43482: 
43483:     return(test_ret);
43484: }
43485: 
43486: 
43487: static int
43488: test_xmlTextWriterEndDTDAttlist(void) {
43489:     int test_ret = 0;
43490: 
43491: #if defined(LIBXML_WRITER_ENABLED)
43492:     int mem_base;
43493:     int ret_val;
43494:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
43495:     int n_writer;
43496: 
43497:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
43498:         mem_base = xmlMemBlocks();
43499:         writer = gen_xmlTextWriterPtr(n_writer, 0);
43500: 
43501:         ret_val = xmlTextWriterEndDTDAttlist(writer);
43502:         desret_int(ret_val);
43503:         call_tests++;
43504:         des_xmlTextWriterPtr(n_writer, writer, 0);
43505:         xmlResetLastError();
43506:         if (mem_base != xmlMemBlocks()) {
43507:             printf("Leak of %d blocks found in xmlTextWriterEndDTDAttlist",
43508: 	           xmlMemBlocks() - mem_base);
43509: 	    test_ret++;
43510:             printf(" %d", n_writer);
43511:             printf("\n");
43512:         }
43513:     }
43514:     function_tests++;
43515: #endif
43516: 
43517:     return(test_ret);
43518: }
43519: 
43520: 
43521: static int
43522: test_xmlTextWriterEndDTDElement(void) {
43523:     int test_ret = 0;
43524: 
43525: #if defined(LIBXML_WRITER_ENABLED)
43526:     int mem_base;
43527:     int ret_val;
43528:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
43529:     int n_writer;
43530: 
43531:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
43532:         mem_base = xmlMemBlocks();
43533:         writer = gen_xmlTextWriterPtr(n_writer, 0);
43534: 
43535:         ret_val = xmlTextWriterEndDTDElement(writer);
43536:         desret_int(ret_val);
43537:         call_tests++;
43538:         des_xmlTextWriterPtr(n_writer, writer, 0);
43539:         xmlResetLastError();
43540:         if (mem_base != xmlMemBlocks()) {
43541:             printf("Leak of %d blocks found in xmlTextWriterEndDTDElement",
43542: 	           xmlMemBlocks() - mem_base);
43543: 	    test_ret++;
43544:             printf(" %d", n_writer);
43545:             printf("\n");
43546:         }
43547:     }
43548:     function_tests++;
43549: #endif
43550: 
43551:     return(test_ret);
43552: }
43553: 
43554: 
43555: static int
43556: test_xmlTextWriterEndDTDEntity(void) {
43557:     int test_ret = 0;
43558: 
43559: #if defined(LIBXML_WRITER_ENABLED)
43560:     int mem_base;
43561:     int ret_val;
43562:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
43563:     int n_writer;
43564: 
43565:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
43566:         mem_base = xmlMemBlocks();
43567:         writer = gen_xmlTextWriterPtr(n_writer, 0);
43568: 
43569:         ret_val = xmlTextWriterEndDTDEntity(writer);
43570:         desret_int(ret_val);
43571:         call_tests++;
43572:         des_xmlTextWriterPtr(n_writer, writer, 0);
43573:         xmlResetLastError();
43574:         if (mem_base != xmlMemBlocks()) {
43575:             printf("Leak of %d blocks found in xmlTextWriterEndDTDEntity",
43576: 	           xmlMemBlocks() - mem_base);
43577: 	    test_ret++;
43578:             printf(" %d", n_writer);
43579:             printf("\n");
43580:         }
43581:     }
43582:     function_tests++;
43583: #endif
43584: 
43585:     return(test_ret);
43586: }
43587: 
43588: 
43589: static int
43590: test_xmlTextWriterEndDocument(void) {
43591:     int test_ret = 0;
43592: 
43593: #if defined(LIBXML_WRITER_ENABLED)
43594:     int mem_base;
43595:     int ret_val;
43596:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
43597:     int n_writer;
43598: 
43599:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
43600:         mem_base = xmlMemBlocks();
43601:         writer = gen_xmlTextWriterPtr(n_writer, 0);
43602: 
43603:         ret_val = xmlTextWriterEndDocument(writer);
43604:         desret_int(ret_val);
43605:         call_tests++;
43606:         des_xmlTextWriterPtr(n_writer, writer, 0);
43607:         xmlResetLastError();
43608:         if (mem_base != xmlMemBlocks()) {
43609:             printf("Leak of %d blocks found in xmlTextWriterEndDocument",
43610: 	           xmlMemBlocks() - mem_base);
43611: 	    test_ret++;
43612:             printf(" %d", n_writer);
43613:             printf("\n");
43614:         }
43615:     }
43616:     function_tests++;
43617: #endif
43618: 
43619:     return(test_ret);
43620: }
43621: 
43622: 
43623: static int
43624: test_xmlTextWriterEndElement(void) {
43625:     int test_ret = 0;
43626: 
43627: #if defined(LIBXML_WRITER_ENABLED)
43628:     int mem_base;
43629:     int ret_val;
43630:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
43631:     int n_writer;
43632: 
43633:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
43634:         mem_base = xmlMemBlocks();
43635:         writer = gen_xmlTextWriterPtr(n_writer, 0);
43636: 
43637:         ret_val = xmlTextWriterEndElement(writer);
43638:         desret_int(ret_val);
43639:         call_tests++;
43640:         des_xmlTextWriterPtr(n_writer, writer, 0);
43641:         xmlResetLastError();
43642:         if (mem_base != xmlMemBlocks()) {
43643:             printf("Leak of %d blocks found in xmlTextWriterEndElement",
43644: 	           xmlMemBlocks() - mem_base);
43645: 	    test_ret++;
43646:             printf(" %d", n_writer);
43647:             printf("\n");
43648:         }
43649:     }
43650:     function_tests++;
43651: #endif
43652: 
43653:     return(test_ret);
43654: }
43655: 
43656: 
43657: static int
43658: test_xmlTextWriterEndPI(void) {
43659:     int test_ret = 0;
43660: 
43661: #if defined(LIBXML_WRITER_ENABLED)
43662:     int mem_base;
43663:     int ret_val;
43664:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
43665:     int n_writer;
43666: 
43667:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
43668:         mem_base = xmlMemBlocks();
43669:         writer = gen_xmlTextWriterPtr(n_writer, 0);
43670: 
43671:         ret_val = xmlTextWriterEndPI(writer);
43672:         desret_int(ret_val);
43673:         call_tests++;
43674:         des_xmlTextWriterPtr(n_writer, writer, 0);
43675:         xmlResetLastError();
43676:         if (mem_base != xmlMemBlocks()) {
43677:             printf("Leak of %d blocks found in xmlTextWriterEndPI",
43678: 	           xmlMemBlocks() - mem_base);
43679: 	    test_ret++;
43680:             printf(" %d", n_writer);
43681:             printf("\n");
43682:         }
43683:     }
43684:     function_tests++;
43685: #endif
43686: 
43687:     return(test_ret);
43688: }
43689: 
43690: 
43691: static int
43692: test_xmlTextWriterFlush(void) {
43693:     int test_ret = 0;
43694: 
43695: #if defined(LIBXML_WRITER_ENABLED)
43696:     int mem_base;
43697:     int ret_val;
43698:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
43699:     int n_writer;
43700: 
43701:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
43702:         mem_base = xmlMemBlocks();
43703:         writer = gen_xmlTextWriterPtr(n_writer, 0);
43704: 
43705:         ret_val = xmlTextWriterFlush(writer);
43706:         desret_int(ret_val);
43707:         call_tests++;
43708:         des_xmlTextWriterPtr(n_writer, writer, 0);
43709:         xmlResetLastError();
43710:         if (mem_base != xmlMemBlocks()) {
43711:             printf("Leak of %d blocks found in xmlTextWriterFlush",
43712: 	           xmlMemBlocks() - mem_base);
43713: 	    test_ret++;
43714:             printf(" %d", n_writer);
43715:             printf("\n");
43716:         }
43717:     }
43718:     function_tests++;
43719: #endif
43720: 
43721:     return(test_ret);
43722: }
43723: 
43724: 
43725: static int
43726: test_xmlTextWriterFullEndElement(void) {
43727:     int test_ret = 0;
43728: 
43729: #if defined(LIBXML_WRITER_ENABLED)
43730:     int mem_base;
43731:     int ret_val;
43732:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
43733:     int n_writer;
43734: 
43735:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
43736:         mem_base = xmlMemBlocks();
43737:         writer = gen_xmlTextWriterPtr(n_writer, 0);
43738: 
43739:         ret_val = xmlTextWriterFullEndElement(writer);
43740:         desret_int(ret_val);
43741:         call_tests++;
43742:         des_xmlTextWriterPtr(n_writer, writer, 0);
43743:         xmlResetLastError();
43744:         if (mem_base != xmlMemBlocks()) {
43745:             printf("Leak of %d blocks found in xmlTextWriterFullEndElement",
43746: 	           xmlMemBlocks() - mem_base);
43747: 	    test_ret++;
43748:             printf(" %d", n_writer);
43749:             printf("\n");
43750:         }
43751:     }
43752:     function_tests++;
43753: #endif
43754: 
43755:     return(test_ret);
43756: }
43757: 
43758: 
43759: static int
43760: test_xmlTextWriterSetIndent(void) {
43761:     int test_ret = 0;
43762: 
43763: #if defined(LIBXML_WRITER_ENABLED)
43764:     int mem_base;
43765:     int ret_val;
43766:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
43767:     int n_writer;
43768:     int indent; /* do indentation? */
43769:     int n_indent;
43770: 
43771:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
43772:     for (n_indent = 0;n_indent < gen_nb_int;n_indent++) {
43773:         mem_base = xmlMemBlocks();
43774:         writer = gen_xmlTextWriterPtr(n_writer, 0);
43775:         indent = gen_int(n_indent, 1);
43776: 
43777:         ret_val = xmlTextWriterSetIndent(writer, indent);
43778:         desret_int(ret_val);
43779:         call_tests++;
43780:         des_xmlTextWriterPtr(n_writer, writer, 0);
43781:         des_int(n_indent, indent, 1);
43782:         xmlResetLastError();
43783:         if (mem_base != xmlMemBlocks()) {
43784:             printf("Leak of %d blocks found in xmlTextWriterSetIndent",
43785: 	           xmlMemBlocks() - mem_base);
43786: 	    test_ret++;
43787:             printf(" %d", n_writer);
43788:             printf(" %d", n_indent);
43789:             printf("\n");
43790:         }
43791:     }
43792:     }
43793:     function_tests++;
43794: #endif
43795: 
43796:     return(test_ret);
43797: }
43798: 
43799: 
43800: static int
43801: test_xmlTextWriterSetIndentString(void) {
43802:     int test_ret = 0;
43803: 
43804: #if defined(LIBXML_WRITER_ENABLED)
43805:     int mem_base;
43806:     int ret_val;
43807:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
43808:     int n_writer;
43809:     xmlChar * str; /* the xmlChar string */
43810:     int n_str;
43811: 
43812:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
43813:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
43814:         mem_base = xmlMemBlocks();
43815:         writer = gen_xmlTextWriterPtr(n_writer, 0);
43816:         str = gen_const_xmlChar_ptr(n_str, 1);
43817: 
43818:         ret_val = xmlTextWriterSetIndentString(writer, (const xmlChar *)str);
43819:         desret_int(ret_val);
43820:         call_tests++;
43821:         des_xmlTextWriterPtr(n_writer, writer, 0);
43822:         des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 1);
43823:         xmlResetLastError();
43824:         if (mem_base != xmlMemBlocks()) {
43825:             printf("Leak of %d blocks found in xmlTextWriterSetIndentString",
43826: 	           xmlMemBlocks() - mem_base);
43827: 	    test_ret++;
43828:             printf(" %d", n_writer);
43829:             printf(" %d", n_str);
43830:             printf("\n");
43831:         }
43832:     }
43833:     }
43834:     function_tests++;
43835: #endif
43836: 
43837:     return(test_ret);
43838: }
43839: 
43840: 
43841: static int
43842: test_xmlTextWriterSetQuoteChar(void) {
43843:     int test_ret = 0;
43844: 
43845: #if defined(LIBXML_WRITER_ENABLED)
43846:     int mem_base;
43847:     int ret_val;
43848:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
43849:     int n_writer;
43850:     xmlChar quotechar; /* the quote character */
43851:     int n_quotechar;
43852: 
43853:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
43854:     for (n_quotechar = 0;n_quotechar < gen_nb_xmlChar;n_quotechar++) {
43855:         mem_base = xmlMemBlocks();
43856:         writer = gen_xmlTextWriterPtr(n_writer, 0);
43857:         quotechar = gen_xmlChar(n_quotechar, 1);
43858: 
43859:         ret_val = xmlTextWriterSetQuoteChar(writer, quotechar);
43860:         desret_int(ret_val);
43861:         call_tests++;
43862:         des_xmlTextWriterPtr(n_writer, writer, 0);
43863:         des_xmlChar(n_quotechar, quotechar, 1);
43864:         xmlResetLastError();
43865:         if (mem_base != xmlMemBlocks()) {
43866:             printf("Leak of %d blocks found in xmlTextWriterSetQuoteChar",
43867: 	           xmlMemBlocks() - mem_base);
43868: 	    test_ret++;
43869:             printf(" %d", n_writer);
43870:             printf(" %d", n_quotechar);
43871:             printf("\n");
43872:         }
43873:     }
43874:     }
43875:     function_tests++;
43876: #endif
43877: 
43878:     return(test_ret);
43879: }
43880: 
43881: 
43882: static int
43883: test_xmlTextWriterStartAttribute(void) {
43884:     int test_ret = 0;
43885: 
43886: #if defined(LIBXML_WRITER_ENABLED)
43887:     int mem_base;
43888:     int ret_val;
43889:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
43890:     int n_writer;
43891:     xmlChar * name; /* element name */
43892:     int n_name;
43893: 
43894:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
43895:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
43896:         mem_base = xmlMemBlocks();
43897:         writer = gen_xmlTextWriterPtr(n_writer, 0);
43898:         name = gen_const_xmlChar_ptr(n_name, 1);
43899: 
43900:         ret_val = xmlTextWriterStartAttribute(writer, (const xmlChar *)name);
43901:         desret_int(ret_val);
43902:         call_tests++;
43903:         des_xmlTextWriterPtr(n_writer, writer, 0);
43904:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
43905:         xmlResetLastError();
43906:         if (mem_base != xmlMemBlocks()) {
43907:             printf("Leak of %d blocks found in xmlTextWriterStartAttribute",
43908: 	           xmlMemBlocks() - mem_base);
43909: 	    test_ret++;
43910:             printf(" %d", n_writer);
43911:             printf(" %d", n_name);
43912:             printf("\n");
43913:         }
43914:     }
43915:     }
43916:     function_tests++;
43917: #endif
43918: 
43919:     return(test_ret);
43920: }
43921: 
43922: 
43923: static int
43924: test_xmlTextWriterStartAttributeNS(void) {
43925:     int test_ret = 0;
43926: 
43927: #if defined(LIBXML_WRITER_ENABLED)
43928:     int mem_base;
43929:     int ret_val;
43930:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
43931:     int n_writer;
43932:     xmlChar * prefix; /* namespace prefix or NULL */
43933:     int n_prefix;
43934:     xmlChar * name; /* element local name */
43935:     int n_name;
43936:     xmlChar * namespaceURI; /* namespace URI or NULL */
43937:     int n_namespaceURI;
43938: 
43939:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
43940:     for (n_prefix = 0;n_prefix < gen_nb_const_xmlChar_ptr;n_prefix++) {
43941:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
43942:     for (n_namespaceURI = 0;n_namespaceURI < gen_nb_const_xmlChar_ptr;n_namespaceURI++) {
43943:         mem_base = xmlMemBlocks();
43944:         writer = gen_xmlTextWriterPtr(n_writer, 0);
43945:         prefix = gen_const_xmlChar_ptr(n_prefix, 1);
43946:         name = gen_const_xmlChar_ptr(n_name, 2);
43947:         namespaceURI = gen_const_xmlChar_ptr(n_namespaceURI, 3);
43948: 
43949:         ret_val = xmlTextWriterStartAttributeNS(writer, (const xmlChar *)prefix, (const xmlChar *)name, (const xmlChar *)namespaceURI);
43950:         desret_int(ret_val);
43951:         call_tests++;
43952:         des_xmlTextWriterPtr(n_writer, writer, 0);
43953:         des_const_xmlChar_ptr(n_prefix, (const xmlChar *)prefix, 1);
43954:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
43955:         des_const_xmlChar_ptr(n_namespaceURI, (const xmlChar *)namespaceURI, 3);
43956:         xmlResetLastError();
43957:         if (mem_base != xmlMemBlocks()) {
43958:             printf("Leak of %d blocks found in xmlTextWriterStartAttributeNS",
43959: 	           xmlMemBlocks() - mem_base);
43960: 	    test_ret++;
43961:             printf(" %d", n_writer);
43962:             printf(" %d", n_prefix);
43963:             printf(" %d", n_name);
43964:             printf(" %d", n_namespaceURI);
43965:             printf("\n");
43966:         }
43967:     }
43968:     }
43969:     }
43970:     }
43971:     function_tests++;
43972: #endif
43973: 
43974:     return(test_ret);
43975: }
43976: 
43977: 
43978: static int
43979: test_xmlTextWriterStartCDATA(void) {
43980:     int test_ret = 0;
43981: 
43982: #if defined(LIBXML_WRITER_ENABLED)
43983:     int mem_base;
43984:     int ret_val;
43985:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
43986:     int n_writer;
43987: 
43988:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
43989:         mem_base = xmlMemBlocks();
43990:         writer = gen_xmlTextWriterPtr(n_writer, 0);
43991: 
43992:         ret_val = xmlTextWriterStartCDATA(writer);
43993:         desret_int(ret_val);
43994:         call_tests++;
43995:         des_xmlTextWriterPtr(n_writer, writer, 0);
43996:         xmlResetLastError();
43997:         if (mem_base != xmlMemBlocks()) {
43998:             printf("Leak of %d blocks found in xmlTextWriterStartCDATA",
43999: 	           xmlMemBlocks() - mem_base);
44000: 	    test_ret++;
44001:             printf(" %d", n_writer);
44002:             printf("\n");
44003:         }
44004:     }
44005:     function_tests++;
44006: #endif
44007: 
44008:     return(test_ret);
44009: }
44010: 
44011: 
44012: static int
44013: test_xmlTextWriterStartComment(void) {
44014:     int test_ret = 0;
44015: 
44016: #if defined(LIBXML_WRITER_ENABLED)
44017:     int mem_base;
44018:     int ret_val;
44019:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
44020:     int n_writer;
44021: 
44022:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
44023:         mem_base = xmlMemBlocks();
44024:         writer = gen_xmlTextWriterPtr(n_writer, 0);
44025: 
44026:         ret_val = xmlTextWriterStartComment(writer);
44027:         desret_int(ret_val);
44028:         call_tests++;
44029:         des_xmlTextWriterPtr(n_writer, writer, 0);
44030:         xmlResetLastError();
44031:         if (mem_base != xmlMemBlocks()) {
44032:             printf("Leak of %d blocks found in xmlTextWriterStartComment",
44033: 	           xmlMemBlocks() - mem_base);
44034: 	    test_ret++;
44035:             printf(" %d", n_writer);
44036:             printf("\n");
44037:         }
44038:     }
44039:     function_tests++;
44040: #endif
44041: 
44042:     return(test_ret);
44043: }
44044: 
44045: 
44046: static int
44047: test_xmlTextWriterStartDTD(void) {
44048:     int test_ret = 0;
44049: 
44050: #if defined(LIBXML_WRITER_ENABLED)
44051:     int mem_base;
44052:     int ret_val;
44053:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
44054:     int n_writer;
44055:     xmlChar * name; /* the name of the DTD */
44056:     int n_name;
44057:     xmlChar * pubid; /* the public identifier, which is an alternative to the system identifier */
44058:     int n_pubid;
44059:     xmlChar * sysid; /* the system identifier, which is the URI of the DTD */
44060:     int n_sysid;
44061: 
44062:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
44063:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
44064:     for (n_pubid = 0;n_pubid < gen_nb_const_xmlChar_ptr;n_pubid++) {
44065:     for (n_sysid = 0;n_sysid < gen_nb_const_xmlChar_ptr;n_sysid++) {
44066:         mem_base = xmlMemBlocks();
44067:         writer = gen_xmlTextWriterPtr(n_writer, 0);
44068:         name = gen_const_xmlChar_ptr(n_name, 1);
44069:         pubid = gen_const_xmlChar_ptr(n_pubid, 2);
44070:         sysid = gen_const_xmlChar_ptr(n_sysid, 3);
44071: 
44072:         ret_val = xmlTextWriterStartDTD(writer, (const xmlChar *)name, (const xmlChar *)pubid, (const xmlChar *)sysid);
44073:         desret_int(ret_val);
44074:         call_tests++;
44075:         des_xmlTextWriterPtr(n_writer, writer, 0);
44076:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
44077:         des_const_xmlChar_ptr(n_pubid, (const xmlChar *)pubid, 2);
44078:         des_const_xmlChar_ptr(n_sysid, (const xmlChar *)sysid, 3);
44079:         xmlResetLastError();
44080:         if (mem_base != xmlMemBlocks()) {
44081:             printf("Leak of %d blocks found in xmlTextWriterStartDTD",
44082: 	           xmlMemBlocks() - mem_base);
44083: 	    test_ret++;
44084:             printf(" %d", n_writer);
44085:             printf(" %d", n_name);
44086:             printf(" %d", n_pubid);
44087:             printf(" %d", n_sysid);
44088:             printf("\n");
44089:         }
44090:     }
44091:     }
44092:     }
44093:     }
44094:     function_tests++;
44095: #endif
44096: 
44097:     return(test_ret);
44098: }
44099: 
44100: 
44101: static int
44102: test_xmlTextWriterStartDTDAttlist(void) {
44103:     int test_ret = 0;
44104: 
44105: #if defined(LIBXML_WRITER_ENABLED)
44106:     int mem_base;
44107:     int ret_val;
44108:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
44109:     int n_writer;
44110:     xmlChar * name; /* the name of the DTD ATTLIST */
44111:     int n_name;
44112: 
44113:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
44114:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
44115:         mem_base = xmlMemBlocks();
44116:         writer = gen_xmlTextWriterPtr(n_writer, 0);
44117:         name = gen_const_xmlChar_ptr(n_name, 1);
44118: 
44119:         ret_val = xmlTextWriterStartDTDAttlist(writer, (const xmlChar *)name);
44120:         desret_int(ret_val);
44121:         call_tests++;
44122:         des_xmlTextWriterPtr(n_writer, writer, 0);
44123:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
44124:         xmlResetLastError();
44125:         if (mem_base != xmlMemBlocks()) {
44126:             printf("Leak of %d blocks found in xmlTextWriterStartDTDAttlist",
44127: 	           xmlMemBlocks() - mem_base);
44128: 	    test_ret++;
44129:             printf(" %d", n_writer);
44130:             printf(" %d", n_name);
44131:             printf("\n");
44132:         }
44133:     }
44134:     }
44135:     function_tests++;
44136: #endif
44137: 
44138:     return(test_ret);
44139: }
44140: 
44141: 
44142: static int
44143: test_xmlTextWriterStartDTDElement(void) {
44144:     int test_ret = 0;
44145: 
44146: #if defined(LIBXML_WRITER_ENABLED)
44147:     int mem_base;
44148:     int ret_val;
44149:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
44150:     int n_writer;
44151:     xmlChar * name; /* the name of the DTD element */
44152:     int n_name;
44153: 
44154:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
44155:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
44156:         mem_base = xmlMemBlocks();
44157:         writer = gen_xmlTextWriterPtr(n_writer, 0);
44158:         name = gen_const_xmlChar_ptr(n_name, 1);
44159: 
44160:         ret_val = xmlTextWriterStartDTDElement(writer, (const xmlChar *)name);
44161:         desret_int(ret_val);
44162:         call_tests++;
44163:         des_xmlTextWriterPtr(n_writer, writer, 0);
44164:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
44165:         xmlResetLastError();
44166:         if (mem_base != xmlMemBlocks()) {
44167:             printf("Leak of %d blocks found in xmlTextWriterStartDTDElement",
44168: 	           xmlMemBlocks() - mem_base);
44169: 	    test_ret++;
44170:             printf(" %d", n_writer);
44171:             printf(" %d", n_name);
44172:             printf("\n");
44173:         }
44174:     }
44175:     }
44176:     function_tests++;
44177: #endif
44178: 
44179:     return(test_ret);
44180: }
44181: 
44182: 
44183: static int
44184: test_xmlTextWriterStartDTDEntity(void) {
44185:     int test_ret = 0;
44186: 
44187: #if defined(LIBXML_WRITER_ENABLED)
44188:     int mem_base;
44189:     int ret_val;
44190:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
44191:     int n_writer;
44192:     int pe; /* TRUE if this is a parameter entity, FALSE if not */
44193:     int n_pe;
44194:     xmlChar * name; /* the name of the DTD ATTLIST */
44195:     int n_name;
44196: 
44197:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
44198:     for (n_pe = 0;n_pe < gen_nb_int;n_pe++) {
44199:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
44200:         mem_base = xmlMemBlocks();
44201:         writer = gen_xmlTextWriterPtr(n_writer, 0);
44202:         pe = gen_int(n_pe, 1);
44203:         name = gen_const_xmlChar_ptr(n_name, 2);
44204: 
44205:         ret_val = xmlTextWriterStartDTDEntity(writer, pe, (const xmlChar *)name);
44206:         desret_int(ret_val);
44207:         call_tests++;
44208:         des_xmlTextWriterPtr(n_writer, writer, 0);
44209:         des_int(n_pe, pe, 1);
44210:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
44211:         xmlResetLastError();
44212:         if (mem_base != xmlMemBlocks()) {
44213:             printf("Leak of %d blocks found in xmlTextWriterStartDTDEntity",
44214: 	           xmlMemBlocks() - mem_base);
44215: 	    test_ret++;
44216:             printf(" %d", n_writer);
44217:             printf(" %d", n_pe);
44218:             printf(" %d", n_name);
44219:             printf("\n");
44220:         }
44221:     }
44222:     }
44223:     }
44224:     function_tests++;
44225: #endif
44226: 
44227:     return(test_ret);
44228: }
44229: 
44230: 
44231: static int
44232: test_xmlTextWriterStartDocument(void) {
44233:     int test_ret = 0;
44234: 
44235: #if defined(LIBXML_WRITER_ENABLED)
44236:     int mem_base;
44237:     int ret_val;
44238:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
44239:     int n_writer;
44240:     char * version; /* the xml version ("1.0") or NULL for default ("1.0") */
44241:     int n_version;
44242:     char * encoding; /* the encoding or NULL for default */
44243:     int n_encoding;
44244:     char * standalone; /* "yes" or "no" or NULL for default */
44245:     int n_standalone;
44246: 
44247:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
44248:     for (n_version = 0;n_version < gen_nb_const_char_ptr;n_version++) {
44249:     for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
44250:     for (n_standalone = 0;n_standalone < gen_nb_const_char_ptr;n_standalone++) {
44251:         mem_base = xmlMemBlocks();
44252:         writer = gen_xmlTextWriterPtr(n_writer, 0);
44253:         version = gen_const_char_ptr(n_version, 1);
44254:         encoding = gen_const_char_ptr(n_encoding, 2);
44255:         standalone = gen_const_char_ptr(n_standalone, 3);
44256: 
44257:         ret_val = xmlTextWriterStartDocument(writer, (const char *)version, (const char *)encoding, (const char *)standalone);
44258:         desret_int(ret_val);
44259:         call_tests++;
44260:         des_xmlTextWriterPtr(n_writer, writer, 0);
44261:         des_const_char_ptr(n_version, (const char *)version, 1);
44262:         des_const_char_ptr(n_encoding, (const char *)encoding, 2);
44263:         des_const_char_ptr(n_standalone, (const char *)standalone, 3);
44264:         xmlResetLastError();
44265:         if (mem_base != xmlMemBlocks()) {
44266:             printf("Leak of %d blocks found in xmlTextWriterStartDocument",
44267: 	           xmlMemBlocks() - mem_base);
44268: 	    test_ret++;
44269:             printf(" %d", n_writer);
44270:             printf(" %d", n_version);
44271:             printf(" %d", n_encoding);
44272:             printf(" %d", n_standalone);
44273:             printf("\n");
44274:         }
44275:     }
44276:     }
44277:     }
44278:     }
44279:     function_tests++;
44280: #endif
44281: 
44282:     return(test_ret);
44283: }
44284: 
44285: 
44286: static int
44287: test_xmlTextWriterStartElement(void) {
44288:     int test_ret = 0;
44289: 
44290: #if defined(LIBXML_WRITER_ENABLED)
44291:     int mem_base;
44292:     int ret_val;
44293:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
44294:     int n_writer;
44295:     xmlChar * name; /* element name */
44296:     int n_name;
44297: 
44298:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
44299:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
44300:         mem_base = xmlMemBlocks();
44301:         writer = gen_xmlTextWriterPtr(n_writer, 0);
44302:         name = gen_const_xmlChar_ptr(n_name, 1);
44303: 
44304:         ret_val = xmlTextWriterStartElement(writer, (const xmlChar *)name);
44305:         desret_int(ret_val);
44306:         call_tests++;
44307:         des_xmlTextWriterPtr(n_writer, writer, 0);
44308:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
44309:         xmlResetLastError();
44310:         if (mem_base != xmlMemBlocks()) {
44311:             printf("Leak of %d blocks found in xmlTextWriterStartElement",
44312: 	           xmlMemBlocks() - mem_base);
44313: 	    test_ret++;
44314:             printf(" %d", n_writer);
44315:             printf(" %d", n_name);
44316:             printf("\n");
44317:         }
44318:     }
44319:     }
44320:     function_tests++;
44321: #endif
44322: 
44323:     return(test_ret);
44324: }
44325: 
44326: 
44327: static int
44328: test_xmlTextWriterStartElementNS(void) {
44329:     int test_ret = 0;
44330: 
44331: #if defined(LIBXML_WRITER_ENABLED)
44332:     int mem_base;
44333:     int ret_val;
44334:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
44335:     int n_writer;
44336:     xmlChar * prefix; /* namespace prefix or NULL */
44337:     int n_prefix;
44338:     xmlChar * name; /* element local name */
44339:     int n_name;
44340:     xmlChar * namespaceURI; /* namespace URI or NULL */
44341:     int n_namespaceURI;
44342: 
44343:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
44344:     for (n_prefix = 0;n_prefix < gen_nb_const_xmlChar_ptr;n_prefix++) {
44345:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
44346:     for (n_namespaceURI = 0;n_namespaceURI < gen_nb_const_xmlChar_ptr;n_namespaceURI++) {
44347:         mem_base = xmlMemBlocks();
44348:         writer = gen_xmlTextWriterPtr(n_writer, 0);
44349:         prefix = gen_const_xmlChar_ptr(n_prefix, 1);
44350:         name = gen_const_xmlChar_ptr(n_name, 2);
44351:         namespaceURI = gen_const_xmlChar_ptr(n_namespaceURI, 3);
44352: 
44353:         ret_val = xmlTextWriterStartElementNS(writer, (const xmlChar *)prefix, (const xmlChar *)name, (const xmlChar *)namespaceURI);
44354:         desret_int(ret_val);
44355:         call_tests++;
44356:         des_xmlTextWriterPtr(n_writer, writer, 0);
44357:         des_const_xmlChar_ptr(n_prefix, (const xmlChar *)prefix, 1);
44358:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
44359:         des_const_xmlChar_ptr(n_namespaceURI, (const xmlChar *)namespaceURI, 3);
44360:         xmlResetLastError();
44361:         if (mem_base != xmlMemBlocks()) {
44362:             printf("Leak of %d blocks found in xmlTextWriterStartElementNS",
44363: 	           xmlMemBlocks() - mem_base);
44364: 	    test_ret++;
44365:             printf(" %d", n_writer);
44366:             printf(" %d", n_prefix);
44367:             printf(" %d", n_name);
44368:             printf(" %d", n_namespaceURI);
44369:             printf("\n");
44370:         }
44371:     }
44372:     }
44373:     }
44374:     }
44375:     function_tests++;
44376: #endif
44377: 
44378:     return(test_ret);
44379: }
44380: 
44381: 
44382: static int
44383: test_xmlTextWriterStartPI(void) {
44384:     int test_ret = 0;
44385: 
44386: #if defined(LIBXML_WRITER_ENABLED)
44387:     int mem_base;
44388:     int ret_val;
44389:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
44390:     int n_writer;
44391:     xmlChar * target; /* PI target */
44392:     int n_target;
44393: 
44394:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
44395:     for (n_target = 0;n_target < gen_nb_const_xmlChar_ptr;n_target++) {
44396:         mem_base = xmlMemBlocks();
44397:         writer = gen_xmlTextWriterPtr(n_writer, 0);
44398:         target = gen_const_xmlChar_ptr(n_target, 1);
44399: 
44400:         ret_val = xmlTextWriterStartPI(writer, (const xmlChar *)target);
44401:         desret_int(ret_val);
44402:         call_tests++;
44403:         des_xmlTextWriterPtr(n_writer, writer, 0);
44404:         des_const_xmlChar_ptr(n_target, (const xmlChar *)target, 1);
44405:         xmlResetLastError();
44406:         if (mem_base != xmlMemBlocks()) {
44407:             printf("Leak of %d blocks found in xmlTextWriterStartPI",
44408: 	           xmlMemBlocks() - mem_base);
44409: 	    test_ret++;
44410:             printf(" %d", n_writer);
44411:             printf(" %d", n_target);
44412:             printf("\n");
44413:         }
44414:     }
44415:     }
44416:     function_tests++;
44417: #endif
44418: 
44419:     return(test_ret);
44420: }
44421: 
44422: 
44423: static int
44424: test_xmlTextWriterWriteAttribute(void) {
44425:     int test_ret = 0;
44426: 
44427: #if defined(LIBXML_WRITER_ENABLED)
44428:     int mem_base;
44429:     int ret_val;
44430:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
44431:     int n_writer;
44432:     xmlChar * name; /* attribute name */
44433:     int n_name;
44434:     xmlChar * content; /* attribute content */
44435:     int n_content;
44436: 
44437:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
44438:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
44439:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
44440:         mem_base = xmlMemBlocks();
44441:         writer = gen_xmlTextWriterPtr(n_writer, 0);
44442:         name = gen_const_xmlChar_ptr(n_name, 1);
44443:         content = gen_const_xmlChar_ptr(n_content, 2);
44444: 
44445:         ret_val = xmlTextWriterWriteAttribute(writer, (const xmlChar *)name, (const xmlChar *)content);
44446:         desret_int(ret_val);
44447:         call_tests++;
44448:         des_xmlTextWriterPtr(n_writer, writer, 0);
44449:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
44450:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 2);
44451:         xmlResetLastError();
44452:         if (mem_base != xmlMemBlocks()) {
44453:             printf("Leak of %d blocks found in xmlTextWriterWriteAttribute",
44454: 	           xmlMemBlocks() - mem_base);
44455: 	    test_ret++;
44456:             printf(" %d", n_writer);
44457:             printf(" %d", n_name);
44458:             printf(" %d", n_content);
44459:             printf("\n");
44460:         }
44461:     }
44462:     }
44463:     }
44464:     function_tests++;
44465: #endif
44466: 
44467:     return(test_ret);
44468: }
44469: 
44470: 
44471: static int
44472: test_xmlTextWriterWriteAttributeNS(void) {
44473:     int test_ret = 0;
44474: 
44475: #if defined(LIBXML_WRITER_ENABLED)
44476:     int mem_base;
44477:     int ret_val;
44478:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
44479:     int n_writer;
44480:     xmlChar * prefix; /* namespace prefix */
44481:     int n_prefix;
44482:     xmlChar * name; /* attribute local name */
44483:     int n_name;
44484:     xmlChar * namespaceURI; /* namespace URI */
44485:     int n_namespaceURI;
44486:     xmlChar * content; /* attribute content */
44487:     int n_content;
44488: 
44489:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
44490:     for (n_prefix = 0;n_prefix < gen_nb_const_xmlChar_ptr;n_prefix++) {
44491:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
44492:     for (n_namespaceURI = 0;n_namespaceURI < gen_nb_const_xmlChar_ptr;n_namespaceURI++) {
44493:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
44494:         mem_base = xmlMemBlocks();
44495:         writer = gen_xmlTextWriterPtr(n_writer, 0);
44496:         prefix = gen_const_xmlChar_ptr(n_prefix, 1);
44497:         name = gen_const_xmlChar_ptr(n_name, 2);
44498:         namespaceURI = gen_const_xmlChar_ptr(n_namespaceURI, 3);
44499:         content = gen_const_xmlChar_ptr(n_content, 4);
44500: 
44501:         ret_val = xmlTextWriterWriteAttributeNS(writer, (const xmlChar *)prefix, (const xmlChar *)name, (const xmlChar *)namespaceURI, (const xmlChar *)content);
44502:         desret_int(ret_val);
44503:         call_tests++;
44504:         des_xmlTextWriterPtr(n_writer, writer, 0);
44505:         des_const_xmlChar_ptr(n_prefix, (const xmlChar *)prefix, 1);
44506:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
44507:         des_const_xmlChar_ptr(n_namespaceURI, (const xmlChar *)namespaceURI, 3);
44508:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 4);
44509:         xmlResetLastError();
44510:         if (mem_base != xmlMemBlocks()) {
44511:             printf("Leak of %d blocks found in xmlTextWriterWriteAttributeNS",
44512: 	           xmlMemBlocks() - mem_base);
44513: 	    test_ret++;
44514:             printf(" %d", n_writer);
44515:             printf(" %d", n_prefix);
44516:             printf(" %d", n_name);
44517:             printf(" %d", n_namespaceURI);
44518:             printf(" %d", n_content);
44519:             printf("\n");
44520:         }
44521:     }
44522:     }
44523:     }
44524:     }
44525:     }
44526:     function_tests++;
44527: #endif
44528: 
44529:     return(test_ret);
44530: }
44531: 
44532: 
44533: static int
44534: test_xmlTextWriterWriteBase64(void) {
44535:     int test_ret = 0;
44536: 
44537: #if defined(LIBXML_WRITER_ENABLED)
44538:     int mem_base;
44539:     int ret_val;
44540:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
44541:     int n_writer;
44542:     char * data; /* binary data */
44543:     int n_data;
44544:     int start; /* the position within the data of the first byte to encode */
44545:     int n_start;
44546:     int len; /* the number of bytes to encode */
44547:     int n_len;
44548: 
44549:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
44550:     for (n_data = 0;n_data < gen_nb_const_char_ptr;n_data++) {
44551:     for (n_start = 0;n_start < gen_nb_int;n_start++) {
44552:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
44553:         mem_base = xmlMemBlocks();
44554:         writer = gen_xmlTextWriterPtr(n_writer, 0);
44555:         data = gen_const_char_ptr(n_data, 1);
44556:         start = gen_int(n_start, 2);
44557:         len = gen_int(n_len, 3);
44558: 
44559:         ret_val = xmlTextWriterWriteBase64(writer, (const char *)data, start, len);
44560:         desret_int(ret_val);
44561:         call_tests++;
44562:         des_xmlTextWriterPtr(n_writer, writer, 0);
44563:         des_const_char_ptr(n_data, (const char *)data, 1);
44564:         des_int(n_start, start, 2);
44565:         des_int(n_len, len, 3);
44566:         xmlResetLastError();
44567:         if (mem_base != xmlMemBlocks()) {
44568:             printf("Leak of %d blocks found in xmlTextWriterWriteBase64",
44569: 	           xmlMemBlocks() - mem_base);
44570: 	    test_ret++;
44571:             printf(" %d", n_writer);
44572:             printf(" %d", n_data);
44573:             printf(" %d", n_start);
44574:             printf(" %d", n_len);
44575:             printf("\n");
44576:         }
44577:     }
44578:     }
44579:     }
44580:     }
44581:     function_tests++;
44582: #endif
44583: 
44584:     return(test_ret);
44585: }
44586: 
44587: 
44588: static int
44589: test_xmlTextWriterWriteBinHex(void) {
44590:     int test_ret = 0;
44591: 
44592: #if defined(LIBXML_WRITER_ENABLED)
44593:     int mem_base;
44594:     int ret_val;
44595:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
44596:     int n_writer;
44597:     char * data; /* binary data */
44598:     int n_data;
44599:     int start; /* the position within the data of the first byte to encode */
44600:     int n_start;
44601:     int len; /* the number of bytes to encode */
44602:     int n_len;
44603: 
44604:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
44605:     for (n_data = 0;n_data < gen_nb_const_char_ptr;n_data++) {
44606:     for (n_start = 0;n_start < gen_nb_int;n_start++) {
44607:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
44608:         mem_base = xmlMemBlocks();
44609:         writer = gen_xmlTextWriterPtr(n_writer, 0);
44610:         data = gen_const_char_ptr(n_data, 1);
44611:         start = gen_int(n_start, 2);
44612:         len = gen_int(n_len, 3);
44613: 
44614:         ret_val = xmlTextWriterWriteBinHex(writer, (const char *)data, start, len);
44615:         desret_int(ret_val);
44616:         call_tests++;
44617:         des_xmlTextWriterPtr(n_writer, writer, 0);
44618:         des_const_char_ptr(n_data, (const char *)data, 1);
44619:         des_int(n_start, start, 2);
44620:         des_int(n_len, len, 3);
44621:         xmlResetLastError();
44622:         if (mem_base != xmlMemBlocks()) {
44623:             printf("Leak of %d blocks found in xmlTextWriterWriteBinHex",
44624: 	           xmlMemBlocks() - mem_base);
44625: 	    test_ret++;
44626:             printf(" %d", n_writer);
44627:             printf(" %d", n_data);
44628:             printf(" %d", n_start);
44629:             printf(" %d", n_len);
44630:             printf("\n");
44631:         }
44632:     }
44633:     }
44634:     }
44635:     }
44636:     function_tests++;
44637: #endif
44638: 
44639:     return(test_ret);
44640: }
44641: 
44642: 
44643: static int
44644: test_xmlTextWriterWriteCDATA(void) {
44645:     int test_ret = 0;
44646: 
44647: #if defined(LIBXML_WRITER_ENABLED)
44648:     int mem_base;
44649:     int ret_val;
44650:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
44651:     int n_writer;
44652:     xmlChar * content; /* CDATA content */
44653:     int n_content;
44654: 
44655:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
44656:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
44657:         mem_base = xmlMemBlocks();
44658:         writer = gen_xmlTextWriterPtr(n_writer, 0);
44659:         content = gen_const_xmlChar_ptr(n_content, 1);
44660: 
44661:         ret_val = xmlTextWriterWriteCDATA(writer, (const xmlChar *)content);
44662:         desret_int(ret_val);
44663:         call_tests++;
44664:         des_xmlTextWriterPtr(n_writer, writer, 0);
44665:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 1);
44666:         xmlResetLastError();
44667:         if (mem_base != xmlMemBlocks()) {
44668:             printf("Leak of %d blocks found in xmlTextWriterWriteCDATA",
44669: 	           xmlMemBlocks() - mem_base);
44670: 	    test_ret++;
44671:             printf(" %d", n_writer);
44672:             printf(" %d", n_content);
44673:             printf("\n");
44674:         }
44675:     }
44676:     }
44677:     function_tests++;
44678: #endif
44679: 
44680:     return(test_ret);
44681: }
44682: 
44683: 
44684: static int
44685: test_xmlTextWriterWriteComment(void) {
44686:     int test_ret = 0;
44687: 
44688: #if defined(LIBXML_WRITER_ENABLED)
44689:     int mem_base;
44690:     int ret_val;
44691:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
44692:     int n_writer;
44693:     xmlChar * content; /* comment string */
44694:     int n_content;
44695: 
44696:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
44697:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
44698:         mem_base = xmlMemBlocks();
44699:         writer = gen_xmlTextWriterPtr(n_writer, 0);
44700:         content = gen_const_xmlChar_ptr(n_content, 1);
44701: 
44702:         ret_val = xmlTextWriterWriteComment(writer, (const xmlChar *)content);
44703:         desret_int(ret_val);
44704:         call_tests++;
44705:         des_xmlTextWriterPtr(n_writer, writer, 0);
44706:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 1);
44707:         xmlResetLastError();
44708:         if (mem_base != xmlMemBlocks()) {
44709:             printf("Leak of %d blocks found in xmlTextWriterWriteComment",
44710: 	           xmlMemBlocks() - mem_base);
44711: 	    test_ret++;
44712:             printf(" %d", n_writer);
44713:             printf(" %d", n_content);
44714:             printf("\n");
44715:         }
44716:     }
44717:     }
44718:     function_tests++;
44719: #endif
44720: 
44721:     return(test_ret);
44722: }
44723: 
44724: 
44725: static int
44726: test_xmlTextWriterWriteDTD(void) {
44727:     int test_ret = 0;
44728: 
44729: #if defined(LIBXML_WRITER_ENABLED)
44730:     int mem_base;
44731:     int ret_val;
44732:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
44733:     int n_writer;
44734:     xmlChar * name; /* the name of the DTD */
44735:     int n_name;
44736:     xmlChar * pubid; /* the public identifier, which is an alternative to the system identifier */
44737:     int n_pubid;
44738:     xmlChar * sysid; /* the system identifier, which is the URI of the DTD */
44739:     int n_sysid;
44740:     xmlChar * subset; /* string content of the DTD */
44741:     int n_subset;
44742: 
44743:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
44744:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
44745:     for (n_pubid = 0;n_pubid < gen_nb_const_xmlChar_ptr;n_pubid++) {
44746:     for (n_sysid = 0;n_sysid < gen_nb_const_xmlChar_ptr;n_sysid++) {
44747:     for (n_subset = 0;n_subset < gen_nb_const_xmlChar_ptr;n_subset++) {
44748:         mem_base = xmlMemBlocks();
44749:         writer = gen_xmlTextWriterPtr(n_writer, 0);
44750:         name = gen_const_xmlChar_ptr(n_name, 1);
44751:         pubid = gen_const_xmlChar_ptr(n_pubid, 2);
44752:         sysid = gen_const_xmlChar_ptr(n_sysid, 3);
44753:         subset = gen_const_xmlChar_ptr(n_subset, 4);
44754: 
44755:         ret_val = xmlTextWriterWriteDTD(writer, (const xmlChar *)name, (const xmlChar *)pubid, (const xmlChar *)sysid, (const xmlChar *)subset);
44756:         desret_int(ret_val);
44757:         call_tests++;
44758:         des_xmlTextWriterPtr(n_writer, writer, 0);
44759:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
44760:         des_const_xmlChar_ptr(n_pubid, (const xmlChar *)pubid, 2);
44761:         des_const_xmlChar_ptr(n_sysid, (const xmlChar *)sysid, 3);
44762:         des_const_xmlChar_ptr(n_subset, (const xmlChar *)subset, 4);
44763:         xmlResetLastError();
44764:         if (mem_base != xmlMemBlocks()) {
44765:             printf("Leak of %d blocks found in xmlTextWriterWriteDTD",
44766: 	           xmlMemBlocks() - mem_base);
44767: 	    test_ret++;
44768:             printf(" %d", n_writer);
44769:             printf(" %d", n_name);
44770:             printf(" %d", n_pubid);
44771:             printf(" %d", n_sysid);
44772:             printf(" %d", n_subset);
44773:             printf("\n");
44774:         }
44775:     }
44776:     }
44777:     }
44778:     }
44779:     }
44780:     function_tests++;
44781: #endif
44782: 
44783:     return(test_ret);
44784: }
44785: 
44786: 
44787: static int
44788: test_xmlTextWriterWriteDTDAttlist(void) {
44789:     int test_ret = 0;
44790: 
44791: #if defined(LIBXML_WRITER_ENABLED)
44792:     int mem_base;
44793:     int ret_val;
44794:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
44795:     int n_writer;
44796:     xmlChar * name; /* the name of the DTD ATTLIST */
44797:     int n_name;
44798:     xmlChar * content; /* content of the ATTLIST */
44799:     int n_content;
44800: 
44801:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
44802:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
44803:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
44804:         mem_base = xmlMemBlocks();
44805:         writer = gen_xmlTextWriterPtr(n_writer, 0);
44806:         name = gen_const_xmlChar_ptr(n_name, 1);
44807:         content = gen_const_xmlChar_ptr(n_content, 2);
44808: 
44809:         ret_val = xmlTextWriterWriteDTDAttlist(writer, (const xmlChar *)name, (const xmlChar *)content);
44810:         desret_int(ret_val);
44811:         call_tests++;
44812:         des_xmlTextWriterPtr(n_writer, writer, 0);
44813:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
44814:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 2);
44815:         xmlResetLastError();
44816:         if (mem_base != xmlMemBlocks()) {
44817:             printf("Leak of %d blocks found in xmlTextWriterWriteDTDAttlist",
44818: 	           xmlMemBlocks() - mem_base);
44819: 	    test_ret++;
44820:             printf(" %d", n_writer);
44821:             printf(" %d", n_name);
44822:             printf(" %d", n_content);
44823:             printf("\n");
44824:         }
44825:     }
44826:     }
44827:     }
44828:     function_tests++;
44829: #endif
44830: 
44831:     return(test_ret);
44832: }
44833: 
44834: 
44835: static int
44836: test_xmlTextWriterWriteDTDElement(void) {
44837:     int test_ret = 0;
44838: 
44839: #if defined(LIBXML_WRITER_ENABLED)
44840:     int mem_base;
44841:     int ret_val;
44842:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
44843:     int n_writer;
44844:     xmlChar * name; /* the name of the DTD element */
44845:     int n_name;
44846:     xmlChar * content; /* content of the element */
44847:     int n_content;
44848: 
44849:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
44850:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
44851:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
44852:         mem_base = xmlMemBlocks();
44853:         writer = gen_xmlTextWriterPtr(n_writer, 0);
44854:         name = gen_const_xmlChar_ptr(n_name, 1);
44855:         content = gen_const_xmlChar_ptr(n_content, 2);
44856: 
44857:         ret_val = xmlTextWriterWriteDTDElement(writer, (const xmlChar *)name, (const xmlChar *)content);
44858:         desret_int(ret_val);
44859:         call_tests++;
44860:         des_xmlTextWriterPtr(n_writer, writer, 0);
44861:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
44862:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 2);
44863:         xmlResetLastError();
44864:         if (mem_base != xmlMemBlocks()) {
44865:             printf("Leak of %d blocks found in xmlTextWriterWriteDTDElement",
44866: 	           xmlMemBlocks() - mem_base);
44867: 	    test_ret++;
44868:             printf(" %d", n_writer);
44869:             printf(" %d", n_name);
44870:             printf(" %d", n_content);
44871:             printf("\n");
44872:         }
44873:     }
44874:     }
44875:     }
44876:     function_tests++;
44877: #endif
44878: 
44879:     return(test_ret);
44880: }
44881: 
44882: 
44883: static int
44884: test_xmlTextWriterWriteDTDEntity(void) {
44885:     int test_ret = 0;
44886: 
44887: #if defined(LIBXML_WRITER_ENABLED)
44888:     int mem_base;
44889:     int ret_val;
44890:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
44891:     int n_writer;
44892:     int pe; /* TRUE if this is a parameter entity, FALSE if not */
44893:     int n_pe;
44894:     xmlChar * name; /* the name of the DTD entity */
44895:     int n_name;
44896:     xmlChar * pubid; /* the public identifier, which is an alternative to the system identifier */
44897:     int n_pubid;
44898:     xmlChar * sysid; /* the system identifier, which is the URI of the DTD */
44899:     int n_sysid;
44900:     xmlChar * ndataid; /* the xml notation name. */
44901:     int n_ndataid;
44902:     xmlChar * content; /* content of the entity */
44903:     int n_content;
44904: 
44905:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
44906:     for (n_pe = 0;n_pe < gen_nb_int;n_pe++) {
44907:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
44908:     for (n_pubid = 0;n_pubid < gen_nb_const_xmlChar_ptr;n_pubid++) {
44909:     for (n_sysid = 0;n_sysid < gen_nb_const_xmlChar_ptr;n_sysid++) {
44910:     for (n_ndataid = 0;n_ndataid < gen_nb_const_xmlChar_ptr;n_ndataid++) {
44911:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
44912:         mem_base = xmlMemBlocks();
44913:         writer = gen_xmlTextWriterPtr(n_writer, 0);
44914:         pe = gen_int(n_pe, 1);
44915:         name = gen_const_xmlChar_ptr(n_name, 2);
44916:         pubid = gen_const_xmlChar_ptr(n_pubid, 3);
44917:         sysid = gen_const_xmlChar_ptr(n_sysid, 4);
44918:         ndataid = gen_const_xmlChar_ptr(n_ndataid, 5);
44919:         content = gen_const_xmlChar_ptr(n_content, 6);
44920: 
44921:         ret_val = xmlTextWriterWriteDTDEntity(writer, pe, (const xmlChar *)name, (const xmlChar *)pubid, (const xmlChar *)sysid, (const xmlChar *)ndataid, (const xmlChar *)content);
44922:         desret_int(ret_val);
44923:         call_tests++;
44924:         des_xmlTextWriterPtr(n_writer, writer, 0);
44925:         des_int(n_pe, pe, 1);
44926:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
44927:         des_const_xmlChar_ptr(n_pubid, (const xmlChar *)pubid, 3);
44928:         des_const_xmlChar_ptr(n_sysid, (const xmlChar *)sysid, 4);
44929:         des_const_xmlChar_ptr(n_ndataid, (const xmlChar *)ndataid, 5);
44930:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 6);
44931:         xmlResetLastError();
44932:         if (mem_base != xmlMemBlocks()) {
44933:             printf("Leak of %d blocks found in xmlTextWriterWriteDTDEntity",
44934: 	           xmlMemBlocks() - mem_base);
44935: 	    test_ret++;
44936:             printf(" %d", n_writer);
44937:             printf(" %d", n_pe);
44938:             printf(" %d", n_name);
44939:             printf(" %d", n_pubid);
44940:             printf(" %d", n_sysid);
44941:             printf(" %d", n_ndataid);
44942:             printf(" %d", n_content);
44943:             printf("\n");
44944:         }
44945:     }
44946:     }
44947:     }
44948:     }
44949:     }
44950:     }
44951:     }
44952:     function_tests++;
44953: #endif
44954: 
44955:     return(test_ret);
44956: }
44957: 
44958: 
44959: static int
44960: test_xmlTextWriterWriteDTDExternalEntity(void) {
44961:     int test_ret = 0;
44962: 
44963: #if defined(LIBXML_WRITER_ENABLED)
44964:     int mem_base;
44965:     int ret_val;
44966:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
44967:     int n_writer;
44968:     int pe; /* TRUE if this is a parameter entity, FALSE if not */
44969:     int n_pe;
44970:     xmlChar * name; /* the name of the DTD entity */
44971:     int n_name;
44972:     xmlChar * pubid; /* the public identifier, which is an alternative to the system identifier */
44973:     int n_pubid;
44974:     xmlChar * sysid; /* the system identifier, which is the URI of the DTD */
44975:     int n_sysid;
44976:     xmlChar * ndataid; /* the xml notation name. */
44977:     int n_ndataid;
44978: 
44979:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
44980:     for (n_pe = 0;n_pe < gen_nb_int;n_pe++) {
44981:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
44982:     for (n_pubid = 0;n_pubid < gen_nb_const_xmlChar_ptr;n_pubid++) {
44983:     for (n_sysid = 0;n_sysid < gen_nb_const_xmlChar_ptr;n_sysid++) {
44984:     for (n_ndataid = 0;n_ndataid < gen_nb_const_xmlChar_ptr;n_ndataid++) {
44985:         mem_base = xmlMemBlocks();
44986:         writer = gen_xmlTextWriterPtr(n_writer, 0);
44987:         pe = gen_int(n_pe, 1);
44988:         name = gen_const_xmlChar_ptr(n_name, 2);
44989:         pubid = gen_const_xmlChar_ptr(n_pubid, 3);
44990:         sysid = gen_const_xmlChar_ptr(n_sysid, 4);
44991:         ndataid = gen_const_xmlChar_ptr(n_ndataid, 5);
44992: 
44993:         ret_val = xmlTextWriterWriteDTDExternalEntity(writer, pe, (const xmlChar *)name, (const xmlChar *)pubid, (const xmlChar *)sysid, (const xmlChar *)ndataid);
44994:         desret_int(ret_val);
44995:         call_tests++;
44996:         des_xmlTextWriterPtr(n_writer, writer, 0);
44997:         des_int(n_pe, pe, 1);
44998:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
44999:         des_const_xmlChar_ptr(n_pubid, (const xmlChar *)pubid, 3);
45000:         des_const_xmlChar_ptr(n_sysid, (const xmlChar *)sysid, 4);
45001:         des_const_xmlChar_ptr(n_ndataid, (const xmlChar *)ndataid, 5);
45002:         xmlResetLastError();
45003:         if (mem_base != xmlMemBlocks()) {
45004:             printf("Leak of %d blocks found in xmlTextWriterWriteDTDExternalEntity",
45005: 	           xmlMemBlocks() - mem_base);
45006: 	    test_ret++;
45007:             printf(" %d", n_writer);
45008:             printf(" %d", n_pe);
45009:             printf(" %d", n_name);
45010:             printf(" %d", n_pubid);
45011:             printf(" %d", n_sysid);
45012:             printf(" %d", n_ndataid);
45013:             printf("\n");
45014:         }
45015:     }
45016:     }
45017:     }
45018:     }
45019:     }
45020:     }
45021:     function_tests++;
45022: #endif
45023: 
45024:     return(test_ret);
45025: }
45026: 
45027: 
45028: static int
45029: test_xmlTextWriterWriteDTDExternalEntityContents(void) {
45030:     int test_ret = 0;
45031: 
45032: #if defined(LIBXML_WRITER_ENABLED)
45033:     int mem_base;
45034:     int ret_val;
45035:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
45036:     int n_writer;
45037:     xmlChar * pubid; /* the public identifier, which is an alternative to the system identifier */
45038:     int n_pubid;
45039:     xmlChar * sysid; /* the system identifier, which is the URI of the DTD */
45040:     int n_sysid;
45041:     xmlChar * ndataid; /* the xml notation name. */
45042:     int n_ndataid;
45043: 
45044:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
45045:     for (n_pubid = 0;n_pubid < gen_nb_const_xmlChar_ptr;n_pubid++) {
45046:     for (n_sysid = 0;n_sysid < gen_nb_const_xmlChar_ptr;n_sysid++) {
45047:     for (n_ndataid = 0;n_ndataid < gen_nb_const_xmlChar_ptr;n_ndataid++) {
45048:         mem_base = xmlMemBlocks();
45049:         writer = gen_xmlTextWriterPtr(n_writer, 0);
45050:         pubid = gen_const_xmlChar_ptr(n_pubid, 1);
45051:         sysid = gen_const_xmlChar_ptr(n_sysid, 2);
45052:         ndataid = gen_const_xmlChar_ptr(n_ndataid, 3);
45053: 
45054:         ret_val = xmlTextWriterWriteDTDExternalEntityContents(writer, (const xmlChar *)pubid, (const xmlChar *)sysid, (const xmlChar *)ndataid);
45055:         desret_int(ret_val);
45056:         call_tests++;
45057:         des_xmlTextWriterPtr(n_writer, writer, 0);
45058:         des_const_xmlChar_ptr(n_pubid, (const xmlChar *)pubid, 1);
45059:         des_const_xmlChar_ptr(n_sysid, (const xmlChar *)sysid, 2);
45060:         des_const_xmlChar_ptr(n_ndataid, (const xmlChar *)ndataid, 3);
45061:         xmlResetLastError();
45062:         if (mem_base != xmlMemBlocks()) {
45063:             printf("Leak of %d blocks found in xmlTextWriterWriteDTDExternalEntityContents",
45064: 	           xmlMemBlocks() - mem_base);
45065: 	    test_ret++;
45066:             printf(" %d", n_writer);
45067:             printf(" %d", n_pubid);
45068:             printf(" %d", n_sysid);
45069:             printf(" %d", n_ndataid);
45070:             printf("\n");
45071:         }
45072:     }
45073:     }
45074:     }
45075:     }
45076:     function_tests++;
45077: #endif
45078: 
45079:     return(test_ret);
45080: }
45081: 
45082: 
45083: static int
45084: test_xmlTextWriterWriteDTDInternalEntity(void) {
45085:     int test_ret = 0;
45086: 
45087: #if defined(LIBXML_WRITER_ENABLED)
45088:     int mem_base;
45089:     int ret_val;
45090:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
45091:     int n_writer;
45092:     int pe; /* TRUE if this is a parameter entity, FALSE if not */
45093:     int n_pe;
45094:     xmlChar * name; /* the name of the DTD entity */
45095:     int n_name;
45096:     xmlChar * content; /* content of the entity */
45097:     int n_content;
45098: 
45099:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
45100:     for (n_pe = 0;n_pe < gen_nb_int;n_pe++) {
45101:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
45102:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
45103:         mem_base = xmlMemBlocks();
45104:         writer = gen_xmlTextWriterPtr(n_writer, 0);
45105:         pe = gen_int(n_pe, 1);
45106:         name = gen_const_xmlChar_ptr(n_name, 2);
45107:         content = gen_const_xmlChar_ptr(n_content, 3);
45108: 
45109:         ret_val = xmlTextWriterWriteDTDInternalEntity(writer, pe, (const xmlChar *)name, (const xmlChar *)content);
45110:         desret_int(ret_val);
45111:         call_tests++;
45112:         des_xmlTextWriterPtr(n_writer, writer, 0);
45113:         des_int(n_pe, pe, 1);
45114:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
45115:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 3);
45116:         xmlResetLastError();
45117:         if (mem_base != xmlMemBlocks()) {
45118:             printf("Leak of %d blocks found in xmlTextWriterWriteDTDInternalEntity",
45119: 	           xmlMemBlocks() - mem_base);
45120: 	    test_ret++;
45121:             printf(" %d", n_writer);
45122:             printf(" %d", n_pe);
45123:             printf(" %d", n_name);
45124:             printf(" %d", n_content);
45125:             printf("\n");
45126:         }
45127:     }
45128:     }
45129:     }
45130:     }
45131:     function_tests++;
45132: #endif
45133: 
45134:     return(test_ret);
45135: }
45136: 
45137: 
45138: static int
45139: test_xmlTextWriterWriteDTDNotation(void) {
45140:     int test_ret = 0;
45141: 
45142: #if defined(LIBXML_WRITER_ENABLED)
45143:     int mem_base;
45144:     int ret_val;
45145:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
45146:     int n_writer;
45147:     xmlChar * name; /* the name of the xml notation */
45148:     int n_name;
45149:     xmlChar * pubid; /* the public identifier, which is an alternative to the system identifier */
45150:     int n_pubid;
45151:     xmlChar * sysid; /* the system identifier, which is the URI of the DTD */
45152:     int n_sysid;
45153: 
45154:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
45155:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
45156:     for (n_pubid = 0;n_pubid < gen_nb_const_xmlChar_ptr;n_pubid++) {
45157:     for (n_sysid = 0;n_sysid < gen_nb_const_xmlChar_ptr;n_sysid++) {
45158:         mem_base = xmlMemBlocks();
45159:         writer = gen_xmlTextWriterPtr(n_writer, 0);
45160:         name = gen_const_xmlChar_ptr(n_name, 1);
45161:         pubid = gen_const_xmlChar_ptr(n_pubid, 2);
45162:         sysid = gen_const_xmlChar_ptr(n_sysid, 3);
45163: 
45164:         ret_val = xmlTextWriterWriteDTDNotation(writer, (const xmlChar *)name, (const xmlChar *)pubid, (const xmlChar *)sysid);
45165:         desret_int(ret_val);
45166:         call_tests++;
45167:         des_xmlTextWriterPtr(n_writer, writer, 0);
45168:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
45169:         des_const_xmlChar_ptr(n_pubid, (const xmlChar *)pubid, 2);
45170:         des_const_xmlChar_ptr(n_sysid, (const xmlChar *)sysid, 3);
45171:         xmlResetLastError();
45172:         if (mem_base != xmlMemBlocks()) {
45173:             printf("Leak of %d blocks found in xmlTextWriterWriteDTDNotation",
45174: 	           xmlMemBlocks() - mem_base);
45175: 	    test_ret++;
45176:             printf(" %d", n_writer);
45177:             printf(" %d", n_name);
45178:             printf(" %d", n_pubid);
45179:             printf(" %d", n_sysid);
45180:             printf("\n");
45181:         }
45182:     }
45183:     }
45184:     }
45185:     }
45186:     function_tests++;
45187: #endif
45188: 
45189:     return(test_ret);
45190: }
45191: 
45192: 
45193: static int
45194: test_xmlTextWriterWriteElement(void) {
45195:     int test_ret = 0;
45196: 
45197: #if defined(LIBXML_WRITER_ENABLED)
45198:     int mem_base;
45199:     int ret_val;
45200:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
45201:     int n_writer;
45202:     xmlChar * name; /* element name */
45203:     int n_name;
45204:     xmlChar * content; /* element content */
45205:     int n_content;
45206: 
45207:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
45208:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
45209:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
45210:         mem_base = xmlMemBlocks();
45211:         writer = gen_xmlTextWriterPtr(n_writer, 0);
45212:         name = gen_const_xmlChar_ptr(n_name, 1);
45213:         content = gen_const_xmlChar_ptr(n_content, 2);
45214: 
45215:         ret_val = xmlTextWriterWriteElement(writer, (const xmlChar *)name, (const xmlChar *)content);
45216:         desret_int(ret_val);
45217:         call_tests++;
45218:         des_xmlTextWriterPtr(n_writer, writer, 0);
45219:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
45220:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 2);
45221:         xmlResetLastError();
45222:         if (mem_base != xmlMemBlocks()) {
45223:             printf("Leak of %d blocks found in xmlTextWriterWriteElement",
45224: 	           xmlMemBlocks() - mem_base);
45225: 	    test_ret++;
45226:             printf(" %d", n_writer);
45227:             printf(" %d", n_name);
45228:             printf(" %d", n_content);
45229:             printf("\n");
45230:         }
45231:     }
45232:     }
45233:     }
45234:     function_tests++;
45235: #endif
45236: 
45237:     return(test_ret);
45238: }
45239: 
45240: 
45241: static int
45242: test_xmlTextWriterWriteElementNS(void) {
45243:     int test_ret = 0;
45244: 
45245: #if defined(LIBXML_WRITER_ENABLED)
45246:     int mem_base;
45247:     int ret_val;
45248:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
45249:     int n_writer;
45250:     xmlChar * prefix; /* namespace prefix */
45251:     int n_prefix;
45252:     xmlChar * name; /* element local name */
45253:     int n_name;
45254:     xmlChar * namespaceURI; /* namespace URI */
45255:     int n_namespaceURI;
45256:     xmlChar * content; /* element content */
45257:     int n_content;
45258: 
45259:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
45260:     for (n_prefix = 0;n_prefix < gen_nb_const_xmlChar_ptr;n_prefix++) {
45261:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
45262:     for (n_namespaceURI = 0;n_namespaceURI < gen_nb_const_xmlChar_ptr;n_namespaceURI++) {
45263:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
45264:         mem_base = xmlMemBlocks();
45265:         writer = gen_xmlTextWriterPtr(n_writer, 0);
45266:         prefix = gen_const_xmlChar_ptr(n_prefix, 1);
45267:         name = gen_const_xmlChar_ptr(n_name, 2);
45268:         namespaceURI = gen_const_xmlChar_ptr(n_namespaceURI, 3);
45269:         content = gen_const_xmlChar_ptr(n_content, 4);
45270: 
45271:         ret_val = xmlTextWriterWriteElementNS(writer, (const xmlChar *)prefix, (const xmlChar *)name, (const xmlChar *)namespaceURI, (const xmlChar *)content);
45272:         desret_int(ret_val);
45273:         call_tests++;
45274:         des_xmlTextWriterPtr(n_writer, writer, 0);
45275:         des_const_xmlChar_ptr(n_prefix, (const xmlChar *)prefix, 1);
45276:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 2);
45277:         des_const_xmlChar_ptr(n_namespaceURI, (const xmlChar *)namespaceURI, 3);
45278:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 4);
45279:         xmlResetLastError();
45280:         if (mem_base != xmlMemBlocks()) {
45281:             printf("Leak of %d blocks found in xmlTextWriterWriteElementNS",
45282: 	           xmlMemBlocks() - mem_base);
45283: 	    test_ret++;
45284:             printf(" %d", n_writer);
45285:             printf(" %d", n_prefix);
45286:             printf(" %d", n_name);
45287:             printf(" %d", n_namespaceURI);
45288:             printf(" %d", n_content);
45289:             printf("\n");
45290:         }
45291:     }
45292:     }
45293:     }
45294:     }
45295:     }
45296:     function_tests++;
45297: #endif
45298: 
45299:     return(test_ret);
45300: }
45301: 
45302: 
45303: static int
45304: test_xmlTextWriterWriteFormatAttribute(void) {
45305:     int test_ret = 0;
45306: 
45307: 
45308:     /* missing type support */
45309:     return(test_ret);
45310: }
45311: 
45312: 
45313: static int
45314: test_xmlTextWriterWriteFormatAttributeNS(void) {
45315:     int test_ret = 0;
45316: 
45317: 
45318:     /* missing type support */
45319:     return(test_ret);
45320: }
45321: 
45322: 
45323: static int
45324: test_xmlTextWriterWriteFormatCDATA(void) {
45325:     int test_ret = 0;
45326: 
45327: 
45328:     /* missing type support */
45329:     return(test_ret);
45330: }
45331: 
45332: 
45333: static int
45334: test_xmlTextWriterWriteFormatComment(void) {
45335:     int test_ret = 0;
45336: 
45337: 
45338:     /* missing type support */
45339:     return(test_ret);
45340: }
45341: 
45342: 
45343: static int
45344: test_xmlTextWriterWriteFormatDTD(void) {
45345:     int test_ret = 0;
45346: 
45347: 
45348:     /* missing type support */
45349:     return(test_ret);
45350: }
45351: 
45352: 
45353: static int
45354: test_xmlTextWriterWriteFormatDTDAttlist(void) {
45355:     int test_ret = 0;
45356: 
45357: 
45358:     /* missing type support */
45359:     return(test_ret);
45360: }
45361: 
45362: 
45363: static int
45364: test_xmlTextWriterWriteFormatDTDElement(void) {
45365:     int test_ret = 0;
45366: 
45367: 
45368:     /* missing type support */
45369:     return(test_ret);
45370: }
45371: 
45372: 
45373: static int
45374: test_xmlTextWriterWriteFormatDTDInternalEntity(void) {
45375:     int test_ret = 0;
45376: 
45377: 
45378:     /* missing type support */
45379:     return(test_ret);
45380: }
45381: 
45382: 
45383: static int
45384: test_xmlTextWriterWriteFormatElement(void) {
45385:     int test_ret = 0;
45386: 
45387: 
45388:     /* missing type support */
45389:     return(test_ret);
45390: }
45391: 
45392: 
45393: static int
45394: test_xmlTextWriterWriteFormatElementNS(void) {
45395:     int test_ret = 0;
45396: 
45397: 
45398:     /* missing type support */
45399:     return(test_ret);
45400: }
45401: 
45402: 
45403: static int
45404: test_xmlTextWriterWriteFormatPI(void) {
45405:     int test_ret = 0;
45406: 
45407: 
45408:     /* missing type support */
45409:     return(test_ret);
45410: }
45411: 
45412: 
45413: static int
45414: test_xmlTextWriterWriteFormatRaw(void) {
45415:     int test_ret = 0;
45416: 
45417: 
45418:     /* missing type support */
45419:     return(test_ret);
45420: }
45421: 
45422: 
45423: static int
45424: test_xmlTextWriterWriteFormatString(void) {
45425:     int test_ret = 0;
45426: 
45427: 
45428:     /* missing type support */
45429:     return(test_ret);
45430: }
45431: 
45432: 
45433: static int
45434: test_xmlTextWriterWritePI(void) {
45435:     int test_ret = 0;
45436: 
45437: #if defined(LIBXML_WRITER_ENABLED)
45438:     int mem_base;
45439:     int ret_val;
45440:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
45441:     int n_writer;
45442:     xmlChar * target; /* PI target */
45443:     int n_target;
45444:     xmlChar * content; /* PI content */
45445:     int n_content;
45446: 
45447:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
45448:     for (n_target = 0;n_target < gen_nb_const_xmlChar_ptr;n_target++) {
45449:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
45450:         mem_base = xmlMemBlocks();
45451:         writer = gen_xmlTextWriterPtr(n_writer, 0);
45452:         target = gen_const_xmlChar_ptr(n_target, 1);
45453:         content = gen_const_xmlChar_ptr(n_content, 2);
45454: 
45455:         ret_val = xmlTextWriterWritePI(writer, (const xmlChar *)target, (const xmlChar *)content);
45456:         desret_int(ret_val);
45457:         call_tests++;
45458:         des_xmlTextWriterPtr(n_writer, writer, 0);
45459:         des_const_xmlChar_ptr(n_target, (const xmlChar *)target, 1);
45460:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 2);
45461:         xmlResetLastError();
45462:         if (mem_base != xmlMemBlocks()) {
45463:             printf("Leak of %d blocks found in xmlTextWriterWritePI",
45464: 	           xmlMemBlocks() - mem_base);
45465: 	    test_ret++;
45466:             printf(" %d", n_writer);
45467:             printf(" %d", n_target);
45468:             printf(" %d", n_content);
45469:             printf("\n");
45470:         }
45471:     }
45472:     }
45473:     }
45474:     function_tests++;
45475: #endif
45476: 
45477:     return(test_ret);
45478: }
45479: 
45480: 
45481: static int
45482: test_xmlTextWriterWriteRaw(void) {
45483:     int test_ret = 0;
45484: 
45485: #if defined(LIBXML_WRITER_ENABLED)
45486:     int mem_base;
45487:     int ret_val;
45488:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
45489:     int n_writer;
45490:     xmlChar * content; /* text string */
45491:     int n_content;
45492: 
45493:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
45494:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
45495:         mem_base = xmlMemBlocks();
45496:         writer = gen_xmlTextWriterPtr(n_writer, 0);
45497:         content = gen_const_xmlChar_ptr(n_content, 1);
45498: 
45499:         ret_val = xmlTextWriterWriteRaw(writer, (const xmlChar *)content);
45500:         desret_int(ret_val);
45501:         call_tests++;
45502:         des_xmlTextWriterPtr(n_writer, writer, 0);
45503:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 1);
45504:         xmlResetLastError();
45505:         if (mem_base != xmlMemBlocks()) {
45506:             printf("Leak of %d blocks found in xmlTextWriterWriteRaw",
45507: 	           xmlMemBlocks() - mem_base);
45508: 	    test_ret++;
45509:             printf(" %d", n_writer);
45510:             printf(" %d", n_content);
45511:             printf("\n");
45512:         }
45513:     }
45514:     }
45515:     function_tests++;
45516: #endif
45517: 
45518:     return(test_ret);
45519: }
45520: 
45521: 
45522: static int
45523: test_xmlTextWriterWriteRawLen(void) {
45524:     int test_ret = 0;
45525: 
45526: #if defined(LIBXML_WRITER_ENABLED)
45527:     int mem_base;
45528:     int ret_val;
45529:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
45530:     int n_writer;
45531:     xmlChar * content; /* text string */
45532:     int n_content;
45533:     int len; /* length of the text string */
45534:     int n_len;
45535: 
45536:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
45537:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
45538:     for (n_len = 0;n_len < gen_nb_int;n_len++) {
45539:         mem_base = xmlMemBlocks();
45540:         writer = gen_xmlTextWriterPtr(n_writer, 0);
45541:         content = gen_const_xmlChar_ptr(n_content, 1);
45542:         len = gen_int(n_len, 2);
45543: 
45544:         ret_val = xmlTextWriterWriteRawLen(writer, (const xmlChar *)content, len);
45545:         desret_int(ret_val);
45546:         call_tests++;
45547:         des_xmlTextWriterPtr(n_writer, writer, 0);
45548:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 1);
45549:         des_int(n_len, len, 2);
45550:         xmlResetLastError();
45551:         if (mem_base != xmlMemBlocks()) {
45552:             printf("Leak of %d blocks found in xmlTextWriterWriteRawLen",
45553: 	           xmlMemBlocks() - mem_base);
45554: 	    test_ret++;
45555:             printf(" %d", n_writer);
45556:             printf(" %d", n_content);
45557:             printf(" %d", n_len);
45558:             printf("\n");
45559:         }
45560:     }
45561:     }
45562:     }
45563:     function_tests++;
45564: #endif
45565: 
45566:     return(test_ret);
45567: }
45568: 
45569: 
45570: static int
45571: test_xmlTextWriterWriteString(void) {
45572:     int test_ret = 0;
45573: 
45574: #if defined(LIBXML_WRITER_ENABLED)
45575:     int mem_base;
45576:     int ret_val;
45577:     xmlTextWriterPtr writer; /* the xmlTextWriterPtr */
45578:     int n_writer;
45579:     xmlChar * content; /* text string */
45580:     int n_content;
45581: 
45582:     for (n_writer = 0;n_writer < gen_nb_xmlTextWriterPtr;n_writer++) {
45583:     for (n_content = 0;n_content < gen_nb_const_xmlChar_ptr;n_content++) {
45584:         mem_base = xmlMemBlocks();
45585:         writer = gen_xmlTextWriterPtr(n_writer, 0);
45586:         content = gen_const_xmlChar_ptr(n_content, 1);
45587: 
45588:         ret_val = xmlTextWriterWriteString(writer, (const xmlChar *)content);
45589:         desret_int(ret_val);
45590:         call_tests++;
45591:         des_xmlTextWriterPtr(n_writer, writer, 0);
45592:         des_const_xmlChar_ptr(n_content, (const xmlChar *)content, 1);
45593:         xmlResetLastError();
45594:         if (mem_base != xmlMemBlocks()) {
45595:             printf("Leak of %d blocks found in xmlTextWriterWriteString",
45596: 	           xmlMemBlocks() - mem_base);
45597: 	    test_ret++;
45598:             printf(" %d", n_writer);
45599:             printf(" %d", n_content);
45600:             printf("\n");
45601:         }
45602:     }
45603:     }
45604:     function_tests++;
45605: #endif
45606: 
45607:     return(test_ret);
45608: }
45609: 
45610: 
45611: static int
45612: test_xmlTextWriterWriteVFormatAttribute(void) {
45613:     int test_ret = 0;
45614: 
45615: 
45616:     /* missing type support */
45617:     return(test_ret);
45618: }
45619: 
45620: 
45621: static int
45622: test_xmlTextWriterWriteVFormatAttributeNS(void) {
45623:     int test_ret = 0;
45624: 
45625: 
45626:     /* missing type support */
45627:     return(test_ret);
45628: }
45629: 
45630: 
45631: static int
45632: test_xmlTextWriterWriteVFormatCDATA(void) {
45633:     int test_ret = 0;
45634: 
45635: 
45636:     /* missing type support */
45637:     return(test_ret);
45638: }
45639: 
45640: 
45641: static int
45642: test_xmlTextWriterWriteVFormatComment(void) {
45643:     int test_ret = 0;
45644: 
45645: 
45646:     /* missing type support */
45647:     return(test_ret);
45648: }
45649: 
45650: 
45651: static int
45652: test_xmlTextWriterWriteVFormatDTD(void) {
45653:     int test_ret = 0;
45654: 
45655: 
45656:     /* missing type support */
45657:     return(test_ret);
45658: }
45659: 
45660: 
45661: static int
45662: test_xmlTextWriterWriteVFormatDTDAttlist(void) {
45663:     int test_ret = 0;
45664: 
45665: 
45666:     /* missing type support */
45667:     return(test_ret);
45668: }
45669: 
45670: 
45671: static int
45672: test_xmlTextWriterWriteVFormatDTDElement(void) {
45673:     int test_ret = 0;
45674: 
45675: 
45676:     /* missing type support */
45677:     return(test_ret);
45678: }
45679: 
45680: 
45681: static int
45682: test_xmlTextWriterWriteVFormatDTDInternalEntity(void) {
45683:     int test_ret = 0;
45684: 
45685: 
45686:     /* missing type support */
45687:     return(test_ret);
45688: }
45689: 
45690: 
45691: static int
45692: test_xmlTextWriterWriteVFormatElement(void) {
45693:     int test_ret = 0;
45694: 
45695: 
45696:     /* missing type support */
45697:     return(test_ret);
45698: }
45699: 
45700: 
45701: static int
45702: test_xmlTextWriterWriteVFormatElementNS(void) {
45703:     int test_ret = 0;
45704: 
45705: 
45706:     /* missing type support */
45707:     return(test_ret);
45708: }
45709: 
45710: 
45711: static int
45712: test_xmlTextWriterWriteVFormatPI(void) {
45713:     int test_ret = 0;
45714: 
45715: 
45716:     /* missing type support */
45717:     return(test_ret);
45718: }
45719: 
45720: 
45721: static int
45722: test_xmlTextWriterWriteVFormatRaw(void) {
45723:     int test_ret = 0;
45724: 
45725: 
45726:     /* missing type support */
45727:     return(test_ret);
45728: }
45729: 
45730: 
45731: static int
45732: test_xmlTextWriterWriteVFormatString(void) {
45733:     int test_ret = 0;
45734: 
45735: 
45736:     /* missing type support */
45737:     return(test_ret);
45738: }
45739: 
45740: static int
45741: test_xmlwriter(void) {
45742:     int test_ret = 0;
45743: 
45744:     if (quiet == 0) printf("Testing xmlwriter : 52 of 80 functions ...\n");
45745:     test_ret += test_xmlNewTextWriter();
45746:     test_ret += test_xmlNewTextWriterFilename();
45747:     test_ret += test_xmlNewTextWriterMemory();
45748:     test_ret += test_xmlNewTextWriterPushParser();
45749:     test_ret += test_xmlNewTextWriterTree();
45750:     test_ret += test_xmlTextWriterEndAttribute();
45751:     test_ret += test_xmlTextWriterEndCDATA();
45752:     test_ret += test_xmlTextWriterEndComment();
45753:     test_ret += test_xmlTextWriterEndDTD();
45754:     test_ret += test_xmlTextWriterEndDTDAttlist();
45755:     test_ret += test_xmlTextWriterEndDTDElement();
45756:     test_ret += test_xmlTextWriterEndDTDEntity();
45757:     test_ret += test_xmlTextWriterEndDocument();
45758:     test_ret += test_xmlTextWriterEndElement();
45759:     test_ret += test_xmlTextWriterEndPI();
45760:     test_ret += test_xmlTextWriterFlush();
45761:     test_ret += test_xmlTextWriterFullEndElement();
45762:     test_ret += test_xmlTextWriterSetIndent();
45763:     test_ret += test_xmlTextWriterSetIndentString();
45764:     test_ret += test_xmlTextWriterSetQuoteChar();
45765:     test_ret += test_xmlTextWriterStartAttribute();
45766:     test_ret += test_xmlTextWriterStartAttributeNS();
45767:     test_ret += test_xmlTextWriterStartCDATA();
45768:     test_ret += test_xmlTextWriterStartComment();
45769:     test_ret += test_xmlTextWriterStartDTD();
45770:     test_ret += test_xmlTextWriterStartDTDAttlist();
45771:     test_ret += test_xmlTextWriterStartDTDElement();
45772:     test_ret += test_xmlTextWriterStartDTDEntity();
45773:     test_ret += test_xmlTextWriterStartDocument();
45774:     test_ret += test_xmlTextWriterStartElement();
45775:     test_ret += test_xmlTextWriterStartElementNS();
45776:     test_ret += test_xmlTextWriterStartPI();
45777:     test_ret += test_xmlTextWriterWriteAttribute();
45778:     test_ret += test_xmlTextWriterWriteAttributeNS();
45779:     test_ret += test_xmlTextWriterWriteBase64();
45780:     test_ret += test_xmlTextWriterWriteBinHex();
45781:     test_ret += test_xmlTextWriterWriteCDATA();
45782:     test_ret += test_xmlTextWriterWriteComment();
45783:     test_ret += test_xmlTextWriterWriteDTD();
45784:     test_ret += test_xmlTextWriterWriteDTDAttlist();
45785:     test_ret += test_xmlTextWriterWriteDTDElement();
45786:     test_ret += test_xmlTextWriterWriteDTDEntity();
45787:     test_ret += test_xmlTextWriterWriteDTDExternalEntity();
45788:     test_ret += test_xmlTextWriterWriteDTDExternalEntityContents();
45789:     test_ret += test_xmlTextWriterWriteDTDInternalEntity();
45790:     test_ret += test_xmlTextWriterWriteDTDNotation();
45791:     test_ret += test_xmlTextWriterWriteElement();
45792:     test_ret += test_xmlTextWriterWriteElementNS();
45793:     test_ret += test_xmlTextWriterWriteFormatAttribute();
45794:     test_ret += test_xmlTextWriterWriteFormatAttributeNS();
45795:     test_ret += test_xmlTextWriterWriteFormatCDATA();
45796:     test_ret += test_xmlTextWriterWriteFormatComment();
45797:     test_ret += test_xmlTextWriterWriteFormatDTD();
45798:     test_ret += test_xmlTextWriterWriteFormatDTDAttlist();
45799:     test_ret += test_xmlTextWriterWriteFormatDTDElement();
45800:     test_ret += test_xmlTextWriterWriteFormatDTDInternalEntity();
45801:     test_ret += test_xmlTextWriterWriteFormatElement();
45802:     test_ret += test_xmlTextWriterWriteFormatElementNS();
45803:     test_ret += test_xmlTextWriterWriteFormatPI();
45804:     test_ret += test_xmlTextWriterWriteFormatRaw();
45805:     test_ret += test_xmlTextWriterWriteFormatString();
45806:     test_ret += test_xmlTextWriterWritePI();
45807:     test_ret += test_xmlTextWriterWriteRaw();
45808:     test_ret += test_xmlTextWriterWriteRawLen();
45809:     test_ret += test_xmlTextWriterWriteString();
45810:     test_ret += test_xmlTextWriterWriteVFormatAttribute();
45811:     test_ret += test_xmlTextWriterWriteVFormatAttributeNS();
45812:     test_ret += test_xmlTextWriterWriteVFormatCDATA();
45813:     test_ret += test_xmlTextWriterWriteVFormatComment();
45814:     test_ret += test_xmlTextWriterWriteVFormatDTD();
45815:     test_ret += test_xmlTextWriterWriteVFormatDTDAttlist();
45816:     test_ret += test_xmlTextWriterWriteVFormatDTDElement();
45817:     test_ret += test_xmlTextWriterWriteVFormatDTDInternalEntity();
45818:     test_ret += test_xmlTextWriterWriteVFormatElement();
45819:     test_ret += test_xmlTextWriterWriteVFormatElementNS();
45820:     test_ret += test_xmlTextWriterWriteVFormatPI();
45821:     test_ret += test_xmlTextWriterWriteVFormatRaw();
45822:     test_ret += test_xmlTextWriterWriteVFormatString();
45823: 
45824:     if (test_ret != 0)
45825: 	printf("Module xmlwriter: %d errors\n", test_ret);
45826:     return(test_ret);
45827: }
45828: 
45829: static int
45830: test_xmlXPathCastBooleanToNumber(void) {
45831:     int test_ret = 0;
45832: 
45833: #if defined(LIBXML_XPATH_ENABLED)
45834:     int mem_base;
45835:     double ret_val;
45836:     int val; /* a boolean */
45837:     int n_val;
45838: 
45839:     for (n_val = 0;n_val < gen_nb_int;n_val++) {
45840:         mem_base = xmlMemBlocks();
45841:         val = gen_int(n_val, 0);
45842: 
45843:         ret_val = xmlXPathCastBooleanToNumber(val);
45844:         desret_double(ret_val);
45845:         call_tests++;
45846:         des_int(n_val, val, 0);
45847:         xmlResetLastError();
45848:         if (mem_base != xmlMemBlocks()) {
45849:             printf("Leak of %d blocks found in xmlXPathCastBooleanToNumber",
45850: 	           xmlMemBlocks() - mem_base);
45851: 	    test_ret++;
45852:             printf(" %d", n_val);
45853:             printf("\n");
45854:         }
45855:     }
45856:     function_tests++;
45857: #endif
45858: 
45859:     return(test_ret);
45860: }
45861: 
45862: 
45863: static int
45864: test_xmlXPathCastBooleanToString(void) {
45865:     int test_ret = 0;
45866: 
45867: #if defined(LIBXML_XPATH_ENABLED)
45868:     int mem_base;
45869:     xmlChar * ret_val;
45870:     int val; /* a boolean */
45871:     int n_val;
45872: 
45873:     for (n_val = 0;n_val < gen_nb_int;n_val++) {
45874:         mem_base = xmlMemBlocks();
45875:         val = gen_int(n_val, 0);
45876: 
45877:         ret_val = xmlXPathCastBooleanToString(val);
45878:         desret_xmlChar_ptr(ret_val);
45879:         call_tests++;
45880:         des_int(n_val, val, 0);
45881:         xmlResetLastError();
45882:         if (mem_base != xmlMemBlocks()) {
45883:             printf("Leak of %d blocks found in xmlXPathCastBooleanToString",
45884: 	           xmlMemBlocks() - mem_base);
45885: 	    test_ret++;
45886:             printf(" %d", n_val);
45887:             printf("\n");
45888:         }
45889:     }
45890:     function_tests++;
45891: #endif
45892: 
45893:     return(test_ret);
45894: }
45895: 
45896: 
45897: static int
45898: test_xmlXPathCastNodeSetToBoolean(void) {
45899:     int test_ret = 0;
45900: 
45901: #if defined(LIBXML_XPATH_ENABLED)
45902:     int mem_base;
45903:     int ret_val;
45904:     xmlNodeSetPtr ns; /* a node-set */
45905:     int n_ns;
45906: 
45907:     for (n_ns = 0;n_ns < gen_nb_xmlNodeSetPtr;n_ns++) {
45908:         mem_base = xmlMemBlocks();
45909:         ns = gen_xmlNodeSetPtr(n_ns, 0);
45910: 
45911:         ret_val = xmlXPathCastNodeSetToBoolean(ns);
45912:         desret_int(ret_val);
45913:         call_tests++;
45914:         des_xmlNodeSetPtr(n_ns, ns, 0);
45915:         xmlResetLastError();
45916:         if (mem_base != xmlMemBlocks()) {
45917:             printf("Leak of %d blocks found in xmlXPathCastNodeSetToBoolean",
45918: 	           xmlMemBlocks() - mem_base);
45919: 	    test_ret++;
45920:             printf(" %d", n_ns);
45921:             printf("\n");
45922:         }
45923:     }
45924:     function_tests++;
45925: #endif
45926: 
45927:     return(test_ret);
45928: }
45929: 
45930: 
45931: static int
45932: test_xmlXPathCastNodeSetToNumber(void) {
45933:     int test_ret = 0;
45934: 
45935: #if defined(LIBXML_XPATH_ENABLED)
45936:     int mem_base;
45937:     double ret_val;
45938:     xmlNodeSetPtr ns; /* a node-set */
45939:     int n_ns;
45940: 
45941:     for (n_ns = 0;n_ns < gen_nb_xmlNodeSetPtr;n_ns++) {
45942:         mem_base = xmlMemBlocks();
45943:         ns = gen_xmlNodeSetPtr(n_ns, 0);
45944: 
45945:         ret_val = xmlXPathCastNodeSetToNumber(ns);
45946:         desret_double(ret_val);
45947:         call_tests++;
45948:         des_xmlNodeSetPtr(n_ns, ns, 0);
45949:         xmlResetLastError();
45950:         if (mem_base != xmlMemBlocks()) {
45951:             printf("Leak of %d blocks found in xmlXPathCastNodeSetToNumber",
45952: 	           xmlMemBlocks() - mem_base);
45953: 	    test_ret++;
45954:             printf(" %d", n_ns);
45955:             printf("\n");
45956:         }
45957:     }
45958:     function_tests++;
45959: #endif
45960: 
45961:     return(test_ret);
45962: }
45963: 
45964: 
45965: static int
45966: test_xmlXPathCastNodeSetToString(void) {
45967:     int test_ret = 0;
45968: 
45969: #if defined(LIBXML_XPATH_ENABLED)
45970:     int mem_base;
45971:     xmlChar * ret_val;
45972:     xmlNodeSetPtr ns; /* a node-set */
45973:     int n_ns;
45974: 
45975:     for (n_ns = 0;n_ns < gen_nb_xmlNodeSetPtr;n_ns++) {
45976:         mem_base = xmlMemBlocks();
45977:         ns = gen_xmlNodeSetPtr(n_ns, 0);
45978: 
45979:         ret_val = xmlXPathCastNodeSetToString(ns);
45980:         desret_xmlChar_ptr(ret_val);
45981:         call_tests++;
45982:         des_xmlNodeSetPtr(n_ns, ns, 0);
45983:         xmlResetLastError();
45984:         if (mem_base != xmlMemBlocks()) {
45985:             printf("Leak of %d blocks found in xmlXPathCastNodeSetToString",
45986: 	           xmlMemBlocks() - mem_base);
45987: 	    test_ret++;
45988:             printf(" %d", n_ns);
45989:             printf("\n");
45990:         }
45991:     }
45992:     function_tests++;
45993: #endif
45994: 
45995:     return(test_ret);
45996: }
45997: 
45998: 
45999: static int
46000: test_xmlXPathCastNodeToNumber(void) {
46001:     int test_ret = 0;
46002: 
46003: #if defined(LIBXML_XPATH_ENABLED)
46004:     int mem_base;
46005:     double ret_val;
46006:     xmlNodePtr node; /* a node */
46007:     int n_node;
46008: 
46009:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
46010:         mem_base = xmlMemBlocks();
46011:         node = gen_xmlNodePtr(n_node, 0);
46012: 
46013:         ret_val = xmlXPathCastNodeToNumber(node);
46014:         desret_double(ret_val);
46015:         call_tests++;
46016:         des_xmlNodePtr(n_node, node, 0);
46017:         xmlResetLastError();
46018:         if (mem_base != xmlMemBlocks()) {
46019:             printf("Leak of %d blocks found in xmlXPathCastNodeToNumber",
46020: 	           xmlMemBlocks() - mem_base);
46021: 	    test_ret++;
46022:             printf(" %d", n_node);
46023:             printf("\n");
46024:         }
46025:     }
46026:     function_tests++;
46027: #endif
46028: 
46029:     return(test_ret);
46030: }
46031: 
46032: 
46033: static int
46034: test_xmlXPathCastNodeToString(void) {
46035:     int test_ret = 0;
46036: 
46037: #if defined(LIBXML_XPATH_ENABLED)
46038:     int mem_base;
46039:     xmlChar * ret_val;
46040:     xmlNodePtr node; /* a node */
46041:     int n_node;
46042: 
46043:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
46044:         mem_base = xmlMemBlocks();
46045:         node = gen_xmlNodePtr(n_node, 0);
46046: 
46047:         ret_val = xmlXPathCastNodeToString(node);
46048:         desret_xmlChar_ptr(ret_val);
46049:         call_tests++;
46050:         des_xmlNodePtr(n_node, node, 0);
46051:         xmlResetLastError();
46052:         if (mem_base != xmlMemBlocks()) {
46053:             printf("Leak of %d blocks found in xmlXPathCastNodeToString",
46054: 	           xmlMemBlocks() - mem_base);
46055: 	    test_ret++;
46056:             printf(" %d", n_node);
46057:             printf("\n");
46058:         }
46059:     }
46060:     function_tests++;
46061: #endif
46062: 
46063:     return(test_ret);
46064: }
46065: 
46066: 
46067: static int
46068: test_xmlXPathCastNumberToBoolean(void) {
46069:     int test_ret = 0;
46070: 
46071: #if defined(LIBXML_XPATH_ENABLED)
46072:     int mem_base;
46073:     int ret_val;
46074:     double val; /* a number */
46075:     int n_val;
46076: 
46077:     for (n_val = 0;n_val < gen_nb_double;n_val++) {
46078:         mem_base = xmlMemBlocks();
46079:         val = gen_double(n_val, 0);
46080: 
46081:         ret_val = xmlXPathCastNumberToBoolean(val);
46082:         desret_int(ret_val);
46083:         call_tests++;
46084:         des_double(n_val, val, 0);
46085:         xmlResetLastError();
46086:         if (mem_base != xmlMemBlocks()) {
46087:             printf("Leak of %d blocks found in xmlXPathCastNumberToBoolean",
46088: 	           xmlMemBlocks() - mem_base);
46089: 	    test_ret++;
46090:             printf(" %d", n_val);
46091:             printf("\n");
46092:         }
46093:     }
46094:     function_tests++;
46095: #endif
46096: 
46097:     return(test_ret);
46098: }
46099: 
46100: 
46101: static int
46102: test_xmlXPathCastNumberToString(void) {
46103:     int test_ret = 0;
46104: 
46105: #if defined(LIBXML_XPATH_ENABLED)
46106:     int mem_base;
46107:     xmlChar * ret_val;
46108:     double val; /* a number */
46109:     int n_val;
46110: 
46111:     for (n_val = 0;n_val < gen_nb_double;n_val++) {
46112:         mem_base = xmlMemBlocks();
46113:         val = gen_double(n_val, 0);
46114: 
46115:         ret_val = xmlXPathCastNumberToString(val);
46116:         desret_xmlChar_ptr(ret_val);
46117:         call_tests++;
46118:         des_double(n_val, val, 0);
46119:         xmlResetLastError();
46120:         if (mem_base != xmlMemBlocks()) {
46121:             printf("Leak of %d blocks found in xmlXPathCastNumberToString",
46122: 	           xmlMemBlocks() - mem_base);
46123: 	    test_ret++;
46124:             printf(" %d", n_val);
46125:             printf("\n");
46126:         }
46127:     }
46128:     function_tests++;
46129: #endif
46130: 
46131:     return(test_ret);
46132: }
46133: 
46134: 
46135: static int
46136: test_xmlXPathCastStringToBoolean(void) {
46137:     int test_ret = 0;
46138: 
46139: #if defined(LIBXML_XPATH_ENABLED)
46140:     int mem_base;
46141:     int ret_val;
46142:     xmlChar * val; /* a string */
46143:     int n_val;
46144: 
46145:     for (n_val = 0;n_val < gen_nb_const_xmlChar_ptr;n_val++) {
46146:         mem_base = xmlMemBlocks();
46147:         val = gen_const_xmlChar_ptr(n_val, 0);
46148: 
46149:         ret_val = xmlXPathCastStringToBoolean((const xmlChar *)val);
46150:         desret_int(ret_val);
46151:         call_tests++;
46152:         des_const_xmlChar_ptr(n_val, (const xmlChar *)val, 0);
46153:         xmlResetLastError();
46154:         if (mem_base != xmlMemBlocks()) {
46155:             printf("Leak of %d blocks found in xmlXPathCastStringToBoolean",
46156: 	           xmlMemBlocks() - mem_base);
46157: 	    test_ret++;
46158:             printf(" %d", n_val);
46159:             printf("\n");
46160:         }
46161:     }
46162:     function_tests++;
46163: #endif
46164: 
46165:     return(test_ret);
46166: }
46167: 
46168: 
46169: static int
46170: test_xmlXPathCastStringToNumber(void) {
46171:     int test_ret = 0;
46172: 
46173: #if defined(LIBXML_XPATH_ENABLED)
46174:     int mem_base;
46175:     double ret_val;
46176:     xmlChar * val; /* a string */
46177:     int n_val;
46178: 
46179:     for (n_val = 0;n_val < gen_nb_const_xmlChar_ptr;n_val++) {
46180:         mem_base = xmlMemBlocks();
46181:         val = gen_const_xmlChar_ptr(n_val, 0);
46182: 
46183:         ret_val = xmlXPathCastStringToNumber((const xmlChar *)val);
46184:         desret_double(ret_val);
46185:         call_tests++;
46186:         des_const_xmlChar_ptr(n_val, (const xmlChar *)val, 0);
46187:         xmlResetLastError();
46188:         if (mem_base != xmlMemBlocks()) {
46189:             printf("Leak of %d blocks found in xmlXPathCastStringToNumber",
46190: 	           xmlMemBlocks() - mem_base);
46191: 	    test_ret++;
46192:             printf(" %d", n_val);
46193:             printf("\n");
46194:         }
46195:     }
46196:     function_tests++;
46197: #endif
46198: 
46199:     return(test_ret);
46200: }
46201: 
46202: 
46203: static int
46204: test_xmlXPathCastToBoolean(void) {
46205:     int test_ret = 0;
46206: 
46207: #if defined(LIBXML_XPATH_ENABLED)
46208:     int mem_base;
46209:     int ret_val;
46210:     xmlXPathObjectPtr val; /* an XPath object */
46211:     int n_val;
46212: 
46213:     for (n_val = 0;n_val < gen_nb_xmlXPathObjectPtr;n_val++) {
46214:         mem_base = xmlMemBlocks();
46215:         val = gen_xmlXPathObjectPtr(n_val, 0);
46216: 
46217:         ret_val = xmlXPathCastToBoolean(val);
46218:         desret_int(ret_val);
46219:         call_tests++;
46220:         des_xmlXPathObjectPtr(n_val, val, 0);
46221:         xmlResetLastError();
46222:         if (mem_base != xmlMemBlocks()) {
46223:             printf("Leak of %d blocks found in xmlXPathCastToBoolean",
46224: 	           xmlMemBlocks() - mem_base);
46225: 	    test_ret++;
46226:             printf(" %d", n_val);
46227:             printf("\n");
46228:         }
46229:     }
46230:     function_tests++;
46231: #endif
46232: 
46233:     return(test_ret);
46234: }
46235: 
46236: 
46237: static int
46238: test_xmlXPathCastToNumber(void) {
46239:     int test_ret = 0;
46240: 
46241: #if defined(LIBXML_XPATH_ENABLED)
46242:     int mem_base;
46243:     double ret_val;
46244:     xmlXPathObjectPtr val; /* an XPath object */
46245:     int n_val;
46246: 
46247:     for (n_val = 0;n_val < gen_nb_xmlXPathObjectPtr;n_val++) {
46248:         mem_base = xmlMemBlocks();
46249:         val = gen_xmlXPathObjectPtr(n_val, 0);
46250: 
46251:         ret_val = xmlXPathCastToNumber(val);
46252:         desret_double(ret_val);
46253:         call_tests++;
46254:         des_xmlXPathObjectPtr(n_val, val, 0);
46255:         xmlResetLastError();
46256:         if (mem_base != xmlMemBlocks()) {
46257:             printf("Leak of %d blocks found in xmlXPathCastToNumber",
46258: 	           xmlMemBlocks() - mem_base);
46259: 	    test_ret++;
46260:             printf(" %d", n_val);
46261:             printf("\n");
46262:         }
46263:     }
46264:     function_tests++;
46265: #endif
46266: 
46267:     return(test_ret);
46268: }
46269: 
46270: 
46271: static int
46272: test_xmlXPathCastToString(void) {
46273:     int test_ret = 0;
46274: 
46275: #if defined(LIBXML_XPATH_ENABLED)
46276:     int mem_base;
46277:     xmlChar * ret_val;
46278:     xmlXPathObjectPtr val; /* an XPath object */
46279:     int n_val;
46280: 
46281:     for (n_val = 0;n_val < gen_nb_xmlXPathObjectPtr;n_val++) {
46282:         mem_base = xmlMemBlocks();
46283:         val = gen_xmlXPathObjectPtr(n_val, 0);
46284: 
46285:         ret_val = xmlXPathCastToString(val);
46286:         desret_xmlChar_ptr(ret_val);
46287:         call_tests++;
46288:         des_xmlXPathObjectPtr(n_val, val, 0);
46289:         xmlResetLastError();
46290:         if (mem_base != xmlMemBlocks()) {
46291:             printf("Leak of %d blocks found in xmlXPathCastToString",
46292: 	           xmlMemBlocks() - mem_base);
46293: 	    test_ret++;
46294:             printf(" %d", n_val);
46295:             printf("\n");
46296:         }
46297:     }
46298:     function_tests++;
46299: #endif
46300: 
46301:     return(test_ret);
46302: }
46303: 
46304: 
46305: static int
46306: test_xmlXPathCmpNodes(void) {
46307:     int test_ret = 0;
46308: 
46309: #if defined(LIBXML_XPATH_ENABLED)
46310:     int mem_base;
46311:     int ret_val;
46312:     xmlNodePtr node1; /* the first node */
46313:     int n_node1;
46314:     xmlNodePtr node2; /* the second node */
46315:     int n_node2;
46316: 
46317:     for (n_node1 = 0;n_node1 < gen_nb_xmlNodePtr;n_node1++) {
46318:     for (n_node2 = 0;n_node2 < gen_nb_xmlNodePtr;n_node2++) {
46319:         mem_base = xmlMemBlocks();
46320:         node1 = gen_xmlNodePtr(n_node1, 0);
46321:         node2 = gen_xmlNodePtr(n_node2, 1);
46322: 
46323:         ret_val = xmlXPathCmpNodes(node1, node2);
46324:         desret_int(ret_val);
46325:         call_tests++;
46326:         des_xmlNodePtr(n_node1, node1, 0);
46327:         des_xmlNodePtr(n_node2, node2, 1);
46328:         xmlResetLastError();
46329:         if (mem_base != xmlMemBlocks()) {
46330:             printf("Leak of %d blocks found in xmlXPathCmpNodes",
46331: 	           xmlMemBlocks() - mem_base);
46332: 	    test_ret++;
46333:             printf(" %d", n_node1);
46334:             printf(" %d", n_node2);
46335:             printf("\n");
46336:         }
46337:     }
46338:     }
46339:     function_tests++;
46340: #endif
46341: 
46342:     return(test_ret);
46343: }
46344: 
46345: 
46346: static int
46347: test_xmlXPathCompile(void) {
46348:     int test_ret = 0;
46349: 
46350: 
46351:     /* missing type support */
46352:     return(test_ret);
46353: }
46354: 
46355: #ifdef LIBXML_XPATH_ENABLED
46356: 
46357: #define gen_nb_xmlXPathCompExprPtr 1
46358: static xmlXPathCompExprPtr gen_xmlXPathCompExprPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
46359:     return(NULL);
46360: }
46361: static void des_xmlXPathCompExprPtr(int no ATTRIBUTE_UNUSED, xmlXPathCompExprPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
46362: }
46363: #endif
46364: 
46365: #ifdef LIBXML_XPATH_ENABLED
46366: 
46367: #define gen_nb_xmlXPathContextPtr 1
46368: static xmlXPathContextPtr gen_xmlXPathContextPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
46369:     return(NULL);
46370: }
46371: static void des_xmlXPathContextPtr(int no ATTRIBUTE_UNUSED, xmlXPathContextPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
46372: }
46373: #endif
46374: 
46375: 
46376: static int
46377: test_xmlXPathCompiledEval(void) {
46378:     int test_ret = 0;
46379: 
46380: #if defined(LIBXML_XPATH_ENABLED)
46381:     int mem_base;
46382:     xmlXPathObjectPtr ret_val;
46383:     xmlXPathCompExprPtr comp; /* the compiled XPath expression */
46384:     int n_comp;
46385:     xmlXPathContextPtr ctx; /* the XPath context */
46386:     int n_ctx;
46387: 
46388:     for (n_comp = 0;n_comp < gen_nb_xmlXPathCompExprPtr;n_comp++) {
46389:     for (n_ctx = 0;n_ctx < gen_nb_xmlXPathContextPtr;n_ctx++) {
46390:         mem_base = xmlMemBlocks();
46391:         comp = gen_xmlXPathCompExprPtr(n_comp, 0);
46392:         ctx = gen_xmlXPathContextPtr(n_ctx, 1);
46393: 
46394:         ret_val = xmlXPathCompiledEval(comp, ctx);
46395:         desret_xmlXPathObjectPtr(ret_val);
46396:         call_tests++;
46397:         des_xmlXPathCompExprPtr(n_comp, comp, 0);
46398:         des_xmlXPathContextPtr(n_ctx, ctx, 1);
46399:         xmlResetLastError();
46400:         if (mem_base != xmlMemBlocks()) {
46401:             printf("Leak of %d blocks found in xmlXPathCompiledEval",
46402: 	           xmlMemBlocks() - mem_base);
46403: 	    test_ret++;
46404:             printf(" %d", n_comp);
46405:             printf(" %d", n_ctx);
46406:             printf("\n");
46407:         }
46408:     }
46409:     }
46410:     function_tests++;
46411: #endif
46412: 
46413:     return(test_ret);
46414: }
46415: 
46416: 
46417: static int
46418: test_xmlXPathCompiledEvalToBoolean(void) {
46419:     int test_ret = 0;
46420: 
46421: #if defined(LIBXML_XPATH_ENABLED)
46422:     int mem_base;
46423:     int ret_val;
46424:     xmlXPathCompExprPtr comp; /* the compiled XPath expression */
46425:     int n_comp;
46426:     xmlXPathContextPtr ctxt; /* the XPath context */
46427:     int n_ctxt;
46428: 
46429:     for (n_comp = 0;n_comp < gen_nb_xmlXPathCompExprPtr;n_comp++) {
46430:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathContextPtr;n_ctxt++) {
46431:         mem_base = xmlMemBlocks();
46432:         comp = gen_xmlXPathCompExprPtr(n_comp, 0);
46433:         ctxt = gen_xmlXPathContextPtr(n_ctxt, 1);
46434: 
46435:         ret_val = xmlXPathCompiledEvalToBoolean(comp, ctxt);
46436:         desret_int(ret_val);
46437:         call_tests++;
46438:         des_xmlXPathCompExprPtr(n_comp, comp, 0);
46439:         des_xmlXPathContextPtr(n_ctxt, ctxt, 1);
46440:         xmlResetLastError();
46441:         if (mem_base != xmlMemBlocks()) {
46442:             printf("Leak of %d blocks found in xmlXPathCompiledEvalToBoolean",
46443: 	           xmlMemBlocks() - mem_base);
46444: 	    test_ret++;
46445:             printf(" %d", n_comp);
46446:             printf(" %d", n_ctxt);
46447:             printf("\n");
46448:         }
46449:     }
46450:     }
46451:     function_tests++;
46452: #endif
46453: 
46454:     return(test_ret);
46455: }
46456: 
46457: 
46458: static int
46459: test_xmlXPathContextSetCache(void) {
46460:     int test_ret = 0;
46461: 
46462: #if defined(LIBXML_XPATH_ENABLED)
46463:     int mem_base;
46464:     int ret_val;
46465:     xmlXPathContextPtr ctxt; /* the XPath context */
46466:     int n_ctxt;
46467:     int active; /* enables/disables (creates/frees) the cache */
46468:     int n_active;
46469:     int value; /* a value with semantics dependant on @options */
46470:     int n_value;
46471:     int options; /* options (currently only the value 0 is used) */
46472:     int n_options;
46473: 
46474:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathContextPtr;n_ctxt++) {
46475:     for (n_active = 0;n_active < gen_nb_int;n_active++) {
46476:     for (n_value = 0;n_value < gen_nb_int;n_value++) {
46477:     for (n_options = 0;n_options < gen_nb_int;n_options++) {
46478:         mem_base = xmlMemBlocks();
46479:         ctxt = gen_xmlXPathContextPtr(n_ctxt, 0);
46480:         active = gen_int(n_active, 1);
46481:         value = gen_int(n_value, 2);
46482:         options = gen_int(n_options, 3);
46483: 
46484:         ret_val = xmlXPathContextSetCache(ctxt, active, value, options);
46485:         desret_int(ret_val);
46486:         call_tests++;
46487:         des_xmlXPathContextPtr(n_ctxt, ctxt, 0);
46488:         des_int(n_active, active, 1);
46489:         des_int(n_value, value, 2);
46490:         des_int(n_options, options, 3);
46491:         xmlResetLastError();
46492:         if (mem_base != xmlMemBlocks()) {
46493:             printf("Leak of %d blocks found in xmlXPathContextSetCache",
46494: 	           xmlMemBlocks() - mem_base);
46495: 	    test_ret++;
46496:             printf(" %d", n_ctxt);
46497:             printf(" %d", n_active);
46498:             printf(" %d", n_value);
46499:             printf(" %d", n_options);
46500:             printf("\n");
46501:         }
46502:     }
46503:     }
46504:     }
46505:     }
46506:     function_tests++;
46507: #endif
46508: 
46509:     return(test_ret);
46510: }
46511: 
46512: 
46513: static int
46514: test_xmlXPathConvertBoolean(void) {
46515:     int test_ret = 0;
46516: 
46517: #if defined(LIBXML_XPATH_ENABLED)
46518:     int mem_base;
46519:     xmlXPathObjectPtr ret_val;
46520:     xmlXPathObjectPtr val; /* an XPath object */
46521:     int n_val;
46522: 
46523:     for (n_val = 0;n_val < gen_nb_xmlXPathObjectPtr;n_val++) {
46524:         mem_base = xmlMemBlocks();
46525:         val = gen_xmlXPathObjectPtr(n_val, 0);
46526: 
46527:         ret_val = xmlXPathConvertBoolean(val);
46528:         val = NULL;
46529:         desret_xmlXPathObjectPtr(ret_val);
46530:         call_tests++;
46531:         des_xmlXPathObjectPtr(n_val, val, 0);
46532:         xmlResetLastError();
46533:         if (mem_base != xmlMemBlocks()) {
46534:             printf("Leak of %d blocks found in xmlXPathConvertBoolean",
46535: 	           xmlMemBlocks() - mem_base);
46536: 	    test_ret++;
46537:             printf(" %d", n_val);
46538:             printf("\n");
46539:         }
46540:     }
46541:     function_tests++;
46542: #endif
46543: 
46544:     return(test_ret);
46545: }
46546: 
46547: 
46548: static int
46549: test_xmlXPathConvertNumber(void) {
46550:     int test_ret = 0;
46551: 
46552: #if defined(LIBXML_XPATH_ENABLED)
46553:     int mem_base;
46554:     xmlXPathObjectPtr ret_val;
46555:     xmlXPathObjectPtr val; /* an XPath object */
46556:     int n_val;
46557: 
46558:     for (n_val = 0;n_val < gen_nb_xmlXPathObjectPtr;n_val++) {
46559:         mem_base = xmlMemBlocks();
46560:         val = gen_xmlXPathObjectPtr(n_val, 0);
46561: 
46562:         ret_val = xmlXPathConvertNumber(val);
46563:         val = NULL;
46564:         desret_xmlXPathObjectPtr(ret_val);
46565:         call_tests++;
46566:         des_xmlXPathObjectPtr(n_val, val, 0);
46567:         xmlResetLastError();
46568:         if (mem_base != xmlMemBlocks()) {
46569:             printf("Leak of %d blocks found in xmlXPathConvertNumber",
46570: 	           xmlMemBlocks() - mem_base);
46571: 	    test_ret++;
46572:             printf(" %d", n_val);
46573:             printf("\n");
46574:         }
46575:     }
46576:     function_tests++;
46577: #endif
46578: 
46579:     return(test_ret);
46580: }
46581: 
46582: 
46583: static int
46584: test_xmlXPathConvertString(void) {
46585:     int test_ret = 0;
46586: 
46587: #if defined(LIBXML_XPATH_ENABLED)
46588:     int mem_base;
46589:     xmlXPathObjectPtr ret_val;
46590:     xmlXPathObjectPtr val; /* an XPath object */
46591:     int n_val;
46592: 
46593:     for (n_val = 0;n_val < gen_nb_xmlXPathObjectPtr;n_val++) {
46594:         mem_base = xmlMemBlocks();
46595:         val = gen_xmlXPathObjectPtr(n_val, 0);
46596: 
46597:         ret_val = xmlXPathConvertString(val);
46598:         val = NULL;
46599:         desret_xmlXPathObjectPtr(ret_val);
46600:         call_tests++;
46601:         des_xmlXPathObjectPtr(n_val, val, 0);
46602:         xmlResetLastError();
46603:         if (mem_base != xmlMemBlocks()) {
46604:             printf("Leak of %d blocks found in xmlXPathConvertString",
46605: 	           xmlMemBlocks() - mem_base);
46606: 	    test_ret++;
46607:             printf(" %d", n_val);
46608:             printf("\n");
46609:         }
46610:     }
46611:     function_tests++;
46612: #endif
46613: 
46614:     return(test_ret);
46615: }
46616: 
46617: 
46618: static int
46619: test_xmlXPathCtxtCompile(void) {
46620:     int test_ret = 0;
46621: 
46622: 
46623:     /* missing type support */
46624:     return(test_ret);
46625: }
46626: 
46627: 
46628: static int
46629: test_xmlXPathEval(void) {
46630:     int test_ret = 0;
46631: 
46632: #if defined(LIBXML_XPATH_ENABLED)
46633:     int mem_base;
46634:     xmlXPathObjectPtr ret_val;
46635:     xmlChar * str; /* the XPath expression */
46636:     int n_str;
46637:     xmlXPathContextPtr ctx; /* the XPath context */
46638:     int n_ctx;
46639: 
46640:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
46641:     for (n_ctx = 0;n_ctx < gen_nb_xmlXPathContextPtr;n_ctx++) {
46642:         mem_base = xmlMemBlocks();
46643:         str = gen_const_xmlChar_ptr(n_str, 0);
46644:         ctx = gen_xmlXPathContextPtr(n_ctx, 1);
46645: 
46646:         ret_val = xmlXPathEval((const xmlChar *)str, ctx);
46647:         desret_xmlXPathObjectPtr(ret_val);
46648:         call_tests++;
46649:         des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 0);
46650:         des_xmlXPathContextPtr(n_ctx, ctx, 1);
46651:         xmlResetLastError();
46652:         if (mem_base != xmlMemBlocks()) {
46653:             printf("Leak of %d blocks found in xmlXPathEval",
46654: 	           xmlMemBlocks() - mem_base);
46655: 	    test_ret++;
46656:             printf(" %d", n_str);
46657:             printf(" %d", n_ctx);
46658:             printf("\n");
46659:         }
46660:     }
46661:     }
46662:     function_tests++;
46663: #endif
46664: 
46665:     return(test_ret);
46666: }
46667: 
46668: 
46669: static int
46670: test_xmlXPathEvalExpression(void) {
46671:     int test_ret = 0;
46672: 
46673: #if defined(LIBXML_XPATH_ENABLED)
46674:     int mem_base;
46675:     xmlXPathObjectPtr ret_val;
46676:     xmlChar * str; /* the XPath expression */
46677:     int n_str;
46678:     xmlXPathContextPtr ctxt; /* the XPath context */
46679:     int n_ctxt;
46680: 
46681:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
46682:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathContextPtr;n_ctxt++) {
46683:         mem_base = xmlMemBlocks();
46684:         str = gen_const_xmlChar_ptr(n_str, 0);
46685:         ctxt = gen_xmlXPathContextPtr(n_ctxt, 1);
46686: 
46687:         ret_val = xmlXPathEvalExpression((const xmlChar *)str, ctxt);
46688:         desret_xmlXPathObjectPtr(ret_val);
46689:         call_tests++;
46690:         des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 0);
46691:         des_xmlXPathContextPtr(n_ctxt, ctxt, 1);
46692:         xmlResetLastError();
46693:         if (mem_base != xmlMemBlocks()) {
46694:             printf("Leak of %d blocks found in xmlXPathEvalExpression",
46695: 	           xmlMemBlocks() - mem_base);
46696: 	    test_ret++;
46697:             printf(" %d", n_str);
46698:             printf(" %d", n_ctxt);
46699:             printf("\n");
46700:         }
46701:     }
46702:     }
46703:     function_tests++;
46704: #endif
46705: 
46706:     return(test_ret);
46707: }
46708: 
46709: 
46710: static int
46711: test_xmlXPathEvalPredicate(void) {
46712:     int test_ret = 0;
46713: 
46714: #if defined(LIBXML_XPATH_ENABLED)
46715:     int mem_base;
46716:     int ret_val;
46717:     xmlXPathContextPtr ctxt; /* the XPath context */
46718:     int n_ctxt;
46719:     xmlXPathObjectPtr res; /* the Predicate Expression evaluation result */
46720:     int n_res;
46721: 
46722:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathContextPtr;n_ctxt++) {
46723:     for (n_res = 0;n_res < gen_nb_xmlXPathObjectPtr;n_res++) {
46724:         mem_base = xmlMemBlocks();
46725:         ctxt = gen_xmlXPathContextPtr(n_ctxt, 0);
46726:         res = gen_xmlXPathObjectPtr(n_res, 1);
46727: 
46728:         ret_val = xmlXPathEvalPredicate(ctxt, res);
46729:         desret_int(ret_val);
46730:         call_tests++;
46731:         des_xmlXPathContextPtr(n_ctxt, ctxt, 0);
46732:         des_xmlXPathObjectPtr(n_res, res, 1);
46733:         xmlResetLastError();
46734:         if (mem_base != xmlMemBlocks()) {
46735:             printf("Leak of %d blocks found in xmlXPathEvalPredicate",
46736: 	           xmlMemBlocks() - mem_base);
46737: 	    test_ret++;
46738:             printf(" %d", n_ctxt);
46739:             printf(" %d", n_res);
46740:             printf("\n");
46741:         }
46742:     }
46743:     }
46744:     function_tests++;
46745: #endif
46746: 
46747:     return(test_ret);
46748: }
46749: 
46750: 
46751: static int
46752: test_xmlXPathInit(void) {
46753:     int test_ret = 0;
46754: 
46755: #if defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
46756:     int mem_base;
46757: 
46758:         mem_base = xmlMemBlocks();
46759: 
46760:         xmlXPathInit();
46761:         call_tests++;
46762:         xmlResetLastError();
46763:         if (mem_base != xmlMemBlocks()) {
46764:             printf("Leak of %d blocks found in xmlXPathInit",
46765: 	           xmlMemBlocks() - mem_base);
46766: 	    test_ret++;
46767:             printf("\n");
46768:         }
46769:     function_tests++;
46770: #endif
46771: 
46772:     return(test_ret);
46773: }
46774: 
46775: 
46776: static int
46777: test_xmlXPathIsInf(void) {
46778:     int test_ret = 0;
46779: 
46780: #if defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
46781:     int mem_base;
46782:     int ret_val;
46783:     double val; /* a double value */
46784:     int n_val;
46785: 
46786:     for (n_val = 0;n_val < gen_nb_double;n_val++) {
46787:         mem_base = xmlMemBlocks();
46788:         val = gen_double(n_val, 0);
46789: 
46790:         ret_val = xmlXPathIsInf(val);
46791:         desret_int(ret_val);
46792:         call_tests++;
46793:         des_double(n_val, val, 0);
46794:         xmlResetLastError();
46795:         if (mem_base != xmlMemBlocks()) {
46796:             printf("Leak of %d blocks found in xmlXPathIsInf",
46797: 	           xmlMemBlocks() - mem_base);
46798: 	    test_ret++;
46799:             printf(" %d", n_val);
46800:             printf("\n");
46801:         }
46802:     }
46803:     function_tests++;
46804: #endif
46805: 
46806:     return(test_ret);
46807: }
46808: 
46809: 
46810: static int
46811: test_xmlXPathIsNaN(void) {
46812:     int test_ret = 0;
46813: 
46814: #if defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
46815:     int mem_base;
46816:     int ret_val;
46817:     double val; /* a double value */
46818:     int n_val;
46819: 
46820:     for (n_val = 0;n_val < gen_nb_double;n_val++) {
46821:         mem_base = xmlMemBlocks();
46822:         val = gen_double(n_val, 0);
46823: 
46824:         ret_val = xmlXPathIsNaN(val);
46825:         desret_int(ret_val);
46826:         call_tests++;
46827:         des_double(n_val, val, 0);
46828:         xmlResetLastError();
46829:         if (mem_base != xmlMemBlocks()) {
46830:             printf("Leak of %d blocks found in xmlXPathIsNaN",
46831: 	           xmlMemBlocks() - mem_base);
46832: 	    test_ret++;
46833:             printf(" %d", n_val);
46834:             printf("\n");
46835:         }
46836:     }
46837:     function_tests++;
46838: #endif
46839: 
46840:     return(test_ret);
46841: }
46842: 
46843: 
46844: static int
46845: test_xmlXPathNewContext(void) {
46846:     int test_ret = 0;
46847: 
46848: 
46849:     /* missing type support */
46850:     return(test_ret);
46851: }
46852: 
46853: 
46854: static int
46855: test_xmlXPathNodeEval(void) {
46856:     int test_ret = 0;
46857: 
46858: #if defined(LIBXML_XPATH_ENABLED)
46859:     int mem_base;
46860:     xmlXPathObjectPtr ret_val;
46861:     xmlNodePtr node; /* the node to to use as the context node */
46862:     int n_node;
46863:     xmlChar * str; /* the XPath expression */
46864:     int n_str;
46865:     xmlXPathContextPtr ctx; /* the XPath context */
46866:     int n_ctx;
46867: 
46868:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
46869:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
46870:     for (n_ctx = 0;n_ctx < gen_nb_xmlXPathContextPtr;n_ctx++) {
46871:         mem_base = xmlMemBlocks();
46872:         node = gen_xmlNodePtr(n_node, 0);
46873:         str = gen_const_xmlChar_ptr(n_str, 1);
46874:         ctx = gen_xmlXPathContextPtr(n_ctx, 2);
46875: 
46876:         ret_val = xmlXPathNodeEval(node, (const xmlChar *)str, ctx);
46877:         desret_xmlXPathObjectPtr(ret_val);
46878:         call_tests++;
46879:         des_xmlNodePtr(n_node, node, 0);
46880:         des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 1);
46881:         des_xmlXPathContextPtr(n_ctx, ctx, 2);
46882:         xmlResetLastError();
46883:         if (mem_base != xmlMemBlocks()) {
46884:             printf("Leak of %d blocks found in xmlXPathNodeEval",
46885: 	           xmlMemBlocks() - mem_base);
46886: 	    test_ret++;
46887:             printf(" %d", n_node);
46888:             printf(" %d", n_str);
46889:             printf(" %d", n_ctx);
46890:             printf("\n");
46891:         }
46892:     }
46893:     }
46894:     }
46895:     function_tests++;
46896: #endif
46897: 
46898:     return(test_ret);
46899: }
46900: 
46901: 
46902: static int
46903: test_xmlXPathNodeSetCreate(void) {
46904:     int test_ret = 0;
46905: 
46906: #if defined(LIBXML_XPATH_ENABLED)
46907:     int mem_base;
46908:     xmlNodeSetPtr ret_val;
46909:     xmlNodePtr val; /* an initial xmlNodePtr, or NULL */
46910:     int n_val;
46911: 
46912:     for (n_val = 0;n_val < gen_nb_xmlNodePtr;n_val++) {
46913:         mem_base = xmlMemBlocks();
46914:         val = gen_xmlNodePtr(n_val, 0);
46915: 
46916:         ret_val = xmlXPathNodeSetCreate(val);
46917:         desret_xmlNodeSetPtr(ret_val);
46918:         call_tests++;
46919:         des_xmlNodePtr(n_val, val, 0);
46920:         xmlResetLastError();
46921:         if (mem_base != xmlMemBlocks()) {
46922:             printf("Leak of %d blocks found in xmlXPathNodeSetCreate",
46923: 	           xmlMemBlocks() - mem_base);
46924: 	    test_ret++;
46925:             printf(" %d", n_val);
46926:             printf("\n");
46927:         }
46928:     }
46929:     function_tests++;
46930: #endif
46931: 
46932:     return(test_ret);
46933: }
46934: 
46935: 
46936: static int
46937: test_xmlXPathObjectCopy(void) {
46938:     int test_ret = 0;
46939: 
46940: #if defined(LIBXML_XPATH_ENABLED)
46941:     int mem_base;
46942:     xmlXPathObjectPtr ret_val;
46943:     xmlXPathObjectPtr val; /* the original object */
46944:     int n_val;
46945: 
46946:     for (n_val = 0;n_val < gen_nb_xmlXPathObjectPtr;n_val++) {
46947:         mem_base = xmlMemBlocks();
46948:         val = gen_xmlXPathObjectPtr(n_val, 0);
46949: 
46950:         ret_val = xmlXPathObjectCopy(val);
46951:         desret_xmlXPathObjectPtr(ret_val);
46952:         call_tests++;
46953:         des_xmlXPathObjectPtr(n_val, val, 0);
46954:         xmlResetLastError();
46955:         if (mem_base != xmlMemBlocks()) {
46956:             printf("Leak of %d blocks found in xmlXPathObjectCopy",
46957: 	           xmlMemBlocks() - mem_base);
46958: 	    test_ret++;
46959:             printf(" %d", n_val);
46960:             printf("\n");
46961:         }
46962:     }
46963:     function_tests++;
46964: #endif
46965: 
46966:     return(test_ret);
46967: }
46968: 
46969: 
46970: static int
46971: test_xmlXPathOrderDocElems(void) {
46972:     int test_ret = 0;
46973: 
46974: #if defined(LIBXML_XPATH_ENABLED)
46975:     int mem_base;
46976:     long ret_val;
46977:     xmlDocPtr doc; /* an input document */
46978:     int n_doc;
46979: 
46980:     for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
46981:         mem_base = xmlMemBlocks();
46982:         doc = gen_xmlDocPtr(n_doc, 0);
46983: 
46984:         ret_val = xmlXPathOrderDocElems(doc);
46985:         desret_long(ret_val);
46986:         call_tests++;
46987:         des_xmlDocPtr(n_doc, doc, 0);
46988:         xmlResetLastError();
46989:         if (mem_base != xmlMemBlocks()) {
46990:             printf("Leak of %d blocks found in xmlXPathOrderDocElems",
46991: 	           xmlMemBlocks() - mem_base);
46992: 	    test_ret++;
46993:             printf(" %d", n_doc);
46994:             printf("\n");
46995:         }
46996:     }
46997:     function_tests++;
46998: #endif
46999: 
47000:     return(test_ret);
47001: }
47002: 
47003: 
47004: static int
47005: test_xmlXPathSetContextNode(void) {
47006:     int test_ret = 0;
47007: 
47008: #if defined(LIBXML_XPATH_ENABLED)
47009:     int mem_base;
47010:     int ret_val;
47011:     xmlNodePtr node; /* the node to to use as the context node */
47012:     int n_node;
47013:     xmlXPathContextPtr ctx; /* the XPath context */
47014:     int n_ctx;
47015: 
47016:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
47017:     for (n_ctx = 0;n_ctx < gen_nb_xmlXPathContextPtr;n_ctx++) {
47018:         mem_base = xmlMemBlocks();
47019:         node = gen_xmlNodePtr(n_node, 0);
47020:         ctx = gen_xmlXPathContextPtr(n_ctx, 1);
47021: 
47022:         ret_val = xmlXPathSetContextNode(node, ctx);
47023:         desret_int(ret_val);
47024:         call_tests++;
47025:         des_xmlNodePtr(n_node, node, 0);
47026:         des_xmlXPathContextPtr(n_ctx, ctx, 1);
47027:         xmlResetLastError();
47028:         if (mem_base != xmlMemBlocks()) {
47029:             printf("Leak of %d blocks found in xmlXPathSetContextNode",
47030: 	           xmlMemBlocks() - mem_base);
47031: 	    test_ret++;
47032:             printf(" %d", n_node);
47033:             printf(" %d", n_ctx);
47034:             printf("\n");
47035:         }
47036:     }
47037:     }
47038:     function_tests++;
47039: #endif
47040: 
47041:     return(test_ret);
47042: }
47043: 
47044: static int
47045: test_xpath(void) {
47046:     int test_ret = 0;
47047: 
47048:     if (quiet == 0) printf("Testing xpath : 32 of 40 functions ...\n");
47049:     test_ret += test_xmlXPathCastBooleanToNumber();
47050:     test_ret += test_xmlXPathCastBooleanToString();
47051:     test_ret += test_xmlXPathCastNodeSetToBoolean();
47052:     test_ret += test_xmlXPathCastNodeSetToNumber();
47053:     test_ret += test_xmlXPathCastNodeSetToString();
47054:     test_ret += test_xmlXPathCastNodeToNumber();
47055:     test_ret += test_xmlXPathCastNodeToString();
47056:     test_ret += test_xmlXPathCastNumberToBoolean();
47057:     test_ret += test_xmlXPathCastNumberToString();
47058:     test_ret += test_xmlXPathCastStringToBoolean();
47059:     test_ret += test_xmlXPathCastStringToNumber();
47060:     test_ret += test_xmlXPathCastToBoolean();
47061:     test_ret += test_xmlXPathCastToNumber();
47062:     test_ret += test_xmlXPathCastToString();
47063:     test_ret += test_xmlXPathCmpNodes();
47064:     test_ret += test_xmlXPathCompile();
47065:     test_ret += test_xmlXPathCompiledEval();
47066:     test_ret += test_xmlXPathCompiledEvalToBoolean();
47067:     test_ret += test_xmlXPathContextSetCache();
47068:     test_ret += test_xmlXPathConvertBoolean();
47069:     test_ret += test_xmlXPathConvertNumber();
47070:     test_ret += test_xmlXPathConvertString();
47071:     test_ret += test_xmlXPathCtxtCompile();
47072:     test_ret += test_xmlXPathEval();
47073:     test_ret += test_xmlXPathEvalExpression();
47074:     test_ret += test_xmlXPathEvalPredicate();
47075:     test_ret += test_xmlXPathInit();
47076:     test_ret += test_xmlXPathIsInf();
47077:     test_ret += test_xmlXPathIsNaN();
47078:     test_ret += test_xmlXPathNewContext();
47079:     test_ret += test_xmlXPathNodeEval();
47080:     test_ret += test_xmlXPathNodeSetCreate();
47081:     test_ret += test_xmlXPathObjectCopy();
47082:     test_ret += test_xmlXPathOrderDocElems();
47083:     test_ret += test_xmlXPathSetContextNode();
47084: 
47085:     if (test_ret != 0)
47086: 	printf("Module xpath: %d errors\n", test_ret);
47087:     return(test_ret);
47088: }
47089: #ifdef LIBXML_XPATH_ENABLED
47090: 
47091: #define gen_nb_xmlXPathParserContextPtr 1
47092: static xmlXPathParserContextPtr gen_xmlXPathParserContextPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
47093:     return(NULL);
47094: }
47095: static void des_xmlXPathParserContextPtr(int no ATTRIBUTE_UNUSED, xmlXPathParserContextPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
47096: }
47097: #endif
47098: 
47099: 
47100: static int
47101: test_valuePop(void) {
47102:     int test_ret = 0;
47103: 
47104: #if defined(LIBXML_XPATH_ENABLED)
47105:     int mem_base;
47106:     xmlXPathObjectPtr ret_val;
47107:     xmlXPathParserContextPtr ctxt; /* an XPath evaluation context */
47108:     int n_ctxt;
47109: 
47110:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
47111:         mem_base = xmlMemBlocks();
47112:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
47113: 
47114:         ret_val = valuePop(ctxt);
47115:         desret_xmlXPathObjectPtr(ret_val);
47116:         call_tests++;
47117:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
47118:         xmlResetLastError();
47119:         if (mem_base != xmlMemBlocks()) {
47120:             printf("Leak of %d blocks found in valuePop",
47121: 	           xmlMemBlocks() - mem_base);
47122: 	    test_ret++;
47123:             printf(" %d", n_ctxt);
47124:             printf("\n");
47125:         }
47126:     }
47127:     function_tests++;
47128: #endif
47129: 
47130:     return(test_ret);
47131: }
47132: 
47133: 
47134: static int
47135: test_valuePush(void) {
47136:     int test_ret = 0;
47137: 
47138: #if defined(LIBXML_XPATH_ENABLED)
47139:     int mem_base;
47140:     int ret_val;
47141:     xmlXPathParserContextPtr ctxt; /* an XPath evaluation context */
47142:     int n_ctxt;
47143:     xmlXPathObjectPtr value; /* the XPath object */
47144:     int n_value;
47145: 
47146:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
47147:     for (n_value = 0;n_value < gen_nb_xmlXPathObjectPtr;n_value++) {
47148:         mem_base = xmlMemBlocks();
47149:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
47150:         value = gen_xmlXPathObjectPtr(n_value, 1);
47151: 
47152:         ret_val = valuePush(ctxt, value);
47153:         desret_int(ret_val);
47154:         call_tests++;
47155:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
47156:         des_xmlXPathObjectPtr(n_value, value, 1);
47157:         xmlResetLastError();
47158:         if (mem_base != xmlMemBlocks()) {
47159:             printf("Leak of %d blocks found in valuePush",
47160: 	           xmlMemBlocks() - mem_base);
47161: 	    test_ret++;
47162:             printf(" %d", n_ctxt);
47163:             printf(" %d", n_value);
47164:             printf("\n");
47165:         }
47166:     }
47167:     }
47168:     function_tests++;
47169: #endif
47170: 
47171:     return(test_ret);
47172: }
47173: 
47174: 
47175: static int
47176: test_xmlXPathAddValues(void) {
47177:     int test_ret = 0;
47178: 
47179: #if defined(LIBXML_XPATH_ENABLED)
47180:     int mem_base;
47181:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
47182:     int n_ctxt;
47183: 
47184:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
47185:         mem_base = xmlMemBlocks();
47186:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
47187: 
47188:         xmlXPathAddValues(ctxt);
47189:         call_tests++;
47190:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
47191:         xmlResetLastError();
47192:         if (mem_base != xmlMemBlocks()) {
47193:             printf("Leak of %d blocks found in xmlXPathAddValues",
47194: 	           xmlMemBlocks() - mem_base);
47195: 	    test_ret++;
47196:             printf(" %d", n_ctxt);
47197:             printf("\n");
47198:         }
47199:     }
47200:     function_tests++;
47201: #endif
47202: 
47203:     return(test_ret);
47204: }
47205: 
47206: 
47207: static int
47208: test_xmlXPathBooleanFunction(void) {
47209:     int test_ret = 0;
47210: 
47211: #if defined(LIBXML_XPATH_ENABLED)
47212:     int mem_base;
47213:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
47214:     int n_ctxt;
47215:     int nargs; /* the number of arguments */
47216:     int n_nargs;
47217: 
47218:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
47219:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
47220:         mem_base = xmlMemBlocks();
47221:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
47222:         nargs = gen_int(n_nargs, 1);
47223: 
47224:         xmlXPathBooleanFunction(ctxt, nargs);
47225:         call_tests++;
47226:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
47227:         des_int(n_nargs, nargs, 1);
47228:         xmlResetLastError();
47229:         if (mem_base != xmlMemBlocks()) {
47230:             printf("Leak of %d blocks found in xmlXPathBooleanFunction",
47231: 	           xmlMemBlocks() - mem_base);
47232: 	    test_ret++;
47233:             printf(" %d", n_ctxt);
47234:             printf(" %d", n_nargs);
47235:             printf("\n");
47236:         }
47237:     }
47238:     }
47239:     function_tests++;
47240: #endif
47241: 
47242:     return(test_ret);
47243: }
47244: 
47245: 
47246: static int
47247: test_xmlXPathCeilingFunction(void) {
47248:     int test_ret = 0;
47249: 
47250: #if defined(LIBXML_XPATH_ENABLED)
47251:     int mem_base;
47252:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
47253:     int n_ctxt;
47254:     int nargs; /* the number of arguments */
47255:     int n_nargs;
47256: 
47257:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
47258:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
47259:         mem_base = xmlMemBlocks();
47260:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
47261:         nargs = gen_int(n_nargs, 1);
47262: 
47263:         xmlXPathCeilingFunction(ctxt, nargs);
47264:         call_tests++;
47265:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
47266:         des_int(n_nargs, nargs, 1);
47267:         xmlResetLastError();
47268:         if (mem_base != xmlMemBlocks()) {
47269:             printf("Leak of %d blocks found in xmlXPathCeilingFunction",
47270: 	           xmlMemBlocks() - mem_base);
47271: 	    test_ret++;
47272:             printf(" %d", n_ctxt);
47273:             printf(" %d", n_nargs);
47274:             printf("\n");
47275:         }
47276:     }
47277:     }
47278:     function_tests++;
47279: #endif
47280: 
47281:     return(test_ret);
47282: }
47283: 
47284: 
47285: static int
47286: test_xmlXPathCompareValues(void) {
47287:     int test_ret = 0;
47288: 
47289: #if defined(LIBXML_XPATH_ENABLED)
47290:     int mem_base;
47291:     int ret_val;
47292:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
47293:     int n_ctxt;
47294:     int inf; /* less than (1) or greater than (0) */
47295:     int n_inf;
47296:     int strict; /* is the comparison strict */
47297:     int n_strict;
47298: 
47299:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
47300:     for (n_inf = 0;n_inf < gen_nb_int;n_inf++) {
47301:     for (n_strict = 0;n_strict < gen_nb_int;n_strict++) {
47302:         mem_base = xmlMemBlocks();
47303:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
47304:         inf = gen_int(n_inf, 1);
47305:         strict = gen_int(n_strict, 2);
47306: 
47307:         ret_val = xmlXPathCompareValues(ctxt, inf, strict);
47308:         desret_int(ret_val);
47309:         call_tests++;
47310:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
47311:         des_int(n_inf, inf, 1);
47312:         des_int(n_strict, strict, 2);
47313:         xmlResetLastError();
47314:         if (mem_base != xmlMemBlocks()) {
47315:             printf("Leak of %d blocks found in xmlXPathCompareValues",
47316: 	           xmlMemBlocks() - mem_base);
47317: 	    test_ret++;
47318:             printf(" %d", n_ctxt);
47319:             printf(" %d", n_inf);
47320:             printf(" %d", n_strict);
47321:             printf("\n");
47322:         }
47323:     }
47324:     }
47325:     }
47326:     function_tests++;
47327: #endif
47328: 
47329:     return(test_ret);
47330: }
47331: 
47332: 
47333: static int
47334: test_xmlXPathConcatFunction(void) {
47335:     int test_ret = 0;
47336: 
47337: #if defined(LIBXML_XPATH_ENABLED)
47338:     int mem_base;
47339:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
47340:     int n_ctxt;
47341:     int nargs; /* the number of arguments */
47342:     int n_nargs;
47343: 
47344:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
47345:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
47346:         mem_base = xmlMemBlocks();
47347:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
47348:         nargs = gen_int(n_nargs, 1);
47349: 
47350:         xmlXPathConcatFunction(ctxt, nargs);
47351:         call_tests++;
47352:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
47353:         des_int(n_nargs, nargs, 1);
47354:         xmlResetLastError();
47355:         if (mem_base != xmlMemBlocks()) {
47356:             printf("Leak of %d blocks found in xmlXPathConcatFunction",
47357: 	           xmlMemBlocks() - mem_base);
47358: 	    test_ret++;
47359:             printf(" %d", n_ctxt);
47360:             printf(" %d", n_nargs);
47361:             printf("\n");
47362:         }
47363:     }
47364:     }
47365:     function_tests++;
47366: #endif
47367: 
47368:     return(test_ret);
47369: }
47370: 
47371: 
47372: static int
47373: test_xmlXPathContainsFunction(void) {
47374:     int test_ret = 0;
47375: 
47376: #if defined(LIBXML_XPATH_ENABLED)
47377:     int mem_base;
47378:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
47379:     int n_ctxt;
47380:     int nargs; /* the number of arguments */
47381:     int n_nargs;
47382: 
47383:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
47384:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
47385:         mem_base = xmlMemBlocks();
47386:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
47387:         nargs = gen_int(n_nargs, 1);
47388: 
47389:         xmlXPathContainsFunction(ctxt, nargs);
47390:         call_tests++;
47391:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
47392:         des_int(n_nargs, nargs, 1);
47393:         xmlResetLastError();
47394:         if (mem_base != xmlMemBlocks()) {
47395:             printf("Leak of %d blocks found in xmlXPathContainsFunction",
47396: 	           xmlMemBlocks() - mem_base);
47397: 	    test_ret++;
47398:             printf(" %d", n_ctxt);
47399:             printf(" %d", n_nargs);
47400:             printf("\n");
47401:         }
47402:     }
47403:     }
47404:     function_tests++;
47405: #endif
47406: 
47407:     return(test_ret);
47408: }
47409: 
47410: 
47411: static int
47412: test_xmlXPathCountFunction(void) {
47413:     int test_ret = 0;
47414: 
47415: #if defined(LIBXML_XPATH_ENABLED)
47416:     int mem_base;
47417:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
47418:     int n_ctxt;
47419:     int nargs; /* the number of arguments */
47420:     int n_nargs;
47421: 
47422:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
47423:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
47424:         mem_base = xmlMemBlocks();
47425:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
47426:         nargs = gen_int(n_nargs, 1);
47427: 
47428:         xmlXPathCountFunction(ctxt, nargs);
47429:         call_tests++;
47430:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
47431:         des_int(n_nargs, nargs, 1);
47432:         xmlResetLastError();
47433:         if (mem_base != xmlMemBlocks()) {
47434:             printf("Leak of %d blocks found in xmlXPathCountFunction",
47435: 	           xmlMemBlocks() - mem_base);
47436: 	    test_ret++;
47437:             printf(" %d", n_ctxt);
47438:             printf(" %d", n_nargs);
47439:             printf("\n");
47440:         }
47441:     }
47442:     }
47443:     function_tests++;
47444: #endif
47445: 
47446:     return(test_ret);
47447: }
47448: 
47449: 
47450: static int
47451: test_xmlXPathDebugDumpCompExpr(void) {
47452:     int test_ret = 0;
47453: 
47454: #if defined(LIBXML_XPATH_ENABLED) && defined(LIBXML_DEBUG_ENABLED)
47455:     int mem_base;
47456:     FILE * output; /* the FILE * for the output */
47457:     int n_output;
47458:     xmlXPathCompExprPtr comp; /* the precompiled XPath expression */
47459:     int n_comp;
47460:     int depth; /* the indentation level. */
47461:     int n_depth;
47462: 
47463:     for (n_output = 0;n_output < gen_nb_FILE_ptr;n_output++) {
47464:     for (n_comp = 0;n_comp < gen_nb_xmlXPathCompExprPtr;n_comp++) {
47465:     for (n_depth = 0;n_depth < gen_nb_int;n_depth++) {
47466:         mem_base = xmlMemBlocks();
47467:         output = gen_FILE_ptr(n_output, 0);
47468:         comp = gen_xmlXPathCompExprPtr(n_comp, 1);
47469:         depth = gen_int(n_depth, 2);
47470: 
47471:         xmlXPathDebugDumpCompExpr(output, comp, depth);
47472:         call_tests++;
47473:         des_FILE_ptr(n_output, output, 0);
47474:         des_xmlXPathCompExprPtr(n_comp, comp, 1);
47475:         des_int(n_depth, depth, 2);
47476:         xmlResetLastError();
47477:         if (mem_base != xmlMemBlocks()) {
47478:             printf("Leak of %d blocks found in xmlXPathDebugDumpCompExpr",
47479: 	           xmlMemBlocks() - mem_base);
47480: 	    test_ret++;
47481:             printf(" %d", n_output);
47482:             printf(" %d", n_comp);
47483:             printf(" %d", n_depth);
47484:             printf("\n");
47485:         }
47486:     }
47487:     }
47488:     }
47489:     function_tests++;
47490: #endif
47491: 
47492:     return(test_ret);
47493: }
47494: 
47495: 
47496: static int
47497: test_xmlXPathDebugDumpObject(void) {
47498:     int test_ret = 0;
47499: 
47500: #if defined(LIBXML_XPATH_ENABLED) && defined(LIBXML_DEBUG_ENABLED)
47501:     int mem_base;
47502:     FILE * output; /* the FILE * to dump the output */
47503:     int n_output;
47504:     xmlXPathObjectPtr cur; /* the object to inspect */
47505:     int n_cur;
47506:     int depth; /* indentation level */
47507:     int n_depth;
47508: 
47509:     for (n_output = 0;n_output < gen_nb_FILE_ptr;n_output++) {
47510:     for (n_cur = 0;n_cur < gen_nb_xmlXPathObjectPtr;n_cur++) {
47511:     for (n_depth = 0;n_depth < gen_nb_int;n_depth++) {
47512:         mem_base = xmlMemBlocks();
47513:         output = gen_FILE_ptr(n_output, 0);
47514:         cur = gen_xmlXPathObjectPtr(n_cur, 1);
47515:         depth = gen_int(n_depth, 2);
47516: 
47517:         xmlXPathDebugDumpObject(output, cur, depth);
47518:         call_tests++;
47519:         des_FILE_ptr(n_output, output, 0);
47520:         des_xmlXPathObjectPtr(n_cur, cur, 1);
47521:         des_int(n_depth, depth, 2);
47522:         xmlResetLastError();
47523:         if (mem_base != xmlMemBlocks()) {
47524:             printf("Leak of %d blocks found in xmlXPathDebugDumpObject",
47525: 	           xmlMemBlocks() - mem_base);
47526: 	    test_ret++;
47527:             printf(" %d", n_output);
47528:             printf(" %d", n_cur);
47529:             printf(" %d", n_depth);
47530:             printf("\n");
47531:         }
47532:     }
47533:     }
47534:     }
47535:     function_tests++;
47536: #endif
47537: 
47538:     return(test_ret);
47539: }
47540: 
47541: 
47542: static int
47543: test_xmlXPathDifference(void) {
47544:     int test_ret = 0;
47545: 
47546: #if defined(LIBXML_XPATH_ENABLED)
47547:     int mem_base;
47548:     xmlNodeSetPtr ret_val;
47549:     xmlNodeSetPtr nodes1; /* a node-set */
47550:     int n_nodes1;
47551:     xmlNodeSetPtr nodes2; /* a node-set */
47552:     int n_nodes2;
47553: 
47554:     for (n_nodes1 = 0;n_nodes1 < gen_nb_xmlNodeSetPtr;n_nodes1++) {
47555:     for (n_nodes2 = 0;n_nodes2 < gen_nb_xmlNodeSetPtr;n_nodes2++) {
47556:         mem_base = xmlMemBlocks();
47557:         nodes1 = gen_xmlNodeSetPtr(n_nodes1, 0);
47558:         nodes2 = gen_xmlNodeSetPtr(n_nodes2, 1);
47559: 
47560:         ret_val = xmlXPathDifference(nodes1, nodes2);
47561:         desret_xmlNodeSetPtr(ret_val);
47562:         call_tests++;
47563:         des_xmlNodeSetPtr(n_nodes1, nodes1, 0);
47564:         des_xmlNodeSetPtr(n_nodes2, nodes2, 1);
47565:         xmlResetLastError();
47566:         if (mem_base != xmlMemBlocks()) {
47567:             printf("Leak of %d blocks found in xmlXPathDifference",
47568: 	           xmlMemBlocks() - mem_base);
47569: 	    test_ret++;
47570:             printf(" %d", n_nodes1);
47571:             printf(" %d", n_nodes2);
47572:             printf("\n");
47573:         }
47574:     }
47575:     }
47576:     function_tests++;
47577: #endif
47578: 
47579:     return(test_ret);
47580: }
47581: 
47582: 
47583: static int
47584: test_xmlXPathDistinct(void) {
47585:     int test_ret = 0;
47586: 
47587: #if defined(LIBXML_XPATH_ENABLED)
47588:     int mem_base;
47589:     xmlNodeSetPtr ret_val;
47590:     xmlNodeSetPtr nodes; /* a node-set */
47591:     int n_nodes;
47592: 
47593:     for (n_nodes = 0;n_nodes < gen_nb_xmlNodeSetPtr;n_nodes++) {
47594:         mem_base = xmlMemBlocks();
47595:         nodes = gen_xmlNodeSetPtr(n_nodes, 0);
47596: 
47597:         ret_val = xmlXPathDistinct(nodes);
47598:         desret_xmlNodeSetPtr(ret_val);
47599:         call_tests++;
47600:         des_xmlNodeSetPtr(n_nodes, nodes, 0);
47601:         xmlResetLastError();
47602:         if (mem_base != xmlMemBlocks()) {
47603:             printf("Leak of %d blocks found in xmlXPathDistinct",
47604: 	           xmlMemBlocks() - mem_base);
47605: 	    test_ret++;
47606:             printf(" %d", n_nodes);
47607:             printf("\n");
47608:         }
47609:     }
47610:     function_tests++;
47611: #endif
47612: 
47613:     return(test_ret);
47614: }
47615: 
47616: 
47617: static int
47618: test_xmlXPathDistinctSorted(void) {
47619:     int test_ret = 0;
47620: 
47621: #if defined(LIBXML_XPATH_ENABLED)
47622:     int mem_base;
47623:     xmlNodeSetPtr ret_val;
47624:     xmlNodeSetPtr nodes; /* a node-set, sorted by document order */
47625:     int n_nodes;
47626: 
47627:     for (n_nodes = 0;n_nodes < gen_nb_xmlNodeSetPtr;n_nodes++) {
47628:         mem_base = xmlMemBlocks();
47629:         nodes = gen_xmlNodeSetPtr(n_nodes, 0);
47630: 
47631:         ret_val = xmlXPathDistinctSorted(nodes);
47632:         desret_xmlNodeSetPtr(ret_val);
47633:         call_tests++;
47634:         des_xmlNodeSetPtr(n_nodes, nodes, 0);
47635:         xmlResetLastError();
47636:         if (mem_base != xmlMemBlocks()) {
47637:             printf("Leak of %d blocks found in xmlXPathDistinctSorted",
47638: 	           xmlMemBlocks() - mem_base);
47639: 	    test_ret++;
47640:             printf(" %d", n_nodes);
47641:             printf("\n");
47642:         }
47643:     }
47644:     function_tests++;
47645: #endif
47646: 
47647:     return(test_ret);
47648: }
47649: 
47650: 
47651: static int
47652: test_xmlXPathDivValues(void) {
47653:     int test_ret = 0;
47654: 
47655: #if defined(LIBXML_XPATH_ENABLED)
47656:     int mem_base;
47657:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
47658:     int n_ctxt;
47659: 
47660:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
47661:         mem_base = xmlMemBlocks();
47662:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
47663: 
47664:         xmlXPathDivValues(ctxt);
47665:         call_tests++;
47666:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
47667:         xmlResetLastError();
47668:         if (mem_base != xmlMemBlocks()) {
47669:             printf("Leak of %d blocks found in xmlXPathDivValues",
47670: 	           xmlMemBlocks() - mem_base);
47671: 	    test_ret++;
47672:             printf(" %d", n_ctxt);
47673:             printf("\n");
47674:         }
47675:     }
47676:     function_tests++;
47677: #endif
47678: 
47679:     return(test_ret);
47680: }
47681: 
47682: 
47683: static int
47684: test_xmlXPathEqualValues(void) {
47685:     int test_ret = 0;
47686: 
47687: #if defined(LIBXML_XPATH_ENABLED)
47688:     int mem_base;
47689:     int ret_val;
47690:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
47691:     int n_ctxt;
47692: 
47693:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
47694:         mem_base = xmlMemBlocks();
47695:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
47696: 
47697:         ret_val = xmlXPathEqualValues(ctxt);
47698:         desret_int(ret_val);
47699:         call_tests++;
47700:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
47701:         xmlResetLastError();
47702:         if (mem_base != xmlMemBlocks()) {
47703:             printf("Leak of %d blocks found in xmlXPathEqualValues",
47704: 	           xmlMemBlocks() - mem_base);
47705: 	    test_ret++;
47706:             printf(" %d", n_ctxt);
47707:             printf("\n");
47708:         }
47709:     }
47710:     function_tests++;
47711: #endif
47712: 
47713:     return(test_ret);
47714: }
47715: 
47716: 
47717: static int
47718: test_xmlXPathErr(void) {
47719:     int test_ret = 0;
47720: 
47721: #if defined(LIBXML_XPATH_ENABLED)
47722:     int mem_base;
47723:     xmlXPathParserContextPtr ctxt; /* a XPath parser context */
47724:     int n_ctxt;
47725:     int error; /* the error code */
47726:     int n_error;
47727: 
47728:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
47729:     for (n_error = 0;n_error < gen_nb_int;n_error++) {
47730:         mem_base = xmlMemBlocks();
47731:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
47732:         error = gen_int(n_error, 1);
47733: 
47734:         xmlXPathErr(ctxt, error);
47735:         call_tests++;
47736:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
47737:         des_int(n_error, error, 1);
47738:         xmlResetLastError();
47739:         if (mem_base != xmlMemBlocks()) {
47740:             printf("Leak of %d blocks found in xmlXPathErr",
47741: 	           xmlMemBlocks() - mem_base);
47742: 	    test_ret++;
47743:             printf(" %d", n_ctxt);
47744:             printf(" %d", n_error);
47745:             printf("\n");
47746:         }
47747:     }
47748:     }
47749:     function_tests++;
47750: #endif
47751: 
47752:     return(test_ret);
47753: }
47754: 
47755: 
47756: static int
47757: test_xmlXPathEvalExpr(void) {
47758:     int test_ret = 0;
47759: 
47760: #if defined(LIBXML_XPATH_ENABLED)
47761:     int mem_base;
47762:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
47763:     int n_ctxt;
47764: 
47765:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
47766:         mem_base = xmlMemBlocks();
47767:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
47768: 
47769:         xmlXPathEvalExpr(ctxt);
47770:         call_tests++;
47771:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
47772:         xmlResetLastError();
47773:         if (mem_base != xmlMemBlocks()) {
47774:             printf("Leak of %d blocks found in xmlXPathEvalExpr",
47775: 	           xmlMemBlocks() - mem_base);
47776: 	    test_ret++;
47777:             printf(" %d", n_ctxt);
47778:             printf("\n");
47779:         }
47780:     }
47781:     function_tests++;
47782: #endif
47783: 
47784:     return(test_ret);
47785: }
47786: 
47787: 
47788: static int
47789: test_xmlXPathEvaluatePredicateResult(void) {
47790:     int test_ret = 0;
47791: 
47792: #if defined(LIBXML_XPATH_ENABLED)
47793:     int mem_base;
47794:     int ret_val;
47795:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
47796:     int n_ctxt;
47797:     xmlXPathObjectPtr res; /* the Predicate Expression evaluation result */
47798:     int n_res;
47799: 
47800:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
47801:     for (n_res = 0;n_res < gen_nb_xmlXPathObjectPtr;n_res++) {
47802:         mem_base = xmlMemBlocks();
47803:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
47804:         res = gen_xmlXPathObjectPtr(n_res, 1);
47805: 
47806:         ret_val = xmlXPathEvaluatePredicateResult(ctxt, res);
47807:         desret_int(ret_val);
47808:         call_tests++;
47809:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
47810:         des_xmlXPathObjectPtr(n_res, res, 1);
47811:         xmlResetLastError();
47812:         if (mem_base != xmlMemBlocks()) {
47813:             printf("Leak of %d blocks found in xmlXPathEvaluatePredicateResult",
47814: 	           xmlMemBlocks() - mem_base);
47815: 	    test_ret++;
47816:             printf(" %d", n_ctxt);
47817:             printf(" %d", n_res);
47818:             printf("\n");
47819:         }
47820:     }
47821:     }
47822:     function_tests++;
47823: #endif
47824: 
47825:     return(test_ret);
47826: }
47827: 
47828: 
47829: static int
47830: test_xmlXPathFalseFunction(void) {
47831:     int test_ret = 0;
47832: 
47833: #if defined(LIBXML_XPATH_ENABLED)
47834:     int mem_base;
47835:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
47836:     int n_ctxt;
47837:     int nargs; /* the number of arguments */
47838:     int n_nargs;
47839: 
47840:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
47841:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
47842:         mem_base = xmlMemBlocks();
47843:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
47844:         nargs = gen_int(n_nargs, 1);
47845: 
47846:         xmlXPathFalseFunction(ctxt, nargs);
47847:         call_tests++;
47848:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
47849:         des_int(n_nargs, nargs, 1);
47850:         xmlResetLastError();
47851:         if (mem_base != xmlMemBlocks()) {
47852:             printf("Leak of %d blocks found in xmlXPathFalseFunction",
47853: 	           xmlMemBlocks() - mem_base);
47854: 	    test_ret++;
47855:             printf(" %d", n_ctxt);
47856:             printf(" %d", n_nargs);
47857:             printf("\n");
47858:         }
47859:     }
47860:     }
47861:     function_tests++;
47862: #endif
47863: 
47864:     return(test_ret);
47865: }
47866: 
47867: 
47868: static int
47869: test_xmlXPathFloorFunction(void) {
47870:     int test_ret = 0;
47871: 
47872: #if defined(LIBXML_XPATH_ENABLED)
47873:     int mem_base;
47874:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
47875:     int n_ctxt;
47876:     int nargs; /* the number of arguments */
47877:     int n_nargs;
47878: 
47879:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
47880:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
47881:         mem_base = xmlMemBlocks();
47882:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
47883:         nargs = gen_int(n_nargs, 1);
47884: 
47885:         xmlXPathFloorFunction(ctxt, nargs);
47886:         call_tests++;
47887:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
47888:         des_int(n_nargs, nargs, 1);
47889:         xmlResetLastError();
47890:         if (mem_base != xmlMemBlocks()) {
47891:             printf("Leak of %d blocks found in xmlXPathFloorFunction",
47892: 	           xmlMemBlocks() - mem_base);
47893: 	    test_ret++;
47894:             printf(" %d", n_ctxt);
47895:             printf(" %d", n_nargs);
47896:             printf("\n");
47897:         }
47898:     }
47899:     }
47900:     function_tests++;
47901: #endif
47902: 
47903:     return(test_ret);
47904: }
47905: 
47906: 
47907: static int
47908: test_xmlXPathFunctionLookup(void) {
47909:     int test_ret = 0;
47910: 
47911: 
47912:     /* missing type support */
47913:     return(test_ret);
47914: }
47915: 
47916: 
47917: static int
47918: test_xmlXPathFunctionLookupNS(void) {
47919:     int test_ret = 0;
47920: 
47921: 
47922:     /* missing type support */
47923:     return(test_ret);
47924: }
47925: 
47926: 
47927: static int
47928: test_xmlXPathHasSameNodes(void) {
47929:     int test_ret = 0;
47930: 
47931: #if defined(LIBXML_XPATH_ENABLED)
47932:     int mem_base;
47933:     int ret_val;
47934:     xmlNodeSetPtr nodes1; /* a node-set */
47935:     int n_nodes1;
47936:     xmlNodeSetPtr nodes2; /* a node-set */
47937:     int n_nodes2;
47938: 
47939:     for (n_nodes1 = 0;n_nodes1 < gen_nb_xmlNodeSetPtr;n_nodes1++) {
47940:     for (n_nodes2 = 0;n_nodes2 < gen_nb_xmlNodeSetPtr;n_nodes2++) {
47941:         mem_base = xmlMemBlocks();
47942:         nodes1 = gen_xmlNodeSetPtr(n_nodes1, 0);
47943:         nodes2 = gen_xmlNodeSetPtr(n_nodes2, 1);
47944: 
47945:         ret_val = xmlXPathHasSameNodes(nodes1, nodes2);
47946:         desret_int(ret_val);
47947:         call_tests++;
47948:         des_xmlNodeSetPtr(n_nodes1, nodes1, 0);
47949:         des_xmlNodeSetPtr(n_nodes2, nodes2, 1);
47950:         xmlResetLastError();
47951:         if (mem_base != xmlMemBlocks()) {
47952:             printf("Leak of %d blocks found in xmlXPathHasSameNodes",
47953: 	           xmlMemBlocks() - mem_base);
47954: 	    test_ret++;
47955:             printf(" %d", n_nodes1);
47956:             printf(" %d", n_nodes2);
47957:             printf("\n");
47958:         }
47959:     }
47960:     }
47961:     function_tests++;
47962: #endif
47963: 
47964:     return(test_ret);
47965: }
47966: 
47967: 
47968: static int
47969: test_xmlXPathIdFunction(void) {
47970:     int test_ret = 0;
47971: 
47972: #if defined(LIBXML_XPATH_ENABLED)
47973:     int mem_base;
47974:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
47975:     int n_ctxt;
47976:     int nargs; /* the number of arguments */
47977:     int n_nargs;
47978: 
47979:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
47980:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
47981:         mem_base = xmlMemBlocks();
47982:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
47983:         nargs = gen_int(n_nargs, 1);
47984: 
47985:         xmlXPathIdFunction(ctxt, nargs);
47986:         call_tests++;
47987:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
47988:         des_int(n_nargs, nargs, 1);
47989:         xmlResetLastError();
47990:         if (mem_base != xmlMemBlocks()) {
47991:             printf("Leak of %d blocks found in xmlXPathIdFunction",
47992: 	           xmlMemBlocks() - mem_base);
47993: 	    test_ret++;
47994:             printf(" %d", n_ctxt);
47995:             printf(" %d", n_nargs);
47996:             printf("\n");
47997:         }
47998:     }
47999:     }
48000:     function_tests++;
48001: #endif
48002: 
48003:     return(test_ret);
48004: }
48005: 
48006: 
48007: static int
48008: test_xmlXPathIntersection(void) {
48009:     int test_ret = 0;
48010: 
48011: #if defined(LIBXML_XPATH_ENABLED)
48012:     int mem_base;
48013:     xmlNodeSetPtr ret_val;
48014:     xmlNodeSetPtr nodes1; /* a node-set */
48015:     int n_nodes1;
48016:     xmlNodeSetPtr nodes2; /* a node-set */
48017:     int n_nodes2;
48018: 
48019:     for (n_nodes1 = 0;n_nodes1 < gen_nb_xmlNodeSetPtr;n_nodes1++) {
48020:     for (n_nodes2 = 0;n_nodes2 < gen_nb_xmlNodeSetPtr;n_nodes2++) {
48021:         mem_base = xmlMemBlocks();
48022:         nodes1 = gen_xmlNodeSetPtr(n_nodes1, 0);
48023:         nodes2 = gen_xmlNodeSetPtr(n_nodes2, 1);
48024: 
48025:         ret_val = xmlXPathIntersection(nodes1, nodes2);
48026:         desret_xmlNodeSetPtr(ret_val);
48027:         call_tests++;
48028:         des_xmlNodeSetPtr(n_nodes1, nodes1, 0);
48029:         des_xmlNodeSetPtr(n_nodes2, nodes2, 1);
48030:         xmlResetLastError();
48031:         if (mem_base != xmlMemBlocks()) {
48032:             printf("Leak of %d blocks found in xmlXPathIntersection",
48033: 	           xmlMemBlocks() - mem_base);
48034: 	    test_ret++;
48035:             printf(" %d", n_nodes1);
48036:             printf(" %d", n_nodes2);
48037:             printf("\n");
48038:         }
48039:     }
48040:     }
48041:     function_tests++;
48042: #endif
48043: 
48044:     return(test_ret);
48045: }
48046: 
48047: 
48048: static int
48049: test_xmlXPathIsNodeType(void) {
48050:     int test_ret = 0;
48051: 
48052: #if defined(LIBXML_XPATH_ENABLED)
48053:     int mem_base;
48054:     int ret_val;
48055:     xmlChar * name; /* a name string */
48056:     int n_name;
48057: 
48058:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
48059:         mem_base = xmlMemBlocks();
48060:         name = gen_const_xmlChar_ptr(n_name, 0);
48061: 
48062:         ret_val = xmlXPathIsNodeType((const xmlChar *)name);
48063:         desret_int(ret_val);
48064:         call_tests++;
48065:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 0);
48066:         xmlResetLastError();
48067:         if (mem_base != xmlMemBlocks()) {
48068:             printf("Leak of %d blocks found in xmlXPathIsNodeType",
48069: 	           xmlMemBlocks() - mem_base);
48070: 	    test_ret++;
48071:             printf(" %d", n_name);
48072:             printf("\n");
48073:         }
48074:     }
48075:     function_tests++;
48076: #endif
48077: 
48078:     return(test_ret);
48079: }
48080: 
48081: 
48082: static int
48083: test_xmlXPathLangFunction(void) {
48084:     int test_ret = 0;
48085: 
48086: #if defined(LIBXML_XPATH_ENABLED)
48087:     int mem_base;
48088:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
48089:     int n_ctxt;
48090:     int nargs; /* the number of arguments */
48091:     int n_nargs;
48092: 
48093:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
48094:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
48095:         mem_base = xmlMemBlocks();
48096:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
48097:         nargs = gen_int(n_nargs, 1);
48098: 
48099:         xmlXPathLangFunction(ctxt, nargs);
48100:         call_tests++;
48101:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
48102:         des_int(n_nargs, nargs, 1);
48103:         xmlResetLastError();
48104:         if (mem_base != xmlMemBlocks()) {
48105:             printf("Leak of %d blocks found in xmlXPathLangFunction",
48106: 	           xmlMemBlocks() - mem_base);
48107: 	    test_ret++;
48108:             printf(" %d", n_ctxt);
48109:             printf(" %d", n_nargs);
48110:             printf("\n");
48111:         }
48112:     }
48113:     }
48114:     function_tests++;
48115: #endif
48116: 
48117:     return(test_ret);
48118: }
48119: 
48120: 
48121: static int
48122: test_xmlXPathLastFunction(void) {
48123:     int test_ret = 0;
48124: 
48125: #if defined(LIBXML_XPATH_ENABLED)
48126:     int mem_base;
48127:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
48128:     int n_ctxt;
48129:     int nargs; /* the number of arguments */
48130:     int n_nargs;
48131: 
48132:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
48133:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
48134:         mem_base = xmlMemBlocks();
48135:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
48136:         nargs = gen_int(n_nargs, 1);
48137: 
48138:         xmlXPathLastFunction(ctxt, nargs);
48139:         call_tests++;
48140:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
48141:         des_int(n_nargs, nargs, 1);
48142:         xmlResetLastError();
48143:         if (mem_base != xmlMemBlocks()) {
48144:             printf("Leak of %d blocks found in xmlXPathLastFunction",
48145: 	           xmlMemBlocks() - mem_base);
48146: 	    test_ret++;
48147:             printf(" %d", n_ctxt);
48148:             printf(" %d", n_nargs);
48149:             printf("\n");
48150:         }
48151:     }
48152:     }
48153:     function_tests++;
48154: #endif
48155: 
48156:     return(test_ret);
48157: }
48158: 
48159: 
48160: static int
48161: test_xmlXPathLeading(void) {
48162:     int test_ret = 0;
48163: 
48164: #if defined(LIBXML_XPATH_ENABLED)
48165:     int mem_base;
48166:     xmlNodeSetPtr ret_val;
48167:     xmlNodeSetPtr nodes1; /* a node-set */
48168:     int n_nodes1;
48169:     xmlNodeSetPtr nodes2; /* a node-set */
48170:     int n_nodes2;
48171: 
48172:     for (n_nodes1 = 0;n_nodes1 < gen_nb_xmlNodeSetPtr;n_nodes1++) {
48173:     for (n_nodes2 = 0;n_nodes2 < gen_nb_xmlNodeSetPtr;n_nodes2++) {
48174:         mem_base = xmlMemBlocks();
48175:         nodes1 = gen_xmlNodeSetPtr(n_nodes1, 0);
48176:         nodes2 = gen_xmlNodeSetPtr(n_nodes2, 1);
48177: 
48178:         ret_val = xmlXPathLeading(nodes1, nodes2);
48179:         desret_xmlNodeSetPtr(ret_val);
48180:         call_tests++;
48181:         des_xmlNodeSetPtr(n_nodes1, nodes1, 0);
48182:         des_xmlNodeSetPtr(n_nodes2, nodes2, 1);
48183:         xmlResetLastError();
48184:         if (mem_base != xmlMemBlocks()) {
48185:             printf("Leak of %d blocks found in xmlXPathLeading",
48186: 	           xmlMemBlocks() - mem_base);
48187: 	    test_ret++;
48188:             printf(" %d", n_nodes1);
48189:             printf(" %d", n_nodes2);
48190:             printf("\n");
48191:         }
48192:     }
48193:     }
48194:     function_tests++;
48195: #endif
48196: 
48197:     return(test_ret);
48198: }
48199: 
48200: 
48201: static int
48202: test_xmlXPathLeadingSorted(void) {
48203:     int test_ret = 0;
48204: 
48205: #if defined(LIBXML_XPATH_ENABLED)
48206:     int mem_base;
48207:     xmlNodeSetPtr ret_val;
48208:     xmlNodeSetPtr nodes1; /* a node-set, sorted by document order */
48209:     int n_nodes1;
48210:     xmlNodeSetPtr nodes2; /* a node-set, sorted by document order */
48211:     int n_nodes2;
48212: 
48213:     for (n_nodes1 = 0;n_nodes1 < gen_nb_xmlNodeSetPtr;n_nodes1++) {
48214:     for (n_nodes2 = 0;n_nodes2 < gen_nb_xmlNodeSetPtr;n_nodes2++) {
48215:         mem_base = xmlMemBlocks();
48216:         nodes1 = gen_xmlNodeSetPtr(n_nodes1, 0);
48217:         nodes2 = gen_xmlNodeSetPtr(n_nodes2, 1);
48218: 
48219:         ret_val = xmlXPathLeadingSorted(nodes1, nodes2);
48220:         desret_xmlNodeSetPtr(ret_val);
48221:         call_tests++;
48222:         des_xmlNodeSetPtr(n_nodes1, nodes1, 0);
48223:         des_xmlNodeSetPtr(n_nodes2, nodes2, 1);
48224:         xmlResetLastError();
48225:         if (mem_base != xmlMemBlocks()) {
48226:             printf("Leak of %d blocks found in xmlXPathLeadingSorted",
48227: 	           xmlMemBlocks() - mem_base);
48228: 	    test_ret++;
48229:             printf(" %d", n_nodes1);
48230:             printf(" %d", n_nodes2);
48231:             printf("\n");
48232:         }
48233:     }
48234:     }
48235:     function_tests++;
48236: #endif
48237: 
48238:     return(test_ret);
48239: }
48240: 
48241: 
48242: static int
48243: test_xmlXPathLocalNameFunction(void) {
48244:     int test_ret = 0;
48245: 
48246: #if defined(LIBXML_XPATH_ENABLED)
48247:     int mem_base;
48248:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
48249:     int n_ctxt;
48250:     int nargs; /* the number of arguments */
48251:     int n_nargs;
48252: 
48253:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
48254:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
48255:         mem_base = xmlMemBlocks();
48256:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
48257:         nargs = gen_int(n_nargs, 1);
48258: 
48259:         xmlXPathLocalNameFunction(ctxt, nargs);
48260:         call_tests++;
48261:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
48262:         des_int(n_nargs, nargs, 1);
48263:         xmlResetLastError();
48264:         if (mem_base != xmlMemBlocks()) {
48265:             printf("Leak of %d blocks found in xmlXPathLocalNameFunction",
48266: 	           xmlMemBlocks() - mem_base);
48267: 	    test_ret++;
48268:             printf(" %d", n_ctxt);
48269:             printf(" %d", n_nargs);
48270:             printf("\n");
48271:         }
48272:     }
48273:     }
48274:     function_tests++;
48275: #endif
48276: 
48277:     return(test_ret);
48278: }
48279: 
48280: 
48281: static int
48282: test_xmlXPathModValues(void) {
48283:     int test_ret = 0;
48284: 
48285: #if defined(LIBXML_XPATH_ENABLED)
48286:     int mem_base;
48287:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
48288:     int n_ctxt;
48289: 
48290:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
48291:         mem_base = xmlMemBlocks();
48292:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
48293: 
48294:         xmlXPathModValues(ctxt);
48295:         call_tests++;
48296:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
48297:         xmlResetLastError();
48298:         if (mem_base != xmlMemBlocks()) {
48299:             printf("Leak of %d blocks found in xmlXPathModValues",
48300: 	           xmlMemBlocks() - mem_base);
48301: 	    test_ret++;
48302:             printf(" %d", n_ctxt);
48303:             printf("\n");
48304:         }
48305:     }
48306:     function_tests++;
48307: #endif
48308: 
48309:     return(test_ret);
48310: }
48311: 
48312: 
48313: static int
48314: test_xmlXPathMultValues(void) {
48315:     int test_ret = 0;
48316: 
48317: #if defined(LIBXML_XPATH_ENABLED)
48318:     int mem_base;
48319:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
48320:     int n_ctxt;
48321: 
48322:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
48323:         mem_base = xmlMemBlocks();
48324:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
48325: 
48326:         xmlXPathMultValues(ctxt);
48327:         call_tests++;
48328:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
48329:         xmlResetLastError();
48330:         if (mem_base != xmlMemBlocks()) {
48331:             printf("Leak of %d blocks found in xmlXPathMultValues",
48332: 	           xmlMemBlocks() - mem_base);
48333: 	    test_ret++;
48334:             printf(" %d", n_ctxt);
48335:             printf("\n");
48336:         }
48337:     }
48338:     function_tests++;
48339: #endif
48340: 
48341:     return(test_ret);
48342: }
48343: 
48344: 
48345: static int
48346: test_xmlXPathNamespaceURIFunction(void) {
48347:     int test_ret = 0;
48348: 
48349: #if defined(LIBXML_XPATH_ENABLED)
48350:     int mem_base;
48351:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
48352:     int n_ctxt;
48353:     int nargs; /* the number of arguments */
48354:     int n_nargs;
48355: 
48356:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
48357:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
48358:         mem_base = xmlMemBlocks();
48359:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
48360:         nargs = gen_int(n_nargs, 1);
48361: 
48362:         xmlXPathNamespaceURIFunction(ctxt, nargs);
48363:         call_tests++;
48364:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
48365:         des_int(n_nargs, nargs, 1);
48366:         xmlResetLastError();
48367:         if (mem_base != xmlMemBlocks()) {
48368:             printf("Leak of %d blocks found in xmlXPathNamespaceURIFunction",
48369: 	           xmlMemBlocks() - mem_base);
48370: 	    test_ret++;
48371:             printf(" %d", n_ctxt);
48372:             printf(" %d", n_nargs);
48373:             printf("\n");
48374:         }
48375:     }
48376:     }
48377:     function_tests++;
48378: #endif
48379: 
48380:     return(test_ret);
48381: }
48382: 
48383: 
48384: static int
48385: test_xmlXPathNewBoolean(void) {
48386:     int test_ret = 0;
48387: 
48388: #if defined(LIBXML_XPATH_ENABLED)
48389:     int mem_base;
48390:     xmlXPathObjectPtr ret_val;
48391:     int val; /* the boolean value */
48392:     int n_val;
48393: 
48394:     for (n_val = 0;n_val < gen_nb_int;n_val++) {
48395:         mem_base = xmlMemBlocks();
48396:         val = gen_int(n_val, 0);
48397: 
48398:         ret_val = xmlXPathNewBoolean(val);
48399:         desret_xmlXPathObjectPtr(ret_val);
48400:         call_tests++;
48401:         des_int(n_val, val, 0);
48402:         xmlResetLastError();
48403:         if (mem_base != xmlMemBlocks()) {
48404:             printf("Leak of %d blocks found in xmlXPathNewBoolean",
48405: 	           xmlMemBlocks() - mem_base);
48406: 	    test_ret++;
48407:             printf(" %d", n_val);
48408:             printf("\n");
48409:         }
48410:     }
48411:     function_tests++;
48412: #endif
48413: 
48414:     return(test_ret);
48415: }
48416: 
48417: 
48418: static int
48419: test_xmlXPathNewCString(void) {
48420:     int test_ret = 0;
48421: 
48422: #if defined(LIBXML_XPATH_ENABLED)
48423:     int mem_base;
48424:     xmlXPathObjectPtr ret_val;
48425:     char * val; /* the char * value */
48426:     int n_val;
48427: 
48428:     for (n_val = 0;n_val < gen_nb_const_char_ptr;n_val++) {
48429:         mem_base = xmlMemBlocks();
48430:         val = gen_const_char_ptr(n_val, 0);
48431: 
48432:         ret_val = xmlXPathNewCString((const char *)val);
48433:         desret_xmlXPathObjectPtr(ret_val);
48434:         call_tests++;
48435:         des_const_char_ptr(n_val, (const char *)val, 0);
48436:         xmlResetLastError();
48437:         if (mem_base != xmlMemBlocks()) {
48438:             printf("Leak of %d blocks found in xmlXPathNewCString",
48439: 	           xmlMemBlocks() - mem_base);
48440: 	    test_ret++;
48441:             printf(" %d", n_val);
48442:             printf("\n");
48443:         }
48444:     }
48445:     function_tests++;
48446: #endif
48447: 
48448:     return(test_ret);
48449: }
48450: 
48451: 
48452: static int
48453: test_xmlXPathNewFloat(void) {
48454:     int test_ret = 0;
48455: 
48456: #if defined(LIBXML_XPATH_ENABLED)
48457:     int mem_base;
48458:     xmlXPathObjectPtr ret_val;
48459:     double val; /* the double value */
48460:     int n_val;
48461: 
48462:     for (n_val = 0;n_val < gen_nb_double;n_val++) {
48463:         mem_base = xmlMemBlocks();
48464:         val = gen_double(n_val, 0);
48465: 
48466:         ret_val = xmlXPathNewFloat(val);
48467:         desret_xmlXPathObjectPtr(ret_val);
48468:         call_tests++;
48469:         des_double(n_val, val, 0);
48470:         xmlResetLastError();
48471:         if (mem_base != xmlMemBlocks()) {
48472:             printf("Leak of %d blocks found in xmlXPathNewFloat",
48473: 	           xmlMemBlocks() - mem_base);
48474: 	    test_ret++;
48475:             printf(" %d", n_val);
48476:             printf("\n");
48477:         }
48478:     }
48479:     function_tests++;
48480: #endif
48481: 
48482:     return(test_ret);
48483: }
48484: 
48485: 
48486: static int
48487: test_xmlXPathNewNodeSet(void) {
48488:     int test_ret = 0;
48489: 
48490: #if defined(LIBXML_XPATH_ENABLED)
48491:     int mem_base;
48492:     xmlXPathObjectPtr ret_val;
48493:     xmlNodePtr val; /* the NodePtr value */
48494:     int n_val;
48495: 
48496:     for (n_val = 0;n_val < gen_nb_xmlNodePtr;n_val++) {
48497:         mem_base = xmlMemBlocks();
48498:         val = gen_xmlNodePtr(n_val, 0);
48499: 
48500:         ret_val = xmlXPathNewNodeSet(val);
48501:         desret_xmlXPathObjectPtr(ret_val);
48502:         call_tests++;
48503:         des_xmlNodePtr(n_val, val, 0);
48504:         xmlResetLastError();
48505:         if (mem_base != xmlMemBlocks()) {
48506:             printf("Leak of %d blocks found in xmlXPathNewNodeSet",
48507: 	           xmlMemBlocks() - mem_base);
48508: 	    test_ret++;
48509:             printf(" %d", n_val);
48510:             printf("\n");
48511:         }
48512:     }
48513:     function_tests++;
48514: #endif
48515: 
48516:     return(test_ret);
48517: }
48518: 
48519: 
48520: static int
48521: test_xmlXPathNewNodeSetList(void) {
48522:     int test_ret = 0;
48523: 
48524: #if defined(LIBXML_XPATH_ENABLED)
48525:     int mem_base;
48526:     xmlXPathObjectPtr ret_val;
48527:     xmlNodeSetPtr val; /* an existing NodeSet */
48528:     int n_val;
48529: 
48530:     for (n_val = 0;n_val < gen_nb_xmlNodeSetPtr;n_val++) {
48531:         mem_base = xmlMemBlocks();
48532:         val = gen_xmlNodeSetPtr(n_val, 0);
48533: 
48534:         ret_val = xmlXPathNewNodeSetList(val);
48535:         desret_xmlXPathObjectPtr(ret_val);
48536:         call_tests++;
48537:         des_xmlNodeSetPtr(n_val, val, 0);
48538:         xmlResetLastError();
48539:         if (mem_base != xmlMemBlocks()) {
48540:             printf("Leak of %d blocks found in xmlXPathNewNodeSetList",
48541: 	           xmlMemBlocks() - mem_base);
48542: 	    test_ret++;
48543:             printf(" %d", n_val);
48544:             printf("\n");
48545:         }
48546:     }
48547:     function_tests++;
48548: #endif
48549: 
48550:     return(test_ret);
48551: }
48552: 
48553: 
48554: static int
48555: test_xmlXPathNewParserContext(void) {
48556:     int test_ret = 0;
48557: 
48558: 
48559:     /* missing type support */
48560:     return(test_ret);
48561: }
48562: 
48563: 
48564: static int
48565: test_xmlXPathNewString(void) {
48566:     int test_ret = 0;
48567: 
48568: #if defined(LIBXML_XPATH_ENABLED)
48569:     int mem_base;
48570:     xmlXPathObjectPtr ret_val;
48571:     xmlChar * val; /* the xmlChar * value */
48572:     int n_val;
48573: 
48574:     for (n_val = 0;n_val < gen_nb_const_xmlChar_ptr;n_val++) {
48575:         mem_base = xmlMemBlocks();
48576:         val = gen_const_xmlChar_ptr(n_val, 0);
48577: 
48578:         ret_val = xmlXPathNewString((const xmlChar *)val);
48579:         desret_xmlXPathObjectPtr(ret_val);
48580:         call_tests++;
48581:         des_const_xmlChar_ptr(n_val, (const xmlChar *)val, 0);
48582:         xmlResetLastError();
48583:         if (mem_base != xmlMemBlocks()) {
48584:             printf("Leak of %d blocks found in xmlXPathNewString",
48585: 	           xmlMemBlocks() - mem_base);
48586: 	    test_ret++;
48587:             printf(" %d", n_val);
48588:             printf("\n");
48589:         }
48590:     }
48591:     function_tests++;
48592: #endif
48593: 
48594:     return(test_ret);
48595: }
48596: 
48597: 
48598: static int
48599: test_xmlXPathNextAncestor(void) {
48600:     int test_ret = 0;
48601: 
48602: #if defined(LIBXML_XPATH_ENABLED)
48603:     int mem_base;
48604:     xmlNodePtr ret_val;
48605:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
48606:     int n_ctxt;
48607:     xmlNodePtr cur; /* the current node in the traversal */
48608:     int n_cur;
48609: 
48610:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
48611:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
48612:         mem_base = xmlMemBlocks();
48613:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
48614:         cur = gen_xmlNodePtr(n_cur, 1);
48615: 
48616:         ret_val = xmlXPathNextAncestor(ctxt, cur);
48617:         desret_xmlNodePtr(ret_val);
48618:         call_tests++;
48619:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
48620:         des_xmlNodePtr(n_cur, cur, 1);
48621:         xmlResetLastError();
48622:         if (mem_base != xmlMemBlocks()) {
48623:             printf("Leak of %d blocks found in xmlXPathNextAncestor",
48624: 	           xmlMemBlocks() - mem_base);
48625: 	    test_ret++;
48626:             printf(" %d", n_ctxt);
48627:             printf(" %d", n_cur);
48628:             printf("\n");
48629:         }
48630:     }
48631:     }
48632:     function_tests++;
48633: #endif
48634: 
48635:     return(test_ret);
48636: }
48637: 
48638: 
48639: static int
48640: test_xmlXPathNextAncestorOrSelf(void) {
48641:     int test_ret = 0;
48642: 
48643: #if defined(LIBXML_XPATH_ENABLED)
48644:     int mem_base;
48645:     xmlNodePtr ret_val;
48646:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
48647:     int n_ctxt;
48648:     xmlNodePtr cur; /* the current node in the traversal */
48649:     int n_cur;
48650: 
48651:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
48652:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
48653:         mem_base = xmlMemBlocks();
48654:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
48655:         cur = gen_xmlNodePtr(n_cur, 1);
48656: 
48657:         ret_val = xmlXPathNextAncestorOrSelf(ctxt, cur);
48658:         desret_xmlNodePtr(ret_val);
48659:         call_tests++;
48660:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
48661:         des_xmlNodePtr(n_cur, cur, 1);
48662:         xmlResetLastError();
48663:         if (mem_base != xmlMemBlocks()) {
48664:             printf("Leak of %d blocks found in xmlXPathNextAncestorOrSelf",
48665: 	           xmlMemBlocks() - mem_base);
48666: 	    test_ret++;
48667:             printf(" %d", n_ctxt);
48668:             printf(" %d", n_cur);
48669:             printf("\n");
48670:         }
48671:     }
48672:     }
48673:     function_tests++;
48674: #endif
48675: 
48676:     return(test_ret);
48677: }
48678: 
48679: 
48680: static int
48681: test_xmlXPathNextAttribute(void) {
48682:     int test_ret = 0;
48683: 
48684: #if defined(LIBXML_XPATH_ENABLED)
48685:     int mem_base;
48686:     xmlNodePtr ret_val;
48687:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
48688:     int n_ctxt;
48689:     xmlNodePtr cur; /* the current attribute in the traversal */
48690:     int n_cur;
48691: 
48692:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
48693:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
48694:         mem_base = xmlMemBlocks();
48695:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
48696:         cur = gen_xmlNodePtr(n_cur, 1);
48697: 
48698:         ret_val = xmlXPathNextAttribute(ctxt, cur);
48699:         desret_xmlNodePtr(ret_val);
48700:         call_tests++;
48701:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
48702:         des_xmlNodePtr(n_cur, cur, 1);
48703:         xmlResetLastError();
48704:         if (mem_base != xmlMemBlocks()) {
48705:             printf("Leak of %d blocks found in xmlXPathNextAttribute",
48706: 	           xmlMemBlocks() - mem_base);
48707: 	    test_ret++;
48708:             printf(" %d", n_ctxt);
48709:             printf(" %d", n_cur);
48710:             printf("\n");
48711:         }
48712:     }
48713:     }
48714:     function_tests++;
48715: #endif
48716: 
48717:     return(test_ret);
48718: }
48719: 
48720: 
48721: static int
48722: test_xmlXPathNextChild(void) {
48723:     int test_ret = 0;
48724: 
48725: #if defined(LIBXML_XPATH_ENABLED)
48726:     int mem_base;
48727:     xmlNodePtr ret_val;
48728:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
48729:     int n_ctxt;
48730:     xmlNodePtr cur; /* the current node in the traversal */
48731:     int n_cur;
48732: 
48733:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
48734:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
48735:         mem_base = xmlMemBlocks();
48736:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
48737:         cur = gen_xmlNodePtr(n_cur, 1);
48738: 
48739:         ret_val = xmlXPathNextChild(ctxt, cur);
48740:         desret_xmlNodePtr(ret_val);
48741:         call_tests++;
48742:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
48743:         des_xmlNodePtr(n_cur, cur, 1);
48744:         xmlResetLastError();
48745:         if (mem_base != xmlMemBlocks()) {
48746:             printf("Leak of %d blocks found in xmlXPathNextChild",
48747: 	           xmlMemBlocks() - mem_base);
48748: 	    test_ret++;
48749:             printf(" %d", n_ctxt);
48750:             printf(" %d", n_cur);
48751:             printf("\n");
48752:         }
48753:     }
48754:     }
48755:     function_tests++;
48756: #endif
48757: 
48758:     return(test_ret);
48759: }
48760: 
48761: 
48762: static int
48763: test_xmlXPathNextDescendant(void) {
48764:     int test_ret = 0;
48765: 
48766: #if defined(LIBXML_XPATH_ENABLED)
48767:     int mem_base;
48768:     xmlNodePtr ret_val;
48769:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
48770:     int n_ctxt;
48771:     xmlNodePtr cur; /* the current node in the traversal */
48772:     int n_cur;
48773: 
48774:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
48775:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
48776:         mem_base = xmlMemBlocks();
48777:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
48778:         cur = gen_xmlNodePtr(n_cur, 1);
48779: 
48780:         ret_val = xmlXPathNextDescendant(ctxt, cur);
48781:         desret_xmlNodePtr(ret_val);
48782:         call_tests++;
48783:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
48784:         des_xmlNodePtr(n_cur, cur, 1);
48785:         xmlResetLastError();
48786:         if (mem_base != xmlMemBlocks()) {
48787:             printf("Leak of %d blocks found in xmlXPathNextDescendant",
48788: 	           xmlMemBlocks() - mem_base);
48789: 	    test_ret++;
48790:             printf(" %d", n_ctxt);
48791:             printf(" %d", n_cur);
48792:             printf("\n");
48793:         }
48794:     }
48795:     }
48796:     function_tests++;
48797: #endif
48798: 
48799:     return(test_ret);
48800: }
48801: 
48802: 
48803: static int
48804: test_xmlXPathNextDescendantOrSelf(void) {
48805:     int test_ret = 0;
48806: 
48807: #if defined(LIBXML_XPATH_ENABLED)
48808:     int mem_base;
48809:     xmlNodePtr ret_val;
48810:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
48811:     int n_ctxt;
48812:     xmlNodePtr cur; /* the current node in the traversal */
48813:     int n_cur;
48814: 
48815:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
48816:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
48817:         mem_base = xmlMemBlocks();
48818:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
48819:         cur = gen_xmlNodePtr(n_cur, 1);
48820: 
48821:         ret_val = xmlXPathNextDescendantOrSelf(ctxt, cur);
48822:         desret_xmlNodePtr(ret_val);
48823:         call_tests++;
48824:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
48825:         des_xmlNodePtr(n_cur, cur, 1);
48826:         xmlResetLastError();
48827:         if (mem_base != xmlMemBlocks()) {
48828:             printf("Leak of %d blocks found in xmlXPathNextDescendantOrSelf",
48829: 	           xmlMemBlocks() - mem_base);
48830: 	    test_ret++;
48831:             printf(" %d", n_ctxt);
48832:             printf(" %d", n_cur);
48833:             printf("\n");
48834:         }
48835:     }
48836:     }
48837:     function_tests++;
48838: #endif
48839: 
48840:     return(test_ret);
48841: }
48842: 
48843: 
48844: static int
48845: test_xmlXPathNextFollowing(void) {
48846:     int test_ret = 0;
48847: 
48848: #if defined(LIBXML_XPATH_ENABLED)
48849:     int mem_base;
48850:     xmlNodePtr ret_val;
48851:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
48852:     int n_ctxt;
48853:     xmlNodePtr cur; /* the current node in the traversal */
48854:     int n_cur;
48855: 
48856:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
48857:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
48858:         mem_base = xmlMemBlocks();
48859:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
48860:         cur = gen_xmlNodePtr(n_cur, 1);
48861: 
48862:         ret_val = xmlXPathNextFollowing(ctxt, cur);
48863:         desret_xmlNodePtr(ret_val);
48864:         call_tests++;
48865:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
48866:         des_xmlNodePtr(n_cur, cur, 1);
48867:         xmlResetLastError();
48868:         if (mem_base != xmlMemBlocks()) {
48869:             printf("Leak of %d blocks found in xmlXPathNextFollowing",
48870: 	           xmlMemBlocks() - mem_base);
48871: 	    test_ret++;
48872:             printf(" %d", n_ctxt);
48873:             printf(" %d", n_cur);
48874:             printf("\n");
48875:         }
48876:     }
48877:     }
48878:     function_tests++;
48879: #endif
48880: 
48881:     return(test_ret);
48882: }
48883: 
48884: 
48885: static int
48886: test_xmlXPathNextFollowingSibling(void) {
48887:     int test_ret = 0;
48888: 
48889: #if defined(LIBXML_XPATH_ENABLED)
48890:     int mem_base;
48891:     xmlNodePtr ret_val;
48892:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
48893:     int n_ctxt;
48894:     xmlNodePtr cur; /* the current node in the traversal */
48895:     int n_cur;
48896: 
48897:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
48898:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
48899:         mem_base = xmlMemBlocks();
48900:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
48901:         cur = gen_xmlNodePtr(n_cur, 1);
48902: 
48903:         ret_val = xmlXPathNextFollowingSibling(ctxt, cur);
48904:         desret_xmlNodePtr(ret_val);
48905:         call_tests++;
48906:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
48907:         des_xmlNodePtr(n_cur, cur, 1);
48908:         xmlResetLastError();
48909:         if (mem_base != xmlMemBlocks()) {
48910:             printf("Leak of %d blocks found in xmlXPathNextFollowingSibling",
48911: 	           xmlMemBlocks() - mem_base);
48912: 	    test_ret++;
48913:             printf(" %d", n_ctxt);
48914:             printf(" %d", n_cur);
48915:             printf("\n");
48916:         }
48917:     }
48918:     }
48919:     function_tests++;
48920: #endif
48921: 
48922:     return(test_ret);
48923: }
48924: 
48925: 
48926: static int
48927: test_xmlXPathNextNamespace(void) {
48928:     int test_ret = 0;
48929: 
48930: #if defined(LIBXML_XPATH_ENABLED)
48931:     int mem_base;
48932:     xmlNodePtr ret_val;
48933:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
48934:     int n_ctxt;
48935:     xmlNodePtr cur; /* the current attribute in the traversal */
48936:     int n_cur;
48937: 
48938:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
48939:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
48940:         mem_base = xmlMemBlocks();
48941:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
48942:         cur = gen_xmlNodePtr(n_cur, 1);
48943: 
48944:         ret_val = xmlXPathNextNamespace(ctxt, cur);
48945:         desret_xmlNodePtr(ret_val);
48946:         call_tests++;
48947:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
48948:         des_xmlNodePtr(n_cur, cur, 1);
48949:         xmlResetLastError();
48950:         if (mem_base != xmlMemBlocks()) {
48951:             printf("Leak of %d blocks found in xmlXPathNextNamespace",
48952: 	           xmlMemBlocks() - mem_base);
48953: 	    test_ret++;
48954:             printf(" %d", n_ctxt);
48955:             printf(" %d", n_cur);
48956:             printf("\n");
48957:         }
48958:     }
48959:     }
48960:     function_tests++;
48961: #endif
48962: 
48963:     return(test_ret);
48964: }
48965: 
48966: 
48967: static int
48968: test_xmlXPathNextParent(void) {
48969:     int test_ret = 0;
48970: 
48971: #if defined(LIBXML_XPATH_ENABLED)
48972:     int mem_base;
48973:     xmlNodePtr ret_val;
48974:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
48975:     int n_ctxt;
48976:     xmlNodePtr cur; /* the current node in the traversal */
48977:     int n_cur;
48978: 
48979:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
48980:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
48981:         mem_base = xmlMemBlocks();
48982:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
48983:         cur = gen_xmlNodePtr(n_cur, 1);
48984: 
48985:         ret_val = xmlXPathNextParent(ctxt, cur);
48986:         desret_xmlNodePtr(ret_val);
48987:         call_tests++;
48988:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
48989:         des_xmlNodePtr(n_cur, cur, 1);
48990:         xmlResetLastError();
48991:         if (mem_base != xmlMemBlocks()) {
48992:             printf("Leak of %d blocks found in xmlXPathNextParent",
48993: 	           xmlMemBlocks() - mem_base);
48994: 	    test_ret++;
48995:             printf(" %d", n_ctxt);
48996:             printf(" %d", n_cur);
48997:             printf("\n");
48998:         }
48999:     }
49000:     }
49001:     function_tests++;
49002: #endif
49003: 
49004:     return(test_ret);
49005: }
49006: 
49007: 
49008: static int
49009: test_xmlXPathNextPreceding(void) {
49010:     int test_ret = 0;
49011: 
49012: #if defined(LIBXML_XPATH_ENABLED)
49013:     int mem_base;
49014:     xmlNodePtr ret_val;
49015:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
49016:     int n_ctxt;
49017:     xmlNodePtr cur; /* the current node in the traversal */
49018:     int n_cur;
49019: 
49020:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
49021:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
49022:         mem_base = xmlMemBlocks();
49023:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
49024:         cur = gen_xmlNodePtr(n_cur, 1);
49025: 
49026:         ret_val = xmlXPathNextPreceding(ctxt, cur);
49027:         desret_xmlNodePtr(ret_val);
49028:         call_tests++;
49029:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
49030:         des_xmlNodePtr(n_cur, cur, 1);
49031:         xmlResetLastError();
49032:         if (mem_base != xmlMemBlocks()) {
49033:             printf("Leak of %d blocks found in xmlXPathNextPreceding",
49034: 	           xmlMemBlocks() - mem_base);
49035: 	    test_ret++;
49036:             printf(" %d", n_ctxt);
49037:             printf(" %d", n_cur);
49038:             printf("\n");
49039:         }
49040:     }
49041:     }
49042:     function_tests++;
49043: #endif
49044: 
49045:     return(test_ret);
49046: }
49047: 
49048: 
49049: static int
49050: test_xmlXPathNextPrecedingSibling(void) {
49051:     int test_ret = 0;
49052: 
49053: #if defined(LIBXML_XPATH_ENABLED)
49054:     int mem_base;
49055:     xmlNodePtr ret_val;
49056:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
49057:     int n_ctxt;
49058:     xmlNodePtr cur; /* the current node in the traversal */
49059:     int n_cur;
49060: 
49061:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
49062:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
49063:         mem_base = xmlMemBlocks();
49064:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
49065:         cur = gen_xmlNodePtr(n_cur, 1);
49066: 
49067:         ret_val = xmlXPathNextPrecedingSibling(ctxt, cur);
49068:         desret_xmlNodePtr(ret_val);
49069:         call_tests++;
49070:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
49071:         des_xmlNodePtr(n_cur, cur, 1);
49072:         xmlResetLastError();
49073:         if (mem_base != xmlMemBlocks()) {
49074:             printf("Leak of %d blocks found in xmlXPathNextPrecedingSibling",
49075: 	           xmlMemBlocks() - mem_base);
49076: 	    test_ret++;
49077:             printf(" %d", n_ctxt);
49078:             printf(" %d", n_cur);
49079:             printf("\n");
49080:         }
49081:     }
49082:     }
49083:     function_tests++;
49084: #endif
49085: 
49086:     return(test_ret);
49087: }
49088: 
49089: 
49090: static int
49091: test_xmlXPathNextSelf(void) {
49092:     int test_ret = 0;
49093: 
49094: #if defined(LIBXML_XPATH_ENABLED)
49095:     int mem_base;
49096:     xmlNodePtr ret_val;
49097:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
49098:     int n_ctxt;
49099:     xmlNodePtr cur; /* the current node in the traversal */
49100:     int n_cur;
49101: 
49102:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
49103:     for (n_cur = 0;n_cur < gen_nb_xmlNodePtr;n_cur++) {
49104:         mem_base = xmlMemBlocks();
49105:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
49106:         cur = gen_xmlNodePtr(n_cur, 1);
49107: 
49108:         ret_val = xmlXPathNextSelf(ctxt, cur);
49109:         desret_xmlNodePtr(ret_val);
49110:         call_tests++;
49111:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
49112:         des_xmlNodePtr(n_cur, cur, 1);
49113:         xmlResetLastError();
49114:         if (mem_base != xmlMemBlocks()) {
49115:             printf("Leak of %d blocks found in xmlXPathNextSelf",
49116: 	           xmlMemBlocks() - mem_base);
49117: 	    test_ret++;
49118:             printf(" %d", n_ctxt);
49119:             printf(" %d", n_cur);
49120:             printf("\n");
49121:         }
49122:     }
49123:     }
49124:     function_tests++;
49125: #endif
49126: 
49127:     return(test_ret);
49128: }
49129: 
49130: 
49131: static int
49132: test_xmlXPathNodeLeading(void) {
49133:     int test_ret = 0;
49134: 
49135: #if defined(LIBXML_XPATH_ENABLED)
49136:     int mem_base;
49137:     xmlNodeSetPtr ret_val;
49138:     xmlNodeSetPtr nodes; /* a node-set */
49139:     int n_nodes;
49140:     xmlNodePtr node; /* a node */
49141:     int n_node;
49142: 
49143:     for (n_nodes = 0;n_nodes < gen_nb_xmlNodeSetPtr;n_nodes++) {
49144:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
49145:         mem_base = xmlMemBlocks();
49146:         nodes = gen_xmlNodeSetPtr(n_nodes, 0);
49147:         node = gen_xmlNodePtr(n_node, 1);
49148: 
49149:         ret_val = xmlXPathNodeLeading(nodes, node);
49150:         desret_xmlNodeSetPtr(ret_val);
49151:         call_tests++;
49152:         des_xmlNodeSetPtr(n_nodes, nodes, 0);
49153:         des_xmlNodePtr(n_node, node, 1);
49154:         xmlResetLastError();
49155:         if (mem_base != xmlMemBlocks()) {
49156:             printf("Leak of %d blocks found in xmlXPathNodeLeading",
49157: 	           xmlMemBlocks() - mem_base);
49158: 	    test_ret++;
49159:             printf(" %d", n_nodes);
49160:             printf(" %d", n_node);
49161:             printf("\n");
49162:         }
49163:     }
49164:     }
49165:     function_tests++;
49166: #endif
49167: 
49168:     return(test_ret);
49169: }
49170: 
49171: 
49172: static int
49173: test_xmlXPathNodeLeadingSorted(void) {
49174:     int test_ret = 0;
49175: 
49176: #if defined(LIBXML_XPATH_ENABLED)
49177:     int mem_base;
49178:     xmlNodeSetPtr ret_val;
49179:     xmlNodeSetPtr nodes; /* a node-set, sorted by document order */
49180:     int n_nodes;
49181:     xmlNodePtr node; /* a node */
49182:     int n_node;
49183: 
49184:     for (n_nodes = 0;n_nodes < gen_nb_xmlNodeSetPtr;n_nodes++) {
49185:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
49186:         mem_base = xmlMemBlocks();
49187:         nodes = gen_xmlNodeSetPtr(n_nodes, 0);
49188:         node = gen_xmlNodePtr(n_node, 1);
49189: 
49190:         ret_val = xmlXPathNodeLeadingSorted(nodes, node);
49191:         desret_xmlNodeSetPtr(ret_val);
49192:         call_tests++;
49193:         des_xmlNodeSetPtr(n_nodes, nodes, 0);
49194:         des_xmlNodePtr(n_node, node, 1);
49195:         xmlResetLastError();
49196:         if (mem_base != xmlMemBlocks()) {
49197:             printf("Leak of %d blocks found in xmlXPathNodeLeadingSorted",
49198: 	           xmlMemBlocks() - mem_base);
49199: 	    test_ret++;
49200:             printf(" %d", n_nodes);
49201:             printf(" %d", n_node);
49202:             printf("\n");
49203:         }
49204:     }
49205:     }
49206:     function_tests++;
49207: #endif
49208: 
49209:     return(test_ret);
49210: }
49211: 
49212: 
49213: static int
49214: test_xmlXPathNodeSetAdd(void) {
49215:     int test_ret = 0;
49216: 
49217: #if defined(LIBXML_XPATH_ENABLED)
49218:     int mem_base;
49219:     int ret_val;
49220:     xmlNodeSetPtr cur; /* the initial node set */
49221:     int n_cur;
49222:     xmlNodePtr val; /* a new xmlNodePtr */
49223:     int n_val;
49224: 
49225:     for (n_cur = 0;n_cur < gen_nb_xmlNodeSetPtr;n_cur++) {
49226:     for (n_val = 0;n_val < gen_nb_xmlNodePtr;n_val++) {
49227:         mem_base = xmlMemBlocks();
49228:         cur = gen_xmlNodeSetPtr(n_cur, 0);
49229:         val = gen_xmlNodePtr(n_val, 1);
49230: 
49231:         ret_val = xmlXPathNodeSetAdd(cur, val);
49232:         desret_int(ret_val);
49233:         call_tests++;
49234:         des_xmlNodeSetPtr(n_cur, cur, 0);
49235:         des_xmlNodePtr(n_val, val, 1);
49236:         xmlResetLastError();
49237:         if (mem_base != xmlMemBlocks()) {
49238:             printf("Leak of %d blocks found in xmlXPathNodeSetAdd",
49239: 	           xmlMemBlocks() - mem_base);
49240: 	    test_ret++;
49241:             printf(" %d", n_cur);
49242:             printf(" %d", n_val);
49243:             printf("\n");
49244:         }
49245:     }
49246:     }
49247:     function_tests++;
49248: #endif
49249: 
49250:     return(test_ret);
49251: }
49252: 
49253: 
49254: static int
49255: test_xmlXPathNodeSetAddNs(void) {
49256:     int test_ret = 0;
49257: 
49258: #if defined(LIBXML_XPATH_ENABLED)
49259:     int mem_base;
49260:     int ret_val;
49261:     xmlNodeSetPtr cur; /* the initial node set */
49262:     int n_cur;
49263:     xmlNodePtr node; /* the hosting node */
49264:     int n_node;
49265:     xmlNsPtr ns; /* a the namespace node */
49266:     int n_ns;
49267: 
49268:     for (n_cur = 0;n_cur < gen_nb_xmlNodeSetPtr;n_cur++) {
49269:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
49270:     for (n_ns = 0;n_ns < gen_nb_xmlNsPtr;n_ns++) {
49271:         mem_base = xmlMemBlocks();
49272:         cur = gen_xmlNodeSetPtr(n_cur, 0);
49273:         node = gen_xmlNodePtr(n_node, 1);
49274:         ns = gen_xmlNsPtr(n_ns, 2);
49275: 
49276:         ret_val = xmlXPathNodeSetAddNs(cur, node, ns);
49277:         desret_int(ret_val);
49278:         call_tests++;
49279:         des_xmlNodeSetPtr(n_cur, cur, 0);
49280:         des_xmlNodePtr(n_node, node, 1);
49281:         des_xmlNsPtr(n_ns, ns, 2);
49282:         xmlResetLastError();
49283:         if (mem_base != xmlMemBlocks()) {
49284:             printf("Leak of %d blocks found in xmlXPathNodeSetAddNs",
49285: 	           xmlMemBlocks() - mem_base);
49286: 	    test_ret++;
49287:             printf(" %d", n_cur);
49288:             printf(" %d", n_node);
49289:             printf(" %d", n_ns);
49290:             printf("\n");
49291:         }
49292:     }
49293:     }
49294:     }
49295:     function_tests++;
49296: #endif
49297: 
49298:     return(test_ret);
49299: }
49300: 
49301: 
49302: static int
49303: test_xmlXPathNodeSetAddUnique(void) {
49304:     int test_ret = 0;
49305: 
49306: #if defined(LIBXML_XPATH_ENABLED)
49307:     int mem_base;
49308:     int ret_val;
49309:     xmlNodeSetPtr cur; /* the initial node set */
49310:     int n_cur;
49311:     xmlNodePtr val; /* a new xmlNodePtr */
49312:     int n_val;
49313: 
49314:     for (n_cur = 0;n_cur < gen_nb_xmlNodeSetPtr;n_cur++) {
49315:     for (n_val = 0;n_val < gen_nb_xmlNodePtr;n_val++) {
49316:         mem_base = xmlMemBlocks();
49317:         cur = gen_xmlNodeSetPtr(n_cur, 0);
49318:         val = gen_xmlNodePtr(n_val, 1);
49319: 
49320:         ret_val = xmlXPathNodeSetAddUnique(cur, val);
49321:         desret_int(ret_val);
49322:         call_tests++;
49323:         des_xmlNodeSetPtr(n_cur, cur, 0);
49324:         des_xmlNodePtr(n_val, val, 1);
49325:         xmlResetLastError();
49326:         if (mem_base != xmlMemBlocks()) {
49327:             printf("Leak of %d blocks found in xmlXPathNodeSetAddUnique",
49328: 	           xmlMemBlocks() - mem_base);
49329: 	    test_ret++;
49330:             printf(" %d", n_cur);
49331:             printf(" %d", n_val);
49332:             printf("\n");
49333:         }
49334:     }
49335:     }
49336:     function_tests++;
49337: #endif
49338: 
49339:     return(test_ret);
49340: }
49341: 
49342: 
49343: static int
49344: test_xmlXPathNodeSetContains(void) {
49345:     int test_ret = 0;
49346: 
49347: #if defined(LIBXML_XPATH_ENABLED)
49348:     int mem_base;
49349:     int ret_val;
49350:     xmlNodeSetPtr cur; /* the node-set */
49351:     int n_cur;
49352:     xmlNodePtr val; /* the node */
49353:     int n_val;
49354: 
49355:     for (n_cur = 0;n_cur < gen_nb_xmlNodeSetPtr;n_cur++) {
49356:     for (n_val = 0;n_val < gen_nb_xmlNodePtr;n_val++) {
49357:         mem_base = xmlMemBlocks();
49358:         cur = gen_xmlNodeSetPtr(n_cur, 0);
49359:         val = gen_xmlNodePtr(n_val, 1);
49360: 
49361:         ret_val = xmlXPathNodeSetContains(cur, val);
49362:         desret_int(ret_val);
49363:         call_tests++;
49364:         des_xmlNodeSetPtr(n_cur, cur, 0);
49365:         des_xmlNodePtr(n_val, val, 1);
49366:         xmlResetLastError();
49367:         if (mem_base != xmlMemBlocks()) {
49368:             printf("Leak of %d blocks found in xmlXPathNodeSetContains",
49369: 	           xmlMemBlocks() - mem_base);
49370: 	    test_ret++;
49371:             printf(" %d", n_cur);
49372:             printf(" %d", n_val);
49373:             printf("\n");
49374:         }
49375:     }
49376:     }
49377:     function_tests++;
49378: #endif
49379: 
49380:     return(test_ret);
49381: }
49382: 
49383: 
49384: static int
49385: test_xmlXPathNodeSetDel(void) {
49386:     int test_ret = 0;
49387: 
49388: #if defined(LIBXML_XPATH_ENABLED)
49389:     int mem_base;
49390:     xmlNodeSetPtr cur; /* the initial node set */
49391:     int n_cur;
49392:     xmlNodePtr val; /* an xmlNodePtr */
49393:     int n_val;
49394: 
49395:     for (n_cur = 0;n_cur < gen_nb_xmlNodeSetPtr;n_cur++) {
49396:     for (n_val = 0;n_val < gen_nb_xmlNodePtr;n_val++) {
49397:         mem_base = xmlMemBlocks();
49398:         cur = gen_xmlNodeSetPtr(n_cur, 0);
49399:         val = gen_xmlNodePtr(n_val, 1);
49400: 
49401:         xmlXPathNodeSetDel(cur, val);
49402:         call_tests++;
49403:         des_xmlNodeSetPtr(n_cur, cur, 0);
49404:         des_xmlNodePtr(n_val, val, 1);
49405:         xmlResetLastError();
49406:         if (mem_base != xmlMemBlocks()) {
49407:             printf("Leak of %d blocks found in xmlXPathNodeSetDel",
49408: 	           xmlMemBlocks() - mem_base);
49409: 	    test_ret++;
49410:             printf(" %d", n_cur);
49411:             printf(" %d", n_val);
49412:             printf("\n");
49413:         }
49414:     }
49415:     }
49416:     function_tests++;
49417: #endif
49418: 
49419:     return(test_ret);
49420: }
49421: 
49422: 
49423: static int
49424: test_xmlXPathNodeSetMerge(void) {
49425:     int test_ret = 0;
49426: 
49427: #if defined(LIBXML_XPATH_ENABLED)
49428:     int mem_base;
49429:     xmlNodeSetPtr ret_val;
49430:     xmlNodeSetPtr val1; /* the first NodeSet or NULL */
49431:     int n_val1;
49432:     xmlNodeSetPtr val2; /* the second NodeSet */
49433:     int n_val2;
49434: 
49435:     for (n_val1 = 0;n_val1 < gen_nb_xmlNodeSetPtr;n_val1++) {
49436:     for (n_val2 = 0;n_val2 < gen_nb_xmlNodeSetPtr;n_val2++) {
49437:         mem_base = xmlMemBlocks();
49438:         val1 = gen_xmlNodeSetPtr(n_val1, 0);
49439:         val2 = gen_xmlNodeSetPtr(n_val2, 1);
49440: 
49441:         ret_val = xmlXPathNodeSetMerge(val1, val2);
49442:         desret_xmlNodeSetPtr(ret_val);
49443:         call_tests++;
49444:         des_xmlNodeSetPtr(n_val1, val1, 0);
49445:         des_xmlNodeSetPtr(n_val2, val2, 1);
49446:         xmlResetLastError();
49447:         if (mem_base != xmlMemBlocks()) {
49448:             printf("Leak of %d blocks found in xmlXPathNodeSetMerge",
49449: 	           xmlMemBlocks() - mem_base);
49450: 	    test_ret++;
49451:             printf(" %d", n_val1);
49452:             printf(" %d", n_val2);
49453:             printf("\n");
49454:         }
49455:     }
49456:     }
49457:     function_tests++;
49458: #endif
49459: 
49460:     return(test_ret);
49461: }
49462: 
49463: 
49464: static int
49465: test_xmlXPathNodeSetRemove(void) {
49466:     int test_ret = 0;
49467: 
49468: #if defined(LIBXML_XPATH_ENABLED)
49469:     int mem_base;
49470:     xmlNodeSetPtr cur; /* the initial node set */
49471:     int n_cur;
49472:     int val; /* the index to remove */
49473:     int n_val;
49474: 
49475:     for (n_cur = 0;n_cur < gen_nb_xmlNodeSetPtr;n_cur++) {
49476:     for (n_val = 0;n_val < gen_nb_int;n_val++) {
49477:         mem_base = xmlMemBlocks();
49478:         cur = gen_xmlNodeSetPtr(n_cur, 0);
49479:         val = gen_int(n_val, 1);
49480: 
49481:         xmlXPathNodeSetRemove(cur, val);
49482:         call_tests++;
49483:         des_xmlNodeSetPtr(n_cur, cur, 0);
49484:         des_int(n_val, val, 1);
49485:         xmlResetLastError();
49486:         if (mem_base != xmlMemBlocks()) {
49487:             printf("Leak of %d blocks found in xmlXPathNodeSetRemove",
49488: 	           xmlMemBlocks() - mem_base);
49489: 	    test_ret++;
49490:             printf(" %d", n_cur);
49491:             printf(" %d", n_val);
49492:             printf("\n");
49493:         }
49494:     }
49495:     }
49496:     function_tests++;
49497: #endif
49498: 
49499:     return(test_ret);
49500: }
49501: 
49502: 
49503: static int
49504: test_xmlXPathNodeSetSort(void) {
49505:     int test_ret = 0;
49506: 
49507: #if defined(LIBXML_XPATH_ENABLED)
49508:     int mem_base;
49509:     xmlNodeSetPtr set; /* the node set */
49510:     int n_set;
49511: 
49512:     for (n_set = 0;n_set < gen_nb_xmlNodeSetPtr;n_set++) {
49513:         mem_base = xmlMemBlocks();
49514:         set = gen_xmlNodeSetPtr(n_set, 0);
49515: 
49516:         xmlXPathNodeSetSort(set);
49517:         call_tests++;
49518:         des_xmlNodeSetPtr(n_set, set, 0);
49519:         xmlResetLastError();
49520:         if (mem_base != xmlMemBlocks()) {
49521:             printf("Leak of %d blocks found in xmlXPathNodeSetSort",
49522: 	           xmlMemBlocks() - mem_base);
49523: 	    test_ret++;
49524:             printf(" %d", n_set);
49525:             printf("\n");
49526:         }
49527:     }
49528:     function_tests++;
49529: #endif
49530: 
49531:     return(test_ret);
49532: }
49533: 
49534: 
49535: static int
49536: test_xmlXPathNodeTrailing(void) {
49537:     int test_ret = 0;
49538: 
49539: #if defined(LIBXML_XPATH_ENABLED)
49540:     int mem_base;
49541:     xmlNodeSetPtr ret_val;
49542:     xmlNodeSetPtr nodes; /* a node-set */
49543:     int n_nodes;
49544:     xmlNodePtr node; /* a node */
49545:     int n_node;
49546: 
49547:     for (n_nodes = 0;n_nodes < gen_nb_xmlNodeSetPtr;n_nodes++) {
49548:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
49549:         mem_base = xmlMemBlocks();
49550:         nodes = gen_xmlNodeSetPtr(n_nodes, 0);
49551:         node = gen_xmlNodePtr(n_node, 1);
49552: 
49553:         ret_val = xmlXPathNodeTrailing(nodes, node);
49554:         desret_xmlNodeSetPtr(ret_val);
49555:         call_tests++;
49556:         des_xmlNodeSetPtr(n_nodes, nodes, 0);
49557:         des_xmlNodePtr(n_node, node, 1);
49558:         xmlResetLastError();
49559:         if (mem_base != xmlMemBlocks()) {
49560:             printf("Leak of %d blocks found in xmlXPathNodeTrailing",
49561: 	           xmlMemBlocks() - mem_base);
49562: 	    test_ret++;
49563:             printf(" %d", n_nodes);
49564:             printf(" %d", n_node);
49565:             printf("\n");
49566:         }
49567:     }
49568:     }
49569:     function_tests++;
49570: #endif
49571: 
49572:     return(test_ret);
49573: }
49574: 
49575: 
49576: static int
49577: test_xmlXPathNodeTrailingSorted(void) {
49578:     int test_ret = 0;
49579: 
49580: #if defined(LIBXML_XPATH_ENABLED)
49581:     int mem_base;
49582:     xmlNodeSetPtr ret_val;
49583:     xmlNodeSetPtr nodes; /* a node-set, sorted by document order */
49584:     int n_nodes;
49585:     xmlNodePtr node; /* a node */
49586:     int n_node;
49587: 
49588:     for (n_nodes = 0;n_nodes < gen_nb_xmlNodeSetPtr;n_nodes++) {
49589:     for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
49590:         mem_base = xmlMemBlocks();
49591:         nodes = gen_xmlNodeSetPtr(n_nodes, 0);
49592:         node = gen_xmlNodePtr(n_node, 1);
49593: 
49594:         ret_val = xmlXPathNodeTrailingSorted(nodes, node);
49595:         desret_xmlNodeSetPtr(ret_val);
49596:         call_tests++;
49597:         des_xmlNodeSetPtr(n_nodes, nodes, 0);
49598:         des_xmlNodePtr(n_node, node, 1);
49599:         xmlResetLastError();
49600:         if (mem_base != xmlMemBlocks()) {
49601:             printf("Leak of %d blocks found in xmlXPathNodeTrailingSorted",
49602: 	           xmlMemBlocks() - mem_base);
49603: 	    test_ret++;
49604:             printf(" %d", n_nodes);
49605:             printf(" %d", n_node);
49606:             printf("\n");
49607:         }
49608:     }
49609:     }
49610:     function_tests++;
49611: #endif
49612: 
49613:     return(test_ret);
49614: }
49615: 
49616: 
49617: static int
49618: test_xmlXPathNormalizeFunction(void) {
49619:     int test_ret = 0;
49620: 
49621: #if defined(LIBXML_XPATH_ENABLED)
49622:     int mem_base;
49623:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
49624:     int n_ctxt;
49625:     int nargs; /* the number of arguments */
49626:     int n_nargs;
49627: 
49628:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
49629:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
49630:         mem_base = xmlMemBlocks();
49631:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
49632:         nargs = gen_int(n_nargs, 1);
49633: 
49634:         xmlXPathNormalizeFunction(ctxt, nargs);
49635:         call_tests++;
49636:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
49637:         des_int(n_nargs, nargs, 1);
49638:         xmlResetLastError();
49639:         if (mem_base != xmlMemBlocks()) {
49640:             printf("Leak of %d blocks found in xmlXPathNormalizeFunction",
49641: 	           xmlMemBlocks() - mem_base);
49642: 	    test_ret++;
49643:             printf(" %d", n_ctxt);
49644:             printf(" %d", n_nargs);
49645:             printf("\n");
49646:         }
49647:     }
49648:     }
49649:     function_tests++;
49650: #endif
49651: 
49652:     return(test_ret);
49653: }
49654: 
49655: 
49656: static int
49657: test_xmlXPathNotEqualValues(void) {
49658:     int test_ret = 0;
49659: 
49660: #if defined(LIBXML_XPATH_ENABLED)
49661:     int mem_base;
49662:     int ret_val;
49663:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
49664:     int n_ctxt;
49665: 
49666:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
49667:         mem_base = xmlMemBlocks();
49668:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
49669: 
49670:         ret_val = xmlXPathNotEqualValues(ctxt);
49671:         desret_int(ret_val);
49672:         call_tests++;
49673:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
49674:         xmlResetLastError();
49675:         if (mem_base != xmlMemBlocks()) {
49676:             printf("Leak of %d blocks found in xmlXPathNotEqualValues",
49677: 	           xmlMemBlocks() - mem_base);
49678: 	    test_ret++;
49679:             printf(" %d", n_ctxt);
49680:             printf("\n");
49681:         }
49682:     }
49683:     function_tests++;
49684: #endif
49685: 
49686:     return(test_ret);
49687: }
49688: 
49689: 
49690: static int
49691: test_xmlXPathNotFunction(void) {
49692:     int test_ret = 0;
49693: 
49694: #if defined(LIBXML_XPATH_ENABLED)
49695:     int mem_base;
49696:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
49697:     int n_ctxt;
49698:     int nargs; /* the number of arguments */
49699:     int n_nargs;
49700: 
49701:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
49702:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
49703:         mem_base = xmlMemBlocks();
49704:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
49705:         nargs = gen_int(n_nargs, 1);
49706: 
49707:         xmlXPathNotFunction(ctxt, nargs);
49708:         call_tests++;
49709:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
49710:         des_int(n_nargs, nargs, 1);
49711:         xmlResetLastError();
49712:         if (mem_base != xmlMemBlocks()) {
49713:             printf("Leak of %d blocks found in xmlXPathNotFunction",
49714: 	           xmlMemBlocks() - mem_base);
49715: 	    test_ret++;
49716:             printf(" %d", n_ctxt);
49717:             printf(" %d", n_nargs);
49718:             printf("\n");
49719:         }
49720:     }
49721:     }
49722:     function_tests++;
49723: #endif
49724: 
49725:     return(test_ret);
49726: }
49727: 
49728: 
49729: static int
49730: test_xmlXPathNsLookup(void) {
49731:     int test_ret = 0;
49732: 
49733: #if defined(LIBXML_XPATH_ENABLED)
49734:     int mem_base;
49735:     const xmlChar * ret_val;
49736:     xmlXPathContextPtr ctxt; /* the XPath context */
49737:     int n_ctxt;
49738:     xmlChar * prefix; /* the namespace prefix value */
49739:     int n_prefix;
49740: 
49741:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathContextPtr;n_ctxt++) {
49742:     for (n_prefix = 0;n_prefix < gen_nb_const_xmlChar_ptr;n_prefix++) {
49743:         mem_base = xmlMemBlocks();
49744:         ctxt = gen_xmlXPathContextPtr(n_ctxt, 0);
49745:         prefix = gen_const_xmlChar_ptr(n_prefix, 1);
49746: 
49747:         ret_val = xmlXPathNsLookup(ctxt, (const xmlChar *)prefix);
49748:         desret_const_xmlChar_ptr(ret_val);
49749:         call_tests++;
49750:         des_xmlXPathContextPtr(n_ctxt, ctxt, 0);
49751:         des_const_xmlChar_ptr(n_prefix, (const xmlChar *)prefix, 1);
49752:         xmlResetLastError();
49753:         if (mem_base != xmlMemBlocks()) {
49754:             printf("Leak of %d blocks found in xmlXPathNsLookup",
49755: 	           xmlMemBlocks() - mem_base);
49756: 	    test_ret++;
49757:             printf(" %d", n_ctxt);
49758:             printf(" %d", n_prefix);
49759:             printf("\n");
49760:         }
49761:     }
49762:     }
49763:     function_tests++;
49764: #endif
49765: 
49766:     return(test_ret);
49767: }
49768: 
49769: 
49770: static int
49771: test_xmlXPathNumberFunction(void) {
49772:     int test_ret = 0;
49773: 
49774: #if defined(LIBXML_XPATH_ENABLED)
49775:     int mem_base;
49776:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
49777:     int n_ctxt;
49778:     int nargs; /* the number of arguments */
49779:     int n_nargs;
49780: 
49781:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
49782:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
49783:         mem_base = xmlMemBlocks();
49784:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
49785:         nargs = gen_int(n_nargs, 1);
49786: 
49787:         xmlXPathNumberFunction(ctxt, nargs);
49788:         call_tests++;
49789:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
49790:         des_int(n_nargs, nargs, 1);
49791:         xmlResetLastError();
49792:         if (mem_base != xmlMemBlocks()) {
49793:             printf("Leak of %d blocks found in xmlXPathNumberFunction",
49794: 	           xmlMemBlocks() - mem_base);
49795: 	    test_ret++;
49796:             printf(" %d", n_ctxt);
49797:             printf(" %d", n_nargs);
49798:             printf("\n");
49799:         }
49800:     }
49801:     }
49802:     function_tests++;
49803: #endif
49804: 
49805:     return(test_ret);
49806: }
49807: 
49808: 
49809: static int
49810: test_xmlXPathParseNCName(void) {
49811:     int test_ret = 0;
49812: 
49813: #if defined(LIBXML_XPATH_ENABLED)
49814:     int mem_base;
49815:     xmlChar * ret_val;
49816:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
49817:     int n_ctxt;
49818: 
49819:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
49820:         mem_base = xmlMemBlocks();
49821:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
49822: 
49823:         ret_val = xmlXPathParseNCName(ctxt);
49824:         desret_xmlChar_ptr(ret_val);
49825:         call_tests++;
49826:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
49827:         xmlResetLastError();
49828:         if (mem_base != xmlMemBlocks()) {
49829:             printf("Leak of %d blocks found in xmlXPathParseNCName",
49830: 	           xmlMemBlocks() - mem_base);
49831: 	    test_ret++;
49832:             printf(" %d", n_ctxt);
49833:             printf("\n");
49834:         }
49835:     }
49836:     function_tests++;
49837: #endif
49838: 
49839:     return(test_ret);
49840: }
49841: 
49842: 
49843: static int
49844: test_xmlXPathParseName(void) {
49845:     int test_ret = 0;
49846: 
49847: #if defined(LIBXML_XPATH_ENABLED)
49848:     int mem_base;
49849:     xmlChar * ret_val;
49850:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
49851:     int n_ctxt;
49852: 
49853:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
49854:         mem_base = xmlMemBlocks();
49855:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
49856: 
49857:         ret_val = xmlXPathParseName(ctxt);
49858:         desret_xmlChar_ptr(ret_val);
49859:         call_tests++;
49860:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
49861:         xmlResetLastError();
49862:         if (mem_base != xmlMemBlocks()) {
49863:             printf("Leak of %d blocks found in xmlXPathParseName",
49864: 	           xmlMemBlocks() - mem_base);
49865: 	    test_ret++;
49866:             printf(" %d", n_ctxt);
49867:             printf("\n");
49868:         }
49869:     }
49870:     function_tests++;
49871: #endif
49872: 
49873:     return(test_ret);
49874: }
49875: 
49876: 
49877: static int
49878: test_xmlXPathPopBoolean(void) {
49879:     int test_ret = 0;
49880: 
49881: #if defined(LIBXML_XPATH_ENABLED)
49882:     int mem_base;
49883:     int ret_val;
49884:     xmlXPathParserContextPtr ctxt; /* an XPath parser context */
49885:     int n_ctxt;
49886: 
49887:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
49888:         mem_base = xmlMemBlocks();
49889:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
49890: 
49891:         ret_val = xmlXPathPopBoolean(ctxt);
49892:         desret_int(ret_val);
49893:         call_tests++;
49894:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
49895:         xmlResetLastError();
49896:         if (mem_base != xmlMemBlocks()) {
49897:             printf("Leak of %d blocks found in xmlXPathPopBoolean",
49898: 	           xmlMemBlocks() - mem_base);
49899: 	    test_ret++;
49900:             printf(" %d", n_ctxt);
49901:             printf("\n");
49902:         }
49903:     }
49904:     function_tests++;
49905: #endif
49906: 
49907:     return(test_ret);
49908: }
49909: 
49910: 
49911: static int
49912: test_xmlXPathPopExternal(void) {
49913:     int test_ret = 0;
49914: 
49915: #if defined(LIBXML_XPATH_ENABLED)
49916:     int mem_base;
49917:     void * ret_val;
49918:     xmlXPathParserContextPtr ctxt; /* an XPath parser context */
49919:     int n_ctxt;
49920: 
49921:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
49922:         mem_base = xmlMemBlocks();
49923:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
49924: 
49925:         ret_val = xmlXPathPopExternal(ctxt);
49926:         desret_void_ptr(ret_val);
49927:         call_tests++;
49928:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
49929:         xmlResetLastError();
49930:         if (mem_base != xmlMemBlocks()) {
49931:             printf("Leak of %d blocks found in xmlXPathPopExternal",
49932: 	           xmlMemBlocks() - mem_base);
49933: 	    test_ret++;
49934:             printf(" %d", n_ctxt);
49935:             printf("\n");
49936:         }
49937:     }
49938:     function_tests++;
49939: #endif
49940: 
49941:     return(test_ret);
49942: }
49943: 
49944: 
49945: static int
49946: test_xmlXPathPopNodeSet(void) {
49947:     int test_ret = 0;
49948: 
49949: #if defined(LIBXML_XPATH_ENABLED)
49950:     int mem_base;
49951:     xmlNodeSetPtr ret_val;
49952:     xmlXPathParserContextPtr ctxt; /* an XPath parser context */
49953:     int n_ctxt;
49954: 
49955:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
49956:         mem_base = xmlMemBlocks();
49957:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
49958: 
49959:         ret_val = xmlXPathPopNodeSet(ctxt);
49960:         desret_xmlNodeSetPtr(ret_val);
49961:         call_tests++;
49962:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
49963:         xmlResetLastError();
49964:         if (mem_base != xmlMemBlocks()) {
49965:             printf("Leak of %d blocks found in xmlXPathPopNodeSet",
49966: 	           xmlMemBlocks() - mem_base);
49967: 	    test_ret++;
49968:             printf(" %d", n_ctxt);
49969:             printf("\n");
49970:         }
49971:     }
49972:     function_tests++;
49973: #endif
49974: 
49975:     return(test_ret);
49976: }
49977: 
49978: 
49979: static int
49980: test_xmlXPathPopNumber(void) {
49981:     int test_ret = 0;
49982: 
49983: #if defined(LIBXML_XPATH_ENABLED)
49984:     int mem_base;
49985:     double ret_val;
49986:     xmlXPathParserContextPtr ctxt; /* an XPath parser context */
49987:     int n_ctxt;
49988: 
49989:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
49990:         mem_base = xmlMemBlocks();
49991:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
49992: 
49993:         ret_val = xmlXPathPopNumber(ctxt);
49994:         desret_double(ret_val);
49995:         call_tests++;
49996:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
49997:         xmlResetLastError();
49998:         if (mem_base != xmlMemBlocks()) {
49999:             printf("Leak of %d blocks found in xmlXPathPopNumber",
50000: 	           xmlMemBlocks() - mem_base);
50001: 	    test_ret++;
50002:             printf(" %d", n_ctxt);
50003:             printf("\n");
50004:         }
50005:     }
50006:     function_tests++;
50007: #endif
50008: 
50009:     return(test_ret);
50010: }
50011: 
50012: 
50013: static int
50014: test_xmlXPathPopString(void) {
50015:     int test_ret = 0;
50016: 
50017: #if defined(LIBXML_XPATH_ENABLED)
50018:     int mem_base;
50019:     xmlChar * ret_val;
50020:     xmlXPathParserContextPtr ctxt; /* an XPath parser context */
50021:     int n_ctxt;
50022: 
50023:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
50024:         mem_base = xmlMemBlocks();
50025:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
50026: 
50027:         ret_val = xmlXPathPopString(ctxt);
50028:         desret_xmlChar_ptr(ret_val);
50029:         call_tests++;
50030:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
50031:         xmlResetLastError();
50032:         if (mem_base != xmlMemBlocks()) {
50033:             printf("Leak of %d blocks found in xmlXPathPopString",
50034: 	           xmlMemBlocks() - mem_base);
50035: 	    test_ret++;
50036:             printf(" %d", n_ctxt);
50037:             printf("\n");
50038:         }
50039:     }
50040:     function_tests++;
50041: #endif
50042: 
50043:     return(test_ret);
50044: }
50045: 
50046: 
50047: static int
50048: test_xmlXPathPositionFunction(void) {
50049:     int test_ret = 0;
50050: 
50051: #if defined(LIBXML_XPATH_ENABLED)
50052:     int mem_base;
50053:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
50054:     int n_ctxt;
50055:     int nargs; /* the number of arguments */
50056:     int n_nargs;
50057: 
50058:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
50059:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
50060:         mem_base = xmlMemBlocks();
50061:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
50062:         nargs = gen_int(n_nargs, 1);
50063: 
50064:         xmlXPathPositionFunction(ctxt, nargs);
50065:         call_tests++;
50066:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
50067:         des_int(n_nargs, nargs, 1);
50068:         xmlResetLastError();
50069:         if (mem_base != xmlMemBlocks()) {
50070:             printf("Leak of %d blocks found in xmlXPathPositionFunction",
50071: 	           xmlMemBlocks() - mem_base);
50072: 	    test_ret++;
50073:             printf(" %d", n_ctxt);
50074:             printf(" %d", n_nargs);
50075:             printf("\n");
50076:         }
50077:     }
50078:     }
50079:     function_tests++;
50080: #endif
50081: 
50082:     return(test_ret);
50083: }
50084: 
50085: 
50086: static int
50087: test_xmlXPathRegisterAllFunctions(void) {
50088:     int test_ret = 0;
50089: 
50090: #if defined(LIBXML_XPATH_ENABLED)
50091:     int mem_base;
50092:     xmlXPathContextPtr ctxt; /* the XPath context */
50093:     int n_ctxt;
50094: 
50095:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathContextPtr;n_ctxt++) {
50096:         mem_base = xmlMemBlocks();
50097:         ctxt = gen_xmlXPathContextPtr(n_ctxt, 0);
50098: 
50099:         xmlXPathRegisterAllFunctions(ctxt);
50100:         call_tests++;
50101:         des_xmlXPathContextPtr(n_ctxt, ctxt, 0);
50102:         xmlResetLastError();
50103:         if (mem_base != xmlMemBlocks()) {
50104:             printf("Leak of %d blocks found in xmlXPathRegisterAllFunctions",
50105: 	           xmlMemBlocks() - mem_base);
50106: 	    test_ret++;
50107:             printf(" %d", n_ctxt);
50108:             printf("\n");
50109:         }
50110:     }
50111:     function_tests++;
50112: #endif
50113: 
50114:     return(test_ret);
50115: }
50116: 
50117: 
50118: static int
50119: test_xmlXPathRegisterFunc(void) {
50120:     int test_ret = 0;
50121: 
50122: 
50123:     /* missing type support */
50124:     return(test_ret);
50125: }
50126: 
50127: 
50128: static int
50129: test_xmlXPathRegisterFuncLookup(void) {
50130:     int test_ret = 0;
50131: 
50132: 
50133:     /* missing type support */
50134:     return(test_ret);
50135: }
50136: 
50137: 
50138: static int
50139: test_xmlXPathRegisterFuncNS(void) {
50140:     int test_ret = 0;
50141: 
50142: 
50143:     /* missing type support */
50144:     return(test_ret);
50145: }
50146: 
50147: 
50148: static int
50149: test_xmlXPathRegisterNs(void) {
50150:     int test_ret = 0;
50151: 
50152: #if defined(LIBXML_XPATH_ENABLED)
50153:     int mem_base;
50154:     int ret_val;
50155:     xmlXPathContextPtr ctxt; /* the XPath context */
50156:     int n_ctxt;
50157:     xmlChar * prefix; /* the namespace prefix cannot be NULL or empty string */
50158:     int n_prefix;
50159:     xmlChar * ns_uri; /* the namespace name */
50160:     int n_ns_uri;
50161: 
50162:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathContextPtr;n_ctxt++) {
50163:     for (n_prefix = 0;n_prefix < gen_nb_const_xmlChar_ptr;n_prefix++) {
50164:     for (n_ns_uri = 0;n_ns_uri < gen_nb_const_xmlChar_ptr;n_ns_uri++) {
50165:         mem_base = xmlMemBlocks();
50166:         ctxt = gen_xmlXPathContextPtr(n_ctxt, 0);
50167:         prefix = gen_const_xmlChar_ptr(n_prefix, 1);
50168:         ns_uri = gen_const_xmlChar_ptr(n_ns_uri, 2);
50169: 
50170:         ret_val = xmlXPathRegisterNs(ctxt, (const xmlChar *)prefix, (const xmlChar *)ns_uri);
50171:         desret_int(ret_val);
50172:         call_tests++;
50173:         des_xmlXPathContextPtr(n_ctxt, ctxt, 0);
50174:         des_const_xmlChar_ptr(n_prefix, (const xmlChar *)prefix, 1);
50175:         des_const_xmlChar_ptr(n_ns_uri, (const xmlChar *)ns_uri, 2);
50176:         xmlResetLastError();
50177:         if (mem_base != xmlMemBlocks()) {
50178:             printf("Leak of %d blocks found in xmlXPathRegisterNs",
50179: 	           xmlMemBlocks() - mem_base);
50180: 	    test_ret++;
50181:             printf(" %d", n_ctxt);
50182:             printf(" %d", n_prefix);
50183:             printf(" %d", n_ns_uri);
50184:             printf("\n");
50185:         }
50186:     }
50187:     }
50188:     }
50189:     function_tests++;
50190: #endif
50191: 
50192:     return(test_ret);
50193: }
50194: 
50195: 
50196: static int
50197: test_xmlXPathRegisterVariable(void) {
50198:     int test_ret = 0;
50199: 
50200: #if defined(LIBXML_XPATH_ENABLED)
50201:     int mem_base;
50202:     int ret_val;
50203:     xmlXPathContextPtr ctxt; /* the XPath context */
50204:     int n_ctxt;
50205:     xmlChar * name; /* the variable name */
50206:     int n_name;
50207:     xmlXPathObjectPtr value; /* the variable value or NULL */
50208:     int n_value;
50209: 
50210:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathContextPtr;n_ctxt++) {
50211:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
50212:     for (n_value = 0;n_value < gen_nb_xmlXPathObjectPtr;n_value++) {
50213:         mem_base = xmlMemBlocks();
50214:         ctxt = gen_xmlXPathContextPtr(n_ctxt, 0);
50215:         name = gen_const_xmlChar_ptr(n_name, 1);
50216:         value = gen_xmlXPathObjectPtr(n_value, 2);
50217: 
50218:         ret_val = xmlXPathRegisterVariable(ctxt, (const xmlChar *)name, value);
50219:         desret_int(ret_val);
50220:         call_tests++;
50221:         des_xmlXPathContextPtr(n_ctxt, ctxt, 0);
50222:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
50223:         des_xmlXPathObjectPtr(n_value, value, 2);
50224:         xmlResetLastError();
50225:         if (mem_base != xmlMemBlocks()) {
50226:             printf("Leak of %d blocks found in xmlXPathRegisterVariable",
50227: 	           xmlMemBlocks() - mem_base);
50228: 	    test_ret++;
50229:             printf(" %d", n_ctxt);
50230:             printf(" %d", n_name);
50231:             printf(" %d", n_value);
50232:             printf("\n");
50233:         }
50234:     }
50235:     }
50236:     }
50237:     function_tests++;
50238: #endif
50239: 
50240:     return(test_ret);
50241: }
50242: 
50243: 
50244: static int
50245: test_xmlXPathRegisterVariableLookup(void) {
50246:     int test_ret = 0;
50247: 
50248: 
50249:     /* missing type support */
50250:     return(test_ret);
50251: }
50252: 
50253: 
50254: static int
50255: test_xmlXPathRegisterVariableNS(void) {
50256:     int test_ret = 0;
50257: 
50258: #if defined(LIBXML_XPATH_ENABLED)
50259:     int mem_base;
50260:     int ret_val;
50261:     xmlXPathContextPtr ctxt; /* the XPath context */
50262:     int n_ctxt;
50263:     xmlChar * name; /* the variable name */
50264:     int n_name;
50265:     xmlChar * ns_uri; /* the variable namespace URI */
50266:     int n_ns_uri;
50267:     xmlXPathObjectPtr value; /* the variable value or NULL */
50268:     int n_value;
50269: 
50270:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathContextPtr;n_ctxt++) {
50271:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
50272:     for (n_ns_uri = 0;n_ns_uri < gen_nb_const_xmlChar_ptr;n_ns_uri++) {
50273:     for (n_value = 0;n_value < gen_nb_xmlXPathObjectPtr;n_value++) {
50274:         mem_base = xmlMemBlocks();
50275:         ctxt = gen_xmlXPathContextPtr(n_ctxt, 0);
50276:         name = gen_const_xmlChar_ptr(n_name, 1);
50277:         ns_uri = gen_const_xmlChar_ptr(n_ns_uri, 2);
50278:         value = gen_xmlXPathObjectPtr(n_value, 3);
50279: 
50280:         ret_val = xmlXPathRegisterVariableNS(ctxt, (const xmlChar *)name, (const xmlChar *)ns_uri, value);
50281:         desret_int(ret_val);
50282:         call_tests++;
50283:         des_xmlXPathContextPtr(n_ctxt, ctxt, 0);
50284:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
50285:         des_const_xmlChar_ptr(n_ns_uri, (const xmlChar *)ns_uri, 2);
50286:         des_xmlXPathObjectPtr(n_value, value, 3);
50287:         xmlResetLastError();
50288:         if (mem_base != xmlMemBlocks()) {
50289:             printf("Leak of %d blocks found in xmlXPathRegisterVariableNS",
50290: 	           xmlMemBlocks() - mem_base);
50291: 	    test_ret++;
50292:             printf(" %d", n_ctxt);
50293:             printf(" %d", n_name);
50294:             printf(" %d", n_ns_uri);
50295:             printf(" %d", n_value);
50296:             printf("\n");
50297:         }
50298:     }
50299:     }
50300:     }
50301:     }
50302:     function_tests++;
50303: #endif
50304: 
50305:     return(test_ret);
50306: }
50307: 
50308: 
50309: static int
50310: test_xmlXPathRegisteredFuncsCleanup(void) {
50311:     int test_ret = 0;
50312: 
50313: #if defined(LIBXML_XPATH_ENABLED)
50314:     int mem_base;
50315:     xmlXPathContextPtr ctxt; /* the XPath context */
50316:     int n_ctxt;
50317: 
50318:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathContextPtr;n_ctxt++) {
50319:         mem_base = xmlMemBlocks();
50320:         ctxt = gen_xmlXPathContextPtr(n_ctxt, 0);
50321: 
50322:         xmlXPathRegisteredFuncsCleanup(ctxt);
50323:         call_tests++;
50324:         des_xmlXPathContextPtr(n_ctxt, ctxt, 0);
50325:         xmlResetLastError();
50326:         if (mem_base != xmlMemBlocks()) {
50327:             printf("Leak of %d blocks found in xmlXPathRegisteredFuncsCleanup",
50328: 	           xmlMemBlocks() - mem_base);
50329: 	    test_ret++;
50330:             printf(" %d", n_ctxt);
50331:             printf("\n");
50332:         }
50333:     }
50334:     function_tests++;
50335: #endif
50336: 
50337:     return(test_ret);
50338: }
50339: 
50340: 
50341: static int
50342: test_xmlXPathRegisteredNsCleanup(void) {
50343:     int test_ret = 0;
50344: 
50345: #if defined(LIBXML_XPATH_ENABLED)
50346:     int mem_base;
50347:     xmlXPathContextPtr ctxt; /* the XPath context */
50348:     int n_ctxt;
50349: 
50350:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathContextPtr;n_ctxt++) {
50351:         mem_base = xmlMemBlocks();
50352:         ctxt = gen_xmlXPathContextPtr(n_ctxt, 0);
50353: 
50354:         xmlXPathRegisteredNsCleanup(ctxt);
50355:         call_tests++;
50356:         des_xmlXPathContextPtr(n_ctxt, ctxt, 0);
50357:         xmlResetLastError();
50358:         if (mem_base != xmlMemBlocks()) {
50359:             printf("Leak of %d blocks found in xmlXPathRegisteredNsCleanup",
50360: 	           xmlMemBlocks() - mem_base);
50361: 	    test_ret++;
50362:             printf(" %d", n_ctxt);
50363:             printf("\n");
50364:         }
50365:     }
50366:     function_tests++;
50367: #endif
50368: 
50369:     return(test_ret);
50370: }
50371: 
50372: 
50373: static int
50374: test_xmlXPathRegisteredVariablesCleanup(void) {
50375:     int test_ret = 0;
50376: 
50377: #if defined(LIBXML_XPATH_ENABLED)
50378:     int mem_base;
50379:     xmlXPathContextPtr ctxt; /* the XPath context */
50380:     int n_ctxt;
50381: 
50382:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathContextPtr;n_ctxt++) {
50383:         mem_base = xmlMemBlocks();
50384:         ctxt = gen_xmlXPathContextPtr(n_ctxt, 0);
50385: 
50386:         xmlXPathRegisteredVariablesCleanup(ctxt);
50387:         call_tests++;
50388:         des_xmlXPathContextPtr(n_ctxt, ctxt, 0);
50389:         xmlResetLastError();
50390:         if (mem_base != xmlMemBlocks()) {
50391:             printf("Leak of %d blocks found in xmlXPathRegisteredVariablesCleanup",
50392: 	           xmlMemBlocks() - mem_base);
50393: 	    test_ret++;
50394:             printf(" %d", n_ctxt);
50395:             printf("\n");
50396:         }
50397:     }
50398:     function_tests++;
50399: #endif
50400: 
50401:     return(test_ret);
50402: }
50403: 
50404: 
50405: static int
50406: test_xmlXPathRoot(void) {
50407:     int test_ret = 0;
50408: 
50409: #if defined(LIBXML_XPATH_ENABLED)
50410:     int mem_base;
50411:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
50412:     int n_ctxt;
50413: 
50414:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
50415:         mem_base = xmlMemBlocks();
50416:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
50417: 
50418:         xmlXPathRoot(ctxt);
50419:         call_tests++;
50420:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
50421:         xmlResetLastError();
50422:         if (mem_base != xmlMemBlocks()) {
50423:             printf("Leak of %d blocks found in xmlXPathRoot",
50424: 	           xmlMemBlocks() - mem_base);
50425: 	    test_ret++;
50426:             printf(" %d", n_ctxt);
50427:             printf("\n");
50428:         }
50429:     }
50430:     function_tests++;
50431: #endif
50432: 
50433:     return(test_ret);
50434: }
50435: 
50436: 
50437: static int
50438: test_xmlXPathRoundFunction(void) {
50439:     int test_ret = 0;
50440: 
50441: #if defined(LIBXML_XPATH_ENABLED)
50442:     int mem_base;
50443:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
50444:     int n_ctxt;
50445:     int nargs; /* the number of arguments */
50446:     int n_nargs;
50447: 
50448:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
50449:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
50450:         mem_base = xmlMemBlocks();
50451:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
50452:         nargs = gen_int(n_nargs, 1);
50453: 
50454:         xmlXPathRoundFunction(ctxt, nargs);
50455:         call_tests++;
50456:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
50457:         des_int(n_nargs, nargs, 1);
50458:         xmlResetLastError();
50459:         if (mem_base != xmlMemBlocks()) {
50460:             printf("Leak of %d blocks found in xmlXPathRoundFunction",
50461: 	           xmlMemBlocks() - mem_base);
50462: 	    test_ret++;
50463:             printf(" %d", n_ctxt);
50464:             printf(" %d", n_nargs);
50465:             printf("\n");
50466:         }
50467:     }
50468:     }
50469:     function_tests++;
50470: #endif
50471: 
50472:     return(test_ret);
50473: }
50474: 
50475: 
50476: static int
50477: test_xmlXPathStartsWithFunction(void) {
50478:     int test_ret = 0;
50479: 
50480: #if defined(LIBXML_XPATH_ENABLED)
50481:     int mem_base;
50482:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
50483:     int n_ctxt;
50484:     int nargs; /* the number of arguments */
50485:     int n_nargs;
50486: 
50487:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
50488:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
50489:         mem_base = xmlMemBlocks();
50490:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
50491:         nargs = gen_int(n_nargs, 1);
50492: 
50493:         xmlXPathStartsWithFunction(ctxt, nargs);
50494:         call_tests++;
50495:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
50496:         des_int(n_nargs, nargs, 1);
50497:         xmlResetLastError();
50498:         if (mem_base != xmlMemBlocks()) {
50499:             printf("Leak of %d blocks found in xmlXPathStartsWithFunction",
50500: 	           xmlMemBlocks() - mem_base);
50501: 	    test_ret++;
50502:             printf(" %d", n_ctxt);
50503:             printf(" %d", n_nargs);
50504:             printf("\n");
50505:         }
50506:     }
50507:     }
50508:     function_tests++;
50509: #endif
50510: 
50511:     return(test_ret);
50512: }
50513: 
50514: 
50515: static int
50516: test_xmlXPathStringEvalNumber(void) {
50517:     int test_ret = 0;
50518: 
50519: #if defined(LIBXML_XPATH_ENABLED)
50520:     int mem_base;
50521:     double ret_val;
50522:     xmlChar * str; /* A string to scan */
50523:     int n_str;
50524: 
50525:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
50526:         mem_base = xmlMemBlocks();
50527:         str = gen_const_xmlChar_ptr(n_str, 0);
50528: 
50529:         ret_val = xmlXPathStringEvalNumber((const xmlChar *)str);
50530:         desret_double(ret_val);
50531:         call_tests++;
50532:         des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 0);
50533:         xmlResetLastError();
50534:         if (mem_base != xmlMemBlocks()) {
50535:             printf("Leak of %d blocks found in xmlXPathStringEvalNumber",
50536: 	           xmlMemBlocks() - mem_base);
50537: 	    test_ret++;
50538:             printf(" %d", n_str);
50539:             printf("\n");
50540:         }
50541:     }
50542:     function_tests++;
50543: #endif
50544: 
50545:     return(test_ret);
50546: }
50547: 
50548: 
50549: static int
50550: test_xmlXPathStringFunction(void) {
50551:     int test_ret = 0;
50552: 
50553: #if defined(LIBXML_XPATH_ENABLED)
50554:     int mem_base;
50555:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
50556:     int n_ctxt;
50557:     int nargs; /* the number of arguments */
50558:     int n_nargs;
50559: 
50560:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
50561:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
50562:         mem_base = xmlMemBlocks();
50563:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
50564:         nargs = gen_int(n_nargs, 1);
50565: 
50566:         xmlXPathStringFunction(ctxt, nargs);
50567:         call_tests++;
50568:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
50569:         des_int(n_nargs, nargs, 1);
50570:         xmlResetLastError();
50571:         if (mem_base != xmlMemBlocks()) {
50572:             printf("Leak of %d blocks found in xmlXPathStringFunction",
50573: 	           xmlMemBlocks() - mem_base);
50574: 	    test_ret++;
50575:             printf(" %d", n_ctxt);
50576:             printf(" %d", n_nargs);
50577:             printf("\n");
50578:         }
50579:     }
50580:     }
50581:     function_tests++;
50582: #endif
50583: 
50584:     return(test_ret);
50585: }
50586: 
50587: 
50588: static int
50589: test_xmlXPathStringLengthFunction(void) {
50590:     int test_ret = 0;
50591: 
50592: #if defined(LIBXML_XPATH_ENABLED)
50593:     int mem_base;
50594:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
50595:     int n_ctxt;
50596:     int nargs; /* the number of arguments */
50597:     int n_nargs;
50598: 
50599:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
50600:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
50601:         mem_base = xmlMemBlocks();
50602:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
50603:         nargs = gen_int(n_nargs, 1);
50604: 
50605:         xmlXPathStringLengthFunction(ctxt, nargs);
50606:         call_tests++;
50607:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
50608:         des_int(n_nargs, nargs, 1);
50609:         xmlResetLastError();
50610:         if (mem_base != xmlMemBlocks()) {
50611:             printf("Leak of %d blocks found in xmlXPathStringLengthFunction",
50612: 	           xmlMemBlocks() - mem_base);
50613: 	    test_ret++;
50614:             printf(" %d", n_ctxt);
50615:             printf(" %d", n_nargs);
50616:             printf("\n");
50617:         }
50618:     }
50619:     }
50620:     function_tests++;
50621: #endif
50622: 
50623:     return(test_ret);
50624: }
50625: 
50626: 
50627: static int
50628: test_xmlXPathSubValues(void) {
50629:     int test_ret = 0;
50630: 
50631: #if defined(LIBXML_XPATH_ENABLED)
50632:     int mem_base;
50633:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
50634:     int n_ctxt;
50635: 
50636:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
50637:         mem_base = xmlMemBlocks();
50638:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
50639: 
50640:         xmlXPathSubValues(ctxt);
50641:         call_tests++;
50642:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
50643:         xmlResetLastError();
50644:         if (mem_base != xmlMemBlocks()) {
50645:             printf("Leak of %d blocks found in xmlXPathSubValues",
50646: 	           xmlMemBlocks() - mem_base);
50647: 	    test_ret++;
50648:             printf(" %d", n_ctxt);
50649:             printf("\n");
50650:         }
50651:     }
50652:     function_tests++;
50653: #endif
50654: 
50655:     return(test_ret);
50656: }
50657: 
50658: 
50659: static int
50660: test_xmlXPathSubstringAfterFunction(void) {
50661:     int test_ret = 0;
50662: 
50663: #if defined(LIBXML_XPATH_ENABLED)
50664:     int mem_base;
50665:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
50666:     int n_ctxt;
50667:     int nargs; /* the number of arguments */
50668:     int n_nargs;
50669: 
50670:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
50671:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
50672:         mem_base = xmlMemBlocks();
50673:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
50674:         nargs = gen_int(n_nargs, 1);
50675: 
50676:         xmlXPathSubstringAfterFunction(ctxt, nargs);
50677:         call_tests++;
50678:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
50679:         des_int(n_nargs, nargs, 1);
50680:         xmlResetLastError();
50681:         if (mem_base != xmlMemBlocks()) {
50682:             printf("Leak of %d blocks found in xmlXPathSubstringAfterFunction",
50683: 	           xmlMemBlocks() - mem_base);
50684: 	    test_ret++;
50685:             printf(" %d", n_ctxt);
50686:             printf(" %d", n_nargs);
50687:             printf("\n");
50688:         }
50689:     }
50690:     }
50691:     function_tests++;
50692: #endif
50693: 
50694:     return(test_ret);
50695: }
50696: 
50697: 
50698: static int
50699: test_xmlXPathSubstringBeforeFunction(void) {
50700:     int test_ret = 0;
50701: 
50702: #if defined(LIBXML_XPATH_ENABLED)
50703:     int mem_base;
50704:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
50705:     int n_ctxt;
50706:     int nargs; /* the number of arguments */
50707:     int n_nargs;
50708: 
50709:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
50710:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
50711:         mem_base = xmlMemBlocks();
50712:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
50713:         nargs = gen_int(n_nargs, 1);
50714: 
50715:         xmlXPathSubstringBeforeFunction(ctxt, nargs);
50716:         call_tests++;
50717:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
50718:         des_int(n_nargs, nargs, 1);
50719:         xmlResetLastError();
50720:         if (mem_base != xmlMemBlocks()) {
50721:             printf("Leak of %d blocks found in xmlXPathSubstringBeforeFunction",
50722: 	           xmlMemBlocks() - mem_base);
50723: 	    test_ret++;
50724:             printf(" %d", n_ctxt);
50725:             printf(" %d", n_nargs);
50726:             printf("\n");
50727:         }
50728:     }
50729:     }
50730:     function_tests++;
50731: #endif
50732: 
50733:     return(test_ret);
50734: }
50735: 
50736: 
50737: static int
50738: test_xmlXPathSubstringFunction(void) {
50739:     int test_ret = 0;
50740: 
50741: #if defined(LIBXML_XPATH_ENABLED)
50742:     int mem_base;
50743:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
50744:     int n_ctxt;
50745:     int nargs; /* the number of arguments */
50746:     int n_nargs;
50747: 
50748:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
50749:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
50750:         mem_base = xmlMemBlocks();
50751:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
50752:         nargs = gen_int(n_nargs, 1);
50753: 
50754:         xmlXPathSubstringFunction(ctxt, nargs);
50755:         call_tests++;
50756:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
50757:         des_int(n_nargs, nargs, 1);
50758:         xmlResetLastError();
50759:         if (mem_base != xmlMemBlocks()) {
50760:             printf("Leak of %d blocks found in xmlXPathSubstringFunction",
50761: 	           xmlMemBlocks() - mem_base);
50762: 	    test_ret++;
50763:             printf(" %d", n_ctxt);
50764:             printf(" %d", n_nargs);
50765:             printf("\n");
50766:         }
50767:     }
50768:     }
50769:     function_tests++;
50770: #endif
50771: 
50772:     return(test_ret);
50773: }
50774: 
50775: 
50776: static int
50777: test_xmlXPathSumFunction(void) {
50778:     int test_ret = 0;
50779: 
50780: #if defined(LIBXML_XPATH_ENABLED)
50781:     int mem_base;
50782:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
50783:     int n_ctxt;
50784:     int nargs; /* the number of arguments */
50785:     int n_nargs;
50786: 
50787:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
50788:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
50789:         mem_base = xmlMemBlocks();
50790:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
50791:         nargs = gen_int(n_nargs, 1);
50792: 
50793:         xmlXPathSumFunction(ctxt, nargs);
50794:         call_tests++;
50795:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
50796:         des_int(n_nargs, nargs, 1);
50797:         xmlResetLastError();
50798:         if (mem_base != xmlMemBlocks()) {
50799:             printf("Leak of %d blocks found in xmlXPathSumFunction",
50800: 	           xmlMemBlocks() - mem_base);
50801: 	    test_ret++;
50802:             printf(" %d", n_ctxt);
50803:             printf(" %d", n_nargs);
50804:             printf("\n");
50805:         }
50806:     }
50807:     }
50808:     function_tests++;
50809: #endif
50810: 
50811:     return(test_ret);
50812: }
50813: 
50814: 
50815: static int
50816: test_xmlXPathTrailing(void) {
50817:     int test_ret = 0;
50818: 
50819: #if defined(LIBXML_XPATH_ENABLED)
50820:     int mem_base;
50821:     xmlNodeSetPtr ret_val;
50822:     xmlNodeSetPtr nodes1; /* a node-set */
50823:     int n_nodes1;
50824:     xmlNodeSetPtr nodes2; /* a node-set */
50825:     int n_nodes2;
50826: 
50827:     for (n_nodes1 = 0;n_nodes1 < gen_nb_xmlNodeSetPtr;n_nodes1++) {
50828:     for (n_nodes2 = 0;n_nodes2 < gen_nb_xmlNodeSetPtr;n_nodes2++) {
50829:         mem_base = xmlMemBlocks();
50830:         nodes1 = gen_xmlNodeSetPtr(n_nodes1, 0);
50831:         nodes2 = gen_xmlNodeSetPtr(n_nodes2, 1);
50832: 
50833:         ret_val = xmlXPathTrailing(nodes1, nodes2);
50834:         desret_xmlNodeSetPtr(ret_val);
50835:         call_tests++;
50836:         des_xmlNodeSetPtr(n_nodes1, nodes1, 0);
50837:         des_xmlNodeSetPtr(n_nodes2, nodes2, 1);
50838:         xmlResetLastError();
50839:         if (mem_base != xmlMemBlocks()) {
50840:             printf("Leak of %d blocks found in xmlXPathTrailing",
50841: 	           xmlMemBlocks() - mem_base);
50842: 	    test_ret++;
50843:             printf(" %d", n_nodes1);
50844:             printf(" %d", n_nodes2);
50845:             printf("\n");
50846:         }
50847:     }
50848:     }
50849:     function_tests++;
50850: #endif
50851: 
50852:     return(test_ret);
50853: }
50854: 
50855: 
50856: static int
50857: test_xmlXPathTrailingSorted(void) {
50858:     int test_ret = 0;
50859: 
50860: #if defined(LIBXML_XPATH_ENABLED)
50861:     int mem_base;
50862:     xmlNodeSetPtr ret_val;
50863:     xmlNodeSetPtr nodes1; /* a node-set, sorted by document order */
50864:     int n_nodes1;
50865:     xmlNodeSetPtr nodes2; /* a node-set, sorted by document order */
50866:     int n_nodes2;
50867: 
50868:     for (n_nodes1 = 0;n_nodes1 < gen_nb_xmlNodeSetPtr;n_nodes1++) {
50869:     for (n_nodes2 = 0;n_nodes2 < gen_nb_xmlNodeSetPtr;n_nodes2++) {
50870:         mem_base = xmlMemBlocks();
50871:         nodes1 = gen_xmlNodeSetPtr(n_nodes1, 0);
50872:         nodes2 = gen_xmlNodeSetPtr(n_nodes2, 1);
50873: 
50874:         ret_val = xmlXPathTrailingSorted(nodes1, nodes2);
50875:         desret_xmlNodeSetPtr(ret_val);
50876:         call_tests++;
50877:         des_xmlNodeSetPtr(n_nodes1, nodes1, 0);
50878:         des_xmlNodeSetPtr(n_nodes2, nodes2, 1);
50879:         xmlResetLastError();
50880:         if (mem_base != xmlMemBlocks()) {
50881:             printf("Leak of %d blocks found in xmlXPathTrailingSorted",
50882: 	           xmlMemBlocks() - mem_base);
50883: 	    test_ret++;
50884:             printf(" %d", n_nodes1);
50885:             printf(" %d", n_nodes2);
50886:             printf("\n");
50887:         }
50888:     }
50889:     }
50890:     function_tests++;
50891: #endif
50892: 
50893:     return(test_ret);
50894: }
50895: 
50896: 
50897: static int
50898: test_xmlXPathTranslateFunction(void) {
50899:     int test_ret = 0;
50900: 
50901: #if defined(LIBXML_XPATH_ENABLED)
50902:     int mem_base;
50903:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
50904:     int n_ctxt;
50905:     int nargs; /* the number of arguments */
50906:     int n_nargs;
50907: 
50908:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
50909:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
50910:         mem_base = xmlMemBlocks();
50911:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
50912:         nargs = gen_int(n_nargs, 1);
50913: 
50914:         xmlXPathTranslateFunction(ctxt, nargs);
50915:         call_tests++;
50916:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
50917:         des_int(n_nargs, nargs, 1);
50918:         xmlResetLastError();
50919:         if (mem_base != xmlMemBlocks()) {
50920:             printf("Leak of %d blocks found in xmlXPathTranslateFunction",
50921: 	           xmlMemBlocks() - mem_base);
50922: 	    test_ret++;
50923:             printf(" %d", n_ctxt);
50924:             printf(" %d", n_nargs);
50925:             printf("\n");
50926:         }
50927:     }
50928:     }
50929:     function_tests++;
50930: #endif
50931: 
50932:     return(test_ret);
50933: }
50934: 
50935: 
50936: static int
50937: test_xmlXPathTrueFunction(void) {
50938:     int test_ret = 0;
50939: 
50940: #if defined(LIBXML_XPATH_ENABLED)
50941:     int mem_base;
50942:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
50943:     int n_ctxt;
50944:     int nargs; /* the number of arguments */
50945:     int n_nargs;
50946: 
50947:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
50948:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
50949:         mem_base = xmlMemBlocks();
50950:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
50951:         nargs = gen_int(n_nargs, 1);
50952: 
50953:         xmlXPathTrueFunction(ctxt, nargs);
50954:         call_tests++;
50955:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
50956:         des_int(n_nargs, nargs, 1);
50957:         xmlResetLastError();
50958:         if (mem_base != xmlMemBlocks()) {
50959:             printf("Leak of %d blocks found in xmlXPathTrueFunction",
50960: 	           xmlMemBlocks() - mem_base);
50961: 	    test_ret++;
50962:             printf(" %d", n_ctxt);
50963:             printf(" %d", n_nargs);
50964:             printf("\n");
50965:         }
50966:     }
50967:     }
50968:     function_tests++;
50969: #endif
50970: 
50971:     return(test_ret);
50972: }
50973: 
50974: 
50975: static int
50976: test_xmlXPathValueFlipSign(void) {
50977:     int test_ret = 0;
50978: 
50979: #if defined(LIBXML_XPATH_ENABLED)
50980:     int mem_base;
50981:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
50982:     int n_ctxt;
50983: 
50984:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
50985:         mem_base = xmlMemBlocks();
50986:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
50987: 
50988:         xmlXPathValueFlipSign(ctxt);
50989:         call_tests++;
50990:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
50991:         xmlResetLastError();
50992:         if (mem_base != xmlMemBlocks()) {
50993:             printf("Leak of %d blocks found in xmlXPathValueFlipSign",
50994: 	           xmlMemBlocks() - mem_base);
50995: 	    test_ret++;
50996:             printf(" %d", n_ctxt);
50997:             printf("\n");
50998:         }
50999:     }
51000:     function_tests++;
51001: #endif
51002: 
51003:     return(test_ret);
51004: }
51005: 
51006: 
51007: static int
51008: test_xmlXPathVariableLookup(void) {
51009:     int test_ret = 0;
51010: 
51011: #if defined(LIBXML_XPATH_ENABLED)
51012:     int mem_base;
51013:     xmlXPathObjectPtr ret_val;
51014:     xmlXPathContextPtr ctxt; /* the XPath context */
51015:     int n_ctxt;
51016:     xmlChar * name; /* the variable name */
51017:     int n_name;
51018: 
51019:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathContextPtr;n_ctxt++) {
51020:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
51021:         mem_base = xmlMemBlocks();
51022:         ctxt = gen_xmlXPathContextPtr(n_ctxt, 0);
51023:         name = gen_const_xmlChar_ptr(n_name, 1);
51024: 
51025:         ret_val = xmlXPathVariableLookup(ctxt, (const xmlChar *)name);
51026:         desret_xmlXPathObjectPtr(ret_val);
51027:         call_tests++;
51028:         des_xmlXPathContextPtr(n_ctxt, ctxt, 0);
51029:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
51030:         xmlResetLastError();
51031:         if (mem_base != xmlMemBlocks()) {
51032:             printf("Leak of %d blocks found in xmlXPathVariableLookup",
51033: 	           xmlMemBlocks() - mem_base);
51034: 	    test_ret++;
51035:             printf(" %d", n_ctxt);
51036:             printf(" %d", n_name);
51037:             printf("\n");
51038:         }
51039:     }
51040:     }
51041:     function_tests++;
51042: #endif
51043: 
51044:     return(test_ret);
51045: }
51046: 
51047: 
51048: static int
51049: test_xmlXPathVariableLookupNS(void) {
51050:     int test_ret = 0;
51051: 
51052: #if defined(LIBXML_XPATH_ENABLED)
51053:     int mem_base;
51054:     xmlXPathObjectPtr ret_val;
51055:     xmlXPathContextPtr ctxt; /* the XPath context */
51056:     int n_ctxt;
51057:     xmlChar * name; /* the variable name */
51058:     int n_name;
51059:     xmlChar * ns_uri; /* the variable namespace URI */
51060:     int n_ns_uri;
51061: 
51062:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathContextPtr;n_ctxt++) {
51063:     for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
51064:     for (n_ns_uri = 0;n_ns_uri < gen_nb_const_xmlChar_ptr;n_ns_uri++) {
51065:         mem_base = xmlMemBlocks();
51066:         ctxt = gen_xmlXPathContextPtr(n_ctxt, 0);
51067:         name = gen_const_xmlChar_ptr(n_name, 1);
51068:         ns_uri = gen_const_xmlChar_ptr(n_ns_uri, 2);
51069: 
51070:         ret_val = xmlXPathVariableLookupNS(ctxt, (const xmlChar *)name, (const xmlChar *)ns_uri);
51071:         desret_xmlXPathObjectPtr(ret_val);
51072:         call_tests++;
51073:         des_xmlXPathContextPtr(n_ctxt, ctxt, 0);
51074:         des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
51075:         des_const_xmlChar_ptr(n_ns_uri, (const xmlChar *)ns_uri, 2);
51076:         xmlResetLastError();
51077:         if (mem_base != xmlMemBlocks()) {
51078:             printf("Leak of %d blocks found in xmlXPathVariableLookupNS",
51079: 	           xmlMemBlocks() - mem_base);
51080: 	    test_ret++;
51081:             printf(" %d", n_ctxt);
51082:             printf(" %d", n_name);
51083:             printf(" %d", n_ns_uri);
51084:             printf("\n");
51085:         }
51086:     }
51087:     }
51088:     }
51089:     function_tests++;
51090: #endif
51091: 
51092:     return(test_ret);
51093: }
51094: 
51095: 
51096: static int
51097: test_xmlXPathWrapCString(void) {
51098:     int test_ret = 0;
51099: 
51100: #if defined(LIBXML_XPATH_ENABLED)
51101:     int mem_base;
51102:     xmlXPathObjectPtr ret_val;
51103:     char * val; /* the char * value */
51104:     int n_val;
51105: 
51106:     for (n_val = 0;n_val < gen_nb_char_ptr;n_val++) {
51107:         mem_base = xmlMemBlocks();
51108:         val = gen_char_ptr(n_val, 0);
51109: 
51110:         ret_val = xmlXPathWrapCString(val);
51111:         desret_xmlXPathObjectPtr(ret_val);
51112:         call_tests++;
51113:         des_char_ptr(n_val, val, 0);
51114:         xmlResetLastError();
51115:         if (mem_base != xmlMemBlocks()) {
51116:             printf("Leak of %d blocks found in xmlXPathWrapCString",
51117: 	           xmlMemBlocks() - mem_base);
51118: 	    test_ret++;
51119:             printf(" %d", n_val);
51120:             printf("\n");
51121:         }
51122:     }
51123:     function_tests++;
51124: #endif
51125: 
51126:     return(test_ret);
51127: }
51128: 
51129: 
51130: static int
51131: test_xmlXPathWrapExternal(void) {
51132:     int test_ret = 0;
51133: 
51134: #if defined(LIBXML_XPATH_ENABLED)
51135:     int mem_base;
51136:     xmlXPathObjectPtr ret_val;
51137:     void * val; /* the user data */
51138:     int n_val;
51139: 
51140:     for (n_val = 0;n_val < gen_nb_void_ptr;n_val++) {
51141:         mem_base = xmlMemBlocks();
51142:         val = gen_void_ptr(n_val, 0);
51143: 
51144:         ret_val = xmlXPathWrapExternal(val);
51145:         desret_xmlXPathObjectPtr(ret_val);
51146:         call_tests++;
51147:         des_void_ptr(n_val, val, 0);
51148:         xmlResetLastError();
51149:         if (mem_base != xmlMemBlocks()) {
51150:             printf("Leak of %d blocks found in xmlXPathWrapExternal",
51151: 	           xmlMemBlocks() - mem_base);
51152: 	    test_ret++;
51153:             printf(" %d", n_val);
51154:             printf("\n");
51155:         }
51156:     }
51157:     function_tests++;
51158: #endif
51159: 
51160:     return(test_ret);
51161: }
51162: 
51163: 
51164: static int
51165: test_xmlXPathWrapNodeSet(void) {
51166:     int test_ret = 0;
51167: 
51168: #if defined(LIBXML_XPATH_ENABLED)
51169:     int mem_base;
51170:     xmlXPathObjectPtr ret_val;
51171:     xmlNodeSetPtr val; /* the NodePtr value */
51172:     int n_val;
51173: 
51174:     for (n_val = 0;n_val < gen_nb_xmlNodeSetPtr;n_val++) {
51175:         mem_base = xmlMemBlocks();
51176:         val = gen_xmlNodeSetPtr(n_val, 0);
51177: 
51178:         ret_val = xmlXPathWrapNodeSet(val);
51179:         desret_xmlXPathObjectPtr(ret_val);
51180:         call_tests++;
51181:         des_xmlNodeSetPtr(n_val, val, 0);
51182:         xmlResetLastError();
51183:         if (mem_base != xmlMemBlocks()) {
51184:             printf("Leak of %d blocks found in xmlXPathWrapNodeSet",
51185: 	           xmlMemBlocks() - mem_base);
51186: 	    test_ret++;
51187:             printf(" %d", n_val);
51188:             printf("\n");
51189:         }
51190:     }
51191:     function_tests++;
51192: #endif
51193: 
51194:     return(test_ret);
51195: }
51196: 
51197: 
51198: static int
51199: test_xmlXPatherror(void) {
51200:     int test_ret = 0;
51201: 
51202: #if defined(LIBXML_XPATH_ENABLED)
51203:     int mem_base;
51204:     xmlXPathParserContextPtr ctxt; /* the XPath Parser context */
51205:     int n_ctxt;
51206:     const char * file; /* the file name */
51207:     int n_file;
51208:     int line; /* the line number */
51209:     int n_line;
51210:     int no; /* the error number */
51211:     int n_no;
51212: 
51213:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
51214:     for (n_file = 0;n_file < gen_nb_filepath;n_file++) {
51215:     for (n_line = 0;n_line < gen_nb_int;n_line++) {
51216:     for (n_no = 0;n_no < gen_nb_int;n_no++) {
51217:         mem_base = xmlMemBlocks();
51218:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
51219:         file = gen_filepath(n_file, 1);
51220:         line = gen_int(n_line, 2);
51221:         no = gen_int(n_no, 3);
51222: 
51223:         xmlXPatherror(ctxt, file, line, no);
51224:         call_tests++;
51225:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
51226:         des_filepath(n_file, file, 1);
51227:         des_int(n_line, line, 2);
51228:         des_int(n_no, no, 3);
51229:         xmlResetLastError();
51230:         if (mem_base != xmlMemBlocks()) {
51231:             printf("Leak of %d blocks found in xmlXPatherror",
51232: 	           xmlMemBlocks() - mem_base);
51233: 	    test_ret++;
51234:             printf(" %d", n_ctxt);
51235:             printf(" %d", n_file);
51236:             printf(" %d", n_line);
51237:             printf(" %d", n_no);
51238:             printf("\n");
51239:         }
51240:     }
51241:     }
51242:     }
51243:     }
51244:     function_tests++;
51245: #endif
51246: 
51247:     return(test_ret);
51248: }
51249: 
51250: static int
51251: test_xpathInternals(void) {
51252:     int test_ret = 0;
51253: 
51254:     if (quiet == 0) printf("Testing xpathInternals : 106 of 117 functions ...\n");
51255:     test_ret += test_valuePop();
51256:     test_ret += test_valuePush();
51257:     test_ret += test_xmlXPathAddValues();
51258:     test_ret += test_xmlXPathBooleanFunction();
51259:     test_ret += test_xmlXPathCeilingFunction();
51260:     test_ret += test_xmlXPathCompareValues();
51261:     test_ret += test_xmlXPathConcatFunction();
51262:     test_ret += test_xmlXPathContainsFunction();
51263:     test_ret += test_xmlXPathCountFunction();
51264:     test_ret += test_xmlXPathDebugDumpCompExpr();
51265:     test_ret += test_xmlXPathDebugDumpObject();
51266:     test_ret += test_xmlXPathDifference();
51267:     test_ret += test_xmlXPathDistinct();
51268:     test_ret += test_xmlXPathDistinctSorted();
51269:     test_ret += test_xmlXPathDivValues();
51270:     test_ret += test_xmlXPathEqualValues();
51271:     test_ret += test_xmlXPathErr();
51272:     test_ret += test_xmlXPathEvalExpr();
51273:     test_ret += test_xmlXPathEvaluatePredicateResult();
51274:     test_ret += test_xmlXPathFalseFunction();
51275:     test_ret += test_xmlXPathFloorFunction();
51276:     test_ret += test_xmlXPathFunctionLookup();
51277:     test_ret += test_xmlXPathFunctionLookupNS();
51278:     test_ret += test_xmlXPathHasSameNodes();
51279:     test_ret += test_xmlXPathIdFunction();
51280:     test_ret += test_xmlXPathIntersection();
51281:     test_ret += test_xmlXPathIsNodeType();
51282:     test_ret += test_xmlXPathLangFunction();
51283:     test_ret += test_xmlXPathLastFunction();
51284:     test_ret += test_xmlXPathLeading();
51285:     test_ret += test_xmlXPathLeadingSorted();
51286:     test_ret += test_xmlXPathLocalNameFunction();
51287:     test_ret += test_xmlXPathModValues();
51288:     test_ret += test_xmlXPathMultValues();
51289:     test_ret += test_xmlXPathNamespaceURIFunction();
51290:     test_ret += test_xmlXPathNewBoolean();
51291:     test_ret += test_xmlXPathNewCString();
51292:     test_ret += test_xmlXPathNewFloat();
51293:     test_ret += test_xmlXPathNewNodeSet();
51294:     test_ret += test_xmlXPathNewNodeSetList();
51295:     test_ret += test_xmlXPathNewParserContext();
51296:     test_ret += test_xmlXPathNewString();
51297:     test_ret += test_xmlXPathNextAncestor();
51298:     test_ret += test_xmlXPathNextAncestorOrSelf();
51299:     test_ret += test_xmlXPathNextAttribute();
51300:     test_ret += test_xmlXPathNextChild();
51301:     test_ret += test_xmlXPathNextDescendant();
51302:     test_ret += test_xmlXPathNextDescendantOrSelf();
51303:     test_ret += test_xmlXPathNextFollowing();
51304:     test_ret += test_xmlXPathNextFollowingSibling();
51305:     test_ret += test_xmlXPathNextNamespace();
51306:     test_ret += test_xmlXPathNextParent();
51307:     test_ret += test_xmlXPathNextPreceding();
51308:     test_ret += test_xmlXPathNextPrecedingSibling();
51309:     test_ret += test_xmlXPathNextSelf();
51310:     test_ret += test_xmlXPathNodeLeading();
51311:     test_ret += test_xmlXPathNodeLeadingSorted();
51312:     test_ret += test_xmlXPathNodeSetAdd();
51313:     test_ret += test_xmlXPathNodeSetAddNs();
51314:     test_ret += test_xmlXPathNodeSetAddUnique();
51315:     test_ret += test_xmlXPathNodeSetContains();
51316:     test_ret += test_xmlXPathNodeSetDel();
51317:     test_ret += test_xmlXPathNodeSetMerge();
51318:     test_ret += test_xmlXPathNodeSetRemove();
51319:     test_ret += test_xmlXPathNodeSetSort();
51320:     test_ret += test_xmlXPathNodeTrailing();
51321:     test_ret += test_xmlXPathNodeTrailingSorted();
51322:     test_ret += test_xmlXPathNormalizeFunction();
51323:     test_ret += test_xmlXPathNotEqualValues();
51324:     test_ret += test_xmlXPathNotFunction();
51325:     test_ret += test_xmlXPathNsLookup();
51326:     test_ret += test_xmlXPathNumberFunction();
51327:     test_ret += test_xmlXPathParseNCName();
51328:     test_ret += test_xmlXPathParseName();
51329:     test_ret += test_xmlXPathPopBoolean();
51330:     test_ret += test_xmlXPathPopExternal();
51331:     test_ret += test_xmlXPathPopNodeSet();
51332:     test_ret += test_xmlXPathPopNumber();
51333:     test_ret += test_xmlXPathPopString();
51334:     test_ret += test_xmlXPathPositionFunction();
51335:     test_ret += test_xmlXPathRegisterAllFunctions();
51336:     test_ret += test_xmlXPathRegisterFunc();
51337:     test_ret += test_xmlXPathRegisterFuncLookup();
51338:     test_ret += test_xmlXPathRegisterFuncNS();
51339:     test_ret += test_xmlXPathRegisterNs();
51340:     test_ret += test_xmlXPathRegisterVariable();
51341:     test_ret += test_xmlXPathRegisterVariableLookup();
51342:     test_ret += test_xmlXPathRegisterVariableNS();
51343:     test_ret += test_xmlXPathRegisteredFuncsCleanup();
51344:     test_ret += test_xmlXPathRegisteredNsCleanup();
51345:     test_ret += test_xmlXPathRegisteredVariablesCleanup();
51346:     test_ret += test_xmlXPathRoot();
51347:     test_ret += test_xmlXPathRoundFunction();
51348:     test_ret += test_xmlXPathStartsWithFunction();
51349:     test_ret += test_xmlXPathStringEvalNumber();
51350:     test_ret += test_xmlXPathStringFunction();
51351:     test_ret += test_xmlXPathStringLengthFunction();
51352:     test_ret += test_xmlXPathSubValues();
51353:     test_ret += test_xmlXPathSubstringAfterFunction();
51354:     test_ret += test_xmlXPathSubstringBeforeFunction();
51355:     test_ret += test_xmlXPathSubstringFunction();
51356:     test_ret += test_xmlXPathSumFunction();
51357:     test_ret += test_xmlXPathTrailing();
51358:     test_ret += test_xmlXPathTrailingSorted();
51359:     test_ret += test_xmlXPathTranslateFunction();
51360:     test_ret += test_xmlXPathTrueFunction();
51361:     test_ret += test_xmlXPathValueFlipSign();
51362:     test_ret += test_xmlXPathVariableLookup();
51363:     test_ret += test_xmlXPathVariableLookupNS();
51364:     test_ret += test_xmlXPathWrapCString();
51365:     test_ret += test_xmlXPathWrapExternal();
51366:     test_ret += test_xmlXPathWrapNodeSet();
51367:     test_ret += test_xmlXPatherror();
51368: 
51369:     if (test_ret != 0)
51370: 	printf("Module xpathInternals: %d errors\n", test_ret);
51371:     return(test_ret);
51372: }
51373: 
51374: static int
51375: test_xmlXPtrBuildNodeList(void) {
51376:     int test_ret = 0;
51377: 
51378: #if defined(LIBXML_XPTR_ENABLED)
51379:     int mem_base;
51380:     xmlNodePtr ret_val;
51381:     xmlXPathObjectPtr obj; /* the XPointer result from the evaluation. */
51382:     int n_obj;
51383: 
51384:     for (n_obj = 0;n_obj < gen_nb_xmlXPathObjectPtr;n_obj++) {
51385:         mem_base = xmlMemBlocks();
51386:         obj = gen_xmlXPathObjectPtr(n_obj, 0);
51387: 
51388:         ret_val = xmlXPtrBuildNodeList(obj);
51389:         desret_xmlNodePtr(ret_val);
51390:         call_tests++;
51391:         des_xmlXPathObjectPtr(n_obj, obj, 0);
51392:         xmlResetLastError();
51393:         if (mem_base != xmlMemBlocks()) {
51394:             printf("Leak of %d blocks found in xmlXPtrBuildNodeList",
51395: 	           xmlMemBlocks() - mem_base);
51396: 	    test_ret++;
51397:             printf(" %d", n_obj);
51398:             printf("\n");
51399:         }
51400:     }
51401:     function_tests++;
51402: #endif
51403: 
51404:     return(test_ret);
51405: }
51406: 
51407: 
51408: static int
51409: test_xmlXPtrEval(void) {
51410:     int test_ret = 0;
51411: 
51412: #if defined(LIBXML_XPTR_ENABLED)
51413:     int mem_base;
51414:     xmlXPathObjectPtr ret_val;
51415:     xmlChar * str; /* the XPointer expression */
51416:     int n_str;
51417:     xmlXPathContextPtr ctx; /* the XPointer context */
51418:     int n_ctx;
51419: 
51420:     for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
51421:     for (n_ctx = 0;n_ctx < gen_nb_xmlXPathContextPtr;n_ctx++) {
51422:         mem_base = xmlMemBlocks();
51423:         str = gen_const_xmlChar_ptr(n_str, 0);
51424:         ctx = gen_xmlXPathContextPtr(n_ctx, 1);
51425: 
51426:         ret_val = xmlXPtrEval((const xmlChar *)str, ctx);
51427:         desret_xmlXPathObjectPtr(ret_val);
51428:         call_tests++;
51429:         des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 0);
51430:         des_xmlXPathContextPtr(n_ctx, ctx, 1);
51431:         xmlResetLastError();
51432:         if (mem_base != xmlMemBlocks()) {
51433:             printf("Leak of %d blocks found in xmlXPtrEval",
51434: 	           xmlMemBlocks() - mem_base);
51435: 	    test_ret++;
51436:             printf(" %d", n_str);
51437:             printf(" %d", n_ctx);
51438:             printf("\n");
51439:         }
51440:     }
51441:     }
51442:     function_tests++;
51443: #endif
51444: 
51445:     return(test_ret);
51446: }
51447: 
51448: 
51449: static int
51450: test_xmlXPtrEvalRangePredicate(void) {
51451:     int test_ret = 0;
51452: 
51453: #if defined(LIBXML_XPTR_ENABLED)
51454:     int mem_base;
51455:     xmlXPathParserContextPtr ctxt; /* the XPointer Parser context */
51456:     int n_ctxt;
51457: 
51458:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
51459:         mem_base = xmlMemBlocks();
51460:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
51461: 
51462:         xmlXPtrEvalRangePredicate(ctxt);
51463:         call_tests++;
51464:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
51465:         xmlResetLastError();
51466:         if (mem_base != xmlMemBlocks()) {
51467:             printf("Leak of %d blocks found in xmlXPtrEvalRangePredicate",
51468: 	           xmlMemBlocks() - mem_base);
51469: 	    test_ret++;
51470:             printf(" %d", n_ctxt);
51471:             printf("\n");
51472:         }
51473:     }
51474:     function_tests++;
51475: #endif
51476: 
51477:     return(test_ret);
51478: }
51479: 
51480: #ifdef LIBXML_XPTR_ENABLED
51481: 
51482: #define gen_nb_xmlLocationSetPtr 1
51483: static xmlLocationSetPtr gen_xmlLocationSetPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
51484:     return(NULL);
51485: }
51486: static void des_xmlLocationSetPtr(int no ATTRIBUTE_UNUSED, xmlLocationSetPtr val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
51487: }
51488: #endif
51489: 
51490: 
51491: static int
51492: test_xmlXPtrLocationSetAdd(void) {
51493:     int test_ret = 0;
51494: 
51495: #if defined(LIBXML_XPTR_ENABLED)
51496:     int mem_base;
51497:     xmlLocationSetPtr cur; /* the initial range set */
51498:     int n_cur;
51499:     xmlXPathObjectPtr val; /* a new xmlXPathObjectPtr */
51500:     int n_val;
51501: 
51502:     for (n_cur = 0;n_cur < gen_nb_xmlLocationSetPtr;n_cur++) {
51503:     for (n_val = 0;n_val < gen_nb_xmlXPathObjectPtr;n_val++) {
51504:         mem_base = xmlMemBlocks();
51505:         cur = gen_xmlLocationSetPtr(n_cur, 0);
51506:         val = gen_xmlXPathObjectPtr(n_val, 1);
51507: 
51508:         xmlXPtrLocationSetAdd(cur, val);
51509:         call_tests++;
51510:         des_xmlLocationSetPtr(n_cur, cur, 0);
51511:         des_xmlXPathObjectPtr(n_val, val, 1);
51512:         xmlResetLastError();
51513:         if (mem_base != xmlMemBlocks()) {
51514:             printf("Leak of %d blocks found in xmlXPtrLocationSetAdd",
51515: 	           xmlMemBlocks() - mem_base);
51516: 	    test_ret++;
51517:             printf(" %d", n_cur);
51518:             printf(" %d", n_val);
51519:             printf("\n");
51520:         }
51521:     }
51522:     }
51523:     function_tests++;
51524: #endif
51525: 
51526:     return(test_ret);
51527: }
51528: 
51529: 
51530: static int
51531: test_xmlXPtrLocationSetCreate(void) {
51532:     int test_ret = 0;
51533: 
51534: 
51535:     /* missing type support */
51536:     return(test_ret);
51537: }
51538: 
51539: 
51540: static int
51541: test_xmlXPtrLocationSetDel(void) {
51542:     int test_ret = 0;
51543: 
51544: #if defined(LIBXML_XPTR_ENABLED)
51545:     int mem_base;
51546:     xmlLocationSetPtr cur; /* the initial range set */
51547:     int n_cur;
51548:     xmlXPathObjectPtr val; /* an xmlXPathObjectPtr */
51549:     int n_val;
51550: 
51551:     for (n_cur = 0;n_cur < gen_nb_xmlLocationSetPtr;n_cur++) {
51552:     for (n_val = 0;n_val < gen_nb_xmlXPathObjectPtr;n_val++) {
51553:         mem_base = xmlMemBlocks();
51554:         cur = gen_xmlLocationSetPtr(n_cur, 0);
51555:         val = gen_xmlXPathObjectPtr(n_val, 1);
51556: 
51557:         xmlXPtrLocationSetDel(cur, val);
51558:         call_tests++;
51559:         des_xmlLocationSetPtr(n_cur, cur, 0);
51560:         des_xmlXPathObjectPtr(n_val, val, 1);
51561:         xmlResetLastError();
51562:         if (mem_base != xmlMemBlocks()) {
51563:             printf("Leak of %d blocks found in xmlXPtrLocationSetDel",
51564: 	           xmlMemBlocks() - mem_base);
51565: 	    test_ret++;
51566:             printf(" %d", n_cur);
51567:             printf(" %d", n_val);
51568:             printf("\n");
51569:         }
51570:     }
51571:     }
51572:     function_tests++;
51573: #endif
51574: 
51575:     return(test_ret);
51576: }
51577: 
51578: 
51579: static int
51580: test_xmlXPtrLocationSetMerge(void) {
51581:     int test_ret = 0;
51582: 
51583: 
51584:     /* missing type support */
51585:     return(test_ret);
51586: }
51587: 
51588: 
51589: static int
51590: test_xmlXPtrLocationSetRemove(void) {
51591:     int test_ret = 0;
51592: 
51593: #if defined(LIBXML_XPTR_ENABLED)
51594:     int mem_base;
51595:     xmlLocationSetPtr cur; /* the initial range set */
51596:     int n_cur;
51597:     int val; /* the index to remove */
51598:     int n_val;
51599: 
51600:     for (n_cur = 0;n_cur < gen_nb_xmlLocationSetPtr;n_cur++) {
51601:     for (n_val = 0;n_val < gen_nb_int;n_val++) {
51602:         mem_base = xmlMemBlocks();
51603:         cur = gen_xmlLocationSetPtr(n_cur, 0);
51604:         val = gen_int(n_val, 1);
51605: 
51606:         xmlXPtrLocationSetRemove(cur, val);
51607:         call_tests++;
51608:         des_xmlLocationSetPtr(n_cur, cur, 0);
51609:         des_int(n_val, val, 1);
51610:         xmlResetLastError();
51611:         if (mem_base != xmlMemBlocks()) {
51612:             printf("Leak of %d blocks found in xmlXPtrLocationSetRemove",
51613: 	           xmlMemBlocks() - mem_base);
51614: 	    test_ret++;
51615:             printf(" %d", n_cur);
51616:             printf(" %d", n_val);
51617:             printf("\n");
51618:         }
51619:     }
51620:     }
51621:     function_tests++;
51622: #endif
51623: 
51624:     return(test_ret);
51625: }
51626: 
51627: 
51628: static int
51629: test_xmlXPtrNewCollapsedRange(void) {
51630:     int test_ret = 0;
51631: 
51632: #if defined(LIBXML_XPTR_ENABLED)
51633:     int mem_base;
51634:     xmlXPathObjectPtr ret_val;
51635:     xmlNodePtr start; /* the starting and ending node */
51636:     int n_start;
51637: 
51638:     for (n_start = 0;n_start < gen_nb_xmlNodePtr;n_start++) {
51639:         mem_base = xmlMemBlocks();
51640:         start = gen_xmlNodePtr(n_start, 0);
51641: 
51642:         ret_val = xmlXPtrNewCollapsedRange(start);
51643:         desret_xmlXPathObjectPtr(ret_val);
51644:         call_tests++;
51645:         des_xmlNodePtr(n_start, start, 0);
51646:         xmlResetLastError();
51647:         if (mem_base != xmlMemBlocks()) {
51648:             printf("Leak of %d blocks found in xmlXPtrNewCollapsedRange",
51649: 	           xmlMemBlocks() - mem_base);
51650: 	    test_ret++;
51651:             printf(" %d", n_start);
51652:             printf("\n");
51653:         }
51654:     }
51655:     function_tests++;
51656: #endif
51657: 
51658:     return(test_ret);
51659: }
51660: 
51661: 
51662: static int
51663: test_xmlXPtrNewContext(void) {
51664:     int test_ret = 0;
51665: 
51666: 
51667:     /* missing type support */
51668:     return(test_ret);
51669: }
51670: 
51671: 
51672: static int
51673: test_xmlXPtrNewLocationSetNodeSet(void) {
51674:     int test_ret = 0;
51675: 
51676: #if defined(LIBXML_XPTR_ENABLED)
51677:     int mem_base;
51678:     xmlXPathObjectPtr ret_val;
51679:     xmlNodeSetPtr set; /* a node set */
51680:     int n_set;
51681: 
51682:     for (n_set = 0;n_set < gen_nb_xmlNodeSetPtr;n_set++) {
51683:         mem_base = xmlMemBlocks();
51684:         set = gen_xmlNodeSetPtr(n_set, 0);
51685: 
51686:         ret_val = xmlXPtrNewLocationSetNodeSet(set);
51687:         desret_xmlXPathObjectPtr(ret_val);
51688:         call_tests++;
51689:         des_xmlNodeSetPtr(n_set, set, 0);
51690:         xmlResetLastError();
51691:         if (mem_base != xmlMemBlocks()) {
51692:             printf("Leak of %d blocks found in xmlXPtrNewLocationSetNodeSet",
51693: 	           xmlMemBlocks() - mem_base);
51694: 	    test_ret++;
51695:             printf(" %d", n_set);
51696:             printf("\n");
51697:         }
51698:     }
51699:     function_tests++;
51700: #endif
51701: 
51702:     return(test_ret);
51703: }
51704: 
51705: 
51706: static int
51707: test_xmlXPtrNewLocationSetNodes(void) {
51708:     int test_ret = 0;
51709: 
51710: #if defined(LIBXML_XPTR_ENABLED)
51711:     int mem_base;
51712:     xmlXPathObjectPtr ret_val;
51713:     xmlNodePtr start; /* the start NodePtr value */
51714:     int n_start;
51715:     xmlNodePtr end; /* the end NodePtr value or NULL */
51716:     int n_end;
51717: 
51718:     for (n_start = 0;n_start < gen_nb_xmlNodePtr;n_start++) {
51719:     for (n_end = 0;n_end < gen_nb_xmlNodePtr;n_end++) {
51720:         mem_base = xmlMemBlocks();
51721:         start = gen_xmlNodePtr(n_start, 0);
51722:         end = gen_xmlNodePtr(n_end, 1);
51723: 
51724:         ret_val = xmlXPtrNewLocationSetNodes(start, end);
51725:         desret_xmlXPathObjectPtr(ret_val);
51726:         call_tests++;
51727:         des_xmlNodePtr(n_start, start, 0);
51728:         des_xmlNodePtr(n_end, end, 1);
51729:         xmlResetLastError();
51730:         if (mem_base != xmlMemBlocks()) {
51731:             printf("Leak of %d blocks found in xmlXPtrNewLocationSetNodes",
51732: 	           xmlMemBlocks() - mem_base);
51733: 	    test_ret++;
51734:             printf(" %d", n_start);
51735:             printf(" %d", n_end);
51736:             printf("\n");
51737:         }
51738:     }
51739:     }
51740:     function_tests++;
51741: #endif
51742: 
51743:     return(test_ret);
51744: }
51745: 
51746: 
51747: static int
51748: test_xmlXPtrNewRange(void) {
51749:     int test_ret = 0;
51750: 
51751: #if defined(LIBXML_XPTR_ENABLED)
51752:     int mem_base;
51753:     xmlXPathObjectPtr ret_val;
51754:     xmlNodePtr start; /* the starting node */
51755:     int n_start;
51756:     int startindex; /* the start index */
51757:     int n_startindex;
51758:     xmlNodePtr end; /* the ending point */
51759:     int n_end;
51760:     int endindex; /* the ending index */
51761:     int n_endindex;
51762: 
51763:     for (n_start = 0;n_start < gen_nb_xmlNodePtr;n_start++) {
51764:     for (n_startindex = 0;n_startindex < gen_nb_int;n_startindex++) {
51765:     for (n_end = 0;n_end < gen_nb_xmlNodePtr;n_end++) {
51766:     for (n_endindex = 0;n_endindex < gen_nb_int;n_endindex++) {
51767:         mem_base = xmlMemBlocks();
51768:         start = gen_xmlNodePtr(n_start, 0);
51769:         startindex = gen_int(n_startindex, 1);
51770:         end = gen_xmlNodePtr(n_end, 2);
51771:         endindex = gen_int(n_endindex, 3);
51772: 
51773:         ret_val = xmlXPtrNewRange(start, startindex, end, endindex);
51774:         desret_xmlXPathObjectPtr(ret_val);
51775:         call_tests++;
51776:         des_xmlNodePtr(n_start, start, 0);
51777:         des_int(n_startindex, startindex, 1);
51778:         des_xmlNodePtr(n_end, end, 2);
51779:         des_int(n_endindex, endindex, 3);
51780:         xmlResetLastError();
51781:         if (mem_base != xmlMemBlocks()) {
51782:             printf("Leak of %d blocks found in xmlXPtrNewRange",
51783: 	           xmlMemBlocks() - mem_base);
51784: 	    test_ret++;
51785:             printf(" %d", n_start);
51786:             printf(" %d", n_startindex);
51787:             printf(" %d", n_end);
51788:             printf(" %d", n_endindex);
51789:             printf("\n");
51790:         }
51791:     }
51792:     }
51793:     }
51794:     }
51795:     function_tests++;
51796: #endif
51797: 
51798:     return(test_ret);
51799: }
51800: 
51801: 
51802: static int
51803: test_xmlXPtrNewRangeNodeObject(void) {
51804:     int test_ret = 0;
51805: 
51806: #if defined(LIBXML_XPTR_ENABLED)
51807:     int mem_base;
51808:     xmlXPathObjectPtr ret_val;
51809:     xmlNodePtr start; /* the starting node */
51810:     int n_start;
51811:     xmlXPathObjectPtr end; /* the ending object */
51812:     int n_end;
51813: 
51814:     for (n_start = 0;n_start < gen_nb_xmlNodePtr;n_start++) {
51815:     for (n_end = 0;n_end < gen_nb_xmlXPathObjectPtr;n_end++) {
51816:         mem_base = xmlMemBlocks();
51817:         start = gen_xmlNodePtr(n_start, 0);
51818:         end = gen_xmlXPathObjectPtr(n_end, 1);
51819: 
51820:         ret_val = xmlXPtrNewRangeNodeObject(start, end);
51821:         desret_xmlXPathObjectPtr(ret_val);
51822:         call_tests++;
51823:         des_xmlNodePtr(n_start, start, 0);
51824:         des_xmlXPathObjectPtr(n_end, end, 1);
51825:         xmlResetLastError();
51826:         if (mem_base != xmlMemBlocks()) {
51827:             printf("Leak of %d blocks found in xmlXPtrNewRangeNodeObject",
51828: 	           xmlMemBlocks() - mem_base);
51829: 	    test_ret++;
51830:             printf(" %d", n_start);
51831:             printf(" %d", n_end);
51832:             printf("\n");
51833:         }
51834:     }
51835:     }
51836:     function_tests++;
51837: #endif
51838: 
51839:     return(test_ret);
51840: }
51841: 
51842: 
51843: static int
51844: test_xmlXPtrNewRangeNodePoint(void) {
51845:     int test_ret = 0;
51846: 
51847: #if defined(LIBXML_XPTR_ENABLED)
51848:     int mem_base;
51849:     xmlXPathObjectPtr ret_val;
51850:     xmlNodePtr start; /* the starting node */
51851:     int n_start;
51852:     xmlXPathObjectPtr end; /* the ending point */
51853:     int n_end;
51854: 
51855:     for (n_start = 0;n_start < gen_nb_xmlNodePtr;n_start++) {
51856:     for (n_end = 0;n_end < gen_nb_xmlXPathObjectPtr;n_end++) {
51857:         mem_base = xmlMemBlocks();
51858:         start = gen_xmlNodePtr(n_start, 0);
51859:         end = gen_xmlXPathObjectPtr(n_end, 1);
51860: 
51861:         ret_val = xmlXPtrNewRangeNodePoint(start, end);
51862:         desret_xmlXPathObjectPtr(ret_val);
51863:         call_tests++;
51864:         des_xmlNodePtr(n_start, start, 0);
51865:         des_xmlXPathObjectPtr(n_end, end, 1);
51866:         xmlResetLastError();
51867:         if (mem_base != xmlMemBlocks()) {
51868:             printf("Leak of %d blocks found in xmlXPtrNewRangeNodePoint",
51869: 	           xmlMemBlocks() - mem_base);
51870: 	    test_ret++;
51871:             printf(" %d", n_start);
51872:             printf(" %d", n_end);
51873:             printf("\n");
51874:         }
51875:     }
51876:     }
51877:     function_tests++;
51878: #endif
51879: 
51880:     return(test_ret);
51881: }
51882: 
51883: 
51884: static int
51885: test_xmlXPtrNewRangeNodes(void) {
51886:     int test_ret = 0;
51887: 
51888: #if defined(LIBXML_XPTR_ENABLED)
51889:     int mem_base;
51890:     xmlXPathObjectPtr ret_val;
51891:     xmlNodePtr start; /* the starting node */
51892:     int n_start;
51893:     xmlNodePtr end; /* the ending node */
51894:     int n_end;
51895: 
51896:     for (n_start = 0;n_start < gen_nb_xmlNodePtr;n_start++) {
51897:     for (n_end = 0;n_end < gen_nb_xmlNodePtr;n_end++) {
51898:         mem_base = xmlMemBlocks();
51899:         start = gen_xmlNodePtr(n_start, 0);
51900:         end = gen_xmlNodePtr(n_end, 1);
51901: 
51902:         ret_val = xmlXPtrNewRangeNodes(start, end);
51903:         desret_xmlXPathObjectPtr(ret_val);
51904:         call_tests++;
51905:         des_xmlNodePtr(n_start, start, 0);
51906:         des_xmlNodePtr(n_end, end, 1);
51907:         xmlResetLastError();
51908:         if (mem_base != xmlMemBlocks()) {
51909:             printf("Leak of %d blocks found in xmlXPtrNewRangeNodes",
51910: 	           xmlMemBlocks() - mem_base);
51911: 	    test_ret++;
51912:             printf(" %d", n_start);
51913:             printf(" %d", n_end);
51914:             printf("\n");
51915:         }
51916:     }
51917:     }
51918:     function_tests++;
51919: #endif
51920: 
51921:     return(test_ret);
51922: }
51923: 
51924: 
51925: static int
51926: test_xmlXPtrNewRangePointNode(void) {
51927:     int test_ret = 0;
51928: 
51929: #if defined(LIBXML_XPTR_ENABLED)
51930:     int mem_base;
51931:     xmlXPathObjectPtr ret_val;
51932:     xmlXPathObjectPtr start; /* the starting point */
51933:     int n_start;
51934:     xmlNodePtr end; /* the ending node */
51935:     int n_end;
51936: 
51937:     for (n_start = 0;n_start < gen_nb_xmlXPathObjectPtr;n_start++) {
51938:     for (n_end = 0;n_end < gen_nb_xmlNodePtr;n_end++) {
51939:         mem_base = xmlMemBlocks();
51940:         start = gen_xmlXPathObjectPtr(n_start, 0);
51941:         end = gen_xmlNodePtr(n_end, 1);
51942: 
51943:         ret_val = xmlXPtrNewRangePointNode(start, end);
51944:         desret_xmlXPathObjectPtr(ret_val);
51945:         call_tests++;
51946:         des_xmlXPathObjectPtr(n_start, start, 0);
51947:         des_xmlNodePtr(n_end, end, 1);
51948:         xmlResetLastError();
51949:         if (mem_base != xmlMemBlocks()) {
51950:             printf("Leak of %d blocks found in xmlXPtrNewRangePointNode",
51951: 	           xmlMemBlocks() - mem_base);
51952: 	    test_ret++;
51953:             printf(" %d", n_start);
51954:             printf(" %d", n_end);
51955:             printf("\n");
51956:         }
51957:     }
51958:     }
51959:     function_tests++;
51960: #endif
51961: 
51962:     return(test_ret);
51963: }
51964: 
51965: 
51966: static int
51967: test_xmlXPtrNewRangePoints(void) {
51968:     int test_ret = 0;
51969: 
51970: #if defined(LIBXML_XPTR_ENABLED)
51971:     int mem_base;
51972:     xmlXPathObjectPtr ret_val;
51973:     xmlXPathObjectPtr start; /* the starting point */
51974:     int n_start;
51975:     xmlXPathObjectPtr end; /* the ending point */
51976:     int n_end;
51977: 
51978:     for (n_start = 0;n_start < gen_nb_xmlXPathObjectPtr;n_start++) {
51979:     for (n_end = 0;n_end < gen_nb_xmlXPathObjectPtr;n_end++) {
51980:         mem_base = xmlMemBlocks();
51981:         start = gen_xmlXPathObjectPtr(n_start, 0);
51982:         end = gen_xmlXPathObjectPtr(n_end, 1);
51983: 
51984:         ret_val = xmlXPtrNewRangePoints(start, end);
51985:         desret_xmlXPathObjectPtr(ret_val);
51986:         call_tests++;
51987:         des_xmlXPathObjectPtr(n_start, start, 0);
51988:         des_xmlXPathObjectPtr(n_end, end, 1);
51989:         xmlResetLastError();
51990:         if (mem_base != xmlMemBlocks()) {
51991:             printf("Leak of %d blocks found in xmlXPtrNewRangePoints",
51992: 	           xmlMemBlocks() - mem_base);
51993: 	    test_ret++;
51994:             printf(" %d", n_start);
51995:             printf(" %d", n_end);
51996:             printf("\n");
51997:         }
51998:     }
51999:     }
52000:     function_tests++;
52001: #endif
52002: 
52003:     return(test_ret);
52004: }
52005: 
52006: 
52007: static int
52008: test_xmlXPtrRangeToFunction(void) {
52009:     int test_ret = 0;
52010: 
52011: #if defined(LIBXML_XPTR_ENABLED)
52012:     int mem_base;
52013:     xmlXPathParserContextPtr ctxt; /* the XPointer Parser context */
52014:     int n_ctxt;
52015:     int nargs; /* the number of args */
52016:     int n_nargs;
52017: 
52018:     for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathParserContextPtr;n_ctxt++) {
52019:     for (n_nargs = 0;n_nargs < gen_nb_int;n_nargs++) {
52020:         mem_base = xmlMemBlocks();
52021:         ctxt = gen_xmlXPathParserContextPtr(n_ctxt, 0);
52022:         nargs = gen_int(n_nargs, 1);
52023: 
52024:         xmlXPtrRangeToFunction(ctxt, nargs);
52025:         call_tests++;
52026:         des_xmlXPathParserContextPtr(n_ctxt, ctxt, 0);
52027:         des_int(n_nargs, nargs, 1);
52028:         xmlResetLastError();
52029:         if (mem_base != xmlMemBlocks()) {
52030:             printf("Leak of %d blocks found in xmlXPtrRangeToFunction",
52031: 	           xmlMemBlocks() - mem_base);
52032: 	    test_ret++;
52033:             printf(" %d", n_ctxt);
52034:             printf(" %d", n_nargs);
52035:             printf("\n");
52036:         }
52037:     }
52038:     }
52039:     function_tests++;
52040: #endif
52041: 
52042:     return(test_ret);
52043: }
52044: 
52045: 
52046: static int
52047: test_xmlXPtrWrapLocationSet(void) {
52048:     int test_ret = 0;
52049: 
52050: #if defined(LIBXML_XPTR_ENABLED)
52051:     int mem_base;
52052:     xmlXPathObjectPtr ret_val;
52053:     xmlLocationSetPtr val; /* the LocationSet value */
52054:     int n_val;
52055: 
52056:     for (n_val = 0;n_val < gen_nb_xmlLocationSetPtr;n_val++) {
52057:         mem_base = xmlMemBlocks();
52058:         val = gen_xmlLocationSetPtr(n_val, 0);
52059: 
52060:         ret_val = xmlXPtrWrapLocationSet(val);
52061:         desret_xmlXPathObjectPtr(ret_val);
52062:         call_tests++;
52063:         des_xmlLocationSetPtr(n_val, val, 0);
52064:         xmlResetLastError();
52065:         if (mem_base != xmlMemBlocks()) {
52066:             printf("Leak of %d blocks found in xmlXPtrWrapLocationSet",
52067: 	           xmlMemBlocks() - mem_base);
52068: 	    test_ret++;
52069:             printf(" %d", n_val);
52070:             printf("\n");
52071:         }
52072:     }
52073:     function_tests++;
52074: #endif
52075: 
52076:     return(test_ret);
52077: }
52078: 
52079: static int
52080: test_xpointer(void) {
52081:     int test_ret = 0;
52082: 
52083:     if (quiet == 0) printf("Testing xpointer : 17 of 21 functions ...\n");
52084:     test_ret += test_xmlXPtrBuildNodeList();
52085:     test_ret += test_xmlXPtrEval();
52086:     test_ret += test_xmlXPtrEvalRangePredicate();
52087:     test_ret += test_xmlXPtrLocationSetAdd();
52088:     test_ret += test_xmlXPtrLocationSetCreate();
52089:     test_ret += test_xmlXPtrLocationSetDel();
52090:     test_ret += test_xmlXPtrLocationSetMerge();
52091:     test_ret += test_xmlXPtrLocationSetRemove();
52092:     test_ret += test_xmlXPtrNewCollapsedRange();
52093:     test_ret += test_xmlXPtrNewContext();
52094:     test_ret += test_xmlXPtrNewLocationSetNodeSet();
52095:     test_ret += test_xmlXPtrNewLocationSetNodes();
52096:     test_ret += test_xmlXPtrNewRange();
52097:     test_ret += test_xmlXPtrNewRangeNodeObject();
52098:     test_ret += test_xmlXPtrNewRangeNodePoint();
52099:     test_ret += test_xmlXPtrNewRangeNodes();
52100:     test_ret += test_xmlXPtrNewRangePointNode();
52101:     test_ret += test_xmlXPtrNewRangePoints();
52102:     test_ret += test_xmlXPtrRangeToFunction();
52103:     test_ret += test_xmlXPtrWrapLocationSet();
52104: 
52105:     if (test_ret != 0)
52106: 	printf("Module xpointer: %d errors\n", test_ret);
52107:     return(test_ret);
52108: }
52109: static int
52110: test_module(const char *module) {
52111:     if (!strcmp(module, "HTMLparser")) return(test_HTMLparser());
52112:     if (!strcmp(module, "HTMLtree")) return(test_HTMLtree());
52113:     if (!strcmp(module, "SAX2")) return(test_SAX2());
52114:     if (!strcmp(module, "c14n")) return(test_c14n());
52115:     if (!strcmp(module, "catalog")) return(test_catalog());
52116:     if (!strcmp(module, "chvalid")) return(test_chvalid());
52117:     if (!strcmp(module, "debugXML")) return(test_debugXML());
52118:     if (!strcmp(module, "dict")) return(test_dict());
52119:     if (!strcmp(module, "encoding")) return(test_encoding());
52120:     if (!strcmp(module, "entities")) return(test_entities());
52121:     if (!strcmp(module, "hash")) return(test_hash());
52122:     if (!strcmp(module, "list")) return(test_list());
52123:     if (!strcmp(module, "nanoftp")) return(test_nanoftp());
52124:     if (!strcmp(module, "nanohttp")) return(test_nanohttp());
52125:     if (!strcmp(module, "parser")) return(test_parser());
52126:     if (!strcmp(module, "parserInternals")) return(test_parserInternals());
52127:     if (!strcmp(module, "pattern")) return(test_pattern());
52128:     if (!strcmp(module, "relaxng")) return(test_relaxng());
52129:     if (!strcmp(module, "schemasInternals")) return(test_schemasInternals());
52130:     if (!strcmp(module, "schematron")) return(test_schematron());
52131:     if (!strcmp(module, "tree")) return(test_tree());
52132:     if (!strcmp(module, "uri")) return(test_uri());
52133:     if (!strcmp(module, "valid")) return(test_valid());
52134:     if (!strcmp(module, "xinclude")) return(test_xinclude());
52135:     if (!strcmp(module, "xmlIO")) return(test_xmlIO());
52136:     if (!strcmp(module, "xmlautomata")) return(test_xmlautomata());
52137:     if (!strcmp(module, "xmlerror")) return(test_xmlerror());
52138:     if (!strcmp(module, "xmlmodule")) return(test_xmlmodule());
52139:     if (!strcmp(module, "xmlreader")) return(test_xmlreader());
52140:     if (!strcmp(module, "xmlregexp")) return(test_xmlregexp());
52141:     if (!strcmp(module, "xmlsave")) return(test_xmlsave());
52142:     if (!strcmp(module, "xmlschemas")) return(test_xmlschemas());
52143:     if (!strcmp(module, "xmlschemastypes")) return(test_xmlschemastypes());
52144:     if (!strcmp(module, "xmlstring")) return(test_xmlstring());
52145:     if (!strcmp(module, "xmlunicode")) return(test_xmlunicode());
52146:     if (!strcmp(module, "xmlwriter")) return(test_xmlwriter());
52147:     if (!strcmp(module, "xpath")) return(test_xpath());
52148:     if (!strcmp(module, "xpathInternals")) return(test_xpathInternals());
52149:     if (!strcmp(module, "xpointer")) return(test_xpointer());
52150:     return(0);
52151: }

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>