package languages import ( "testing" "github.com/zzet/gortex/internal/graph" ) func drupalHookOf(nodes []*graph.Node, fn string) string { for _, n := range nodes { if n.Name == fn && n.Meta != nil { s, _ := n.Meta["drupal_hook"].(string) return s } } return "" } func drupalHookNode(nodes []*graph.Node, hook string) *graph.Node { for _, n := range nodes { if n.Kind == graph.KindInterface && n.Name == hook && n.Meta != nil && n.Meta["drupal_hook_def"] != nil { return n } } return nil } func drupalImplements(edges []*graph.Edge, from, to string) bool { for _, e := range edges { if e.Kind == graph.EdgeImplements && e.From == from && e.To == to { return true } } return false } func TestDrupalHooks_DocblockAndNamePattern(t *testing.T) { src := `