in progress
This commit is contained in:
49
sms_test.go
Normal file
49
sms_test.go
Normal file
@@ -0,0 +1,49 @@
|
||||
package smsc
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"math/rand"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func generateCode() string {
|
||||
return fmt.Sprintf("%04d", rand.Intn(10000))
|
||||
}
|
||||
|
||||
func TestSendSMS(t *testing.T) {
|
||||
// Создаем тестовый запрос
|
||||
req := RequestSMS{
|
||||
ApiKey: "80g8w5-t4D5n2X5v2!8s1S3p5E2n2X68e", // Замените на реальный API-ключ для теста
|
||||
Phone: "79397804368", // Замените на реальный номер телефона
|
||||
Message: "Код подтверждения: " + generateCode(),
|
||||
}
|
||||
|
||||
// Вызываем тестируемую функцию
|
||||
resp := SendSMS(req)
|
||||
|
||||
// Проверяем, что нет ошибки
|
||||
if resp.Error != "" {
|
||||
t.Errorf("Ошибка при отправке SMS: %s", resp.Error)
|
||||
}
|
||||
|
||||
// Проверяем, что ID и Cnt имеют ожидаемые значения (если применимо)
|
||||
// Эти проверки могут быть опциональными, так как значения зависят от ответа сервера
|
||||
if resp.ID == 0 {
|
||||
t.Error("Ожидался ненулевой ID")
|
||||
}
|
||||
if resp.Cnt == 0 {
|
||||
t.Error("Ожидался ненулевой Cnt")
|
||||
}
|
||||
|
||||
printJSON(t, resp)
|
||||
}
|
||||
|
||||
func printJSON(t *testing.T, data any) {
|
||||
jsonData, err := json.MarshalIndent(data, "", " ")
|
||||
if err != nil {
|
||||
t.Errorf("Ошибка при преобразовании в JSON: %v", err)
|
||||
return
|
||||
}
|
||||
fmt.Println(string(jsonData))
|
||||
}
|
||||
Reference in New Issue
Block a user