refactor(api): make shutdown timeout configurable for tests (#9980)

This is extracted from PR #9175, which adds some tests that seem to
need a longer shutdown timeout when running on GitHub Actions.
This commit is contained in:
Emil Lundberg
2025-03-07 12:50:33 +01:00
committed by GitHub
parent 8461ca539b
commit 435f2d2178
2 changed files with 11 additions and 1 deletions

View File

@@ -937,6 +937,10 @@ func TestApiCache(t *testing.T) {
}
func startHTTP(cfg config.Wrapper) (string, context.CancelFunc, error) {
return startHTTPWithShutdownTimeout(cfg, 0)
}
func startHTTPWithShutdownTimeout(cfg config.Wrapper, shutdownTimeout time.Duration) (string, context.CancelFunc, error) {
m := new(modelmocks.Model)
assetDir := "../../gui"
eventSub := new(eventmocks.BufferedSubscription)
@@ -964,6 +968,10 @@ func startHTTP(cfg config.Wrapper) (string, context.CancelFunc, error) {
svc := New(protocol.LocalDeviceID, cfg, assetDir, "syncthing", m, eventSub, diskEventSub, events.NoopLogger, discoverer, connections, urService, mockedSummary, errorLog, systemLog, false, kdb).(*service)
svc.started = addrChan
if shutdownTimeout > 0*time.Millisecond {
svc.shutdownTimeout = shutdownTimeout
}
// Actually start the API service
supervisor := suture.New("API test", suture.Spec{
PassThroughPanics: true,