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

Function TestBulkCreatePtrDataWithAssociations

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

Source from the content-addressed store, hash-verified

211}
212
213func TestBulkCreatePtrDataWithAssociations(t *testing.T) {
214 users := []*User{
215 GetUser("bulk_ptr_1", Config{Account: true, Pets: 2, Toys: 3, Company: true, Manager: true, Team: 0, Languages: 1, Friends: 1}),
216 GetUser("bulk_ptr_2", Config{Account: false, Pets: 2, Toys: 4, Company: false, Manager: false, Team: 1, Languages: 3, Friends: 5}),
217 GetUser("bulk_ptr_3", Config{Account: true, Pets: 0, Toys: 3, Company: true, Manager: false, Team: 4, Languages: 0, Friends: 1}),
218 GetUser("bulk_ptr_4", Config{Account: true, Pets: 3, Toys: 0, Company: false, Manager: true, Team: 0, Languages: 3, Friends: 0}),
219 GetUser("bulk_ptr_5", Config{Account: false, Pets: 0, Toys: 3, Company: true, Manager: false, Team: 1, Languages: 3, Friends: 1}),
220 GetUser("bulk_ptr_6", Config{Account: true, Pets: 4, Toys: 3, Company: false, Manager: true, Team: 1, Languages: 3, Friends: 0}),
221 GetUser("bulk_ptr_7", Config{Account: true, Pets: 1, Toys: 3, Company: true, Manager: true, Team: 4, Languages: 3, Friends: 1}),
222 GetUser("bulk_ptr_8", Config{Account: false, Pets: 0, Toys: 0, Company: false, Manager: false, Team: 0, Languages: 0, Friends: 0}),
223 }
224
225 if err := DB.Create(&users).Error; err != nil {
226 t.Fatalf("errors happened when create: %v", err)
227 }
228
229 var userIDs []uint
230 for _, user := range users {
231 userIDs = append(userIDs, user.ID)
232 CheckUser(t, *user, *user)
233 }
234
235 var users2 []User
236 DB.Preload("Account").Preload("Pets").Preload("Toys").Preload("Company").Preload("Manager").Preload("Team").Preload("Languages").Preload("Friends").Find(&users2, "id IN ?", userIDs)
237 for idx, user := range users2 {
238 CheckUser(t, user, *users[idx])
239 }
240}
241
242func TestPolymorphicHasOne(t *testing.T) {
243 t.Run("Struct", func(t *testing.T) {

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