mirror of
https://github.com/matrix-org/dendrite
synced 2024-09-11 21:49:12 +02:00
The stale device lists table might contain entries for users we don't share a room with anymore. This now asks the roomserver about left users and removes those entries from the table. Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
29 lines
822 B
Go
29 lines
822 B
Go
package keyserver
|
|
|
|
import (
|
|
"context"
|
|
"testing"
|
|
|
|
roomserver "github.com/matrix-org/dendrite/roomserver/api"
|
|
"github.com/matrix-org/dendrite/test"
|
|
"github.com/matrix-org/dendrite/test/testrig"
|
|
)
|
|
|
|
type mockKeyserverRoomserverAPI struct {
|
|
leftUsers []string
|
|
}
|
|
|
|
func (m *mockKeyserverRoomserverAPI) QueryLeftUsers(ctx context.Context, req *roomserver.QueryLeftUsersRequest, res *roomserver.QueryLeftUsersResponse) error {
|
|
res.LeftUsers = m.leftUsers
|
|
return nil
|
|
}
|
|
|
|
// Merely tests that we can create an internal keyserver API
|
|
func Test_NewInternalAPI(t *testing.T) {
|
|
rsAPI := &mockKeyserverRoomserverAPI{}
|
|
test.WithAllDatabases(t, func(t *testing.T, dbType test.DBType) {
|
|
base, closeBase := testrig.CreateBaseDendrite(t, dbType)
|
|
defer closeBase()
|
|
_ = NewInternalAPI(base, &base.Cfg.KeyServer, nil, rsAPI)
|
|
})
|
|
}
|