From 645381c610bbca490dc192628ed511c74daf2ad2 Mon Sep 17 00:00:00 2001 From: Demian Date: Sat, 26 Sep 2020 14:29:47 +0300 Subject: [PATCH] test: assert to require for errors --- bot_test.go | 41 +++++++++++++++++++++-------------------- options_test.go | 3 ++- polls_test.go | 9 +++++---- util_test.go | 13 +++++++++++-- 4 files changed, 39 insertions(+), 27 deletions(-) diff --git a/bot_test.go b/bot_test.go index a21ed1e..1dda816 100644 --- a/bot_test.go +++ b/bot_test.go @@ -9,6 +9,7 @@ import ( "time" "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" ) const ( @@ -67,7 +68,7 @@ func TestNewBot(t *testing.T) { pref.offline = true b, err = NewBot(pref) - assert.NoError(t, err) + require.NoError(t, err) assert.Equal(t, client, b.client) assert.Equal(t, pref.URL, b.URL) assert.Equal(t, pref.Poller, b.Poller) @@ -120,7 +121,7 @@ func TestBotStart(t *testing.T) { } // remove webhook to be sure that bot can poll - assert.NoError(t, b.RemoveWebhook()) + require.NoError(t, b.RemoveWebhook()) go b.Start() b.Stop() @@ -131,7 +132,7 @@ func TestBotStart(t *testing.T) { }() b, err = NewBot(pref) - assert.NoError(t, err) + require.NoError(t, err) b.Poller = tp var ok bool @@ -319,7 +320,7 @@ func TestBot(t *testing.T) { t.Run("Send(what=Sendable)", func(t *testing.T) { msg, err = b.Send(to, photo) - assert.NoError(t, err) + require.NoError(t, err) assert.NotNil(t, msg.Photo) assert.Equal(t, photo.Caption, msg.Caption) }) @@ -332,7 +333,7 @@ func TestBot(t *testing.T) { assert.Error(t, err) msgs, err := b.SendAlbum(to, Album{photo, photo}) - assert.NoError(t, err) + require.NoError(t, err) assert.Len(t, msgs, 2) assert.NotEmpty(t, msgs[0].AlbumID) }) @@ -341,12 +342,12 @@ func TestBot(t *testing.T) { b.parseMode = ModeHTML edited, err := b.EditCaption(msg, "new caption with html") - assert.NoError(t, err) + require.NoError(t, err) assert.Equal(t, "new caption with html", edited.Caption) assert.Equal(t, EntityBold, edited.CaptionEntities[0].Type) edited, err = b.EditCaption(msg, "*new caption with markdown*", ModeMarkdown) - assert.NoError(t, err) + require.NoError(t, err) assert.Equal(t, "new caption with markdown", edited.Caption) assert.Equal(t, EntityBold, edited.CaptionEntities[0].Type) @@ -355,24 +356,24 @@ func TestBot(t *testing.T) { t.Run("Edit(what=InputMedia)", func(t *testing.T) { edited, err := b.Edit(msg, photo) - assert.NoError(t, err) + require.NoError(t, err) assert.Equal(t, edited.Photo.UniqueID, photo.UniqueID) }) t.Run("Send(what=string)", func(t *testing.T) { msg, err = b.Send(to, t.Name()) - assert.NoError(t, err) + require.NoError(t, err) assert.Equal(t, t.Name(), msg.Text) rpl, err := b.Reply(msg, t.Name()) - assert.NoError(t, err) + require.NoError(t, err) assert.Equal(t, rpl.Text, msg.Text) assert.NotNil(t, rpl.ReplyTo) assert.Equal(t, rpl.ReplyTo, msg) assert.True(t, rpl.IsReply()) fwd, err := b.Forward(to, msg) - assert.NoError(t, err) + require.NoError(t, err) assert.NotNil(t, msg, fwd) assert.True(t, fwd.IsForwarded()) @@ -383,7 +384,7 @@ func TestBot(t *testing.T) { t.Run("Edit(what=string)", func(t *testing.T) { msg, err = b.Edit(msg, t.Name()) - assert.NoError(t, err) + require.NoError(t, err) assert.Equal(t, t.Name(), msg.Text) _, err = b.Edit(msg, msg.Text) @@ -409,11 +410,11 @@ func TestBot(t *testing.T) { } edited, err := b.Edit(msg, good) - assert.NoError(t, err) + require.NoError(t, err) assert.Equal(t, edited.ReplyMarkup.InlineKeyboard, good.InlineKeyboard) edited, err = b.EditReplyMarkup(edited, nil) - assert.NoError(t, err) + require.NoError(t, err) assert.Nil(t, edited.ReplyMarkup.InlineKeyboard) _, err = b.Edit(edited, bad) @@ -423,23 +424,23 @@ func TestBot(t *testing.T) { t.Run("Edit(what=Location)", func(t *testing.T) { loc := &Location{Lat: 42, Lng: 69, LivePeriod: 60} edited, err := b.Send(to, loc) - assert.NoError(t, err) + require.NoError(t, err) assert.NotNil(t, edited.Location) loc = &Location{Lat: loc.Lng, Lng: loc.Lat} edited, err = b.Edit(edited, *loc) - assert.NoError(t, err) + require.NoError(t, err) assert.NotNil(t, edited.Location) }) // should be the last t.Run("Delete()", func(t *testing.T) { - assert.NoError(t, b.Delete(msg)) + require.NoError(t, b.Delete(msg)) }) t.Run("Notify()", func(t *testing.T) { assert.Equal(t, ErrBadRecipient, b.Notify(nil, Typing)) - assert.NoError(t, b.Notify(to, Typing)) + require.NoError(t, b.Notify(to, Typing)) }) t.Run("Answer()", func(t *testing.T) { @@ -470,10 +471,10 @@ func TestBot(t *testing.T) { Text: "test", Description: "test command", }} - assert.NoError(t, b.SetCommands(orig)) + require.NoError(t, b.SetCommands(orig)) cmds, err := b.GetCommands() - assert.NoError(t, err) + require.NoError(t, err) assert.Equal(t, orig, cmds) }) } diff --git a/options_test.go b/options_test.go index 9749ad9..30029e4 100644 --- a/options_test.go +++ b/options_test.go @@ -4,6 +4,7 @@ import ( "testing" "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" ) func TestBtn(t *testing.T) { @@ -58,6 +59,6 @@ func TestOptions(t *testing.T) { assert.Equal(t, o.copy(), o) data, err := PollQuiz.MarshalJSON() - assert.NoError(t, err) + require.NoError(t, err) assert.Equal(t, []byte(`{"type":"quiz"}`), data) } diff --git a/polls_test.go b/polls_test.go index e95a7d8..5f42d4e 100644 --- a/polls_test.go +++ b/polls_test.go @@ -5,6 +5,7 @@ import ( "time" "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" ) func TestPoll(t *testing.T) { @@ -18,8 +19,8 @@ func TestPoll(t *testing.T) { } func TestPollSend(t *testing.T) { - if token == "" { - t.Skip("TELEBOT_SECRET is required") + if b == nil { + t.Skip("Cached bot instance is bad (probably wrong or empty TELEBOT_SECRET)") } if userID == 0 { t.Skip("USER_ID is required for Poll methods test") @@ -37,7 +38,7 @@ func TestPollSend(t *testing.T) { poll.AddOptions("1", "2") msg, err := b.Send(user, poll) - assert.NoError(t, err) + require.NoError(t, err) assert.Equal(t, poll.Type, msg.Poll.Type) assert.Equal(t, poll.Question, msg.Poll.Question) assert.Equal(t, poll.Options, msg.Poll.Options) @@ -45,7 +46,7 @@ func TestPollSend(t *testing.T) { assert.Equal(t, poll.CloseDate(), msg.Poll.CloseDate()) p, err := b.StopPoll(msg) - assert.NoError(t, err) + require.NoError(t, err) assert.Equal(t, poll.Options, p.Options) assert.Equal(t, 0, p.VoterCount) } diff --git a/util_test.go b/util_test.go index 78f6991..131d8da 100644 --- a/util_test.go +++ b/util_test.go @@ -4,11 +4,12 @@ import ( "testing" "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" ) func TestExtractOk(t *testing.T) { data := []byte(`{"ok":true,"result":{"foo":"bar"}}`) - assert.NoError(t, extractOk(data)) + require.NoError(t, extractOk(data)) data = []byte(`{"ok":false,"error_code":429,"description":"Too Many Requests: retry after 8","parameters":{"retry_after":8}}`) assert.Error(t, extractOk(data)) @@ -24,7 +25,7 @@ func TestExtractMessage(t *testing.T) { data = []byte(`{"ok":true,"result":{"foo":"bar"}}`) _, err = extractMessage(data) - assert.NoError(t, err) + require.NoError(t, err) } func TestEmbedRights(t *testing.T) { @@ -44,6 +45,14 @@ func TestEmbedRights(t *testing.T) { "can_send_polls": true, "can_send_other_messages": true, "can_add_web_page_previews": true, + "can_change_info": false, + "can_post_messages": false, + "can_edit_messages": false, + "can_delete_messages": false, + "can_invite_users": false, + "can_restrict_members": false, + "can_pin_messages": false, + "can_promote_members": false, } assert.Equal(t, expected, params) }