Fix /v1/invite test

This commit is contained in:
Neil Alexander 2020-08-17 11:13:15 +01:00
parent 131c6866fc
commit bc050f6b4b
No known key found for this signature in database
GPG key ID: A02A2019A2BB0944
6 changed files with 18 additions and 21 deletions

View file

@ -46,7 +46,7 @@ func InviteV2(
}
}
return processInvite(
httpReq.Context(), inviteReq.Event(), inviteReq.RoomVersion(), inviteReq.InviteRoomState(), roomID, eventID, cfg, rsAPI, keys,
httpReq.Context(), true, inviteReq.Event(), inviteReq.RoomVersion(), inviteReq.InviteRoomState(), roomID, eventID, cfg, rsAPI, keys,
)
}
@ -75,12 +75,13 @@ func InviteV1(
util.GetLogger(httpReq.Context()).Warnf("failed to extract stripped state from invite event")
}
return processInvite(
httpReq.Context(), event, roomVer, strippedState, roomID, eventID, cfg, rsAPI, keys,
httpReq.Context(), false, event, roomVer, strippedState, roomID, eventID, cfg, rsAPI, keys,
)
}
func processInvite(
ctx context.Context,
isInviteV2 bool,
event gomatrixserverlib.Event,
roomVer gomatrixserverlib.RoomVersion,
strippedState []gomatrixserverlib.InviteV2StrippedState,
@ -152,9 +153,16 @@ func processInvite(
case nil:
// Return the signed event to the originating server, it should then tell
// the other servers in the room that we have been invited.
return util.JSONResponse{
Code: http.StatusOK,
JSON: gomatrixserverlib.RespInviteV2{Event: signedEvent},
if isInviteV2 {
return util.JSONResponse{
Code: http.StatusOK,
JSON: gomatrixserverlib.RespInviteV2{Event: signedEvent},
}
} else {
return util.JSONResponse{
Code: http.StatusOK,
JSON: gomatrixserverlib.RespInvite{Event: signedEvent},
}
}
default:
util.GetLogger(ctx).WithError(err).Error("api.SendInvite failed")

View file

@ -90,16 +90,10 @@ func Setup(
JSON: jsonerror.Forbidden("Forbidden by server ACLs"),
}
}
res := InviteV1(
return InviteV1(
httpReq, request, vars["roomID"], vars["eventID"],
cfg, rsAPI, keys,
)
return util.JSONResponse{
Code: res.Code,
JSON: []interface{}{
res.Code, res.JSON,
},
}
},
)).Methods(http.MethodPut, http.MethodOptions)

View file

@ -94,7 +94,7 @@ type PerformInviteRequest struct {
}
type PerformInviteResponse struct {
SignedEvent gomatrixserverlib.HeaderedEvent `json:"signed_event"`
Event gomatrixserverlib.HeaderedEvent `json:"event"`
}
type PerformServersAliveRequest struct {

View file

@ -329,12 +329,7 @@ func (r *FederationSenderInternalAPI) PerformInvite(
return fmt.Errorf("r.federation.SendInviteV2: %w", err)
}
response.SignedEvent = inviteRes.Event.Sign(
string(r.cfg.Matrix.ServerName),
r.cfg.Matrix.KeyID,
r.cfg.Matrix.PrivateKey,
).Headered(request.RoomVersion)
response.Event = inviteRes.Event.Headered(request.RoomVersion)
return nil
}

2
go.mod
View file

@ -23,7 +23,7 @@ require (
github.com/matrix-org/go-http-js-libp2p v0.0.0-20200518170932-783164aeeda4
github.com/matrix-org/go-sqlite3-js v0.0.0-20200522092705-bc8506ccbcf3
github.com/matrix-org/gomatrix v0.0.0-20190528120928-7df988a63f26
github.com/matrix-org/gomatrixserverlib v0.0.0-20200817095438-5be6e67209c8
github.com/matrix-org/gomatrixserverlib v0.0.0-20200817100842-9d02141812f2
github.com/matrix-org/naffka v0.0.0-20200422140631-181f1ee7401f
github.com/matrix-org/util v0.0.0-20200807132607-55161520e1d4
github.com/mattn/go-sqlite3 v2.0.2+incompatible

View file

@ -139,7 +139,7 @@ func (r *RoomserverInternalAPI) PerformInvite(
log.WithError(err).WithField("event_id", event.EventID()).Error("r.fsAPI.PerformInvite failed")
return nil
}
event = fsRes.SignedEvent
event = fsRes.Event
}
}