* Copyright (C) 2005-2006, Index Data ApS
* See the file LICENSE for details.
*
- * $Id: tst_record_conv.c,v 1.6 2006-05-07 14:48:25 adam Exp $
+ * $Id: tst_record_conv.c,v 1.8 2006-05-08 10:16:47 adam Exp $
*
*/
#include <yaz/record_conv.h>
#include <yaz/test.h>
#include <yaz/wrbuf.h>
#include <string.h>
+#include <yaz/log.h>
+#include <yaz/libxml2_error.h>
#if HAVE_CONFIG_H
#include <config.h>
#endif
-#if HAVE_XSLT
+#if HAVE_XML2
#include <libxml/parser.h>
#include <libxml/tree.h>
YAZ_CHECK(conv_configure_test("<convert><bad/></convert>",
"Bad element 'bad'."
"Expected marc, xslt, ..", 0));
+#if HAVE_XSLT
YAZ_CHECK(conv_configure_test("<convert>"
"<xslt stylesheet=\"tst_record_conv.xsl\"/>"
"<marc"
"</convert>",
"Attribute 'inputformat' required", 0));
YAZ_CHECK(conv_configure_test("<convert>"
+ "<xslt/>"
+ "</convert>",
+ "Missing attribute 'stylesheet'", 0));
+ YAZ_CHECK(conv_configure_test("<convert>"
"<xslt stylesheet=\"tst_record_conv.xsl\"/>"
"<marc"
" inputcharset=\"utf-8\""
"/>"
"</convert>",
0, 0));
+#else
+ YAZ_CHECK(conv_configure_test("<convert>"
+ "<xslt stylesheet=\"tst_record_conv.xsl\"/>"
+ "</convert>",
+ "xslt unsupported."
+ " YAZ compiled without XSLT support", 0));
+#endif
}
static int conv_convert_test(yaz_record_conv_t p,
int main(int argc, char **argv)
{
YAZ_CHECK_INIT(argc, argv);
-#if HAVE_XSLT
+ libxml2_error_to_yazlog(0 /* disable log */, 0);
+#if HAVE_XML2
tst_configure();
+#endif
+#if HAVE_XSLT
tst_convert();
#endif
YAZ_CHECK_TERM;