// Copyright (c) 2021 Gitpod GmbH. All rights reserved. // Licensed under the GNU Affero General Public License (AGPL). // See License.AGPL.txt in the project root for license information. package integration import ( "testing" ) func DeferCloser(t *testing.T, closer []func() error) { // Much "defer", we run the closer in reversed order. This way, we can // append to this list quite naturally, and still break things down in // the correct order. t.Cleanup(func() { for i := len(closer) - 1; i >= 0; i-- { err := closer[i]() if err != nil { t.Logf("cleanup failed: %q", err) } } }) }