summaryrefslogtreecommitdiffstats
path: root/tests/enums
diff options
context:
space:
mode:
authorMattias Andrée <maandree@kth.se>2023-12-05 20:10:48 +0100
committerMattias Andrée <maandree@kth.se>2023-12-05 20:10:48 +0100
commit6d77b155bcd4725e09837604e6ea86f5f124ba9c (patch)
tree7cfdf466bb94bbbe3e7929432bc048da5eaa2349 /tests/enums
parentSecond commit (diff)
downloadlibsyscalls-6d77b155bcd4725e09837604e6ea86f5f124ba9c.tar.gz
libsyscalls-6d77b155bcd4725e09837604e6ea86f5f124ba9c.tar.bz2
libsyscalls-6d77b155bcd4725e09837604e6ea86f5f124ba9c.tar.xz
Third commit
Signed-off-by: Mattias Andrée <maandree@kth.se>
Diffstat (limited to 'tests/enums')
-rw-r--r--tests/enums24
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/enums b/tests/enums
new file mode 100644
index 0000000..43afe3d
--- /dev/null
+++ b/tests/enums
@@ -0,0 +1,24 @@
+# -*- sh -*-
+# See LICENSE file for copyright and license details.
+
+check_enum_good () {
+ test -n "$(getnamelist "$@")"
+ test -n "$(getnumlist "$@")"
+ test -z "$(getnamelist "$@" | sort | uniq -d)"
+ test -z "$(getnumlist "$@" | sort | uniq -d)"
+ (( "$(getnumlist "$@" | sort -n | sed -n \$p)" <= 0xFFFF ))
+}
+check_enum_good OS
+check_enum_good ARCH
+check_enum_good CAT
+for cat in $(getnamelist CAT); do
+ if test "$cat" = SUPPORT_PENDING || test "$cat" = NOT_IMPLEMENTED; then
+ continue
+ fi
+ check_enum_good ${cat}_SUBCAT
+ grep -i "enum.libsyscalls_${cat}_syscall_subcategory"'\s\+'"$cat"\\b < libsyscalls.h >/dev/null
+done
+check_enum_good SIGN
+check_enum_good ANNOTATION
+check_enum_good SECTION
+check_enum_good TYPE cpp_enum_clean