mirror of
https://github.com/Unstructured-IO/unstructured.git
synced 2025-07-26 18:39:18 +00:00

- Adds reusable validation scripts (check-x.sh) to minimize repeated (or near-repeated) code and create one source of truth - Restructures the location of download and output folders such that they are nested in the test_unstructured_ingest directory - Adds gitignore for output folders / files to avoid them accidentally getting checked into the repository - Construct paths as reusable variables declared at top of scripts - Sort order of flag for ingest calls, across all tests (this makes it easier to parse at a glance) - OVERWRITE_FIXTURES removes all old fixtures for path to guarantee no stale results are left behind - Bonus: don't check/exit on expected number of expected outputs when OVERWRITE_FIXTURES is true - Bonus: exclude file_directory from Slack and Discord test scripts (match convention in all others)
25 lines
977 B
Bash
25 lines
977 B
Bash
#!/usr/bin/env bash
|
|
|
|
# Description: Validate that the number of files in the output directory is as expected.
|
|
#
|
|
# Arguments:
|
|
# - $1: The expected number of files in the output directory.
|
|
# - $2: Name of the output folder. This is used to determine the output directory and the expected output directory paths.
|
|
# - $3: The expected size of the output directory in bytes (e.g. "10k").
|
|
|
|
set +e
|
|
|
|
EXPECTED_NUM_FILES=$1
|
|
OUTPUT_FOLDER_NAME=$2
|
|
EXPECTED_SIZE=$3
|
|
SCRIPT_DIR=$(dirname "$(realpath "$0")")
|
|
EXPECTED_OUTPUT_DIR=$SCRIPT_DIR/expected-structured-output/$OUTPUT_FOLDER_NAME
|
|
NUM_FILES=$(find "$EXPECTED_OUTPUT_DIR" -type f -size +"$EXPECTED_SIZE" | wc -l)
|
|
|
|
if [[ "$NUM_FILES" -ne "$EXPECTED_NUM_FILES" && "$OVERWRITE_FIXTURES" == "false" ]]; then
|
|
echo "The test fixtures in $EXPECTED_OUTPUT_DIR look suspicious."
|
|
echo "Expected $EXPECTED_NUM_FILES files, but found $NUM_FILES files found."
|
|
echo "Did you overwrite test fixtures with bad outputs?"
|
|
exit 1
|
|
fi
|