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