package main import ( "fmt" "math/rand" "penahub.gitlab.yandexcloud.net/backend/quiz/telegram/client" "penahub.gitlab.yandexcloud.net/backend/quiz/telegram/respondent" stateManager "penahub.gitlab.yandexcloud.net/backend/quiz/telegram/state_manager" "testing" "time" ) func BenchmarkMain(b *testing.B) { for n := 0; n < b.N; n++ { rand.Seed(time.Now().UnixNano()) mockClient := client.NewClient() mockStateManager := stateManager.NewStateManager(stateManager.Deps{ Questions: dataSetMap, State: "q00", Client: mockClient, }) mockRespondent := respondent.NewRespondent(mockStateManager) mockStateManager.SendQuestion() for { if _, ok := dataSetMap[mockStateManager.State]; !ok { fmt.Println("state not found") break } mockRespondent.Respond("q00") fmt.Println("respond") } for number, msg := range mockClient.Messages { fmt.Println(fmt.Sprintf("message %d: %s", number, msg)) } fmt.Println("Complete") } }