test: add unit test cases

This commit is contained in:
Fu Diwei
2024-11-21 10:29:04 +08:00
parent 0b9312b549
commit 13582d1a7b
34 changed files with 434 additions and 28 deletions

View File

@@ -0,0 +1,64 @@
package telegram_test
import (
"context"
"flag"
"fmt"
"strings"
"testing"
provider "github.com/usual2970/certimate/internal/pkg/core/notifier/providers/telegram"
)
const (
mockSubject = "test_subject"
mockMessage = "test_message"
)
var (
fApiToken string
fChartId int64
)
func init() {
argsPrefix := "CERTIMATE_NOTIFIER_TELEGRAM_"
flag.StringVar(&fApiToken, argsPrefix+"APITOKEN", "", "")
flag.Int64Var(&fChartId, argsPrefix+"CHATID", 0, "")
}
/*
Shell command to run this test:
go test -v telegram_test.go -args \
--CERTIMATE_NOTIFIER_TELEGRAM_APITOKEN="your-api-token" \
--CERTIMATE_NOTIFIER_TELEGRAM_CHATID=123456
*/
func TestNotify(t *testing.T) {
flag.Parse()
t.Run("Notify", func(t *testing.T) {
t.Log(strings.Join([]string{
"args:",
fmt.Sprintf("APITOKEN: %v", fApiToken),
fmt.Sprintf("CHATID: %v", fChartId),
}, "\n"))
notifier, err := provider.New(&provider.TelegramNotifierConfig{
ApiToken: fApiToken,
ChatId: fChartId,
})
if err != nil {
t.Errorf("err: %+v", err)
return
}
res, err := notifier.Notify(context.Background(), mockSubject, mockMessage)
if err != nil {
t.Errorf("err: %+v", err)
return
}
t.Logf("ok: %v", res)
})
}