Add tests for (*Messenger).classify
This commit is contained in:
parent
d923abfc97
commit
01488228f2
62
messenger_test.go
Normal file
62
messenger_test.go
Normal file
@ -0,0 +1,62 @@
|
||||
package messenger
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
func TestMessenger_Classify(t *testing.T) {
|
||||
m := New(Options{})
|
||||
|
||||
for name, test := range map[string]struct {
|
||||
msgInfo MessageInfo
|
||||
expected Action
|
||||
}{
|
||||
"unknown": {
|
||||
msgInfo: MessageInfo{},
|
||||
expected: UnknownAction,
|
||||
},
|
||||
"message": {
|
||||
msgInfo: MessageInfo{
|
||||
Message: &Message{},
|
||||
},
|
||||
expected: TextAction,
|
||||
},
|
||||
"delivery": {
|
||||
msgInfo: MessageInfo{
|
||||
Delivery: &Delivery{},
|
||||
},
|
||||
expected: DeliveryAction,
|
||||
},
|
||||
"read": {
|
||||
msgInfo: MessageInfo{
|
||||
Read: &Read{},
|
||||
},
|
||||
expected: ReadAction,
|
||||
},
|
||||
"postback": {
|
||||
msgInfo: MessageInfo{
|
||||
PostBack: &PostBack{},
|
||||
},
|
||||
expected: PostBackAction,
|
||||
},
|
||||
"optin": {
|
||||
msgInfo: MessageInfo{
|
||||
OptIn: &OptIn{},
|
||||
},
|
||||
expected: OptInAction,
|
||||
},
|
||||
"referral": {
|
||||
msgInfo: MessageInfo{
|
||||
ReferralMessage: &ReferralMessage{},
|
||||
},
|
||||
expected: ReferralAction,
|
||||
},
|
||||
} {
|
||||
t.Run("action "+name, func(t *testing.T) {
|
||||
action := m.classify(test.msgInfo, Entry{})
|
||||
assert.Exactly(t, action, test.expected)
|
||||
})
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user