Files
livekit/pkg/service/roomallocator_test.go
T
David Colburn abde72a907 Remove room manager from room service (#119)
* start splitting

* room allocator

* remove room manager

* Update pkg/service/roomallocator.go

Co-authored-by: David Zhao <david@davidzhao.com>

Co-authored-by: David Zhao <david@davidzhao.com>
2021-09-17 01:29:29 -05:00

43 lines
1.3 KiB
Go

package service_test
import (
"context"
"testing"
livekit "github.com/livekit/protocol/proto"
"github.com/stretchr/testify/require"
"github.com/livekit/livekit-server/pkg/config"
"github.com/livekit/livekit-server/pkg/routing"
"github.com/livekit/livekit-server/pkg/routing/routingfakes"
"github.com/livekit/livekit-server/pkg/service"
"github.com/livekit/livekit-server/pkg/service/servicefakes"
)
func TestCreateRoom(t *testing.T) {
ra, conf := newTestRoomAllocator(t)
t.Run("ensure default room settings are applied", func(t *testing.T) {
room, err := ra.CreateRoom(context.Background(), &livekit.CreateRoomRequest{Name: "myroom"})
require.NoError(t, err)
require.Equal(t, conf.Room.EmptyTimeout, room.EmptyTimeout)
require.NotEmpty(t, room.EnabledCodecs)
})
}
func newTestRoomAllocator(t *testing.T) (*service.RoomAllocator, *config.Config) {
store := &servicefakes.FakeRoomStore{}
store.LoadRoomReturns(nil, service.ErrRoomNotFound)
router := &routingfakes.FakeRouter{}
conf, err := config.NewConfig("", nil)
require.NoError(t, err)
selector := &routing.RandomSelector{}
node, err := routing.NewLocalNode(conf)
require.NoError(t, err)
router.GetNodeForRoomReturns(node, nil)
ra := service.NewRoomAllocator(conf, router, selector, store)
return ra, conf
}