github.com/Prakhar-Agarwal-byte/moby@v0.0.0-20231027092010-a14e3e8ab87e/integration/network/ipvlan/main_test.go (about) 1 //go:build !windows 2 3 package ipvlan // import "github.com/Prakhar-Agarwal-byte/moby/integration/network/ipvlan" 4 5 import ( 6 "context" 7 "os" 8 "testing" 9 10 "github.com/Prakhar-Agarwal-byte/moby/testutil" 11 "github.com/Prakhar-Agarwal-byte/moby/testutil/environment" 12 "go.opentelemetry.io/otel" 13 "go.opentelemetry.io/otel/codes" 14 ) 15 16 var ( 17 testEnv *environment.Execution 18 baseContext context.Context 19 ) 20 21 func TestMain(m *testing.M) { 22 shutdown := testutil.ConfigureTracing() 23 ctx, span := otel.Tracer("").Start(context.Background(), "integration/network/ipvlan/TestMain") 24 baseContext = ctx 25 26 var err error 27 testEnv, err = environment.New(ctx) 28 if err != nil { 29 span.SetStatus(codes.Error, err.Error()) 30 span.End() 31 shutdown(ctx) 32 panic(err) 33 } 34 err = environment.EnsureFrozenImagesLinux(ctx, testEnv) 35 if err != nil { 36 span.SetStatus(codes.Error, err.Error()) 37 span.End() 38 shutdown(ctx) 39 panic(err) 40 } 41 42 testEnv.Print() 43 code := m.Run() 44 if code != 0 { 45 span.SetStatus(codes.Error, "m.Run() returned non-zero exit code") 46 } 47 span.End() 48 shutdown(ctx) 49 os.Exit(code) 50 }