components-contrib/pubsub/pulsar/pulsar_test.go

39 lines
944 B
Go

package pulsar
import (
"testing"
"github.com/dapr/components-contrib/pubsub"
"github.com/stretchr/testify/assert"
)
func TestParsePulsarMetadata(t *testing.T) {
m := pubsub.Metadata{}
m.Properties = map[string]string{"host": "a", "enableTLS": "false"}
meta, err := parsePulsarMetadata(m)
assert.Nil(t, err)
assert.Equal(t, "a", meta.Host)
assert.Equal(t, false, meta.EnableTLS)
}
func TestMissingHost(t *testing.T) {
m := pubsub.Metadata{}
m.Properties = map[string]string{"host": ""}
meta, err := parsePulsarMetadata(m)
assert.Error(t, err)
assert.Nil(t, meta)
assert.Equal(t, "pulsar error: missing pulsar host", err.Error())
}
func TestInvalidTLSInput(t *testing.T) {
m := pubsub.Metadata{}
m.Properties = map[string]string{"host": "a", "enableTLS": "honk"}
meta, err := parsePulsarMetadata(m)
assert.Error(t, err)
assert.Nil(t, meta)
assert.Equal(t, "pulsar error: invalid value for enableTLS", err.Error())
}