mirror of
https://github.com/matrix-org/dendrite.git
synced 2026-01-09 07:03:10 -06:00
Persist the federated invite event so we have a NID,
fix test
This commit is contained in:
parent
8d0818b233
commit
fde0c3a2c7
|
|
@ -107,13 +107,19 @@ func (r *Inviter) PerformInvite(
|
|||
}
|
||||
|
||||
updateMembershipTableManually := func() ([]api.OutputEvent, error) {
|
||||
event := event.Unwrap()
|
||||
var eventNID types.EventNID
|
||||
eventNID, _, _, _, _, err = r.DB.StoreEvent(ctx, event, nil, false)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("r.DB.StoreEvent: %w", err)
|
||||
}
|
||||
var updater *shared.MembershipUpdater
|
||||
if updater, err = r.DB.MembershipUpdater(ctx, roomID, targetUserID, isTargetLocal, req.RoomVersion); err != nil {
|
||||
return nil, fmt.Errorf("r.DB.MembershipUpdater: %w", err)
|
||||
}
|
||||
outputUpdates, err = helpers.UpdateToInviteMembership(updater, &types.Event{
|
||||
EventNID: 0,
|
||||
Event: event.Unwrap(),
|
||||
EventNID: eventNID,
|
||||
Event: event,
|
||||
}, outputUpdates, req.Event.RoomVersion)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("updateToInviteMembership: %w", err)
|
||||
|
|
|
|||
|
|
@ -60,6 +60,9 @@ func TestMembershipTable(t *testing.T) {
|
|||
// This inserts a left user to the room
|
||||
err = tab.InsertMembership(ctx, nil, 1, stateKeyNID, true)
|
||||
assert.NoError(t, err)
|
||||
// We must update the membership with a non-zero event NID or it will get filtered out in later queries
|
||||
_, err = tab.UpdateMembership(ctx, nil, 1, stateKeyNID, userNIDs[0], tables.MembershipStateLeaveOrBan, 1, false)
|
||||
assert.NoError(t, err)
|
||||
}
|
||||
|
||||
// ... so this should be false
|
||||
|
|
|
|||
Loading…
Reference in a new issue