44 lines
1.1 KiB
Go
44 lines
1.1 KiB
Go
package client
|
|
|
|
import (
|
|
tgbotapi "github.com/go-telegram-bot-api/telegram-bot-api/v5"
|
|
"github.com/stretchr/testify/suite"
|
|
"go.uber.org/zap"
|
|
"penahub.gitlab.yandexcloud.net/backend/templategen_feedback/internal/config"
|
|
"penahub.gitlab.yandexcloud.net/backend/templategen_feedback/internal/models"
|
|
"testing"
|
|
)
|
|
|
|
type TelegramTestSuite struct {
|
|
suite.Suite
|
|
bot *Telegram
|
|
}
|
|
|
|
func (suite *TelegramTestSuite) SetupSuite() {
|
|
cfg, err := config.NewConfig("test.env")
|
|
|
|
suite.NoError(err)
|
|
logger := zap.NewNop()
|
|
|
|
bot, err := tgbotapi.NewBotAPI(cfg.TelegramToken)
|
|
suite.NoError(err)
|
|
|
|
suite.bot = NewTelegram(logger, bot, cfg.TelegramChannelID, cfg.TemplatePath)
|
|
}
|
|
|
|
func (suite *TelegramTestSuite) TestTelegram_SendFeedback() {
|
|
arg := models.NewFeedback("test.client.telegram.sendFeedback", "suite test", "suite test")
|
|
err := suite.bot.SendFeedback(arg)
|
|
suite.NoError(err)
|
|
}
|
|
|
|
func (suite *TelegramTestSuite) TestTelegram_SendMessage() {
|
|
arg := "test.client.telegram.sendMessage: test message"
|
|
err := suite.bot.SendMessage(arg)
|
|
suite.NoError(err)
|
|
}
|
|
|
|
func TestTelegramTestSuite(t *testing.T) {
|
|
suite.Run(t, new(TelegramTestSuite))
|
|
}
|