Add testcase that demonstrates limit on number of classes
see issue https://github.com/liblouis/liblouis/issues/105
diff --git a/.gitignore b/.gitignore
index c4f769b..1caa6f9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -147,6 +147,7 @@
/tests/uplow_with_unicode
/tests/logging
/tests/findTable
+/tests/class_limit
# /tests/doctests/
/tests/doctests/Makefile
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 4e46b03..15ff89e 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -133,6 +133,9 @@
findTable_SOURCES = \
findTable.c
+class_limit_SOURCES = \
+ class_limit.c
+
# Note that this is not currently included in check_programs below
# otherwise make check would never complete.
infiniteTranslationLoop_SOURCES = \
@@ -168,7 +171,8 @@
hash_collision \
resolve_table \
logging \
- findTable
+ findTable \
+ class_limit
dist_check_SCRIPTS = \
diff --git a/tests/class_limit.c b/tests/class_limit.c
new file mode 100644
index 0000000..7f8f63d
--- /dev/null
+++ b/tests/class_limit.c
@@ -0,0 +1,10 @@
+// see issue https://github.com/liblouis/liblouis/issues/105
+
+#include <stdlib.h>
+#include "liblouis.h"
+
+int
+main(int argc, char **argv)
+{
+ return (lou_getTable("tables/class_limit") == NULL);
+}
diff --git a/tests/tables/class_limit b/tests/tables/class_limit
new file mode 100644
index 0000000..7ee9176
--- /dev/null
+++ b/tests/tables/class_limit
@@ -0,0 +1,29 @@
+sign x 123456
+sign y 123456
+sign z 123456
+class a xyz
+class b xyz
+class c xyz
+class d xyz
+class e xyz
+class f xyz
+class g xyz
+class h xyz
+class i xyz
+class j xyz
+class k xyz
+class l xyz
+class m xyz
+class n xyz
+class o xyz
+class p xyz
+class q xyz
+class r xyz
+class s xyz
+class t xyz
+class u xyz
+class v xyz
+class w xyz
+class x xyz
+class y xyz
+class z xyz
\ No newline at end of file