335
335
if name == "Value.call" && strings.HasSuffix(path, valueGo) {
338
if name == "call16" && strings.Contains(path, asmGo) {
338
if (name == "call16" || name == "call32") && strings.Contains(path, asmGo) {
341
341
c.logf("%s:%d\n in %s", nicePath(file), line, name)
871
871
runner.output.WriteCallSuccess("MISS", c)
875
// -----------------------------------------------------------------------
876
// Output writer manages atomic output writing according to settings.
878
type outputWriter struct {
881
wroteCallProblemLast bool
886
func newOutputWriter(writer io.Writer, stream, verbose bool) *outputWriter {
887
return &outputWriter{writer: writer, Stream: stream, Verbose: verbose}
890
func (ow *outputWriter) Write(content []byte) (n int, err error) {
892
n, err = ow.writer.Write(content)
897
func (ow *outputWriter) WriteCallStarted(label string, c *C) {
899
header := renderCallHeader(label, c, "", "\n")
901
ow.writer.Write([]byte(header))
906
func (ow *outputWriter) WriteCallProblem(label string, c *C) {
909
prefix = "\n-----------------------------------" +
910
"-----------------------------------\n"
912
header := renderCallHeader(label, c, prefix, "\n\n")
914
ow.wroteCallProblemLast = true
915
ow.writer.Write([]byte(header))
917
c.logb.WriteTo(ow.writer)
922
func (ow *outputWriter) WriteCallSuccess(label string, c *C) {
923
if ow.Stream || (ow.Verbose && c.kind == testKd) {
924
// TODO Use a buffer here.
927
suffix = " (" + c.reason + ")"
929
if c.status() == succeededSt {
930
suffix += "\t" + c.timerString()
936
header := renderCallHeader(label, c, "", suffix)
938
// Resist temptation of using line as prefix above due to race.
939
if !ow.Stream && ow.wroteCallProblemLast {
940
header = "\n-----------------------------------" +
941
"-----------------------------------\n" +
944
ow.wroteCallProblemLast = false
945
ow.writer.Write([]byte(header))
950
func renderCallHeader(label string, c *C, prefix, suffix string) string {
952
return fmt.Sprintf("%s%s: %s: %s%s", prefix, label, niceFuncPath(pc),
953
niceFuncName(pc), suffix)