package backend import ( "context" "kpt-tmr-group/config" "kpt-tmr-group/store/kptstore" "kpt-tmr-group/test/mock" "golang.org/x/sync/errgroup" "github.com/golang/mock/gomock" "github.com/stretchr/testify/suite" "go.uber.org/dig" ) var dbName = "kpt_tmr_group_test" type Suite struct { suite.Suite ctx context.Context cfg *config.AppConfig db *kptstore.DB ctrl *gomock.Controller m Mock storeEntry *StoreEntry } type Mock struct { dig.In } func (s *Suite) SetupSuite() { s.cfg = config.Options() } func (s *Suite) SetupTest() { s.ctx = context.Background() s.ctrl = gomock.NewController(s.T()) mock.GetMock(s.ctrl, func(m Mock) { s.m = m }) s.storeEntry = NewStoreEntry(s.cfg, s.db) } func (s *Suite) prepareDB() { s.cfg = config.Options() g, _ := errgroup.WithContext(context.Background()) g.Go(func() error { // todo 连接数据库 return nil }) if err := g.Wait(); err != nil { panic(err) } }