Use PDU not *Event in HeaderedEvent (#3073)

Requires https://github.com/matrix-org/gomatrixserverlib/pull/376

This has numerous upsides:
 - Less type casting to `*Event` is required.
- Making Dendrite work with `PDU` interfaces means we can swap out Event
impls more easily.
 - Tests which represent weird event shapes are easier to write.

Part of a series of refactors on GMSL.
This commit is contained in:
kegsay 2023-05-02 15:03:16 +01:00 committed by GitHub
parent 696cbb70b8
commit f5b3144dc3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
64 changed files with 296 additions and 284 deletions

View file

@ -650,7 +650,7 @@ func (s *OutputRoomEventConsumer) evaluatePushRules(ctx context.Context, event *
roomSize: roomSize,
}
eval := pushrules.NewRuleSetEvaluator(ec, &ruleSets.Global)
rule, err := eval.MatchEvent(event.Event)
rule, err := eval.MatchEvent(event.PDU)
if err != nil {
return nil, err
}
@ -698,7 +698,7 @@ func (rse *ruleSetEvalContext) HasPowerLevel(userID, levelKey string) (bool, err
continue
}
plc, err := gomatrixserverlib.NewPowerLevelContentFromEvent(ev.Event)
plc, err := gomatrixserverlib.NewPowerLevelContentFromEvent(ev.PDU)
if err != nil {
return false, err
}

View file

@ -41,7 +41,7 @@ func mustCreateEvent(t *testing.T, content string) *types.HeaderedEvent {
if err != nil {
t.Fatalf("failed to create event: %v", err)
}
return &types.HeaderedEvent{Event: ev}
return &types.HeaderedEvent{PDU: ev}
}
func Test_evaluatePushRules(t *testing.T) {