mirror of
https://github.com/matrix-org/dendrite.git
synced 2026-03-03 00:43:10 -06:00
bugfixes
This commit is contained in:
parent
71e400b8cf
commit
03e2d66100
|
|
@ -29,7 +29,6 @@ NextEvent:
|
||||||
for _, eventID := range req.EventIDs {
|
for _, eventID := range req.EventIDs {
|
||||||
for _, r := range s.rooms {
|
for _, r := range s.rooms {
|
||||||
for _, ev := range r.Events() {
|
for _, ev := range r.Events() {
|
||||||
fmt.Println(ev.EventID())
|
|
||||||
if ev.EventID() == eventID {
|
if ev.EventID() == eventID {
|
||||||
res.Events = append(res.Events, ev)
|
res.Events = append(res.Events, ev)
|
||||||
continue NextEvent
|
continue NextEvent
|
||||||
|
|
@ -82,11 +81,9 @@ type syncKeyAPI struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestSyncAPI(t *testing.T) {
|
func TestSyncAPI(t *testing.T) {
|
||||||
testSync(t, test.DBTypePostgres)
|
|
||||||
/*
|
|
||||||
test.WithAllDatabases(t, func(t *testing.T, dbType test.DBType) {
|
test.WithAllDatabases(t, func(t *testing.T, dbType test.DBType) {
|
||||||
testSync(t, dbType)
|
testSync(t, dbType)
|
||||||
}) */
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
func testSync(t *testing.T, dbType test.DBType) {
|
func testSync(t *testing.T, dbType test.DBType) {
|
||||||
|
|
@ -119,9 +116,8 @@ func testSync(t *testing.T, dbType test.DBType) {
|
||||||
},
|
},
|
||||||
}))
|
}))
|
||||||
}
|
}
|
||||||
test.MustPublishMsgs(t, jsctx, msgs...)
|
|
||||||
|
|
||||||
AddPublicRoutes(base, &syncUserAPI{accounts: []userapi.Device{alice}}, &syncRoomserverAPI{rooms: []*test.Room{room}}, &syncKeyAPI{})
|
AddPublicRoutes(base, &syncUserAPI{accounts: []userapi.Device{alice}}, &syncRoomserverAPI{rooms: []*test.Room{room}}, &syncKeyAPI{})
|
||||||
|
test.MustPublishMsgs(t, jsctx, msgs...)
|
||||||
|
|
||||||
testCases := []struct {
|
testCases := []struct {
|
||||||
name string
|
name string
|
||||||
|
|
@ -155,7 +151,7 @@ func testSync(t *testing.T, dbType test.DBType) {
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
// TODO: find a better way
|
// TODO: find a better way
|
||||||
time.Sleep(1000 * time.Millisecond)
|
time.Sleep(500 * time.Millisecond)
|
||||||
|
|
||||||
for _, tc := range testCases {
|
for _, tc := range testCases {
|
||||||
w := httptest.NewRecorder()
|
w := httptest.NewRecorder()
|
||||||
|
|
@ -171,6 +167,13 @@ func testSync(t *testing.T, dbType test.DBType) {
|
||||||
if len(res.Rooms.Join) != len(tc.wantJoinedRooms) {
|
if len(res.Rooms.Join) != len(tc.wantJoinedRooms) {
|
||||||
t.Errorf("%s: got %v joined rooms, want %v.\nResponse: %+v", tc.name, len(res.Rooms.Join), len(tc.wantJoinedRooms), res)
|
t.Errorf("%s: got %v joined rooms, want %v.\nResponse: %+v", tc.name, len(res.Rooms.Join), len(tc.wantJoinedRooms), res)
|
||||||
}
|
}
|
||||||
|
t.Logf("res: %+v", res.Rooms.Join[room.ID])
|
||||||
|
|
||||||
|
gotEventIDs := make([]string, len(res.Rooms.Join[room.ID].Timeline.Events))
|
||||||
|
for i, ev := range res.Rooms.Join[room.ID].Timeline.Events {
|
||||||
|
gotEventIDs[i] = ev.EventID
|
||||||
|
}
|
||||||
|
test.AssertEventIDsEqual(t, gotEventIDs, room.Events())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -30,14 +30,14 @@ func CreateBaseDendrite(t *testing.T, dbType DBType) (*base.BaseDendrite, func()
|
||||||
var cfg config.Dendrite
|
var cfg config.Dendrite
|
||||||
cfg.Defaults(false)
|
cfg.Defaults(false)
|
||||||
cfg.Global.JetStream.InMemory = true
|
cfg.Global.JetStream.InMemory = true
|
||||||
// use a distinct prefix else concurrent postgres/sqlite runs will clash since NATS will use
|
|
||||||
// the file system event with InMemory=true :(
|
|
||||||
cfg.Global.JetStream.TopicPrefix = fmt.Sprintf("Test_%d_", dbType)
|
|
||||||
|
|
||||||
switch dbType {
|
switch dbType {
|
||||||
case DBTypePostgres:
|
case DBTypePostgres:
|
||||||
cfg.Global.Defaults(true) // autogen a signing key
|
cfg.Global.Defaults(true) // autogen a signing key
|
||||||
cfg.MediaAPI.Defaults(true) // autogen a media path
|
cfg.MediaAPI.Defaults(true) // autogen a media path
|
||||||
|
// use a distinct prefix else concurrent postgres/sqlite runs will clash since NATS will use
|
||||||
|
// the file system event with InMemory=true :(
|
||||||
|
cfg.Global.JetStream.TopicPrefix = fmt.Sprintf("Test_%d_", dbType)
|
||||||
connStr, close := PrepareDBConnectionString(t, dbType)
|
connStr, close := PrepareDBConnectionString(t, dbType)
|
||||||
cfg.Global.DatabaseOptions = config.DatabaseOptions{
|
cfg.Global.DatabaseOptions = config.DatabaseOptions{
|
||||||
ConnectionString: config.DataSource(connStr),
|
ConnectionString: config.DataSource(connStr),
|
||||||
|
|
@ -48,6 +48,9 @@ func CreateBaseDendrite(t *testing.T, dbType DBType) (*base.BaseDendrite, func()
|
||||||
return base.NewBaseDendrite(&cfg, "Test", base.DisableMetrics), close
|
return base.NewBaseDendrite(&cfg, "Test", base.DisableMetrics), close
|
||||||
case DBTypeSQLite:
|
case DBTypeSQLite:
|
||||||
cfg.Defaults(true) // sets a sqlite db per component
|
cfg.Defaults(true) // sets a sqlite db per component
|
||||||
|
// use a distinct prefix else concurrent postgres/sqlite runs will clash since NATS will use
|
||||||
|
// the file system event with InMemory=true :(
|
||||||
|
cfg.Global.JetStream.TopicPrefix = fmt.Sprintf("Test_%d_", dbType)
|
||||||
return base.NewBaseDendrite(&cfg, "Test", base.DisableMetrics), func() {
|
return base.NewBaseDendrite(&cfg, "Test", base.DisableMetrics), func() {
|
||||||
// cleanup db files. This risks getting out of sync as we add more database strings :(
|
// cleanup db files. This risks getting out of sync as we add more database strings :(
|
||||||
dbFiles := []config.DataSource{
|
dbFiles := []config.DataSource{
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue