Теперь должен заработать

This commit is contained in:
AZEN-SGG 2024-12-21 21:56:40 +03:00
parent a6ecfb510b
commit a968c5c6fb
2 changed files with 48 additions and 59 deletions

View file

@ -13,64 +13,45 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Checkout code
uses: actions/checkout@v3
- name: Make `makefile.sh` executable
run: |
chmod +x makefile.sh
- name: Make `makefile.sh` executable
run: |
chmod +x makefile.sh
- name: Run `makefile.sh` to prepare Makefile
run: |
./makefile.sh
- name: Run `makefile.sh` to prepare Makefile
run: |
./makefile.sh delete
if [ $? -ne 0 ]; then
echo "::error::makefile.sh failed"
exit 1
fi
- name: Compile using Makefile
run: |
cd ComputationalGeometry/6Ex
make
if [ $? -ne 0 ]; then
echo "::error::Compilation failed"
exit 1
fi
- name: Run Tests
run: |
cd ComputationalGeometry/6Ex
if [ ! -f "./a.out" ]; then
echo "::error::Executable not found: a.out"
exit 1
fi
for file in t/*; do
echo "Testing with file: $file"
# Создаём файл ввода
(echo "0"; echo "$file") | ./a.out
if [ $? -ne 0 ]; then
echo "::error::makefile.sh failed"
echo "::error::Test failed for $file"
exit 1
fi
- name: Compile using Makefile
run: |
cd ComputationalGeometry/6Ex
make
if [ $? -ne 0 ]; then
echo "::error::Compilation failed"
exit 1
fi
- name: Run Tests
run: |
cd ComputationalGeometry/6Ex
if [ ! -f "./a.out" ]; then
echo "::error::Executable not found: a.out"
exit 1
fi
if [ ! -d "t" ]; then
echo "::error::Directory 't' with test files not found"
exit 1
fi
for file in t/*; do
echo "------------------------------------"
echo "Testing with file: $file"
# Создаём временный файл с "0" и именем тестового файла:
echo "0" > test_input.txt
echo "$file" >> test_input.txt
echo "==== DEBUG test_input.txt ===="
cat -A test_input.txt
echo "=============================="
# Теперь фидим это stdin
./a.out < test_input.txt
status=$?
echo "Exit code: $status"
if [ $status -ne 0 ]; then
echo "::error::Test failed for $file"
exit 1
fi
done
echo "All tests passed successfully."
done

View file

@ -5,9 +5,17 @@ find . -type f -name "makefile" | while read -r file; do
tmp_file=$(mktemp)
sed -e 's/a\.exe/\.\/a\.out/g' \
-e 's/\<del\>/rm/g' \
-e 's/\-lssp//g' "$file" > "$tmp_file"
if [ "$1" == "delete" ]; then
# Удаление строк с a.exe
sed -e '/a\.exe/d' \
-e 's/\<del\>/rm/g' \
-e 's/\-lssp//g' "$file" > "$tmp_file"
else
# Замена a.exe на ./a.out
sed -e 's/a\.exe/\.\/a\.out/g' \
-e 's/\<del\>/rm/g' \
-e 's/\-lssp//g' "$file" > "$tmp_file"
fi
mv "$tmp_file" "$file"
echo "File $file processed."