aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexey Gladkov <gladkov.alexey@gmail.com>2023-01-02 15:54:50 +0100
committerAlexey Gladkov <gladkov.alexey@gmail.com>2023-01-02 16:40:39 +0100
commit45a5701650471be07dee3dab9d9d10ad9f0a5fef (patch)
treee135244b58108c3f3fc28290972f93adf0713f4f
parent981e7db00dca39a5c99f40fc286b7a2008a1a5f7 (diff)
downloadkbd-45a5701650471be07dee3dab9d9d10ad9f0a5fef.tar.gz
tests: Add more testcases for setvtrgb
Signed-off-by: Alexey Gladkov <gladkov.alexey@gmail.com>
-rw-r--r--tests/e2e-setvtrgb.at35
-rw-r--r--tests/e2e.at14
2 files changed, 46 insertions, 3 deletions
diff --git a/tests/e2e-setvtrgb.at b/tests/e2e-setvtrgb.at
index 74d68e7f..b9136faa 100644
--- a/tests/e2e-setvtrgb.at
+++ b/tests/e2e-setvtrgb.at
@@ -1,20 +1,49 @@
-AT_SETUP([setvtrgbt (vga)])
+AT_SETUP([setvtrgb (vga)])
AT_KEYWORDS([e2e setvtrgb])
AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ])
E2E_CHECK(["$abs_top_builddir/src/setvtrgb" vga])
E2E_COMPARE_SYSCALLS([cat $abs_srcdir/data/e2e/setvtrgb-test01.calls])
AT_CLEANUP
-AT_SETUP([setvtrgbt (vtrgb.ubuntu)])
+AT_SETUP([setvtrgb (vtrgb.ubuntu)])
AT_KEYWORDS([e2e setvtrgb])
AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ])
E2E_CHECK(["$abs_top_builddir/src/setvtrgb" "$abs_srcdir/data/setvtrgb/vtrgb.ubuntu"])
E2E_COMPARE_SYSCALLS([cat $abs_srcdir/data/e2e/setvtrgb-test02.calls])
AT_CLEANUP
-AT_SETUP([setvtrgbt (vtrgb.ubuntu.hex)])
+AT_SETUP([setvtrgb (vtrgb.ubuntu.hex)])
AT_KEYWORDS([e2e setvtrgb])
AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ])
E2E_CHECK(["$abs_top_builddir/src/setvtrgb" "$abs_srcdir/data/setvtrgb/vtrgb.ubuntu.hex"])
E2E_COMPARE_SYSCALLS([cat $abs_srcdir/data/e2e/setvtrgb-test02.calls])
AT_CLEANUP
+
+AT_SETUP([setvtrgb from pipe (vtrgb.ubuntu)])
+AT_KEYWORDS([e2e setvtrgb])
+AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ])
+E2E_CHECK_PIPE([cat "$abs_srcdir/data/setvtrgb/vtrgb.ubuntu"], ["$abs_top_builddir/src/setvtrgb" -])
+E2E_COMPARE_SYSCALLS([cat $abs_srcdir/data/e2e/setvtrgb-test02.calls])
+AT_CLEANUP
+
+AT_SETUP([setvtrgb from pipe (vtrgb.ubuntu.hex)])
+AT_KEYWORDS([e2e setvtrgb])
+AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ])
+E2E_CHECK_PIPE([cat "$abs_srcdir/data/setvtrgb/vtrgb.ubuntu.hex"], ["$abs_top_builddir/src/setvtrgb" -])
+E2E_COMPARE_SYSCALLS([cat $abs_srcdir/data/e2e/setvtrgb-test02.calls])
+AT_CLEANUP
+
+AT_SETUP([setvtrgb from stdin (vtrgb.ubuntu)])
+AT_KEYWORDS([e2e setvtrgb])
+AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ])
+E2E_CHECK(["$abs_top_builddir/src/setvtrgb" - < "$abs_srcdir/data/setvtrgb/vtrgb.ubuntu"])
+E2E_COMPARE_SYSCALLS([cat $abs_srcdir/data/e2e/setvtrgb-test02.calls])
+AT_CLEANUP
+
+AT_SETUP([setvtrgb from stdin (vtrgb.ubuntu.hex)])
+AT_KEYWORDS([e2e setvtrgb])
+AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ])
+E2E_CHECK(["$abs_top_builddir/src/setvtrgb" - < "$abs_srcdir/data/setvtrgb/vtrgb.ubuntu.hex"])
+E2E_COMPARE_SYSCALLS([cat $abs_srcdir/data/e2e/setvtrgb-test02.calls])
+AT_CLEANUP
+
diff --git a/tests/e2e.at b/tests/e2e.at
index ce2db806..a95b2d5c 100644
--- a/tests/e2e.at
+++ b/tests/e2e.at
@@ -1,3 +1,13 @@
+m4_define([E2E_RUN_PIPE],[[
+$1 | \
+env \
+ LIBTSWRAP_OUTPUT="syscalls" \
+ LD_PRELOAD="$abs_builddir/libtswrap/.libs/libtswrap.so" \
+ $2 \
+ 1>stdout \
+ 2>stderr ;
+]])
+
m4_define([E2E_RUN],[[
env \
LIBTSWRAP_OUTPUT="syscalls" \
@@ -7,6 +17,10 @@ env \
2>stderr ;
]])
+m4_define([E2E_CHECK_PIPE],[
+AT_CHECK([E2E_RUN_PIPE([$1], [$2])], [0], [], [], [$3], [$4])
+])
+
m4_define([E2E_CHECK],[
AT_CHECK([E2E_RUN([$1])], [0], [], [], [$2], [$3])
])