feat(ci): also manage the longer filenames

This commit is contained in:
perf3ct 2025-09-17 21:21:47 +00:00
parent c09fea4deb
commit e43e7af372
No known key found for this signature in database
GPG Key ID: 569C4EEC436F5232
1 changed files with 17 additions and 10 deletions

View File

@ -3,7 +3,7 @@
# WebDAV Test Data Generation Script
# Generates complex directory structures for stress testing WebDAV sync functionality
set -euo pipefail
set -uo pipefail # Don't use -e since we're testing problematic scenarios
# Default values
WEBDAV_ROOT=""
@ -279,9 +279,12 @@ if [[ "$INCLUDE_PROBLEMATIC_FILES" == "true" ]]; then
create_test_file "problematic-files/file'with'quotes.txt" "File with single quotes"
create_test_file 'problematic-files/file"with"doublequotes.txt' "File with double quotes"
# Very long filename
long_name=$(printf 'very_long_filename_%.0s' {1..20})
create_test_file "problematic-files/${long_name}.txt" "File with very long name"
# Very long filename (but within filesystem limits - typically 255 chars)
# Most filesystems have a 255 character limit for filenames
long_name=$(printf 'very_long_filename_%.0s' {1..10})
long_name="${long_name:0:240}.txt" # Truncate to safe length
create_test_file "problematic-files/${long_name}" "File with very long name" 2>/dev/null || \
echo " - Skipped creating extremely long filename (expected on some filesystems)"
# File with just dots
create_test_file "problematic-files/...txt" "File starting with dots"
@ -329,13 +332,17 @@ Total directories created: $(find . -type d | wc -l)
echo "WebDAV test data generation completed!"
echo "Root directory: $WEBDAV_ROOT"
echo "Total files: $(find "$WEBDAV_ROOT" -type f | wc -l)"
echo "Total directories: $(find "$WEBDAV_ROOT" -type d | wc -l)"
echo "Total files: $(find "$WEBDAV_ROOT" -type f 2>/dev/null | wc -l)"
echo "Total directories: $(find "$WEBDAV_ROOT" -type d 2>/dev/null | wc -l)"
# Display directory structure summary
echo ""
echo "Directory structure summary:"
find "$WEBDAV_ROOT" -type d | head -20
if [[ $(find "$WEBDAV_ROOT" -type d | wc -l) -gt 20 ]]; then
echo "... and $(($(find "$WEBDAV_ROOT" -type d | wc -l) - 20)) more directories"
fi
find "$WEBDAV_ROOT" -type d 2>/dev/null | head -20
if [[ $(find "$WEBDAV_ROOT" -type d 2>/dev/null | wc -l) -gt 20 ]]; then
echo "... and $(($(find "$WEBDAV_ROOT" -type d 2>/dev/null | wc -l) - 20)) more directories"
fi
echo ""
echo "✓ WebDAV test data generation completed successfully!"
exit 0