Тесты для dispak
Aug. 27th, 2020 12:16 amЯ добавил в besm6/dispak возможность запускать тесты. Делается это так. Сначала скачиваем и собираем симулятор:
Сейчас пока не сделаны шаблоны при сравнении выдачи тестов с образцом. По этой причине некоторые тесты не проходят из-за несравнения чувствительной ко времени информации. типа даты. Чтобы увидеть подробности, почему не проходит какой-то тест, запускайте ctest с параметрами, например:
После этого запускаем тесты, получаем примерно такой вывод:git clone https://github.com/besm6/dispak.git
cd dispak
mkdir build
cd build
cmake ..
make
sudo make install
Каждый тест находится в отдельной папке, скажем, tests/algol-besm6, и состоит из трёх файлов:$ cd build
$ make test
Running tests...
Test project /Users/vak/Project/Besm-6/dispak/build
Start 1: algol-besm6
1/3 Test #1: algol-besm6 ...................... Passed 0.05 sec
Start 2: algol-gdr
2/3 Test #2: algol-gdr ........................ Passed 0.06 sec
Start 3: fortran-dubna
3/3 Test #3: fortran-dubna .................... Passed 0.09 sec
100% tests passed, 0 tests failed out of 3
Total Test time (real) = 0.20 sec
- algol-besm6.b6 - входной пакет задачи для dispak
- options.txt - параметры командной строки для dispak: как минимум имя файла входного пакета
- output.txt - ожидаемый вывод
Сейчас пока не сделаны шаблоны при сравнении выдачи тестов с образцом. По этой причине некоторые тесты не проходят из-за несравнения чувствительной ко времени информации. типа даты. Чтобы увидеть подробности, почему не проходит какой-то тест, запускайте ctest с параметрами, например:
$ ctest -V -R algol-gdr
UpdateCTestConfiguration from :/Users/vak/Project/Besm-6/dispak/build/DartConfiguration.tcl
Test project /Users/vak/Project/Besm-6/dispak/build
Constructing a list of tests
Done constructing a list of tests
Updating test list for fixtures
Added 0 tests to meet fixture requirements
Checking test dependency graph...
Checking test dependency graph end
test 2
Start 2: algol-gdr
2: Test command: /usr/local/Frameworks/Python.framework/Versions/3.8/bin/python3.8 "../run-test.py"
2: Test timeout computed to be: 10000000
2: @@ -1 +1 @@
2: -
26.08.20 М1
2: +
27.08.20 М1
2: FATAL: Output does not match the sample
1/1 Test #2: algol-gdr ........................***Failed 0.07 sec
0% tests passed, 1 tests failed out of 1
Total Test time (real) = 0.07 sec
The following tests FAILED:
2 - algol-gdr (Failed)
Errors while running CTest