github.com/telepresenceio/telepresence/v2@v2.20.0-pro.6.0.20240517030216-236ea954e789/integration_test/itest/suite.go (about) 1 package itest 2 3 import ( 4 "context" 5 6 "github.com/stretchr/testify/suite" 7 ) 8 9 type TestingSuite interface { 10 suite.TestingSuite 11 Harness 12 AmendSuiteContext(context.Context) context.Context 13 Context() context.Context 14 Assert() *Assertions 15 Require() *Requirements 16 SuiteName() string 17 setContext(ctx context.Context) 18 } 19 20 type Suite struct { 21 suite.Suite 22 Harness 23 ctx context.Context 24 } 25 26 func (s *Suite) AmendSuiteContext(ctx context.Context) context.Context { 27 return ctx 28 } 29 30 //nolint:unused // Linter is confused about this one. 31 func (s *Suite) setContext(ctx context.Context) { 32 s.ctx = ctx 33 } 34 35 func (s *Suite) Context() context.Context { 36 return WithT(s.ctx, s.T()) 37 } 38 39 func (s *Suite) Assert() *Assertions { 40 return &Assertions{Assertions: s.Suite.Assert()} 41 } 42 43 func (s *Suite) Require() *Requirements { 44 return &Requirements{Assertions: s.Suite.Require()} 45 }