1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
|
package controlproto
import (
"testing"
"github.com/centrifugal/centrifuge/internal/controlpb"
"github.com/stretchr/testify/require"
)
func TestEncoder(t *testing.T) {
encoder := NewProtobufEncoder()
cmd := &controlpb.Command{
UID: "test",
Method: controlpb.MethodTypeDisconnect,
Params: controlpb.Raw("{}"),
}
d, err := encoder.EncodeCommand(cmd)
require.NoError(t, err)
require.NotNil(t, d)
node := &controlpb.Node{
UID: "test",
Name: "test name",
Version: "v1.0.0",
NumChannels: 2,
NumClients: 3,
NumUsers: 1,
Uptime: 12,
Metrics: &controlpb.Metrics{
Interval: 60,
Items: map[string]float64{
"item": 1,
},
},
}
d, err = encoder.EncodeNode(node)
require.NoError(t, err)
require.NotNil(t, d)
disconnect := &controlpb.Disconnect{
User: "test",
}
d, err = encoder.EncodeDisconnect(disconnect)
require.NoError(t, err)
require.NotNil(t, d)
unsub := &controlpb.Unsubscribe{
User: "test",
Channel: "test channel",
}
d, err = encoder.EncodeUnsubscribe(unsub)
require.NoError(t, err)
require.NotNil(t, d)
surveyRequest := &controlpb.SurveyRequest{
ID: 1,
Op: "test",
Data: nil,
}
d, err = encoder.EncodeSurveyRequest(surveyRequest)
require.NoError(t, err)
require.NotNil(t, d)
surveyResponse := &controlpb.SurveyResponse{
ID: 1,
Code: 1,
Data: nil,
}
d, err = encoder.EncodeSurveyResponse(surveyResponse)
require.NoError(t, err)
require.NotNil(t, d)
}
|