-
Notifications
You must be signed in to change notification settings - Fork 4.1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
test all pages load correctly (#2699)
# Description Please provide a summary of the changes, including relevant motivation and context. Closes #(issue_number) ## Checklist - [ ] I have read the [Contribution Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md) - [ ] I have performed a self-review of my own code - [ ] I have attached images of the change if it is UI based - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] If my code has heavily changed functionality I have updated relevant docs on [Stirling-PDFs doc repo](https://github.com/Stirling-Tools/Stirling-Tools.github.io/blob/main/docs/) - [ ] My changes generate no new warnings - [ ] I have read the section [Add New Translation Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/HowToAddNewLanguage.md#add-new-translation-tags) (for new translation tags only)
- Loading branch information
Showing
5 changed files
with
161 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,97 @@ | ||
#!/bin/bash | ||
|
||
# Function to check a single webpage | ||
check_webpage() { | ||
local url=$1 | ||
local base_url=${2:-"http://localhost:8080"} | ||
local full_url="${base_url}${url}" | ||
local timeout=10 | ||
|
||
echo -n "Testing $full_url ... " | ||
|
||
# Use curl to fetch the page with timeout | ||
response=$(curl -s -w "\n%{http_code}" --max-time $timeout "$full_url") | ||
if [ $? -ne 0 ]; then | ||
echo "FAILED - Connection error or timeout" | ||
return 1 | ||
fi | ||
|
||
# Split response into body and status code | ||
HTTP_STATUS=$(echo "$response" | tail -n1) | ||
BODY=$(echo "$response" | sed '$d') | ||
|
||
# Check HTTP status | ||
if [ "$HTTP_STATUS" != "200" ]; then | ||
echo "FAILED - HTTP Status: $HTTP_STATUS" | ||
return 1 | ||
fi | ||
|
||
# Check if response contains HTML | ||
if ! echo "$BODY" | grep -q "<!DOCTYPE html>\|<html"; then | ||
echo "FAILED - Response is not HTML" | ||
return 1 | ||
fi | ||
|
||
echo "OK" | ||
return 0 | ||
} | ||
|
||
# Main function to test all URLs from the list | ||
test_all_urls() { | ||
local url_file=$1 | ||
local base_url=${2:-"http://localhost:8080"} | ||
local failed_count=0 | ||
local total_count=0 | ||
local start_time=$(date +%s) | ||
|
||
echo "Starting webpage tests..." | ||
echo "Base URL: $base_url" | ||
echo "----------------------------------------" | ||
|
||
while IFS= read -r url || [ -n "$url" ]; do | ||
# Skip empty lines | ||
[ -z "$url" ] && continue | ||
|
||
((total_count++)) | ||
if ! check_webpage "$url" "$base_url"; then | ||
((failed_count++)) | ||
fi | ||
done < "$url_file" | ||
|
||
local end_time=$(date +%s) | ||
local duration=$((end_time - start_time)) | ||
|
||
echo "----------------------------------------" | ||
echo "Test Summary:" | ||
echo "Total tests: $total_count" | ||
echo "Failed tests: $failed_count" | ||
echo "Passed tests: $((total_count - failed_count))" | ||
echo "Duration: ${duration} seconds" | ||
|
||
return $failed_count | ||
} | ||
|
||
# Main execution | ||
main() { | ||
local script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" | ||
local url_file="${script_dir}/webpage_urls.txt" | ||
|
||
if [ ! -f "$url_file" ]; then | ||
echo "Error: URL list file not found: $url_file" | ||
exit 1 | ||
fi | ||
|
||
# Run tests using the URL list | ||
if test_all_urls "$url_file"; then | ||
echo "All webpage tests passed!" | ||
exit 0 | ||
else | ||
echo "Some webpage tests failed!" | ||
exit 1 | ||
fi | ||
} | ||
|
||
# Run main if script is executed directly | ||
if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then | ||
main "$@" | ||
fi |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
|
||
/ | ||
/multi-tool | ||
/merge-pdfs | ||
/split-pdfs | ||
/rotate-pdf | ||
/remove-pages | ||
/pdf-organizer | ||
/multi-page-layout | ||
/scale-pages | ||
/crop | ||
/extract-page | ||
/pdf-to-single-page | ||
/img-to-pdf | ||
/markdown-to-pdf | ||
/pdf-to-img | ||
/pdf-to-text | ||
/pdf-to-csv | ||
/sign | ||
/add-password | ||
/remove-password | ||
/change-permissions | ||
/add-watermark | ||
/cert-sign | ||
/validate-signature | ||
/remove-cert-sign | ||
/sanitize-pdf | ||
/auto-redact | ||
/redact | ||
/stamp | ||
/view-pdf | ||
/add-page-numbers | ||
/add-image | ||
/extract-images | ||
/flatten | ||
/remove-annotations | ||
/remove-blanks | ||
/compare | ||
/change-metadata | ||
/get-info-on-pdf | ||
/remove-image-pdf | ||
/replace-and-invert-color-pdf | ||
/pipeline | ||
/auto-rename | ||
/adjust-contrast | ||
/overlay-pdf | ||
/auto-split-pdf | ||
/split-pdf-by-sections | ||
/split-pdf-by-chapters | ||
/split-by-size-or-count | ||
/show-javascript | ||
/swagger-ui/index.html | ||
/licenses | ||
/releases |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters