Теперь должен заработать
This commit is contained in:
parent
a6ecfb510b
commit
a968c5c6fb
2 changed files with 48 additions and 59 deletions
93
.github/workflows/compile-and-test.yml
vendored
93
.github/workflows/compile-and-test.yml
vendored
|
@ -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
|
Loading…
Add table
Add a link
Reference in a new issue