package opc import ( "testing" "gorm.io/gorm" ) func TestOpcTableName(t *testing.T) { var m Opc if got := m.TableName(); got != "hems_opcs" { t.Fatalf("expected table name hems_opcs, got %q", got) } } func TestOpcBeforeCreate(t *testing.T) { t.Run("generates id when empty", func(t *testing.T) { m := &Opc{} if err := m.BeforeCreate(&gorm.DB{}); err != nil { t.Fatalf("unexpected error: %v", err) } if len(m.ID) == 0 { t.Fatalf("expected id to be generated") } }) t.Run("keeps existing id", func(t *testing.T) { existing := []byte("already-set-id") m := &Opc{ID: append([]byte(nil), existing...)} if err := m.BeforeCreate(&gorm.DB{}); err != nil { t.Fatalf("unexpected error: %v", err) } if string(m.ID) != string(existing) { t.Fatalf("expected existing id to stay unchanged") } }) }