summaryrefslogtreecommitdiffstats
path: root/test/test-network-generator-conversion.sh
diff options
context:
space:
mode:
Diffstat (limited to '')
-rwxr-xr-xtest/test-network-generator-conversion.sh30
1 files changed, 30 insertions, 0 deletions
diff --git a/test/test-network-generator-conversion.sh b/test/test-network-generator-conversion.sh
new file mode 100755
index 0000000..50df69f
--- /dev/null
+++ b/test/test-network-generator-conversion.sh
@@ -0,0 +1,30 @@
+#!/usr/bin/env bash
+set -ex
+
+if [[ -n "$1" ]]; then
+ generator=$1
+elif [[ -x /usr/lib/systemd/systemd-network-generator ]]; then
+ generator=/usr/lib/systemd/systemd-network-generator
+elif [[ -x /lib/systemd/systemd-network-generator ]]; then
+ generator=/lib/systemd/systemd-network-generator
+else
+ exit 1
+fi
+
+src="$(dirname "$0")/testdata/test-network-generator-conversion"
+
+for f in "$src"/test-*.input; do
+ echo "*** Running $f"
+
+ (
+ out=$(mktemp --tmpdir --directory "test-network-generator-conversion.XXXXXXXXXX")
+ trap "rm -rf '$out'" EXIT INT QUIT PIPE
+
+ $generator --root "$out" -- $(cat $f)
+
+ if ! diff -u "$out"/run/systemd/network ${f%.input}.expected; then
+ echo "**** Unexpected output for $f"
+ exit 1
+ fi
+ ) || exit 1
+done