telegram/main_test.go

42 lines
981 B
Go
Raw Permalink Normal View History

2024-08-02 11:19:49 +00:00
package main
2024-08-02 11:26:08 +00:00
import (
"fmt"
2024-08-08 19:57:58 +00:00
"math/rand"
2024-08-02 11:26:08 +00:00
"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"
2024-08-08 19:57:58 +00:00
"time"
2024-08-02 11:26:08 +00:00
)
func BenchmarkMain(b *testing.B) {
for n := 0; n < b.N; n++ {
rand.Seed(time.Now().UnixNano())
2024-08-08 19:57:58 +00:00
mockClient := client.NewClient()
mockStateManager := stateManager.NewStateManager(stateManager.Deps{
Questions: dataSetMap,
State: "q00",
2024-08-08 19:57:58 +00:00
Client: mockClient,
})
mockRespondent := respondent.NewRespondent(mockStateManager)
mockStateManager.SendQuestion()
for {
if _, ok := dataSetMap[mockStateManager.State]; !ok {
fmt.Println("state not found")
break
}
mockRespondent.Respond("q00")
2024-08-11 14:16:10 +00:00
fmt.Println("respond")
2024-08-08 19:57:58 +00:00
}
2024-08-11 14:16:10 +00:00
for number, msg := range mockClient.Messages {
fmt.Println(fmt.Sprintf("message %d: %s", number, msg))
}
2024-08-02 11:26:08 +00:00
2024-08-11 14:16:10 +00:00
fmt.Println("Complete")
2024-08-02 11:26:08 +00:00
}
}