2023-01-18 15:35:07 +02:00
|
|
|
|
package main
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"fmt"
|
|
|
|
|
"strconv"
|
|
|
|
|
|
|
|
|
|
"github.com/google/uuid"
|
|
|
|
|
"gitstore.ru/tolikproh/mchstest/internal/cnst"
|
|
|
|
|
"gitstore.ru/tolikproh/mchstest/internal/model"
|
|
|
|
|
"gitstore.ru/tolikproh/mchstest/pkg/util"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
func main() {
|
|
|
|
|
|
2023-01-19 11:13:08 +02:00
|
|
|
|
fmt.Println("Утилита для пропуска подготовительных вопросов (марафон) к тестированию с сайта: https://digital.mchs.gov.ru/fgpn/simulator")
|
|
|
|
|
uidMchs, err := uuid.Parse(util.InputTerminal("Необходимо ввести UUID сессии"))
|
|
|
|
|
util.Check(err, "ОШИБКА: формат UUID не верный. Завершение работы.")
|
2023-01-18 15:35:07 +02:00
|
|
|
|
|
2023-01-19 11:13:08 +02:00
|
|
|
|
numMchsStr := util.InputTerminal("Необходимо ввести номер вопроса (с 1 до 520)")
|
|
|
|
|
numMchs, err := strconv.Atoi(numMchsStr)
|
|
|
|
|
util.Check(err, "ОШИБКА: необходимо ввести номер в диапазоне с 1 до 520. Завершение работы.")
|
2023-01-18 15:35:07 +02:00
|
|
|
|
|
2023-01-19 11:13:08 +02:00
|
|
|
|
if numMchs <= 0 || numMchs > 520 {
|
|
|
|
|
util.Check(nil, "ОШИБКА: не верный диапазон (должно быть с 1 до 520). Завершение работы.")
|
2023-01-18 15:35:07 +02:00
|
|
|
|
}
|
|
|
|
|
|
2023-01-19 11:13:08 +02:00
|
|
|
|
var rN model.ReqNull
|
|
|
|
|
var rA model.ReqAnswer
|
|
|
|
|
fmt.Print("Выполняется")
|
|
|
|
|
body, _ := util.ReqestToSiteJSON(rN, cnst.Url, uidMchs)
|
|
|
|
|
for i := 1; i < numMchs; i++ {
|
|
|
|
|
d := model.UnmarshalJSONToMTType(body)
|
|
|
|
|
fmt.Print(".")
|
|
|
|
|
rA.Answer = d.ValidAnswer
|
|
|
|
|
body, err = util.ReqestToSiteJSON(rA, cnst.Url, uidMchs)
|
|
|
|
|
util.Check(err, "")
|
|
|
|
|
}
|
|
|
|
|
fmt.Println("\nРабота выполнена, пропущено", numMchs, "вопросов! Обновите страницу на сайте и продолжайте отвечать на подготовительные вопросы.")
|
2023-01-18 15:35:07 +02:00
|
|
|
|
}
|