Skip to content

Commit

Permalink
align handling of graceful shutdown signals (#102)
Browse files Browse the repository at this point in the history
* align handling of graceful shutdown signals

* lint

* added unit test

---------

Co-authored-by: dan.markhasin <dan.markhasin@appsflyer.com>
  • Loading branch information
dmarkhas and dmarkhas committed Jul 10, 2023
1 parent f81fcc6 commit 85d21a7
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 0 deletions.
4 changes: 4 additions & 0 deletions atreugo_unix.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,10 @@ func (s *Atreugo) ServeGracefully(ln net.Listener) error {
listenErr <- s.Serve(ln)
}()

if s.cfg.GracefulShutdown && len(s.cfg.GracefulShutdownSignals) == 0 {
s.cfg.GracefulShutdownSignals = append(s.cfg.GracefulShutdownSignals, defaultGracefulShutdownSignals...)
}

osSignals := make(chan os.Signal, 1)
signal.Notify(osSignals, s.cfg.GracefulShutdownSignals...)

Expand Down
4 changes: 4 additions & 0 deletions atreugo_unix_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,10 @@ func TestAtreugo_ServeGracefully(t *testing.T) { // nolint:funlen
t.Errorf("Config.GracefulShutdown = %v, want %v", cfg.GracefulShutdown, true)
}

if len(s.cfg.GracefulShutdownSignals) == 0 {
t.Errorf("Config.GracefulShutdownSignals is empty, want %v", defaultGracefulShutdownSignals)
}

lnAddr := ln.Addr().String()
if s.cfg.Addr != lnAddr {
t.Errorf("Atreugo.Config.Addr = %s, want %s", s.cfg.Addr, lnAddr)
Expand Down

0 comments on commit 85d21a7

Please sign in to comment.