github.com/bingoohuang/gg@v0.0.0-20240325092523-45da7dee9335/pkg/sigx/signal_test.go (about) 1 package sigx 2 3 import ( 4 "os" 5 "testing" 6 "time" 7 8 "github.com/stretchr/testify/assert" 9 ) 10 11 func TestRegisterSignals(t *testing.T) { 12 c, _ := RegisterSignals(nil) 13 proc, _ := os.FindProcess(os.Getpid()) 14 if err := proc.Signal(os.Interrupt); err != nil { 15 t.Failed() 16 } 17 18 done := false 19 select { 20 case <-c.Done(): 21 done = true 22 case <-time.After(1 * time.Millisecond): 23 } 24 25 assert.True(t, done) 26 }