Happy new year
[idzebra-moved-to-github.git] / util / tstcharmap.c
index edff882..9c85c96 100644 (file)
@@ -1,8 +1,5 @@
-/* $Id: tstcharmap.c,v 1.1 2005-06-15 21:31:45 adam Exp $
-   Copyright (C) 1995-2005
-   Index Data ApS
-
-This file is part of the Zebra server.
+/* This file is part of the Zebra server.
+   Copyright (C) 1994-2009 Index Data
 
 Zebra is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free
@@ -15,45 +12,61 @@ FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 for more details.
 
 You should have received a copy of the GNU General Public License
-along with Zebra; see the file LICENSE.zebra.  If not, write to the
-Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
-02111-1307, USA.
+along with this program; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+
 */
 
-#include <stdlib.h>
-#include <stdio.h>
-#include <assert.h>
 #include <charmap.h>
+#include <yaz/test.h>
+#include <stdlib.h>
+
+/* use env srcdir as base directory - or current directory if unset */
+const char *get_srcdir(void)
+{
+    const char *srcdir = getenv("srcdir");
+    if (!srcdir || ! *srcdir)
+        srcdir=".";
+    return srcdir;
+
+}
 
-void tst1()
+void tst1(void)
 {
     /* open existing map chrmaptab.chr */
-    chrmaptab tab = chrmaptab_create(0 /* tabpath */,
+    chrmaptab tab = chrmaptab_create(get_srcdir() /* tabpath */,
                                     "tstcharmap.chr" /* file */,
                                     0 /* tabroot */ );
-    assert(tab);
-    
+    YAZ_CHECK(tab);
     chrmaptab_destroy(tab);
 }
 
-void tst2()
+void tst2(void)
 {
     /* open non-existing nonexist.chr */
-    chrmaptab tab = chrmaptab_create(0 /* tabpath */,
+    chrmaptab tab = chrmaptab_create(get_srcdir() /* tabpath */,
                                     "nonexist.chr" /* file */,
                                     0 /* tabroot */ );
-    assert(!tab);
+    YAZ_CHECK(!tab);
+    chrmaptab_destroy(tab);
 }
 
 int main(int argc, char **argv)
 {
-    char logname[2048];
-    sprintf(logname, "%s.log", argv[0]);
-    yaz_log_init_file(logname);
+    YAZ_CHECK_INIT(argc, argv);
+    YAZ_CHECK_LOG();
 
     tst1();
     tst2();
 
-    exit(0);
+    YAZ_CHECK_TERM;
 }
 
+/*
+ * Local variables:
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ * vim: shiftwidth=4 tabstop=8 expandtab
+ */
+