Files
cunicu/pkg/signaling/backend_test.go
Steffen Vogel 9d9619b39c fix golangci-lint errors
Signed-off-by: Steffen Vogel <post@steffenvogel.de>
2023-05-22 10:27:14 +02:00

39 lines
896 B
Go

package signaling_test
import (
"net/url"
. "github.com/onsi/ginkgo/v2"
. "github.com/onsi/gomega"
"github.com/stv0g/cunicu/pkg/signaling"
"github.com/stv0g/cunicu/pkg/signaling/inprocess"
)
type readyHandler struct {
ready chan any
}
func (h *readyHandler) OnSignalingBackendReady(_ signaling.Backend) {
close(h.ready)
}
var _ = It("can create new a new backend", func() {
uri, err := url.Parse("inprocess:")
Expect(err).To(Succeed(), "Failed to parse URL: %s", err)
h := &readyHandler{make(chan any)}
cfg := &signaling.BackendConfig{
URI: uri,
OnReady: []signaling.BackendReadyHandler{h},
}
b, err := signaling.NewBackend(cfg)
Expect(err).To(Succeed(), "Failed to create new backend: %s", err)
_, isInprocessBackend := b.(*inprocess.Backend)
Expect(isInprocessBackend).To(BeTrue())
// Wait until the backend is ready
Eventually(h.ready).Should(BeClosed())
})