ladybird/Meta/check-ak-test-files.sh
thislooksfun 170e956c80 Meta: Remove unnecessary -i
Using `xargs -i <cmd> {}` is just doing the default behavior of xargs,
but with extra steps that also don't work on macOS.
2021-11-02 12:23:30 +01:00

25 lines
789 B
Bash
Executable file

#!/usr/bin/env bash
set -eo pipefail
script_path=$(cd -P -- "$(dirname -- "$0")" && pwd -P)
cd "${script_path}/.."
MISSING_FILES=n
while IFS= read -r FILENAME; do
# Simply search whether the CMakeLists.txt *ever* mention the test files.
if ! grep -qF "${FILENAME}" Tests/AK/CMakeLists.txt ; then
echo "Tests/AK/CMakeLists.txt is either missing the test file ${FILENAME} or is not in the commit's staged changes"
MISSING_FILES=y
fi
done < <(
git ls-files 'Tests/AK/Test*.cpp' | xargs basename
)
if [ "n" != "${MISSING_FILES}" ] ; then
echo "Some files are missing from the Tests/AK/CMakeLists.txt."
echo "If a new test file is being added, ensure it is in the CMakeLists.txt."
echo "This ensures the new tests are always run."
exit 1
fi