461bf6fd40
CI / lint (3.11) (push) Blocked by required conditions
CI / lint (3.12) (push) Blocked by required conditions
CI / lint (3.13) (push) Blocked by required conditions
CI / shellcheck (push) Waiting to run
CI / shfmt (push) Waiting to run
CI / setup (3.11) (push) Waiting to run
CI / setup (3.12) (push) Waiting to run
CI / setup (3.13) (push) Waiting to run
CI / check-licenses (3.12) (push) Blocked by required conditions
CI / test_unit (3.11) (push) Blocked by required conditions
CI / test_unit (3.12) (push) Blocked by required conditions
CI / test_unit (3.13) (push) Blocked by required conditions
CI / test_unit_no_extras (3.11) (push) Blocked by required conditions
CI / test_unit_no_extras (3.12) (push) Blocked by required conditions
CI / test_json_to_html (3.12) (push) Blocked by required conditions
CI / test_unit_no_extras (3.13) (push) Blocked by required conditions
CI / test_unit_dependency_extras (csv, 3.11, --extra csv) (push) Blocked by required conditions
CI / test_unit_dependency_extras (csv, 3.12, --extra csv) (push) Blocked by required conditions
CI / test_unit_dependency_extras (csv, 3.13, --extra csv) (push) Blocked by required conditions
CI / test_unit_dependency_extras (docx, 3.11, --extra docx) (push) Blocked by required conditions
CI / test_unit_dependency_extras (docx, 3.12, --extra docx) (push) Blocked by required conditions
CI / test_unit_dependency_extras (docx, 3.13, --extra docx) (push) Blocked by required conditions
CI / test_unit_dependency_extras (markdown, 3.11, --extra md) (push) Blocked by required conditions
CI / test_unit_dependency_extras (markdown, 3.12, --extra md) (push) Blocked by required conditions
CI / test_unit_dependency_extras (markdown, 3.13, --extra md) (push) Blocked by required conditions
CI / test_unit_dependency_extras (odt, 3.11, --extra odt) (push) Blocked by required conditions
CI / test_unit_dependency_extras (odt, 3.12, --extra odt) (push) Blocked by required conditions
CI / test_unit_dependency_extras (pdf-image, 3.12, --extra pdf --extra image --extra paddleocr) (push) Blocked by required conditions
CI / test_unit_dependency_extras (pdf-image, 3.13, --extra pdf --extra image --extra paddleocr) (push) Blocked by required conditions
CI / test_unit_dependency_extras (pptx, 3.13, --extra pptx) (push) Blocked by required conditions
CI / test_unit_dependency_extras (odt, 3.13, --extra odt) (push) Blocked by required conditions
CI / test_unit_dependency_extras (pdf-image, 3.11, --extra pdf --extra image --extra paddleocr) (push) Blocked by required conditions
CI / test_unit_dependency_extras (pptx, 3.11, --extra pptx) (push) Blocked by required conditions
CI / test_unit_dependency_extras (pptx, 3.12, --extra pptx) (push) Blocked by required conditions
CI / test_unit_dependency_extras (pypandoc, 3.11, --extra epub --extra org --extra rtf --extra rst) (push) Blocked by required conditions
CI / test_unit_dependency_extras (pypandoc, 3.12, --extra epub --extra org --extra rtf --extra rst) (push) Blocked by required conditions
CI / test_unit_dependency_extras (pypandoc, 3.13, --extra epub --extra org --extra rtf --extra rst) (push) Blocked by required conditions
CI / test_unit_dependency_extras (xlsx, 3.11, --extra xlsx) (push) Blocked by required conditions
CI / test_unit_dependency_extras (xlsx, 3.12, --extra xlsx) (push) Blocked by required conditions
CI / test_unit_dependency_extras (xlsx, 3.13, --extra xlsx) (push) Blocked by required conditions
CI / test_ingest_src (3.12) (push) Blocked by required conditions
CI / test_json_to_markdown (3.12) (push) Blocked by required conditions
CI / changelog (push) Waiting to run
CI / test_dockerfile (push) Blocked by required conditions
CodeQL / Analyze (python) (push) Waiting to run
Build And Push Docker Image / set-short-sha (push) Waiting to run
Build And Push Docker Image / build-images (linux/amd64, opensource-linux-8core) (push) Blocked by required conditions
Build And Push Docker Image / build-images (linux/arm64, ubuntu-24.04-arm) (push) Blocked by required conditions
Build And Push Docker Image / publish-images (push) Blocked by required conditions
Partition Benchmark / setup (push) Waiting to run
Partition Benchmark / Measure and compare partition() runtime (push) Blocked by required conditions
63 lines
2.2 KiB
Bash
Executable File
63 lines
2.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
# Description: Compare the structured output markdown files to the expected output markdown files and exit
|
|
# with an error if they are different. If the environment variable OVERWRITE_FIXTURES
|
|
# is not "false", then this script will instead copy the output files to the expected
|
|
# output directory.
|
|
#
|
|
# Environment Variables:
|
|
# - OVERWRITE_FIXTURES: Controls whether to overwrite markdown fixtures or not. default: "false"
|
|
|
|
set +e
|
|
|
|
SCRIPT_DIR=$(dirname "$(realpath "$0")")
|
|
OVERWRITE_FIXTURES=${OVERWRITE_FIXTURES:-false}
|
|
TMP_DIRECTORY_CLEANUP=${TMP_DIRECTORY_CLEANUP:-true}
|
|
OUTPUT_ROOT=${OUTPUT_ROOT:-$SCRIPT_DIR}
|
|
OUTPUT_DIR_MARKDOWN=$OUTPUT_ROOT/structured-markdown-output
|
|
EXPECTED_OUTPUT_DIR_MARKDOWN=$OUTPUT_ROOT/expected-structured-output-markdown
|
|
DIFF_OUTPUT_FILE="outputmarkdowndiff.txt"
|
|
|
|
# shellcheck disable=SC1091
|
|
source "$SCRIPT_DIR"/cleanup.sh
|
|
|
|
function cleanup() {
|
|
if [ "$TMP_DIRECTORY_CLEANUP" == "true" ]; then
|
|
cleanup_dir "$OUTPUT_DIR_MARKDOWN"
|
|
else
|
|
echo "skipping tmp directory cleanup"
|
|
fi
|
|
}
|
|
|
|
trap cleanup EXIT
|
|
|
|
# Generate structured HTML output
|
|
"$SCRIPT_DIR"/structured-json-to-markdown.sh "$OUTPUT_DIR_MARKDOWN"
|
|
|
|
# To update ingest test HTML fixtures, run 'make html-fixtures-update' on x86_64
|
|
if [ "$OVERWRITE_FIXTURES" != "false" ]; then
|
|
# remove folder if it exists
|
|
if [ -d "$EXPECTED_OUTPUT_DIR_MARKDOWN" ]; then
|
|
rm -rf "$EXPECTED_OUTPUT_DIR_MARKDOWN"
|
|
fi
|
|
mkdir -p "$EXPECTED_OUTPUT_DIR_MARKDOWN"
|
|
cp -rf "$OUTPUT_DIR_MARKDOWN"/* "$EXPECTED_OUTPUT_DIR_MARKDOWN"
|
|
elif ! diff -ru "$EXPECTED_OUTPUT_DIR_MARKDOWN" "$OUTPUT_DIR_MARKDOWN"; then
|
|
diff -ru "$EXPECTED_OUTPUT_DIR_MARKDOWN" "$OUTPUT_DIR_MARKDOWN" >"$DIFF_OUTPUT_FILE"
|
|
cat "$DIFF_OUTPUT_FILE"
|
|
diffstat -c "$DIFF_OUTPUT_FILE"
|
|
echo
|
|
echo "There are differences from the previously checked-in structured markdown outputs."
|
|
echo
|
|
echo "If these differences are acceptable, overwrite by the fixtures by setting the env var:"
|
|
echo
|
|
echo " export OVERWRITE_FIXTURES=true"
|
|
echo
|
|
echo "and then rerun this script."
|
|
echo
|
|
echo "NOTE: You'll likely just want to run 'make markdown-fixtures-update' on x86_64 hardware"
|
|
echo "to update fixtures for CI."
|
|
echo
|
|
exit 1
|
|
fi
|