milvus/internal/util/mqclient/pulsar_id_test.go
XuanYang-cn ff8fef6ad0
Upgrade pulsar-client-go to 0.6.0 (#7909)
MessageID interface of pulsar-client-go adds
4 more methods. So I add these methods into
`MessageID` interface.

Resolves: #7770

Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2021-09-15 18:13:49 +08:00

70 lines
1.7 KiB
Go

// Copyright (C) 2019-2020 Zilliz. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
// with the License. You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software distributed under the License
// is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
// or implied. See the License for the specific language governing permissions and limitations under the License.
package mqclient
import (
"testing"
"github.com/apache/pulsar-client-go/pulsar"
"github.com/stretchr/testify/assert"
)
func TestPulsarID_Serialize(t *testing.T) {
mid := pulsar.EarliestMessageID()
pid := &pulsarID{
messageID: mid,
}
binary := pid.Serialize()
assert.NotNil(t, binary)
assert.NotZero(t, len(binary))
pid.LedgerID()
pid.EntryID()
pid.BatchIdx()
pid.PartitionIdx()
}
func Test_SerializePulsarMsgID(t *testing.T) {
mid := pulsar.EarliestMessageID()
binary := SerializePulsarMsgID(mid)
assert.NotNil(t, binary)
assert.NotZero(t, len(binary))
}
func Test_DeserializePulsarMsgID(t *testing.T) {
mid := pulsar.EarliestMessageID()
binary := SerializePulsarMsgID(mid)
res, err := DeserializePulsarMsgID(binary)
assert.Nil(t, err)
assert.NotNil(t, res)
}
func Test_PulsarMsgIDToString(t *testing.T) {
mid := pulsar.EarliestMessageID()
str := PulsarMsgIDToString(mid)
assert.NotNil(t, str)
assert.NotZero(t, len(str))
}
func Test_StringToPulsarMsgID(t *testing.T) {
mid := pulsar.EarliestMessageID()
str := PulsarMsgIDToString(mid)
res, err := StringToPulsarMsgID(str)
assert.Nil(t, err)
assert.NotNil(t, res)
}