Fix flakey queue test (#2818)

Ensure both events are added to the database, even if the destination is
already blacklisted.
This commit is contained in:
devonh 2022-10-20 15:37:35 +00:00 committed by GitHub
parent 539c61b3db
commit b58c9bb094
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -1004,9 +1004,12 @@ func TestQueueInteractsWithRealDatabasePDUAndEDU(t *testing.T) {
err := queues.SendEvent(ev, "localhost", []gomatrixserverlib.ServerName{destination}) err := queues.SendEvent(ev, "localhost", []gomatrixserverlib.ServerName{destination})
assert.NoError(t, err) assert.NoError(t, err)
// NOTE : The server can be blacklisted before this, so manually inject the event
// into the database.
edu := mustCreateEDU(t) edu := mustCreateEDU(t)
errEDU := queues.SendEDU(edu, "localhost", []gomatrixserverlib.ServerName{destination}) ephemeralJSON, _ := json.Marshal(edu)
assert.NoError(t, errEDU) nid, _ := db.StoreJSON(pc.Context(), string(ephemeralJSON))
db.AssociateEDUWithDestination(pc.Context(), destination, nid, edu.Type, nil)
checkBlacklisted := func(log poll.LogT) poll.Result { checkBlacklisted := func(log poll.LogT) poll.Result {
if fc.txCount.Load() == failuresUntilBlacklist { if fc.txCount.Load() == failuresUntilBlacklist {