openrefine-client/tests/export-ods.sh

48 lines
1.1 KiB
Bash
Raw Normal View History

2020-08-03 19:09:39 +02:00
#!/bin/bash
# =============================== ENVIRONMENT ================================ #
if [[ ${1} ]]; then
cmd="${1}"
else
echo 1>&2 "execute tests.sh to run all tests"; exit 1
fi
2020-08-04 13:50:56 +02:00
if [[ -z "$(command -v ssconvert 2> /dev/null)" ]] ; then
echo 1>&2 "ERROR: This test requires ssconvert (gnumeric)"
exit 127
fi
2020-08-03 19:09:39 +02:00
t="$(basename "${BASH_SOURCE[0]}" .sh)"
cd "${BASH_SOURCE%/*}/" || exit 1
mkdir -p "tmp/${t}"
# =================================== DATA =================================== #
cat << "DATA" > "tmp/${t}/${t}.csv"
a,b,c
2020-08-04 13:50:56 +02:00
1,2,3
0,0,0
$,\,'
2020-08-03 19:09:39 +02:00
DATA
# ================================= ASSERTION ================================ #
cat << "DATA" > "tmp/${t}/${t}.assert"
2020-08-04 13:50:56 +02:00
a,b,c
1,2,3
0,0,0
$,\,'
2020-08-03 19:09:39 +02:00
DATA
# ================================== ACTION ================================== #
2020-08-04 13:50:56 +02:00
${cmd} --create "tmp/${t}/${t}.csv"
${cmd} --export "${t}" --output "tmp/${t}/${t}.ods"
2020-08-04 13:58:26 +02:00
(cd tmp/"${t}" &&
ssconvert -S "${t}.ods" "${t}.csv" &&
mv "${t}.csv.1" "${t}.output")
2020-08-03 19:09:39 +02:00
# =================================== TEST =================================== #
diff -u "tmp/${t}/${t}.assert" "tmp/${t}/${t}.output"