all: Don't let Suture capture panics (fixes #4758) (#5119)

Fork with new option.
This commit is contained in:
Jakob Borg
2018-08-13 20:39:08 +02:00
committed by GitHub
parent c55c0c8c28
commit 48795dba07
18 changed files with 63 additions and 37 deletions

View File

@@ -23,13 +23,13 @@ import (
"testing"
"time"
"github.com/calmh/suture"
"github.com/d4l3k/messagediff"
"github.com/syncthing/syncthing/lib/config"
"github.com/syncthing/syncthing/lib/events"
"github.com/syncthing/syncthing/lib/fs"
"github.com/syncthing/syncthing/lib/protocol"
"github.com/syncthing/syncthing/lib/sync"
"github.com/thejerf/suture"
)
func TestCSRFToken(t *testing.T) {
@@ -77,7 +77,9 @@ func TestStopAfterBrokenConfig(t *testing.T) {
srv := newAPIService(protocol.LocalDeviceID, w, "../../test/h1/https-cert.pem", "../../test/h1/https-key.pem", "", nil, nil, nil, nil, nil, nil, nil, nil)
srv.started = make(chan string)
sup := suture.NewSimple("test")
sup := suture.New("test", suture.Spec{
PanicPanics: true,
})
sup.Add(srv)
sup.ServeBackground()
@@ -487,7 +489,9 @@ func startHTTP(cfg *mockedConfig) (string, error) {
svc.started = addrChan
// Actually start the API service
supervisor := suture.NewSimple("API test")
supervisor := suture.New("API test", suture.Spec{
PanicPanics: true,
})
supervisor.Add(svc)
supervisor.ServeBackground()