chiark / gitweb /
Add mock fsck process
authorDidier Roche <didrocks@ubuntu.com>
Mon, 26 Jan 2015 16:46:36 +0000 (17:46 +0100)
committerMartin Pitt <martin.pitt@ubuntu.com>
Wed, 18 Feb 2015 15:33:46 +0000 (16:33 +0100)
test/mocks/fsck [new file with mode: 0755]

diff --git a/test/mocks/fsck b/test/mocks/fsck
new file mode 100755 (executable)
index 0000000..77b50d7
--- /dev/null
@@ -0,0 +1,27 @@
+#!/bin/bash
+fd=0
+
+OPTIND=1
+while getopts "C:aTlM" opt; do
+    case "$opt" in
+        C)
+            fd=$OPTARG
+            ;;
+        \?);;
+    esac
+done
+
+shift "$((OPTIND-1))"
+device=$1
+
+echo "Running fake fsck on $device"
+
+declare -a maxpass=(30 5 2 30 60)
+
+for pass in {1..5}; do
+    maxprogress=${maxpass[$((pass-1))]}
+    for (( current=0; current<=${maxprogress}; current++)); do
+        echo "$pass $current $maxprogress $device">&$fd
+        sleep 0.1
+    done
+done