Skip to content

Commit

Permalink
test: add file command test cases
Browse files Browse the repository at this point in the history
  • Loading branch information
ermineJose committed Dec 19, 2024
1 parent 9513576 commit b42fa68
Showing 1 changed file with 96 additions and 0 deletions.
96 changes: 96 additions & 0 deletions .github/workflows/merge.yml
Original file line number Diff line number Diff line change
Expand Up @@ -378,6 +378,102 @@ jobs:
ANT_LOG: "v"
timeout-minutes: 2

- name: validate help Output format
shell: bash
run: |
set -e
./target/release/ant --help 2>&1 | tee help_output
env:
ANT_LOG: "v"
timeout-minutes: 2

- name: test file cost command
shell: bash
run: |
set -e
touch cost-estimate-file.txt
dd if=/dev/urandom of=cost-estimate-file.txt bs=1M count=1 status=none
./target/release/ant --log-output-dest data-dir file cost cost-estimate-file.txt
./target/release/ant --log-output-dest data-dir file cost --timeout 10 cost-estimate-file.txt
./target/release/ant --log-output-dest data-dir file cost --no-verify cost-estimate-file.txt
./target/release/ant --log-output-dest data-dir file upload cost-estimate-file1.txt 2>&1 | grep "Error" # This file doesn't exist
rm -rf cost-estimate-file.txt
mkdir test_cost_estimate_directory
cd test_cost_estimate_directory
for dir in {1..5}; do
mkdir subdir_$dir
for file in {1..10}; do
dd if=/dev/zero of=subdir_$dir/file_$file.bin bs=10M count=1
done
done
cd ../
./target/release/ant --log-output-dest data-dir file cost --timeout 10 test_cost_estimate_directory | grep "Error" # it is not possible to estimate this in 10 seconds
./target/release/ant --log-output-dest data-dir file cost test_cost_estimate_directory
./target/release/ant --log-output-dest data-dir file cost --no-verify test_cost_estimate_directory
rm -rf test_cost_estimate_directory
rm -rf cost-estimate-file.txt
echo "Hello world test file cost command" > test_file.txt
chmod -r test_file.txt
./target/release/ant --log-output-dest data-dir file cost test_file.txt 2>&1 | grep "Error" # This file is not readable
rm -rf test_file.txt
env:
ANT_LOG: "v"
timeout-minutes: 2

- name: test file upload and download command
shell: bash
run: |
set -e
touch upload-file.txt
echo "Hello world" > upload-file.txt
FILE_ADDR=`./target/release/ant --log-output-dest data-dir file upload upload-file.txt | grep "At address" | grep -oE '[0-9]+'`
./target/release/ant --log-output-dest data-dir file download $FILE_ADDR download-file.txt
[ "$(md5sum upload-file.txt | awk '{print $1}')" = "$(md5sum download-file.txt | awk '{print $1}')" ] && echo "Files are identical." || { echo "Files are different."; exit 1; }
FILE_ADDR=`./target/release/ant --log-output-dest data-dir file upload --timeout 10 upload-file.txt | grep "At address" | grep -oE '[0-9]+'`
./target/release/antr --log-output-dest data-dir file download $FILE_ADDR download-file.txt
[ "$(md5sum upload-file.txt | awk '{print $1}')" = "$(md5sum download-file.txt | awk '{print $1}')" ] && echo "Files are identical." || { echo "Files are different."; exit 1; }
FILE_ADDR='./target/release/antr --log-output-dest data-dir file upload --no-verify upload-file.txt | grep "At address" | grep -oE '[0-9]+''
./target/release/ant --log-output-dest data-dir file download $FILE_ADDR download-file.txt
[ "$(md5sum upload-file.txt | awk '{print $1}')" = "$(md5sum download-file.txt | awk '{print $1}')" ] && echo "Files are identical." || { echo "Files are different."; exit 1; }
./target/release/ant --log-output-dest data-dir file upload upload-file1.txt 2>&1 | grep "Error" # This file doesn't exist
rm -rf upload-file.txt download-file.txt
mkdir test_upload_directory
cd test_upload_directory
for dir in {1..5}; do
mkdir subdir_$dir
for file in {1..10}; do
dd if=/dev/zero of=subdir_$dir/file_$file.bin bs=10M count=1
done
done
cd ../
mkdir test_download_directory
./target/release/ant --log-output-dest data-dir file upload --timeout 10 test_upload_directory | grep "Error" # it is not possible to upload this in 10 seconds
FILE_ADDR=`./target/release/ant --log-output-dest data-dir file upload test_upload_directory | grep "At address" | grep -oE '[0-9]+'`
./target/release/ant --log-output-dest data-dir file download $FILE_ADDR test_download_directory
diff -r test_upload_directory test_download_directory/test_upload_directory
rm -rf test_download_directory/test_download_directory
FILE_ADDR=`./target/release/ant --log-output-dest data-dir file upload --no-verify test_upload_directory | grep "At address" | grep -oE '[0-9]+'`
./target/release/ant --log-output-dest data-dir file download $FILE_ADDR test_download_directory
diff -r test_upload_directory test_download_directory/test_upload_directory
rm -rf test_upload_directory test_download_directory
rm -rf upload-file.txt
env:
ANT_LOG: "v"
timeout-minutes: 2

- name: create local user file
run: echo random > random.txt
env:
Expand Down

0 comments on commit b42fa68

Please sign in to comment.