Skip to content

Commit b5359e1

Browse files
committed
Updated as per comments
1 parent 755ffc2 commit b5359e1

File tree

2 files changed

+16
-12
lines changed

2 files changed

+16
-12
lines changed

tests/migrate_test.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1837,7 +1837,6 @@ func TestOracleDataTypes(t *testing.T) {
18371837
}
18381838
}
18391839

1840-
// This is failing
18411840
func TestOracleNullHandling(t *testing.T) {
18421841
if DB.Dialector.Name() != "oracle" {
18431842
return

tests/named_polymorphic_test.go

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,7 @@ func TestNamedPolymorphic(t *testing.T) {
188188
}
189189
}
190190

191-
func TestOracleCRUDOperations(t *testing.T) {
191+
func TestCRUDOperations(t *testing.T) {
192192
DB.Migrator().DropTable(&User{}, &Account{}, &Pet{})
193193
if err := DB.AutoMigrate(&User{}, &Account{}, &Pet{}); err != nil {
194194
t.Fatalf("Failed to auto migrate: %v", err)
@@ -284,7 +284,7 @@ func TestOracleCRUDOperations(t *testing.T) {
284284
}
285285
}
286286

287-
func TestOracleAdvancedOperations(t *testing.T) {
287+
func TestAdvancedOperations(t *testing.T) {
288288
DB.Migrator().DropTable(&Company{}, &User{}, &Language{}, "user_speak")
289289
if err := DB.AutoMigrate(&Company{}, &User{}, &Language{}); err != nil {
290290
t.Fatalf("Failed to auto migrate: %v", err)
@@ -410,7 +410,7 @@ func TestOracleAdvancedOperations(t *testing.T) {
410410
t.Errorf("Expected user to not exist after rollback, but found: %+v", rollbackUser)
411411
}
412412

413-
// Test Oracle pagination using GORM methods
413+
// Test pagination using GORM methods
414414
var paginatedUsers []User
415415
if err := DB.Offset(5).Limit(3).Find(&paginatedUsers).Error; err != nil {
416416
t.Fatalf("Failed to paginate: %v", err)
@@ -420,7 +420,7 @@ func TestOracleAdvancedOperations(t *testing.T) {
420420
t.Errorf("Expected 3 users from pagination, got %d", len(paginatedUsers))
421421
}
422422

423-
// Test Oracle-specific date operations using GORM with quoted identifiers
423+
// Test-specific date operations using GORM with quoted identifiers
424424
var todayUsers []User
425425
if err := DB.Where(`"created_at" >= ?`, time.Now().Truncate(24*time.Hour)).Find(&todayUsers).Error; err != nil {
426426
t.Fatalf("Failed to query with date functions: %v", err)
@@ -432,7 +432,7 @@ func TestOracleAdvancedOperations(t *testing.T) {
432432
t.Fatalf("Failed to perform case-insensitive search: %v", err)
433433
}
434434

435-
// Test Oracle-specific features that require raw SQL (minimal usage)
435+
// Test-specific features that require raw SQL (minimal usage)
436436
var currentTime time.Time
437437
if err := DB.Raw("SELECT SYSDATE FROM DUAL").Scan(&currentTime).Error; err != nil {
438438
t.Fatalf("Failed to query Oracle DUAL table: %v", err)
@@ -442,7 +442,7 @@ func TestOracleAdvancedOperations(t *testing.T) {
442442
t.Errorf("Expected current time from Oracle SYSDATE, got zero time")
443443
}
444444

445-
// Test Oracle sequence behavior
445+
// Test sequence behavior
446446
var maxID uint
447447
if err := DB.Model(&User{}).Select(`MAX("id")`).Scan(&maxID).Error; err != nil {
448448
t.Fatalf("Failed to get max ID: %v", err)
@@ -458,7 +458,7 @@ func TestOracleAdvancedOperations(t *testing.T) {
458458
t.Errorf("Expected new user ID to be greater than %d, got %d", maxID, newUser.ID)
459459
}
460460

461-
// Test Oracle association operations
461+
// Test association operations
462462
var userWithLanguages User
463463
if err := DB.Preload("Languages").Where(`"name" = ?`, "John Doe").First(&userWithLanguages).Error; err != nil {
464464
t.Fatalf("Failed to preload user languages: %v", err)
@@ -468,10 +468,15 @@ func TestOracleAdvancedOperations(t *testing.T) {
468468
t.Errorf("Expected user to have 2 languages, got %d", len(userWithLanguages.Languages))
469469
}
470470

471-
// Test Oracle constraint behavior
471+
// Test constraint behavior
472472
duplicateCompany := Company{Name: "Oracle Advanced Corp"}
473-
if err := DB.Create(&duplicateCompany).Error; err != nil {
474-
// This should succeed since Company doesn't have unique constraints in the model
475-
// This tests that GORM handles duplicate data as expected
473+
err = DB.Create(&duplicateCompany).Error
474+
if err != nil {
475+
t.Fatalf("Failed to create duplicate company: %v", err)
476+
}
477+
var companyCount int64
478+
DB.Model(&Company{}).Where(`"name" = ?`, "Oracle Advanced Corp").Count(&companyCount)
479+
if companyCount < 2 {
480+
t.Errorf("Expected at least 2 companies named 'Oracle Advanced Corp', got %d", companyCount)
476481
}
477482
}

0 commit comments

Comments
 (0)