MCPcopy
hub / github.com/go-gorm/gorm / TestBulkCreateWithAssociations

Function TestBulkCreateWithAssociations

tests/create_test.go:182–211  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

180}
181
182func TestBulkCreateWithAssociations(t *testing.T) {
183 users := []User{
184 *GetUser("bulk_1", Config{Account: true, Pets: 2, Toys: 3, Company: true, Manager: true, Team: 0, Languages: 1, Friends: 1}),
185 *GetUser("bulk_2", Config{Account: false, Pets: 2, Toys: 4, Company: false, Manager: false, Team: 1, Languages: 3, Friends: 5}),
186 *GetUser("bulk_3", Config{Account: true, Pets: 0, Toys: 3, Company: true, Manager: false, Team: 4, Languages: 0, Friends: 1}),
187 *GetUser("bulk_4", Config{Account: true, Pets: 3, Toys: 0, Company: false, Manager: true, Team: 0, Languages: 3, Friends: 0}),
188 *GetUser("bulk_5", Config{Account: false, Pets: 0, Toys: 3, Company: true, Manager: false, Team: 1, Languages: 3, Friends: 1}),
189 *GetUser("bulk_6", Config{Account: true, Pets: 4, Toys: 3, Company: false, Manager: true, Team: 1, Languages: 3, Friends: 0}),
190 *GetUser("bulk_7", Config{Account: true, Pets: 1, Toys: 3, Company: true, Manager: true, Team: 4, Languages: 3, Friends: 1}),
191 *GetUser("bulk_8", Config{Account: false, Pets: 0, Toys: 0, Company: false, Manager: false, Team: 0, Languages: 0, Friends: 0}),
192 }
193
194 if results := DB.Create(&users); results.Error != nil {
195 t.Fatalf("errors happened when create: %v", results.Error)
196 } else if results.RowsAffected != int64(len(users)) {
197 t.Fatalf("rows affected expects: %v, got %v", len(users), results.RowsAffected)
198 }
199
200 var userIDs []uint
201 for _, user := range users {
202 userIDs = append(userIDs, user.ID)
203 CheckUser(t, user, user)
204 }
205
206 var users2 []User
207 DB.Preload("Account").Preload("Pets").Preload("Toys").Preload("Company").Preload("Manager").Preload("Team").Preload("Languages").Preload("Friends").Find(&users2, "id IN ?", userIDs)
208 for idx, user := range users2 {
209 CheckUser(t, user, users[idx])
210 }
211}
212
213func TestBulkCreatePtrDataWithAssociations(t *testing.T) {
214 users := []*User{

Callers

nothing calls this directly

Calls 5

GetUserFunction · 0.85
CheckUserFunction · 0.85
CreateMethod · 0.65
FindMethod · 0.65
PreloadMethod · 0.65

Tested by

no test coverage detected