27 lines
1.3 KiB
Markdown
27 lines
1.3 KiB
Markdown
|
# testtool - проверка решений
|
|||
|
|
|||
|
testtool - cobra-based cli. У всех комманд есть help.
|
|||
|
Использование можно начать с такого:
|
|||
|
```
|
|||
|
go run ./tools/testtool/main.go --help
|
|||
|
```
|
|||
|
|
|||
|
При тестирование посылки выполняются следующие шаги:
|
|||
|
0. Создаётся временная директория, в которой будут собраны необходимые файлы.
|
|||
|
1. Копируются файлы пакета из посылки.
|
|||
|
2. Копируются все файлы тестов из приватного репозитория.
|
|||
|
3. Копируются !change файлы из приватного репозитория.
|
|||
|
4. Копируются testdata из приватного репозитория.
|
|||
|
5. Копируются go.mod и go.sum
|
|||
|
6. Запускается go test -mod=readonly -tags private ./...
|
|||
|
|
|||
|
## Разработчикам
|
|||
|
|
|||
|
Запуск тестов:
|
|||
|
```
|
|||
|
go test -v ./tools/testtool/...
|
|||
|
```
|
|||
|
|
|||
|
В tools/testtool/testdata/submissions находятся sample проекты, на которых запускаются тесты.
|
|||
|
В поддиректории correct - тесты с верным решением студента, в incorrect - c неверным.
|