Add missing helpers, move helper tests to own file.
parent
ed7fe62451
commit
e7b9f16e73
89
bot_test.go
89
bot_test.go
|
@ -419,95 +419,6 @@ func TestSetWebhookWithoutCert(t *testing.T) {
|
||||||
bot.RemoveWebhook()
|
bot.RemoveWebhook()
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestNewInlineQueryResultArticle(t *testing.T) {
|
|
||||||
result := tgbotapi.NewInlineQueryResultArticle("id", "title", "message")
|
|
||||||
|
|
||||||
if result.Type != "article" ||
|
|
||||||
result.ID != "id" ||
|
|
||||||
result.Title != "title" ||
|
|
||||||
result.InputMessageContent.(tgbotapi.InputTextMessageContent).Text != "message" {
|
|
||||||
t.Fail()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestNewInlineQueryResultGIF(t *testing.T) {
|
|
||||||
result := tgbotapi.NewInlineQueryResultGIF("id", "google.com")
|
|
||||||
|
|
||||||
if result.Type != "gif" ||
|
|
||||||
result.ID != "id" ||
|
|
||||||
result.URL != "google.com" {
|
|
||||||
t.Fail()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestNewInlineQueryResultMPEG4GIF(t *testing.T) {
|
|
||||||
result := tgbotapi.NewInlineQueryResultMPEG4GIF("id", "google.com")
|
|
||||||
|
|
||||||
if result.Type != "mpeg4_gif" ||
|
|
||||||
result.ID != "id" ||
|
|
||||||
result.URL != "google.com" {
|
|
||||||
t.Fail()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestNewInlineQueryResultPhoto(t *testing.T) {
|
|
||||||
result := tgbotapi.NewInlineQueryResultPhoto("id", "google.com")
|
|
||||||
|
|
||||||
if result.Type != "photo" ||
|
|
||||||
result.ID != "id" ||
|
|
||||||
result.URL != "google.com" {
|
|
||||||
t.Fail()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestNewInlineQueryResultVideo(t *testing.T) {
|
|
||||||
result := tgbotapi.NewInlineQueryResultVideo("id", "google.com")
|
|
||||||
|
|
||||||
if result.Type != "video" ||
|
|
||||||
result.ID != "id" ||
|
|
||||||
result.URL != "google.com" {
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestNewEditMessageText(t *testing.T) {
|
|
||||||
edit := tgbotapi.NewEditMessageText(ChatID, ReplyToMessageID, "new text")
|
|
||||||
|
|
||||||
if edit.Text != "new text" ||
|
|
||||||
edit.BaseEdit.ChatID != ChatID ||
|
|
||||||
edit.BaseEdit.MessageID != ReplyToMessageID {
|
|
||||||
t.Fail()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestNewEditMessageCaption(t *testing.T) {
|
|
||||||
edit := tgbotapi.NewEditMessageCaption(ChatID, ReplyToMessageID, "new caption")
|
|
||||||
|
|
||||||
if edit.Caption != "new caption" ||
|
|
||||||
edit.BaseEdit.ChatID != ChatID ||
|
|
||||||
edit.BaseEdit.MessageID != ReplyToMessageID {
|
|
||||||
t.Fail()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestNewEditMessageReplyMarkup(t *testing.T) {
|
|
||||||
markup := tgbotapi.InlineKeyboardMarkup{
|
|
||||||
InlineKeyboard: [][]tgbotapi.InlineKeyboardButton{
|
|
||||||
[]tgbotapi.InlineKeyboardButton{
|
|
||||||
tgbotapi.InlineKeyboardButton{Text: "test"},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
edit := tgbotapi.NewEditMessageReplyMarkup(ChatID, ReplyToMessageID, markup)
|
|
||||||
|
|
||||||
if edit.ReplyMarkup.InlineKeyboard[0][0].Text != "test" ||
|
|
||||||
edit.BaseEdit.ChatID != ChatID ||
|
|
||||||
edit.BaseEdit.MessageID != ReplyToMessageID {
|
|
||||||
t.Fail()
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestUpdatesChan(t *testing.T) {
|
func TestUpdatesChan(t *testing.T) {
|
||||||
bot, _ := getBot(t)
|
bot, _ := getBot(t)
|
||||||
|
|
||||||
|
|
42
helpers.go
42
helpers.go
|
@ -352,6 +352,48 @@ func NewInlineQueryResultVideo(id, url string) InlineQueryResultVideo {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewInlineQueryResultAudio creates a new inline query audio.
|
||||||
|
func NewInlineQueryResultAudio(id, url, title string) InlineQueryResultAudio {
|
||||||
|
return InlineQueryResultAudio{
|
||||||
|
Type: "audio",
|
||||||
|
ID: id,
|
||||||
|
URL: url,
|
||||||
|
Title: title,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// NewInlineQueryResultVoice creates a new inline query voice.
|
||||||
|
func NewInlineQueryResultVoice(id, url, title string) InlineQueryResultVoice {
|
||||||
|
return InlineQueryResultVoice{
|
||||||
|
Type: "voice",
|
||||||
|
ID: id,
|
||||||
|
URL: url,
|
||||||
|
Title: title,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// NewInlineQueryResultDocument creates a new inline query document.
|
||||||
|
func NewInlineQueryResultDocument(id, url, title, mimeType string) InlineQueryResultDocument {
|
||||||
|
return InlineQueryResultDocument{
|
||||||
|
Type: "document",
|
||||||
|
ID: id,
|
||||||
|
URL: url,
|
||||||
|
Title: title,
|
||||||
|
MimeType: mimeType,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// NewInlineQueryResultLocation creates a new inline query location.
|
||||||
|
func NewInlineQueryResultLocation(id, title string, latitude, longitude float64) InlineQueryResultLocation {
|
||||||
|
return InlineQueryResultLocation{
|
||||||
|
Type: "location",
|
||||||
|
ID: id,
|
||||||
|
Title: title,
|
||||||
|
Latitude: latitude,
|
||||||
|
Longitude: longitude,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// NewEditMessageText allows you to edit the text of a message.
|
// NewEditMessageText allows you to edit the text of a message.
|
||||||
func NewEditMessageText(chatID int64, messageID int, text string) EditMessageTextConfig {
|
func NewEditMessageText(chatID int64, messageID int, text string) EditMessageTextConfig {
|
||||||
return EditMessageTextConfig{
|
return EditMessageTextConfig{
|
||||||
|
|
|
@ -0,0 +1,137 @@
|
||||||
|
package tgbotapi_test
|
||||||
|
|
||||||
|
import (
|
||||||
|
"github.com/go-telegram-bot-api/telegram-bot-api"
|
||||||
|
"testing"
|
||||||
|
)
|
||||||
|
|
||||||
|
func TestNewInlineQueryResultArticle(t *testing.T) {
|
||||||
|
result := tgbotapi.NewInlineQueryResultArticle("id", "title", "message")
|
||||||
|
|
||||||
|
if result.Type != "article" ||
|
||||||
|
result.ID != "id" ||
|
||||||
|
result.Title != "title" ||
|
||||||
|
result.InputMessageContent.(tgbotapi.InputTextMessageContent).Text != "message" {
|
||||||
|
t.Fail()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestNewInlineQueryResultGIF(t *testing.T) {
|
||||||
|
result := tgbotapi.NewInlineQueryResultGIF("id", "google.com")
|
||||||
|
|
||||||
|
if result.Type != "gif" ||
|
||||||
|
result.ID != "id" ||
|
||||||
|
result.URL != "google.com" {
|
||||||
|
t.Fail()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestNewInlineQueryResultMPEG4GIF(t *testing.T) {
|
||||||
|
result := tgbotapi.NewInlineQueryResultMPEG4GIF("id", "google.com")
|
||||||
|
|
||||||
|
if result.Type != "mpeg4_gif" ||
|
||||||
|
result.ID != "id" ||
|
||||||
|
result.URL != "google.com" {
|
||||||
|
t.Fail()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestNewInlineQueryResultPhoto(t *testing.T) {
|
||||||
|
result := tgbotapi.NewInlineQueryResultPhoto("id", "google.com")
|
||||||
|
|
||||||
|
if result.Type != "photo" ||
|
||||||
|
result.ID != "id" ||
|
||||||
|
result.URL != "google.com" {
|
||||||
|
t.Fail()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestNewInlineQueryResultVideo(t *testing.T) {
|
||||||
|
result := tgbotapi.NewInlineQueryResultVideo("id", "google.com")
|
||||||
|
|
||||||
|
if result.Type != "video" ||
|
||||||
|
result.ID != "id" ||
|
||||||
|
result.URL != "google.com" {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestNewInlineQueryResultAudio(t *testing.T) {
|
||||||
|
result := tgbotapi.NewInlineQueryResultAudio("id", "google.com", "title")
|
||||||
|
|
||||||
|
if result.Type != "audio" ||
|
||||||
|
result.ID != "id" ||
|
||||||
|
result.URL != "google.com" ||
|
||||||
|
result.Title != "title" {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestNewInlineQueryResultVoice(t *testing.T) {
|
||||||
|
result := tgbotapi.NewInlineQueryResultVoice("id", "google.com", "title")
|
||||||
|
|
||||||
|
if result.Type != "voice" ||
|
||||||
|
result.ID != "id" ||
|
||||||
|
result.URL != "google.com" ||
|
||||||
|
result.Title != "title" {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestNewInlineQueryResultDocument(t *testing.T) {
|
||||||
|
result := tgbotapi.NewInlineQueryResultDocument("id", "google.com", "title", "mime/type")
|
||||||
|
|
||||||
|
if result.Type != "document" ||
|
||||||
|
result.ID != "id" ||
|
||||||
|
result.URL != "google.com" ||
|
||||||
|
result.Title != "title" ||
|
||||||
|
result.MimeType != "mime/type" {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestNewInlineQueryResultLocation(t *testing.T) {
|
||||||
|
result := tgbotapi.NewInlineQueryResultLocation("id", "name", 40, 50)
|
||||||
|
|
||||||
|
if result.Type != "location" ||
|
||||||
|
result.ID != "id" ||
|
||||||
|
result.Title != "name" ||
|
||||||
|
result.Latitude != 40 ||
|
||||||
|
result.Longitude != 50 {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestNewEditMessageText(t *testing.T) {
|
||||||
|
edit := tgbotapi.NewEditMessageText(ChatID, ReplyToMessageID, "new text")
|
||||||
|
|
||||||
|
if edit.Text != "new text" ||
|
||||||
|
edit.BaseEdit.ChatID != ChatID ||
|
||||||
|
edit.BaseEdit.MessageID != ReplyToMessageID {
|
||||||
|
t.Fail()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestNewEditMessageCaption(t *testing.T) {
|
||||||
|
edit := tgbotapi.NewEditMessageCaption(ChatID, ReplyToMessageID, "new caption")
|
||||||
|
|
||||||
|
if edit.Caption != "new caption" ||
|
||||||
|
edit.BaseEdit.ChatID != ChatID ||
|
||||||
|
edit.BaseEdit.MessageID != ReplyToMessageID {
|
||||||
|
t.Fail()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestNewEditMessageReplyMarkup(t *testing.T) {
|
||||||
|
markup := tgbotapi.InlineKeyboardMarkup{
|
||||||
|
InlineKeyboard: [][]tgbotapi.InlineKeyboardButton{
|
||||||
|
[]tgbotapi.InlineKeyboardButton{
|
||||||
|
tgbotapi.InlineKeyboardButton{Text: "test"},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
edit := tgbotapi.NewEditMessageReplyMarkup(ChatID, ReplyToMessageID, markup)
|
||||||
|
|
||||||
|
if edit.ReplyMarkup.InlineKeyboard[0][0].Text != "test" ||
|
||||||
|
edit.BaseEdit.ChatID != ChatID ||
|
||||||
|
edit.BaseEdit.MessageID != ReplyToMessageID {
|
||||||
|
t.Fail()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue