From 99c4ad5ef7c3b6fb41f16c7207069c91d6ffc6ca Mon Sep 17 00:00:00 2001 From: Alberto Bertogli Date: Sun, 1 Dec 2019 18:48:08 +0000 Subject: [PATCH] smtpsrv: Disable reloads during tests Reloading during tests will cause the testing aliases to be removed, which makes test runs that extend beyond 30s to be flaky. This patch fixes the bug by disabling reloads during these tests. --- internal/smtpsrv/server.go | 3 +++ internal/smtpsrv/server_test.go | 3 +++ 2 files changed, 6 insertions(+) diff --git a/internal/smtpsrv/server.go b/internal/smtpsrv/server.go index 4e3105a..9b5fe28 100644 --- a/internal/smtpsrv/server.go +++ b/internal/smtpsrv/server.go @@ -163,6 +163,9 @@ func (s *Server) InitQueue(path string, localC, remoteC courier.Courier) { // periodicallyReload some of the server's information, such as aliases and // the user databases. func (s *Server) periodicallyReload() { + if reloadEvery == nil { + return + } for range time.Tick(*reloadEvery) { err := s.aliasesR.Reload() if err != nil { diff --git a/internal/smtpsrv/server_test.go b/internal/smtpsrv/server_test.go index 6da06a8..3e46726 100644 --- a/internal/smtpsrv/server_test.go +++ b/internal/smtpsrv/server_test.go @@ -584,6 +584,9 @@ func realMain(m *testing.M) int { // Disable SPF lookups, to avoid leaking DNS queries. disableSPFForTesting = true + // Disable reloading. + reloadEvery = nil + go s.ListenAndServe() }