Other(refactor): Remove always-nil return value of (*Bridge).Close

This commit is contained in:
James Houlahan
2022-10-26 23:09:05 +02:00
parent 2bda47fcad
commit 8749d5dc7d
5 changed files with 9 additions and 15 deletions

View File

@ -109,12 +109,8 @@ func withBridge( //nolint:funlen
return fmt.Errorf("could not create bridge: %w", err)
}
// Close the bridge when we exit.
defer func() {
if err := bridge.Close(c.Context); err != nil {
logrus.WithError(err).Error("Failed to close bridge")
}
}()
// Ensure we close bridge when we exit.
defer bridge.Close(c.Context)
return fn(bridge, eventCh)
}

View File

@ -347,7 +347,7 @@ func (bridge *Bridge) GetErrors() []error {
return bridge.errors
}
func (bridge *Bridge) Close(ctx context.Context) error {
func (bridge *Bridge) Close(ctx context.Context) {
// Close the IMAP server.
if err := bridge.closeIMAP(ctx); err != nil {
logrus.WithError(err).Error("Failed to close IMAP server")
@ -385,8 +385,6 @@ func (bridge *Bridge) Close(ctx context.Context) error {
if err := bridge.vault.SetLastVersion(bridge.curVersion); err != nil {
logrus.WithError(err).Error("Failed to save last version")
}
return nil
}
func (bridge *Bridge) publish(event events.Event) {

View File

@ -460,7 +460,7 @@ func withBridge(
require.NoError(t, bridge.SetSMTPPort(0))
// Close the bridge when done.
defer func() { require.NoError(t, bridge.Close(ctx)) }()
defer bridge.Close(ctx)
// Use the bridge.
tests(bridge, mocks)

View File

@ -106,10 +106,12 @@ func (t *testCtx) startBridge() error {
}
func (t *testCtx) stopBridge() error {
if err := t.bridge.Close(context.Background()); err != nil {
return err
if t.bridge == nil {
return fmt.Errorf("bridge is not running")
}
t.bridge.Close(context.Background())
t.bridge = nil
return nil

View File

@ -261,9 +261,7 @@ func (t *testCtx) close(ctx context.Context) error {
}
if t.bridge != nil {
if err := t.bridge.Close(ctx); err != nil {
return err
}
t.bridge.Close(ctx)
}
t.api.Close()