26 lines
755 B
Bash
Executable File
26 lines
755 B
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# Transfer a large chunk of data through pv and check data correctness
|
|
# afterwards.
|
|
|
|
# Allow all tests to be skipped, e.g. during a release build
|
|
test "${SKIP_ALL_TESTS}" = "1" && exit 77
|
|
|
|
true "${testSubject:?not set - call this from 'make check'}"
|
|
true "${workFile1:?not set - call this from 'make check'}"
|
|
true "${workFile2:?not set - call this from 'make check'}"
|
|
|
|
# generate some data
|
|
dd if=/dev/urandom of="${workFile1}" bs=1024 count=10240 2>/dev/null
|
|
|
|
inputChecksum=$(cksum "${workFile1}" | awk '{print $1}')
|
|
|
|
# read through pv and test afterwards
|
|
"${testSubject}" -B 100000 -q "${workFile1}" > "${workFile2}"
|
|
|
|
outputChecksum=$(cksum "${workFile2}" | awk '{print $1}')
|
|
|
|
test "${inputChecksum}" = "${outputChecksum}" || exit 1
|
|
|
|
exit 0
|