MCPcopy Create free account
hub / github.com/cloudbase/garm / SetupTest

Method SetupTest

database/sql/organizations_test.go:86–187  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

84}
85
86func (s *OrgTestSuite) SetupTest() {
87 ctx := context.Background()
88 watcher.InitWatcher(ctx)
89 // create testing sqlite database
90 dbConfig := garmTesting.GetTestSqliteDBConfig(s.T())
91 db, err := NewSQLDatabase(ctx, dbConfig)
92 if err != nil {
93 s.FailNow(fmt.Sprintf("failed to create db connection: %s", err))
94 }
95 s.Store = db
96
97 adminCtx := garmTesting.ImpersonateAdminContext(ctx, db, s.T())
98 s.adminCtx = adminCtx
99 s.adminUserID = auth.UserID(adminCtx)
100 s.Require().NotEmpty(s.adminUserID)
101
102 s.githubEndpoint = garmTesting.CreateDefaultGithubEndpoint(adminCtx, db, s.T())
103 s.giteaEndpoint = garmTesting.CreateDefaultGiteaEndpoint(adminCtx, db, s.T())
104 s.testCreds = garmTesting.CreateTestGithubCredentials(adminCtx, "new-creds", db, s.T(), s.githubEndpoint)
105 s.testCredsGitea = garmTesting.CreateTestGiteaCredentials(adminCtx, "new-creds", db, s.T(), s.giteaEndpoint)
106 s.secondaryTestCreds = garmTesting.CreateTestGithubCredentials(adminCtx, "secondary-creds", db, s.T(), s.githubEndpoint)
107
108 // create some organization objects in the database, for testing purposes
109 orgs := []params.Organization{}
110 for i := 1; i <= 3; i++ {
111 org, err := db.CreateOrganization(
112 s.adminCtx,
113 fmt.Sprintf("test-org-%d", i),
114 s.testCreds,
115 fmt.Sprintf("test-webhook-secret-%d", i),
116 params.PoolBalancerTypeRoundRobin,
117 false,
118 )
119 if err != nil {
120 s.FailNow(fmt.Sprintf("failed to create database object (test-org-%d): %q", i, err))
121 }
122
123 orgs = append(orgs, org)
124 }
125
126 // create store with mocked sql connection
127 sqlDB, sqlMock, err := sqlmock.New()
128 if err != nil {
129 s.FailNow(fmt.Sprintf("failed to run 'sqlmock.New()', got error: %v", err))
130 }
131 s.T().Cleanup(func() { sqlDB.Close() })
132 mysqlConfig := mysql.Config{
133 Conn: sqlDB,
134 SkipInitializeWithVersion: true,
135 }
136 gormConfig := &gorm.Config{}
137 if flag.Lookup("test.v").Value.String() == falseString {
138 gormConfig.Logger = logger.Default.LogMode(logger.Silent)
139 }
140 gormConn, err := gorm.Open(mysql.New(mysqlConfig), gormConfig)
141 if err != nil {
142 s.FailNow(fmt.Sprintf("fail to open gorm connection: %v", err))
143 }

Callers

nothing calls this directly

Calls 6

InitWatcherFunction · 0.92
UserIDFunction · 0.92
NewSQLDatabaseFunction · 0.85
CreateOrganizationMethod · 0.65
CloseMethod · 0.65
StringMethod · 0.45

Tested by

no test coverage detected