mirror of
https://github.com/golang/go
synced 2024-11-18 11:14:39 -07:00
8e53eb937b
Supporting user-defined TestMain functions requires that we generate a "testmain" package for each testable package, rather than a single one for the entire program. This entails these API changes: 1. (*ssa.Program).{CreateTestMainPackage,FindTests} both now accept only a single package. Existing clients that pass them multiple packages must call them from a loop. 2. (*ssa.Program).FindTests returns an additional result, the the optional TestMain *ssa.Function. Existing clients may discard it. Also: - Test the new logic using the SSA interpreter - add ssautil.MainPackages helper - callgraph: allow multiple main packages, and analyze them all - ssadump -run: allow multiple main/test packages, and run each in a new interpreter - minor simplifications to some callers (e.g. guru) Fixes golang/go#9553 Change-Id: Ia7de9bd27448fb08b8d172ba5cdbcf37a762b7a0 Reviewed-on: https://go-review.googlesource.com/25102 Reviewed-by: Robert Griesemer <gri@golang.org> |
||
---|---|---|
.. | ||
testdata/src/pkg | ||
main_test.go | ||
main.go |