From df97a690c08bdb9d7523524355ecff0e8a385531 Mon Sep 17 00:00:00 2001 From: Dimitar Petrov Date: Mon, 7 Sep 2020 12:48:16 +0300 Subject: [PATCH] Concurrency support (#3) --- README.md | 81 +++-- cmd/apply.go | 2 +- cmd/revert.go | 2 +- cmd/visualize.go | 4 +- examples/example1.png | Bin 207986 -> 140039 bytes examples/example2.png | Bin 132549 -> 85612 bytes parser/parser.go | 64 +++- parser/parser_test.go | 60 +++- tracing/deinstrument.go | 161 +++++++-- tracing/deinstrument_test.go | 8 +- tracing/instrument.go | 80 +++-- tracing/instrument_test.go | 249 ++++++++++++-- tracing/interfaces.go | 6 +- tracing/tracingfakes/fake_imports_groomer.go | 36 +- tracing/unused_imports.go | 18 +- tracing/unused_imports_test.go | 4 +- tracing/util.go | 333 ++++++++++++++++++- vis/vis.go | 119 +++++-- vis/vis_test.go | 167 +++++----- 19 files changed, 1118 insertions(+), 276 deletions(-) diff --git a/README.md b/README.md index 3179aaa..575c13a 100644 --- a/README.md +++ b/README.md @@ -24,8 +24,6 @@ Let's say you have a simple `main.go` file in the current working directory with ```go package main -import "fmt" - func test(i int, b bool) int { if b { return i @@ -34,8 +32,7 @@ func test(i int, b bool) int { } func main() { - i := test(2, false) - fmt.Println(i) + _ = test(2, false) } ``` @@ -48,11 +45,29 @@ The file will be modified like the following: ```go package main -import "fmt" +import ( + "crypto/rand" + "fmt" + rt "runtime" +) func test(i int, b bool) int { - fmt.Printf("Entering function test with args (%v) (%v)\n", i, b) - defer fmt.Printf("Exiting function test\n") + + /* prinTracer */ + funcName := "test" + caller := "unknown" + if funcPC, _, _, ok := rt.Caller(0); ok { + funcName = rt.FuncForPC(funcPC).Name() + } + if callerPC, _, _, ok := rt.Caller(1); ok { + caller = rt.FuncForPC(callerPC).Name() + } + idBytes := make([]byte, 16) + _, _ = rand.Read(idBytes) + callID := fmt.Sprintf("%x-%x-%x-%x-%x", idBytes[0:4], idBytes[4:6], idBytes[6:8], idBytes[8:10], idBytes[10:]) + fmt.Printf("Entering function %s called by %s with args (%v) (%v); callID=%s\n", funcName, caller, i, b, callID) + defer fmt.Printf("Exiting function %s called by %s; callID=%s\n", funcName, caller, callID) /* prinTracer */ + if b { return i } @@ -60,18 +75,42 @@ func test(i int, b bool) int { } func main() { - fmt.Printf("Entering function main\n") - defer fmt.Printf("Exiting function main\n") - i := test(2, false) - fmt.Println(i) + + /* prinTracer */ + funcName := "main" + caller := "unknown" + if funcPC, _, _, ok := rt.Caller(0); ok { + funcName = rt.FuncForPC(funcPC).Name() + } + if callerPC, _, _, ok := rt.Caller(1); ok { + caller = rt.FuncForPC(callerPC).Name() + } + idBytes := make([]byte, 16) + _, _ = rand.Read(idBytes) + callID := fmt.Sprintf("%x-%x-%x-%x-%x", idBytes[0:4], idBytes[4:6], idBytes[6:8], idBytes[8:10], idBytes[10:]) + fmt.Printf("Entering function %s called by %s; callID=%s\n", funcName, caller, callID) + defer fmt.Printf("Exiting function %s called by %s; callID=%s\n", funcName, caller, callID) /* prinTracer */ + + _ = test(2, false) } ``` +When running the instrumented file above the output (so called trace) will be as follows: +``` +Entering function main.main called by runtime.main; callID=0308fc13-5b30-5871-9101-b84e055a9565 +Entering function main.test called by main.main with args (2) (false); callID=1a3feff5-844b-039c-6d20-307d52002ce8 +Exiting function main.test called by main.main; callID=1a3feff5-844b-039c-6d20-307d52002ce8 +Exiting function main.main called by runtime.main; callID=0308fc13-5b30-5871-9101-b84e055a9565 +``` You can also easily revert all the changes done by `printracer` by just executing: ``` printracer revert ``` +> NOTE: `printracer revert` reverts changes only if code block enclosed by /* prinTracer */ comments is not modified by hand. If you modify the instrumentation block then it should be manually reverted afterwards. + +> NOTE: `printracer apply` will not apply any changes if find /* prinTracer */ comment directly above first statement in the function's body. This is needed to mitigate accidental multiple instrumentation which will then affect deinstrumentation and visualization negatively. +You also can use it to signal that a particular function should not be instrumented. ### Visualization Let's say you have instrumented your code and captured the flow that is so hard to follow even the textual trace is confusing as hell. @@ -79,14 +118,14 @@ That's where visualization comes to rescue. For example let's say you have captured the following trace and saved it to the file **trace.txt**: ```text -Entering function main -Entering function foo with args (1) (true) -Entering function bar with args (test string) -Entering function baz -Exiting function baz -Exiting function bar -Exiting function foo -Exiting function main +Entering function main.main called by runtime.main; callID=ec57b80b-6898-75cc-1dea-e623e7ac26c9 +Entering function main.foo called by main.main with args (5) (false); callID=351b3edb-7ad3-2f88-1a9b-488debf800cc +Entering function main.bar called by main.foo with args (test string); callID=1e3e0e73-e4f1-b3f9-6bf5-e0aa15ddd6d1 +Entering function main.baz called by main.bar; callID=e1e79e3b-d89f-6e4e-e0bf-eea54db5b569 +Exiting function main.baz called by main.bar; callID=e1e79e3b-d89f-6e4e-e0bf-eea54db5b569 +Exiting function main.bar called by main.foo; callID=1e3e0e73-e4f1-b3f9-6bf5-e0aa15ddd6d1 +Exiting function main.foo called by main.main; callID=351b3edb-7ad3-2f88-1a9b-488debf800cc +Exiting function main.main called by runtime.main; callID=ec57b80b-6898-75cc-1dea-e623e7ac26c9 ``` In practice this would be much more complicated but it is enough for the sake of demonstration. @@ -108,9 +147,11 @@ That's where `--depth (-d)` and `--func (-f)` flags comes to rescue. - `--depth` flag controls how deep in the invocation graph you want your visualization to go. - `--func` flag controls which function to be the starting point of the visualization. +> NOTE: If `--depth/--func` flags are used visualization will be linear following the call stack of the starting func. Calls from different Goroutines will be ignored! + So if you execute the following command with the trace of the previous example: ``` -printracer visualize trace.txt --depth 2 --func foo +printracer visualize trace.txt --depth 2 --func main.foo ``` A diagram like this will be generated for you: diff --git a/cmd/apply.go b/cmd/apply.go index eaac4bb..c22c1c8 100644 --- a/cmd/apply.go +++ b/cmd/apply.go @@ -41,6 +41,6 @@ func (ac *ApplyCmd) Run() error { if err != nil { return err } - return ac.importsGroomer.RemoveUnusedImportFromDirectory(path, "fmt") + return ac.importsGroomer.RemoveUnusedImportFromDirectory(path, map[string]string{"fmt": "", "runtime": "rt", "rand": ""}) // TODO: flag for import aliases }) } diff --git a/cmd/revert.go b/cmd/revert.go index 274c59f..a1bee42 100644 --- a/cmd/revert.go +++ b/cmd/revert.go @@ -41,6 +41,6 @@ func (rc *RevertCmd) Run() error { if err != nil { return err } - return rc.importsGroomer.RemoveUnusedImportFromDirectory(path, "fmt") + return rc.importsGroomer.RemoveUnusedImportFromDirectory(path, map[string]string{"fmt": "", "runtime": "rt", "crypto/rand": ""}) // TODO: flag for import aliases }) } diff --git a/cmd/visualize.go b/cmd/visualize.go index 64d9195..46cc843 100644 --- a/cmd/visualize.go +++ b/cmd/visualize.go @@ -39,8 +39,8 @@ func (vc *VisualizeCmd) Prepare() *cobra.Command { } result.Flags().StringVarP(&vc.outputFile, "output", "o", "calls", "name of the resulting html file when visualizing") - result.Flags().IntVarP(&vc.maxDepth, "depth", "d", math.MaxInt32, "maximum depth in call graph") - result.Flags().StringVarP(&vc.startingFunc, "func", "f", "", "name of the starting function in the visualization (the root of the diagram)") + result.Flags().IntVarP(&vc.maxDepth, "depth", "d", math.MaxInt32, "maximum depth in call graph. NOTE: If used visualization will be linear following the call stack of the starting func. Calls from different Goroutines will be ignored!") + result.Flags().StringVarP(&vc.startingFunc, "func", "f", "", "name of the starting function in the visualization (the root of the diagram). NOTE: If used visualization will be linear following the call stack of the starting func. Calls from different Goroutines will be ignored!") return result } diff --git a/examples/example1.png b/examples/example1.png index ea356a3b1ac6c1f33f32936aa3376bb2b78b424c..142e656af65c6b65f5dcddde6abc0f9bcc6f1763 100644 GIT binary patch literal 140039 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 EUo7vZR{#J2 literal 207986 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

wttlahB!l8>OvYqgWAdwNu%)wl??UrFvt)Q5pzP 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 LgXZ^kxt#kOhJQKj literal 132549 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 z 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 1 { - stmt1, ok1 := t.Body.List[0].(*dst.ExprStmt) - stmt2, ok2 := t.Body.List[1].(*dst.DeferStmt) - if ok1 && ok2 { - expr1, ok := stmt1.X.(*dst.CallExpr) - if ok { - selExpr1, ok1 := expr1.Fun.(*dst.SelectorExpr) - selExpr2, ok2 := stmt2.Call.Fun.(*dst.SelectorExpr) - if ok1 && ok2 { - package1, ok1 := selExpr1.X.(*dst.Ident) - package2, ok2 := selExpr2.X.(*dst.Ident) - if ok1 && ok2 && package1.Name == "fmt" && package2.Name == "fmt" && - selExpr1.Sel.Name == "Printf" && selExpr2.Sel.Name == "Printf" { + if len(t.Body.List) >= instrumentationStmtsCount { + firstStmntDecorations := t.Body.List[0].Decorations().Start.All() + secondStmntDecorations := t.Body.List[instrumentationStmtsCount-1].Decorations().End.All() + if len(firstStmntDecorations) > 0 && firstStmntDecorations[0] == printracerCommentWatermark && + len(secondStmntDecorations) > 0 && secondStmntDecorations[0] == printracerCommentWatermark { - expr1Arg, ok1 := expr1.Args[0].(*dst.BasicLit) - expr2Arg, ok2 := stmt2.Call.Args[0].(*dst.BasicLit) - if ok1 && ok2 && expr1Arg.Kind == token.STRING && expr2Arg.Kind == token.STRING && - strings.Contains(expr1Arg.Value, fmt.Sprintf("Entering function %s", t.Name)) && - strings.Contains(expr2Arg.Value, fmt.Sprintf("Exiting function %s", t.Name)) { - t.Body.List = t.Body.List[2:] - } - } + if checkInstrumentationStatementsIntegrity(t) { + t.Body.List = t.Body.List[instrumentationStmtsCount:] + if len(t.Body.List) > 0 { + t.Body.List[0].Decorations().Before = dst.None } } } @@ -92,3 +80,132 @@ func (cd *codeDeinstrumenter) DeinstrumentFile(fset *token.FileSet, file *ast.Fi return decorator.Fprint(out, f) } + +func checkInstrumentationStatementsIntegrity(f *dst.FuncDecl) bool { + stmts := f.Body.List + instrumentationStmts := buildInstrumentationStmts(f) + + for i := 0; i < instrumentationStmtsCount; i++ { + if !equalStmt(stmts[i], instrumentationStmts[i]) { + return false + } + } + return true +} + +func equalStmt(stmt1, stmt2 dst.Stmt) bool { + switch t := stmt1.(type) { + case *dst.AssignStmt: + instStmt, ok := stmt2.(*dst.AssignStmt) + if !ok { + return false + } + if !(equalExprSlice(t.Lhs, instStmt.Lhs) && equalExprSlice(t.Rhs, instStmt.Rhs) && reflect.DeepEqual(t.Tok, instStmt.Tok)) { + return false + } + return true + case *dst.IfStmt: + instStmt, ok := stmt2.(*dst.IfStmt) + if !ok { + return false + } + if !(equalStmt(t.Init, instStmt.Init) && equalExpr(t.Cond, instStmt.Cond) && equalStmt(t.Body, instStmt.Body) && equalStmt(t.Else, instStmt.Else)) { + return false + } + return true + case *dst.ExprStmt: + instStmt, ok := stmt2.(*dst.ExprStmt) + if !ok { + return false + } + if !(equalExpr(t.X, instStmt.X)) { + return false + } + return true + case *dst.DeferStmt: + instStmt, ok := stmt2.(*dst.DeferStmt) + if !ok { + return false + } + if !(equalExpr(t.Call, instStmt.Call)) { + return false + } + return true + case *dst.BlockStmt: + instStmt, ok := stmt2.(*dst.BlockStmt) + if !ok { + return false + } + if len(t.List) != len(instStmt.List) || t.RbraceHasNoPos != instStmt.RbraceHasNoPos { + return false + } + for i, stmt1 := range t.List { + if !equalStmt(stmt1, instStmt.List[i]) { + return false + } + } + return true + } + return reflect.DeepEqual(stmt1, stmt2) +} + +func equalExprSlice(exprSlice1, exprSlice2 []dst.Expr) bool { + if len(exprSlice1) != len(exprSlice2) { + return false + } + for i, expr1 := range exprSlice1 { + if !equalExpr(expr1, exprSlice2[i]) { + return false + } + } + return true +} + +func equalExpr(expr1, expr2 dst.Expr) bool { + switch t := expr1.(type) { + case *dst.Ident: + instExpr, ok := expr2.(*dst.Ident) + if !ok { + instExpr, ok := expr2.(*dst.BasicLit) + if !ok { + return false + } + return t.Name == instExpr.Value + } + return t.Name == instExpr.Name && t.Path == instExpr.Path + case *dst.CallExpr: + instExpr, ok := expr2.(*dst.CallExpr) + if !ok { + return false + } + if !(equalExprSlice(t.Args, instExpr.Args) && equalExpr(t.Fun, instExpr.Fun)) { + return false + } + return true + case *dst.SelectorExpr: + instExpr, ok := expr2.(*dst.SelectorExpr) + if !ok { + return false + } + if !(equalExpr(t.X, instExpr.X) && equalExpr(t.Sel, instExpr.Sel)) { + return false + } + return true + case *dst.SliceExpr: + instExpr, ok := expr2.(*dst.SliceExpr) + if !ok { + return false + } + if !(t.Slice3 == instExpr.Slice3 && equalExpr(t.X, instExpr.X) && equalExpr(t.High, instExpr.High) && equalExpr(t.Low, instExpr.Low) && equalExpr(t.Max, instExpr.Max)) { + return false + } + return true + case *dst.BasicLit: + instExpr, ok := expr2.(*dst.BasicLit) + if !ok { + return false + } + return t.Value == instExpr.Value && t.Kind == instExpr.Kind + } + return reflect.DeepEqual(expr1, expr2) +} diff --git a/tracing/deinstrument_test.go b/tracing/deinstrument_test.go index 4418c95..7eb77f8 100644 --- a/tracing/deinstrument_test.go +++ b/tracing/deinstrument_test.go @@ -22,6 +22,7 @@ func TestDeinstrumentFile(t *testing.T) { {Name: "DeinstrumentFileWithoutFmtImport", InputCode: resultCodeWithImportsWithoutFmt, OutputCode: codeWithImportsWithoutFmt}, {Name: "DeinstrumentFileWithoutFunctions", InputCode: resultCodeWithoutFunction, OutputCode: codeWithoutFunction}, {Name: "DeinstrumentFileWithoutPreviousInstrumentation", InputCode: codeWithMultipleImports, OutputCode: codeWithMultipleImports}, + {Name: "DeinstrumentFileDoesNotChangeManuallyEditedFunctions", InputCode: editedResultCodeWithoutImports, OutputCode: editedResultCodeWithoutImports}, } for _, test := range tests { @@ -42,12 +43,12 @@ func TestDeinstrumentFile(t *testing.T) { } var buff2 bytes.Buffer - if err := NewImportsGroomer().RemoveUnusedImportFromFile(fset, file, &buff2, "fmt"); err != nil { + if err := NewImportsGroomer().RemoveUnusedImportFromFile(fset, file, &buff2, map[string]string{"fmt": "", "runtime": "rt", "crypto/rand": ""}); err != nil { t.Fatal(err) } if buff2.String() != test.OutputCode { - t.Error("Assertion failed!") + t.Errorf("Assertion failed! Expected %s god %s", test.OutputCode, buff2.String()) } }) } @@ -72,6 +73,7 @@ func TestDeinstrumentDirectory(t *testing.T) { {InputCode: resultCodeWithMultipleImports, OutputCode: codeWithMultipleImports}, {InputCode: resultCodeWithImportsWithoutFmt, OutputCode: codeWithImportsWithoutFmt}, {InputCode: resultCodeWithoutFunction, OutputCode: codeWithoutFunction}, + {InputCode: editedResultCodeWithoutImports, OutputCode: editedResultCodeWithoutImports}, } i := 0 @@ -86,7 +88,7 @@ func TestDeinstrumentDirectory(t *testing.T) { t.Fatal(err) } - if err := NewImportsGroomer().RemoveUnusedImportFromDirectory("test", "fmt"); err != nil { + if err := NewImportsGroomer().RemoveUnusedImportFromDirectory("test", map[string]string{"fmt": "", "runtime": "rt", "crypto/rand": ""}); err != nil { t.Fatal(err) } diff --git a/tracing/instrument.go b/tracing/instrument.go index 796af08..7e58748 100644 --- a/tracing/instrument.go +++ b/tracing/instrument.go @@ -12,6 +12,37 @@ import ( "os" ) +const funcNameVarName = "funcName" +const funcPCVarName = "funcPC" + +const callerFuncNameVarName = "caller" +const defaultCallerName = "unknown" +const callerFuncPCVarName = "callerPC" + +const callIDVarName = "callID" + +const printracerCommentWatermark = "/* prinTracer */" + +const instrumentationStmtsCount = 9 // Acts like a contract of how many statements instrumentation adds and deinstrumentation removes. + +func buildInstrumentationStmts(f *dst.FuncDecl) [instrumentationStmtsCount]dst.Stmt { + return [instrumentationStmtsCount]dst.Stmt{ + newAssignStmt(funcNameVarName, f.Name.Name), + newAssignStmt(callerFuncNameVarName, defaultCallerName), + newGetFuncNameIfStatement("0", funcPCVarName, funcNameVarName), + newGetFuncNameIfStatement("1", callerFuncPCVarName, callerFuncNameVarName), + newMakeByteSliceStmt(), + newRandReadStmt(), + newParseUUIDFromByteSliceStmt(callIDVarName), + &dst.ExprStmt{ + X: newPrintExprWithArgs(buildEnteringFunctionArgs(f)), + }, + &dst.DeferStmt{ + Call: newPrintExprWithArgs(buildExitFunctionArgs()), + }, + } +} + type codeInstrumenter struct { } @@ -52,6 +83,8 @@ func (ci *codeInstrumenter) InstrumentPackage(fset *token.FileSet, pkg *ast.Pack func (ci *codeInstrumenter) InstrumentFile(fset *token.FileSet, file *ast.File, out io.Writer) error { astutil.AddImport(fset, file, "fmt") + astutil.AddNamedImport(fset, file, "rt", "runtime") + astutil.AddImport(fset, file, "crypto/rand") // Needed because ast does not support floating comments and deletes them. // In order to preserve all comments we just pre-parse it to dst which treats them as first class citizens. @@ -63,40 +96,27 @@ func (ci *codeInstrumenter) InstrumentFile(fset *token.FileSet, file *ast.File, dst.Inspect(f, func(n dst.Node) bool { switch t := n.(type) { case *dst.FuncDecl: - var enteringStringFormat = fmt.Sprintf("Entering function %s", t.Name) - var exitingStringFormat = fmt.Sprintf("Exiting function %s", t.Name) + if !ci.hasInstrumentationWatermark(t) { + instrumentationStmts := buildInstrumentationStmts(t) + t.Body.List = append(instrumentationStmts[:], t.Body.List...) - var args []dst.Expr - - if len(t.Type.Params.List) > 0 { - enteringStringFormat += " with args" - - for _, param := range t.Type.Params.List { - enteringStringFormat += " (%v)" - args = append(args, &dst.BasicLit{ - Kind: token.STRING, - Value: param.Names[0].Name, - }) - } + t.Body.List[0].Decorations().Before = dst.EmptyLine + t.Body.List[0].Decorations().Start.Append(printracerCommentWatermark) + t.Body.List[instrumentationStmtsCount-1].Decorations().After = dst.EmptyLine + t.Body.List[instrumentationStmtsCount-1].Decorations().End.Append(printracerCommentWatermark) } - - args = append([]dst.Expr{ - &dst.BasicLit{ - Kind: token.STRING, - Value: `"` + enteringStringFormat + `\n"`, - }, - }, args...) - - t.Body.List = append([]dst.Stmt{ - &dst.ExprStmt{ - X: newPrintExprWithArgs(args), - }, - &dst.DeferStmt{ - Call: newPrintExprWithMessage(exitingStringFormat), - }, - }, t.Body.List...) } return true }) return decorator.Fprint(out, f) } + +func (ci *codeInstrumenter) hasInstrumentationWatermark(f *dst.FuncDecl) bool { + if len(f.Body.List) > 0 { + firstStmntDecorations := f.Body.List[0].Decorations().Start.All() + if len(firstStmntDecorations) > 0 && firstStmntDecorations[0] == printracerCommentWatermark { + return true + } + } + return false +} diff --git a/tracing/instrument_test.go b/tracing/instrument_test.go index dde2c2b..8f8ab3e 100644 --- a/tracing/instrument_test.go +++ b/tracing/instrument_test.go @@ -26,11 +26,29 @@ func main() { const resultCodeWithoutImports = `package a -import "fmt" +import ( + "crypto/rand" + "fmt" + rt "runtime" +) func test(i int, b bool) int { - fmt.Printf("Entering function test with args (%v) (%v)\n", i, b) - defer fmt.Printf("Exiting function test\n") + + /* prinTracer */ + funcName := "test" + caller := "unknown" + if funcPC, _, _, ok := rt.Caller(0); ok { + funcName = rt.FuncForPC(funcPC).Name() + } + if callerPC, _, _, ok := rt.Caller(1); ok { + caller = rt.FuncForPC(callerPC).Name() + } + idBytes := make([]byte, 16) + _, _ = rand.Read(idBytes) + callID := fmt.Sprintf("%x-%x-%x-%x-%x", idBytes[0:4], idBytes[4:6], idBytes[6:8], idBytes[8:10], idBytes[10:]) + fmt.Printf("Entering function %s called by %s with args (%v) (%v); callID=%s\n", funcName, caller, i, b, callID) + defer fmt.Printf("Exiting function %s called by %s; callID=%s\n", funcName, caller, callID) /* prinTracer */ + if b { return i } @@ -38,15 +56,83 @@ func test(i int, b bool) int { } func main() { - fmt.Printf("Entering function main\n") - defer fmt.Printf("Exiting function main\n") + + /* prinTracer */ + funcName := "main" + caller := "unknown" + if funcPC, _, _, ok := rt.Caller(0); ok { + funcName = rt.FuncForPC(funcPC).Name() + } + if callerPC, _, _, ok := rt.Caller(1); ok { + caller = rt.FuncForPC(callerPC).Name() + } + idBytes := make([]byte, 16) + _, _ = rand.Read(idBytes) + callID := fmt.Sprintf("%x-%x-%x-%x-%x", idBytes[0:4], idBytes[4:6], idBytes[6:8], idBytes[8:10], idBytes[10:]) + fmt.Printf("Entering function %s called by %s; callID=%s\n", funcName, caller, callID) + defer fmt.Printf("Exiting function %s called by %s; callID=%s\n", funcName, caller, callID) /* prinTracer */ + + i := test(2, false) +} +` + +const editedResultCodeWithoutImports = `package a + +import ( + "crypto/rand" + "fmt" + rt "runtime" +) + +func test(i int, b bool) int { + + /* prinTracer */ + funcName := "test2" + caller := "unknown2" + if funcPC, _, _, ok := rt.Caller(0); ok { + funcName = rt.FuncForPC(funcPC).Name() + } + if callerPC, _, _, ok := rt.Caller(1); ok { + caller = rt.FuncForPC(callerPC).Name() + } + fmt.Println("test") + idBytes := make([]byte, 16) + _, _ = rand.Read(idBytes) + callID := fmt.Sprintf("%x-%x-%x-%x-%x", idBytes[0:4], idBytes[4:6], idBytes[6:8], idBytes[8:10], idBytes[10:]) + fmt.Printf("Entering function %s called by %s with args (%v) (%v); callID=%s\n", funcName, caller, i, b, callID) + defer fmt.Printf("Exiting function %s called by %s; callID=%s\n", funcName, caller, callID) /* prinTracer */ + + if b { + return i + } + return 0 +} + +func main() { + + funcName := "main" + caller := "unknown" + if funcPC, _, _, ok := rt.Caller(0); ok { + funcName = rt.FuncForPC(funcPC).Name() + } + if callerPC, _, _, ok := rt.Caller(1); ok { + caller = rt.FuncForPC(callerPC).Name() + } + idBytes := make([]byte, 16) + _, _ = rand.Read(idBytes) + callID := fmt.Sprintf("%x-%x-%x-%x-%x", idBytes[0:4], idBytes[4:6], idBytes[6:8], idBytes[8:10], idBytes[10:]) + fmt.Printf("Entering function %s called by %s; callID=%s\n", funcName, caller, callID) + defer fmt.Printf("Exiting function %s called by %s; callID=%s\n", funcName, caller, callID) + i := test(2, false) } ` const codeWithFmtImport = `package a -import "fmt" +import ( + "fmt" +) func test(i int, b bool) int { if b { @@ -62,11 +148,29 @@ func main() { ` const resultCodeWithFmtImport = `package a -import "fmt" +import ( + "crypto/rand" + "fmt" + rt "runtime" +) func test(i int, b bool) int { - fmt.Printf("Entering function test with args (%v) (%v)\n", i, b) - defer fmt.Printf("Exiting function test\n") + + /* prinTracer */ + funcName := "test" + caller := "unknown" + if funcPC, _, _, ok := rt.Caller(0); ok { + funcName = rt.FuncForPC(funcPC).Name() + } + if callerPC, _, _, ok := rt.Caller(1); ok { + caller = rt.FuncForPC(callerPC).Name() + } + idBytes := make([]byte, 16) + _, _ = rand.Read(idBytes) + callID := fmt.Sprintf("%x-%x-%x-%x-%x", idBytes[0:4], idBytes[4:6], idBytes[6:8], idBytes[8:10], idBytes[10:]) + fmt.Printf("Entering function %s called by %s with args (%v) (%v); callID=%s\n", funcName, caller, i, b, callID) + defer fmt.Printf("Exiting function %s called by %s; callID=%s\n", funcName, caller, callID) /* prinTracer */ + if b { return i } @@ -74,8 +178,22 @@ func test(i int, b bool) int { } func main() { - fmt.Printf("Entering function main\n") - defer fmt.Printf("Exiting function main\n") + + /* prinTracer */ + funcName := "main" + caller := "unknown" + if funcPC, _, _, ok := rt.Caller(0); ok { + funcName = rt.FuncForPC(funcPC).Name() + } + if callerPC, _, _, ok := rt.Caller(1); ok { + caller = rt.FuncForPC(callerPC).Name() + } + idBytes := make([]byte, 16) + _, _ = rand.Read(idBytes) + callID := fmt.Sprintf("%x-%x-%x-%x-%x", idBytes[0:4], idBytes[4:6], idBytes[6:8], idBytes[8:10], idBytes[10:]) + fmt.Printf("Entering function %s called by %s; callID=%s\n", funcName, caller, callID) + defer fmt.Printf("Exiting function %s called by %s; callID=%s\n", funcName, caller, callID) /* prinTracer */ + i := test(2, false) fmt.Println(i) } @@ -104,13 +222,29 @@ func main() { const resultCodeWithMultipleImports = `package a import ( + "crypto/rand" "fmt" + rt "runtime" "strconv" ) func test(i int, b bool) int { - fmt.Printf("Entering function test with args (%v) (%v)\n", i, b) - defer fmt.Printf("Exiting function test\n") + + /* prinTracer */ + funcName := "test" + caller := "unknown" + if funcPC, _, _, ok := rt.Caller(0); ok { + funcName = rt.FuncForPC(funcPC).Name() + } + if callerPC, _, _, ok := rt.Caller(1); ok { + caller = rt.FuncForPC(callerPC).Name() + } + idBytes := make([]byte, 16) + _, _ = rand.Read(idBytes) + callID := fmt.Sprintf("%x-%x-%x-%x-%x", idBytes[0:4], idBytes[4:6], idBytes[6:8], idBytes[8:10], idBytes[10:]) + fmt.Printf("Entering function %s called by %s with args (%v) (%v); callID=%s\n", funcName, caller, i, b, callID) + defer fmt.Printf("Exiting function %s called by %s; callID=%s\n", funcName, caller, callID) /* prinTracer */ + if b { return i } @@ -118,8 +252,22 @@ func test(i int, b bool) int { } func main() { - fmt.Printf("Entering function main\n") - defer fmt.Printf("Exiting function main\n") + + /* prinTracer */ + funcName := "main" + caller := "unknown" + if funcPC, _, _, ok := rt.Caller(0); ok { + funcName = rt.FuncForPC(funcPC).Name() + } + if callerPC, _, _, ok := rt.Caller(1); ok { + caller = rt.FuncForPC(callerPC).Name() + } + idBytes := make([]byte, 16) + _, _ = rand.Read(idBytes) + callID := fmt.Sprintf("%x-%x-%x-%x-%x", idBytes[0:4], idBytes[4:6], idBytes[6:8], idBytes[8:10], idBytes[10:]) + fmt.Printf("Entering function %s called by %s; callID=%s\n", funcName, caller, callID) + defer fmt.Printf("Exiting function %s called by %s; callID=%s\n", funcName, caller, callID) /* prinTracer */ + i := test(2, false) fmt.Println(strconv.Itoa(i)) } @@ -147,13 +295,29 @@ func main() { const resultCodeWithImportsWithoutFmt = `package a import ( + "crypto/rand" "fmt" + rt "runtime" "strconv" ) func test(i int, b bool) int { - fmt.Printf("Entering function test with args (%v) (%v)\n", i, b) - defer fmt.Printf("Exiting function test\n") + + /* prinTracer */ + funcName := "test" + caller := "unknown" + if funcPC, _, _, ok := rt.Caller(0); ok { + funcName = rt.FuncForPC(funcPC).Name() + } + if callerPC, _, _, ok := rt.Caller(1); ok { + caller = rt.FuncForPC(callerPC).Name() + } + idBytes := make([]byte, 16) + _, _ = rand.Read(idBytes) + callID := fmt.Sprintf("%x-%x-%x-%x-%x", idBytes[0:4], idBytes[4:6], idBytes[6:8], idBytes[8:10], idBytes[10:]) + fmt.Printf("Entering function %s called by %s with args (%v) (%v); callID=%s\n", funcName, caller, i, b, callID) + defer fmt.Printf("Exiting function %s called by %s; callID=%s\n", funcName, caller, callID) /* prinTracer */ + if b { return i } @@ -161,13 +325,49 @@ func test(i int, b bool) int { } func main() { - fmt.Printf("Entering function main\n") - defer fmt.Printf("Exiting function main\n") + + /* prinTracer */ + funcName := "main" + caller := "unknown" + if funcPC, _, _, ok := rt.Caller(0); ok { + funcName = rt.FuncForPC(funcPC).Name() + } + if callerPC, _, _, ok := rt.Caller(1); ok { + caller = rt.FuncForPC(callerPC).Name() + } + idBytes := make([]byte, 16) + _, _ = rand.Read(idBytes) + callID := fmt.Sprintf("%x-%x-%x-%x-%x", idBytes[0:4], idBytes[4:6], idBytes[6:8], idBytes[8:10], idBytes[10:]) + fmt.Printf("Entering function %s called by %s; callID=%s\n", funcName, caller, callID) + defer fmt.Printf("Exiting function %s called by %s; callID=%s\n", funcName, caller, callID) /* prinTracer */ + i := test(2, false) s := strconv.Itoa(i) } ` +const codeWithWatermarks = `package a + +import ( + "crypto/rand" + "fmt" + rt "runtime" +) + +func test(i int, b bool) int { + /* prinTracer */ + if b { + return i + } + return 0 +} + +func main() { + /* prinTracer */ + i := test(2, false) +} +` + const codeWithoutFunction = `package a type test struct { @@ -177,7 +377,11 @@ type test struct { const resultCodeWithoutFunction = `package a -import "fmt" +import ( + "crypto/rand" + "fmt" + rt "runtime" +) type test struct { a int @@ -195,6 +399,8 @@ func TestInstrumentFile(t *testing.T) { {Name: "InstrumentFileWithMultipleImports", InputCode: codeWithMultipleImports, OutputCode: resultCodeWithMultipleImports}, {Name: "InstrumentFileWithoutFmtImport", InputCode: codeWithImportsWithoutFmt, OutputCode: resultCodeWithImportsWithoutFmt}, {Name: "InstrumentFileWithoutFunctions", InputCode: codeWithoutFunction, OutputCode: resultCodeWithoutFunction}, + {Name: "InstrumentFileDoesNotAffectAlreadyInstrumentedFiles", InputCode: resultCodeWithFmtImport, OutputCode: resultCodeWithFmtImport}, + {Name: "FunctionsWithWatermarksShouldNotBeInstrumented", InputCode: codeWithWatermarks, OutputCode: codeWithWatermarks}, } for _, test := range tests { @@ -210,7 +416,7 @@ func TestInstrumentFile(t *testing.T) { } if buff.String() != test.OutputCode { - t.Error("Assertion failed!") + t.Errorf("Assertion failed! Expected %s got %s", test.OutputCode, buff.String()) } }) } @@ -235,6 +441,7 @@ func TestInstrumentDirectory(t *testing.T) { {InputCode: codeWithMultipleImports, OutputCode: resultCodeWithMultipleImports}, {InputCode: codeWithImportsWithoutFmt, OutputCode: resultCodeWithImportsWithoutFmt}, {InputCode: codeWithoutFunction, OutputCode: resultCodeWithoutFunction}, + {InputCode: resultCodeWithFmtImport, OutputCode: resultCodeWithFmtImport}, } i := 0 diff --git a/tracing/interfaces.go b/tracing/interfaces.go index bc0438e..8e2bb24 100644 --- a/tracing/interfaces.go +++ b/tracing/interfaces.go @@ -22,7 +22,7 @@ type CodeDeinstrumenter interface { //go:generate counterfeiter . ImportsGroomer type ImportsGroomer interface { - RemoveUnusedImportFromFile(fset *token.FileSet, file *ast.File, out io.Writer, importToRemove string) error - RemoveUnusedImportFromPackage(fset *token.FileSet, pkg *ast.Package, importToRemove string) error - RemoveUnusedImportFromDirectory(path string, importToRemove string) error + RemoveUnusedImportFromFile(fset *token.FileSet, file *ast.File, out io.Writer, importsToRemove map[string]string) error + RemoveUnusedImportFromPackage(fset *token.FileSet, pkg *ast.Package, importsToRemove map[string]string) error + RemoveUnusedImportFromDirectory(path string, importsToRemove map[string]string) error } diff --git a/tracing/tracingfakes/fake_imports_groomer.go b/tracing/tracingfakes/fake_imports_groomer.go index 756fdf2..d79c07e 100644 --- a/tracing/tracingfakes/fake_imports_groomer.go +++ b/tracing/tracingfakes/fake_imports_groomer.go @@ -11,11 +11,11 @@ import ( ) type FakeImportsGroomer struct { - RemoveUnusedImportFromDirectoryStub func(string, string) error + RemoveUnusedImportFromDirectoryStub func(string, map[string]string) error removeUnusedImportFromDirectoryMutex sync.RWMutex removeUnusedImportFromDirectoryArgsForCall []struct { arg1 string - arg2 string + arg2 map[string]string } removeUnusedImportFromDirectoryReturns struct { result1 error @@ -23,13 +23,13 @@ type FakeImportsGroomer struct { removeUnusedImportFromDirectoryReturnsOnCall map[int]struct { result1 error } - RemoveUnusedImportFromFileStub func(*token.FileSet, *ast.File, io.Writer, string) error + RemoveUnusedImportFromFileStub func(*token.FileSet, *ast.File, io.Writer, map[string]string) error removeUnusedImportFromFileMutex sync.RWMutex removeUnusedImportFromFileArgsForCall []struct { arg1 *token.FileSet arg2 *ast.File arg3 io.Writer - arg4 string + arg4 map[string]string } removeUnusedImportFromFileReturns struct { result1 error @@ -37,12 +37,12 @@ type FakeImportsGroomer struct { removeUnusedImportFromFileReturnsOnCall map[int]struct { result1 error } - RemoveUnusedImportFromPackageStub func(*token.FileSet, *ast.Package, string) error + RemoveUnusedImportFromPackageStub func(*token.FileSet, *ast.Package, map[string]string) error removeUnusedImportFromPackageMutex sync.RWMutex removeUnusedImportFromPackageArgsForCall []struct { arg1 *token.FileSet arg2 *ast.Package - arg3 string + arg3 map[string]string } removeUnusedImportFromPackageReturns struct { result1 error @@ -54,12 +54,12 @@ type FakeImportsGroomer struct { invocationsMutex sync.RWMutex } -func (fake *FakeImportsGroomer) RemoveUnusedImportFromDirectory(arg1 string, arg2 string) error { +func (fake *FakeImportsGroomer) RemoveUnusedImportFromDirectory(arg1 string, arg2 map[string]string) error { fake.removeUnusedImportFromDirectoryMutex.Lock() ret, specificReturn := fake.removeUnusedImportFromDirectoryReturnsOnCall[len(fake.removeUnusedImportFromDirectoryArgsForCall)] fake.removeUnusedImportFromDirectoryArgsForCall = append(fake.removeUnusedImportFromDirectoryArgsForCall, struct { arg1 string - arg2 string + arg2 map[string]string }{arg1, arg2}) fake.recordInvocation("RemoveUnusedImportFromDirectory", []interface{}{arg1, arg2}) fake.removeUnusedImportFromDirectoryMutex.Unlock() @@ -79,13 +79,13 @@ func (fake *FakeImportsGroomer) RemoveUnusedImportFromDirectoryCallCount() int { return len(fake.removeUnusedImportFromDirectoryArgsForCall) } -func (fake *FakeImportsGroomer) RemoveUnusedImportFromDirectoryCalls(stub func(string, string) error) { +func (fake *FakeImportsGroomer) RemoveUnusedImportFromDirectoryCalls(stub func(string, map[string]string) error) { fake.removeUnusedImportFromDirectoryMutex.Lock() defer fake.removeUnusedImportFromDirectoryMutex.Unlock() fake.RemoveUnusedImportFromDirectoryStub = stub } -func (fake *FakeImportsGroomer) RemoveUnusedImportFromDirectoryArgsForCall(i int) (string, string) { +func (fake *FakeImportsGroomer) RemoveUnusedImportFromDirectoryArgsForCall(i int) (string, map[string]string) { fake.removeUnusedImportFromDirectoryMutex.RLock() defer fake.removeUnusedImportFromDirectoryMutex.RUnlock() argsForCall := fake.removeUnusedImportFromDirectoryArgsForCall[i] @@ -115,14 +115,14 @@ func (fake *FakeImportsGroomer) RemoveUnusedImportFromDirectoryReturnsOnCall(i i }{result1} } -func (fake *FakeImportsGroomer) RemoveUnusedImportFromFile(arg1 *token.FileSet, arg2 *ast.File, arg3 io.Writer, arg4 string) error { +func (fake *FakeImportsGroomer) RemoveUnusedImportFromFile(arg1 *token.FileSet, arg2 *ast.File, arg3 io.Writer, arg4 map[string]string) error { fake.removeUnusedImportFromFileMutex.Lock() ret, specificReturn := fake.removeUnusedImportFromFileReturnsOnCall[len(fake.removeUnusedImportFromFileArgsForCall)] fake.removeUnusedImportFromFileArgsForCall = append(fake.removeUnusedImportFromFileArgsForCall, struct { arg1 *token.FileSet arg2 *ast.File arg3 io.Writer - arg4 string + arg4 map[string]string }{arg1, arg2, arg3, arg4}) fake.recordInvocation("RemoveUnusedImportFromFile", []interface{}{arg1, arg2, arg3, arg4}) fake.removeUnusedImportFromFileMutex.Unlock() @@ -142,13 +142,13 @@ func (fake *FakeImportsGroomer) RemoveUnusedImportFromFileCallCount() int { return len(fake.removeUnusedImportFromFileArgsForCall) } -func (fake *FakeImportsGroomer) RemoveUnusedImportFromFileCalls(stub func(*token.FileSet, *ast.File, io.Writer, string) error) { +func (fake *FakeImportsGroomer) RemoveUnusedImportFromFileCalls(stub func(*token.FileSet, *ast.File, io.Writer, map[string]string) error) { fake.removeUnusedImportFromFileMutex.Lock() defer fake.removeUnusedImportFromFileMutex.Unlock() fake.RemoveUnusedImportFromFileStub = stub } -func (fake *FakeImportsGroomer) RemoveUnusedImportFromFileArgsForCall(i int) (*token.FileSet, *ast.File, io.Writer, string) { +func (fake *FakeImportsGroomer) RemoveUnusedImportFromFileArgsForCall(i int) (*token.FileSet, *ast.File, io.Writer, map[string]string) { fake.removeUnusedImportFromFileMutex.RLock() defer fake.removeUnusedImportFromFileMutex.RUnlock() argsForCall := fake.removeUnusedImportFromFileArgsForCall[i] @@ -178,13 +178,13 @@ func (fake *FakeImportsGroomer) RemoveUnusedImportFromFileReturnsOnCall(i int, r }{result1} } -func (fake *FakeImportsGroomer) RemoveUnusedImportFromPackage(arg1 *token.FileSet, arg2 *ast.Package, arg3 string) error { +func (fake *FakeImportsGroomer) RemoveUnusedImportFromPackage(arg1 *token.FileSet, arg2 *ast.Package, arg3 map[string]string) error { fake.removeUnusedImportFromPackageMutex.Lock() ret, specificReturn := fake.removeUnusedImportFromPackageReturnsOnCall[len(fake.removeUnusedImportFromPackageArgsForCall)] fake.removeUnusedImportFromPackageArgsForCall = append(fake.removeUnusedImportFromPackageArgsForCall, struct { arg1 *token.FileSet arg2 *ast.Package - arg3 string + arg3 map[string]string }{arg1, arg2, arg3}) fake.recordInvocation("RemoveUnusedImportFromPackage", []interface{}{arg1, arg2, arg3}) fake.removeUnusedImportFromPackageMutex.Unlock() @@ -204,13 +204,13 @@ func (fake *FakeImportsGroomer) RemoveUnusedImportFromPackageCallCount() int { return len(fake.removeUnusedImportFromPackageArgsForCall) } -func (fake *FakeImportsGroomer) RemoveUnusedImportFromPackageCalls(stub func(*token.FileSet, *ast.Package, string) error) { +func (fake *FakeImportsGroomer) RemoveUnusedImportFromPackageCalls(stub func(*token.FileSet, *ast.Package, map[string]string) error) { fake.removeUnusedImportFromPackageMutex.Lock() defer fake.removeUnusedImportFromPackageMutex.Unlock() fake.RemoveUnusedImportFromPackageStub = stub } -func (fake *FakeImportsGroomer) RemoveUnusedImportFromPackageArgsForCall(i int) (*token.FileSet, *ast.Package, string) { +func (fake *FakeImportsGroomer) RemoveUnusedImportFromPackageArgsForCall(i int) (*token.FileSet, *ast.Package, map[string]string) { fake.removeUnusedImportFromPackageMutex.RLock() defer fake.removeUnusedImportFromPackageMutex.RUnlock() argsForCall := fake.removeUnusedImportFromPackageArgsForCall[i] diff --git a/tracing/unused_imports.go b/tracing/unused_imports.go index 62b2bf7..9a5ef31 100644 --- a/tracing/unused_imports.go +++ b/tracing/unused_imports.go @@ -18,7 +18,7 @@ func NewImportsGroomer() ImportsGroomer { return &importsGroomer{} } -func (ig *importsGroomer) RemoveUnusedImportFromDirectory(path string, importToRemove string) error { +func (ig *importsGroomer) RemoveUnusedImportFromDirectory(path string, importsToRemove map[string]string) error { fset := token.NewFileSet() filter := func(info os.FileInfo) bool { return testsFilter(info) && generatedFilter(path, info) @@ -29,29 +29,31 @@ func (ig *importsGroomer) RemoveUnusedImportFromDirectory(path string, importToR } for _, pkg := range pkgs { - if err := ig.RemoveUnusedImportFromPackage(fset, pkg, importToRemove); err != nil { + if err := ig.RemoveUnusedImportFromPackage(fset, pkg, importsToRemove); err != nil { return err } } return nil } -func (ig *importsGroomer) RemoveUnusedImportFromPackage(fset *token.FileSet, pkg *ast.Package, importToRemove string) error { +func (ig *importsGroomer) RemoveUnusedImportFromPackage(fset *token.FileSet, pkg *ast.Package, importsToRemove map[string]string) error { for fileName, file := range pkg.Files { sourceFile, err := os.OpenFile(fileName, os.O_TRUNC|os.O_WRONLY, 0664) if err != nil { return fmt.Errorf("failed opening file %s: %v", fileName, err) } - if err := ig.RemoveUnusedImportFromFile(fset, file, sourceFile, importToRemove); err != nil { - return fmt.Errorf("failed removing import %s from file %s: %v", importToRemove, fileName, err) + if err := ig.RemoveUnusedImportFromFile(fset, file, sourceFile, importsToRemove); err != nil { + return fmt.Errorf("failed removing imports %v from file %s: %v", importsToRemove, fileName, err) } } return nil } -func (ig *importsGroomer) RemoveUnusedImportFromFile(fset *token.FileSet, file *ast.File, out io.Writer, importToRemove string) error { - if !astutil.UsesImport(file, importToRemove) { - astutil.DeleteImport(fset, file, importToRemove) +func (ig *importsGroomer) RemoveUnusedImportFromFile(fset *token.FileSet, file *ast.File, out io.Writer, importsToRemove map[string]string) error { + for importToRemove, alias := range importsToRemove { + if !astutil.UsesImport(file, importToRemove) { + astutil.DeleteNamedImport(fset, file, alias, importToRemove) + } } // Needed because ast does not support floating comments and deletes them. // In order to preserve all comments we just pre-parse it to dst which treats them as first class citizens. diff --git a/tracing/unused_imports_test.go b/tracing/unused_imports_test.go index ea3818b..9df91e6 100644 --- a/tracing/unused_imports_test.go +++ b/tracing/unused_imports_test.go @@ -27,7 +27,7 @@ func TestRemoveUnusedImportsFromFile(t *testing.T) { t.Fatal(err) } var buff bytes.Buffer - if err := NewImportsGroomer().RemoveUnusedImportFromFile(fset, file, &buff, "fmt"); err != nil { + if err := NewImportsGroomer().RemoveUnusedImportFromFile(fset, file, &buff, map[string]string{"fmt": "", "runtime": "rt", "crypto/rand": ""}); err != nil { t.Fatal(err) } @@ -63,7 +63,7 @@ func TestRemoveUnusedImportsFromDirectory(t *testing.T) { i++ } - if err := NewImportsGroomer().RemoveUnusedImportFromDirectory("test", "fmt"); err != nil { + if err := NewImportsGroomer().RemoveUnusedImportFromDirectory("test", map[string]string{"fmt": "", "runtime": "rt", "crypto/rand": ""}); err != nil { t.Fatal(err) } diff --git a/tracing/util.go b/tracing/util.go index 8bb2589..b72d4c3 100644 --- a/tracing/util.go +++ b/tracing/util.go @@ -39,16 +39,6 @@ func generatedFilter(path string, info os.FileInfo) bool { return true } -// Returns dst expresion like: fmt.Printf("msg\n") -func newPrintExprWithMessage(msg string) *dst.CallExpr { - return newPrintExprWithArgs([]dst.Expr{ - &dst.BasicLit{ - Kind: token.STRING, - Value: `"` + msg + `\n"`, - }, - }) -} - // Return dst expresion like: fmt.Printf(args...) func newPrintExprWithArgs(args []dst.Expr) *dst.CallExpr { return &dst.CallExpr{ @@ -59,3 +49,326 @@ func newPrintExprWithArgs(args []dst.Expr) *dst.CallExpr { Args: args, } } + +func buildEnteringFunctionArgs(f *dst.FuncDecl) []dst.Expr { + var enteringStringFormat = "Entering function %s called by %s" + args := []dst.Expr{ + &dst.BasicLit{ + Kind: token.STRING, + Value: funcNameVarName, + }, + &dst.BasicLit{ + Kind: token.STRING, + Value: callerFuncNameVarName, + }, + } + + if len(f.Type.Params.List) > 0 { + enteringStringFormat += " with args" + + for _, param := range f.Type.Params.List { + enteringStringFormat += " (%v)" + args = append(args, &dst.BasicLit{ + Kind: token.STRING, + Value: param.Names[0].Name, + }) + } + } + args = append(args, &dst.BasicLit{ + Kind: token.STRING, + Value: callIDVarName, + }) + args = append([]dst.Expr{ + &dst.BasicLit{ + Kind: token.STRING, + Value: `"` + enteringStringFormat + `; callID=%s\n"`, + }, + }, args...) + + return args +} + +func buildExitFunctionArgs() []dst.Expr { + var exitingStringFormat = "Exiting function %s called by %s; callID=%s" + return []dst.Expr{ + &dst.BasicLit{ + Kind: token.STRING, + Value: `"` + exitingStringFormat + `\n"`, + }, + &dst.BasicLit{ + Kind: token.STRING, + Value: funcNameVarName, + }, + &dst.BasicLit{ + Kind: token.STRING, + Value: callerFuncNameVarName, + }, + &dst.BasicLit{ + Kind: token.STRING, + Value: callIDVarName, + }, + } +} + +// Return dst statement like: varName := "value" +func newAssignStmt(varName, value string) *dst.AssignStmt { + return &dst.AssignStmt{ + Lhs: []dst.Expr{ + &dst.Ident{ + Name: varName, + }, + }, + Tok: token.DEFINE, + Rhs: []dst.Expr{ + &dst.BasicLit{ + Kind: token.STRING, + Value: `"` + value + `"`, + }, + }, + } +} + +/* Return dst statement like: +if funcPcVarName, _, _, ok := runtime.Caller(funcIndex); ok { + funcNameVarName = runtime.FuncForPC(funcPcVarName).Name() +} +*/ +func newGetFuncNameIfStatement(funcIndex, funcPcVarName, funcNameVarName string) *dst.IfStmt { + return &dst.IfStmt{ + Init: &dst.AssignStmt{ + Lhs: []dst.Expr{ + &dst.Ident{ + Name: funcPcVarName, + }, + &dst.Ident{ + Name: "_", + }, + &dst.Ident{ + Name: "_", + }, + &dst.Ident{ + Name: "ok", + }, + }, + Tok: token.DEFINE, + Rhs: []dst.Expr{ + &dst.CallExpr{ + Fun: &dst.SelectorExpr{ + X: &dst.Ident{ + Name: "rt", + }, + Sel: &dst.Ident{ + Name: "Caller", + }, + }, + Args: []dst.Expr{ + &dst.BasicLit{ + Kind: token.INT, + Value: funcIndex, + }, + }, + }, + }, + }, + Cond: &dst.Ident{ + Name: "ok", + }, + Body: &dst.BlockStmt{ + List: []dst.Stmt{ + &dst.AssignStmt{ + Lhs: []dst.Expr{ + &dst.Ident{ + Name: funcNameVarName, + }, + }, + Tok: token.ASSIGN, + Rhs: []dst.Expr{ + &dst.CallExpr{ + Fun: &dst.SelectorExpr{ + X: &dst.CallExpr{ + Fun: &dst.SelectorExpr{ + X: &dst.Ident{ + Name: "rt", + }, + Sel: &dst.Ident{ + Name: "FuncForPC", + }, + }, + Args: []dst.Expr{ + &dst.Ident{ + Name: funcPcVarName, + }, + }, + }, + Sel: &dst.Ident{ + Name: "Name", + }, + }, + }, + }, + }, + }, + }, + } +} + +// Returns dst statement like: +// idBytes := make([]byte, 16) +func newMakeByteSliceStmt() *dst.AssignStmt { + return &dst.AssignStmt{ + Lhs: []dst.Expr{ + &dst.Ident{ + Name: "idBytes", + }, + }, + Tok: token.DEFINE, + Rhs: []dst.Expr{ + &dst.CallExpr{ + Fun: &dst.Ident{ + Name: "make", + }, + Args: []dst.Expr{ + &dst.ArrayType{ + Elt: &dst.Ident{ + Name: "byte", + }, + }, + &dst.BasicLit{ + Kind: token.INT, + Value: "16", + }, + }, + }, + }, + } +} + +// Returns dst statement like: +// _, _ = rand.Read(idBytes) +func newRandReadStmt() *dst.AssignStmt { + return &dst.AssignStmt{ + Lhs: []dst.Expr{ + &dst.Ident{ + Name: "_", + }, + &dst.Ident{ + Name: "_", + }, + }, + Tok: token.ASSIGN, + Rhs: []dst.Expr{ + &dst.CallExpr{ + Fun: &dst.SelectorExpr{ + X: &dst.Ident{ + Name: "rand", + }, + Sel: &dst.Ident{ + Name: "Read", + }, + }, + Args: []dst.Expr{ + &dst.Ident{ + Name: "idBytes", + }, + }, + }, + }, + } +} + +// Returns dst statement like: +// callID := fmt.Sprintf("%x-%x-%x-%x-%x", idBytes[0:4], idBytes[4:6], idBytes[6:8], idBytes[8:10], idBytes[10:]) +func newParseUUIDFromByteSliceStmt(callIDVarName string) *dst.AssignStmt { + return &dst.AssignStmt{ + Lhs: []dst.Expr{ + &dst.Ident{ + Name: callIDVarName, + }, + }, + Tok: token.DEFINE, + Rhs: []dst.Expr{ + &dst.CallExpr{ + Fun: &dst.SelectorExpr{ + X: &dst.Ident{ + Name: "fmt", + }, + Sel: &dst.Ident{ + Name: "Sprintf", + }, + }, + Args: []dst.Expr{ + &dst.BasicLit{ + Kind: token.STRING, + Value: "\"%x-%x-%x-%x-%x\"", + }, + &dst.SliceExpr{ + X: &dst.Ident{ + Name: "idBytes", + }, + Low: &dst.BasicLit{ + Kind: token.INT, + Value: "0", + }, + High: &dst.BasicLit{ + Kind: token.INT, + Value: "4", + }, + Slice3: false, + }, + &dst.SliceExpr{ + X: &dst.Ident{ + Name: "idBytes", + }, + Low: &dst.BasicLit{ + Kind: token.INT, + Value: "4", + }, + High: &dst.BasicLit{ + Kind: token.INT, + Value: "6", + }, + Slice3: false, + }, + &dst.SliceExpr{ + X: &dst.Ident{ + Name: "idBytes", + }, + Low: &dst.BasicLit{ + Kind: token.INT, + Value: "6", + }, + High: &dst.BasicLit{ + Kind: token.INT, + Value: "8", + }, + Slice3: false, + }, + &dst.SliceExpr{ + X: &dst.Ident{ + Name: "idBytes", + }, + Low: &dst.BasicLit{ + Kind: token.INT, + Value: "8", + }, + High: &dst.BasicLit{ + Kind: token.INT, + Value: "10", + }, + Slice3: false, + }, + &dst.SliceExpr{ + X: &dst.Ident{ + Name: "idBytes", + }, + Low: &dst.BasicLit{ + Kind: token.INT, + Value: "10", + }, + Slice3: false, + }, + }, + }, + }, + } +} diff --git a/vis/vis.go b/vis/vis.go index 3714063..fdd9fc4 100644 --- a/vis/vis.go +++ b/vis/vis.go @@ -5,6 +5,7 @@ import ( "fmt" "github.com/DimitarPetrov/printracer/parser" "html/template" + "math" "os" ) @@ -43,15 +44,19 @@ const reportTemplate = ` # Arguments + Call ID - {{ range $i, $e := .Args }} + {{ range $i, $e := .TableRows }} {{ inc $i }} -

{{ $e }}
+
{{ $e.Args }}
+ +
{{ $e.CallID }}
+ {{ end }} @@ -138,10 +143,15 @@ func (s *stack) Empty() bool { return s.Length() == 0 } +type TableRow struct { + Args string + CallID string +} + type templateData struct { - Args []string - Diagram string - MetaJSON template.JS + TableRows []TableRow + Diagram string + MetaJSON template.JS } type sequenceDiagramData struct { @@ -149,17 +159,17 @@ type sequenceDiagramData struct { count int } -func (r *sequenceDiagramData) addFunctionInvocation(source string, target string) { +func (r *sequenceDiagramData) addFunctionInvocation(source, target string) { r.addRecord(source, "->", target) } -func (r *sequenceDiagramData) addFunctionReturn(source string, target string) { +func (r *sequenceDiagramData) addFunctionReturn(source, target string) { r.addRecord(source, "-->", target) } -func (r *sequenceDiagramData) addRecord(source string, operation string, target string) { +func (r *sequenceDiagramData) addRecord(source, operation, target string) { r.count++ - r.data.WriteString(fmt.Sprintf("%s%s%s: (%d)\n", source, operation, target, r.count)) + r.data.WriteString(fmt.Sprintf("\"%s\"%s\"%s\": (%d)\n", source, operation, target, r.count)) } func (r *sequenceDiagramData) String() string { @@ -167,18 +177,60 @@ func (r *sequenceDiagramData) String() string { } func (v *visualizer) constructTemplateData(events []parser.FuncEvent, maxDepth int, startingFunc string) (templateData, error) { + if maxDepth == math.MaxInt32 && len(startingFunc) == 0 { + return v.constructTemplateDataGraph(events) + } + return v.constructTemplateDataLinearly(events, maxDepth, startingFunc) +} + +func (v *visualizer) constructTemplateDataGraph(events []parser.FuncEvent) (templateData, error) { + diagramData := &sequenceDiagramData{} + + var tableRows []TableRow + + for i := 0; i < len(events); i++ { + event := events[i] + switch event := event.(type) { + case *parser.InvocationEvent: + diagramData.addFunctionInvocation(event.GetCaller(), event.GetCallee()) + tableRows = append(tableRows, TableRow{ + Args: fmt.Sprintf("calling %s", event.Args), + CallID: event.GetCallID(), + }) + case *parser.ReturningEvent: + diagramData.addFunctionReturn(event.GetCallee(), event.GetCaller()) + tableRows = append(tableRows, TableRow{ + Args: "returning", + CallID: event.GetCallID(), + }) + } + } + + return templateData{ + Diagram: diagramData.String(), + TableRows: tableRows, + }, nil +} + +func (v *visualizer) constructTemplateDataLinearly(events []parser.FuncEvent, maxDepth int, startingFunc string) (templateData, error) { diagramData := &sequenceDiagramData{} if len(startingFunc) > 0 { + found := false for i := 0; i < len(events); i++ { - if events[i].FuncName() == startingFunc { + if _, ok := events[i].(*parser.InvocationEvent); ok && events[i].GetCaller() == startingFunc { events = events[i:] + found = true break } } + if !found { + return templateData{}, fmt.Errorf("could not find functions called by %s", startingFunc) + } + for i := 1; i < len(events); i++ { - if events[i].FuncName() == startingFunc { + if _, ok := events[i].(*parser.ReturningEvent); ok && events[i].GetCaller() == startingFunc { events = events[:i+1] break } @@ -186,36 +238,47 @@ func (v *visualizer) constructTemplateData(events []parser.FuncEvent, maxDepth i } stack := stack(make([]parser.FuncEvent, 0, len(events))) + var tableRows []TableRow - var args []string + diagramData.addFunctionInvocation(events[0].GetCaller(), events[0].GetCallee()) + stack.Push(events[0]) + tableRows = append(tableRows, TableRow{ + Args: fmt.Sprintf("calling %s", events[0].(*parser.InvocationEvent).Args), + CallID: events[0].GetCallID(), + }) - for i := 0; i < len(events); i++ { + for i := 1; i < len(events); i++ { + if stack.Empty() { + break + } event := events[i] switch event := event.(type) { case *parser.InvocationEvent: if stack.Length() < maxDepth { - prev := event - if !stack.Empty() { - prev = stack.Peek().(*parser.InvocationEvent) + prev := stack.Peek().(*parser.InvocationEvent) + if prev.GetCallee() == event.GetCaller() { + diagramData.addFunctionInvocation(event.GetCaller(), event.GetCallee()) + tableRows = append(tableRows, TableRow{ + Args: fmt.Sprintf("calling %s", event.Args), + CallID: event.GetCallID(), + }) + stack.Push(event) } - diagramData.addFunctionInvocation(prev.Name, event.FuncName()) - args = append(args, fmt.Sprintf("calling %s", event.Args)) - stack.Push(event) } case *parser.ReturningEvent: - if stack.Peek().FuncName() == event.FuncName() { - prev := stack.Pop() - if !stack.Empty() { - prev = stack.Peek() - } - diagramData.addFunctionReturn(event.FuncName(), prev.FuncName()) - args = append(args, "returning") + if stack.Peek().GetCallee() == event.GetCallee() { + _ = stack.Pop() + diagramData.addFunctionReturn(event.GetCallee(), event.GetCaller()) + tableRows = append(tableRows, TableRow{ + Args: "returning", + CallID: event.GetCallID(), + }) } } } return templateData{ - Diagram: diagramData.String(), - Args: args, + Diagram: diagramData.String(), + TableRows: tableRows, }, nil } diff --git a/vis/vis_test.go b/vis/vis_test.go index 8372321..c1f45ce 100644 --- a/vis/vis_test.go +++ b/vis/vis_test.go @@ -13,83 +13,99 @@ import ( var inputEvents = []parser.FuncEvent{ &parser.InvocationEvent{ - Name: "main", + Caller: "runtime.main", + Callee: "main.main", + CallID: "1d8ca74e-c860-8a75-fc36-fe6d34350f0c", }, &parser.InvocationEvent{ - Name: "foo", - Args: "with args (1) (true)", + Caller: "main.main", + Callee: "main.foo", + CallID: "973355a9-2ec6-095c-9137-7a1081ac0a5f", + Args: "with args (5) (false)", }, &parser.InvocationEvent{ - Name: "bar", - Args: "with args (test string)", + Caller: "main.foo", + Callee: "main.bar", + CallID: "6c294dfd-4c6a-39b1-474e-314bee73f514", + Args: "with args (test string)", }, &parser.InvocationEvent{ - Name: "baz", + Caller: "main.bar", + Callee: "main.baz", + CallID: "a019a297-0a6e-a792-0e3f-23c33a44622f", + }, + &parser.ReturningEvent{ + Caller: "main.bar", + Callee: "main.baz", + CallID: "a019a297-0a6e-a792-0e3f-23c33a44622f", + }, + &parser.ReturningEvent{ + Caller: "main.foo", + Callee: "main.bar", + CallID: "6c294dfd-4c6a-39b1-474e-314bee73f514", + }, + &parser.ReturningEvent{ + Caller: "main.main", + Callee: "main.foo", + CallID: "973355a9-2ec6-095c-9137-7a1081ac0a5f", + }, + &parser.ReturningEvent{ + Caller: "runtime.main", + Callee: "main.main", + CallID: "1d8ca74e-c860-8a75-fc36-fe6d34350f0c", }, - &parser.ReturningEvent{Name: "baz"}, - &parser.ReturningEvent{Name: "bar"}, - &parser.ReturningEvent{Name: "foo"}, - &parser.ReturningEvent{Name: "main"}, } -var fullDiagram = `main->main: (1) -main->foo: (2) -foo->bar: (3) -bar->baz: (4) -baz-->bar: (5) -bar-->foo: (6) -foo-->main: (7) -main-->main: (8) +var fullDiagram = `"runtime.main"->"main.main": (1) +"main.main"->"main.foo": (2) +"main.foo"->"main.bar": (3) +"main.bar"->"main.baz": (4) +"main.baz"-->"main.bar": (5) +"main.bar"-->"main.foo": (6) +"main.foo"-->"main.main": (7) +"main.main"-->"runtime.main": (8) ` -var fullArgs = []string{ - "calling ", - "calling with args (1) (true)", - "calling with args (test string)", - "calling ", - "returning", - "returning", - "returning", - "returning", +var fullTableRows = []TableRow{ + {Args: "calling ", CallID: "1d8ca74e-c860-8a75-fc36-fe6d34350f0c"}, + {Args: "calling with args (5) (false)", CallID: "973355a9-2ec6-095c-9137-7a1081ac0a5f"}, + {Args: "calling with args (test string)", CallID: "6c294dfd-4c6a-39b1-474e-314bee73f514"}, + {Args: "calling ", CallID: "a019a297-0a6e-a792-0e3f-23c33a44622f"}, + {Args: "returning", CallID: "a019a297-0a6e-a792-0e3f-23c33a44622f"}, + {Args: "returning", CallID: "6c294dfd-4c6a-39b1-474e-314bee73f514"}, + {Args: "returning", CallID: "973355a9-2ec6-095c-9137-7a1081ac0a5f"}, + {Args: "returning", CallID: "1d8ca74e-c860-8a75-fc36-fe6d34350f0c"}, } -var diagramWith2DepthLimit = `main->main: (1) -main->foo: (2) -foo-->main: (3) -main-->main: (4) +var diagramWith2DepthLimit = `"runtime.main"->"main.main": (1) +"main.main"->"main.foo": (2) +"main.foo"-->"main.main": (3) +"main.main"-->"runtime.main": (4) ` -var argsWith2DepthLimit = []string{ - "calling ", - "calling with args (1) (true)", - "returning", - "returning", +var tableRowsWith2DepthLimit = []TableRow{ + {Args: "calling ", CallID: "1d8ca74e-c860-8a75-fc36-fe6d34350f0c"}, + {Args: "calling with args (5) (false)", CallID: "973355a9-2ec6-095c-9137-7a1081ac0a5f"}, + {Args: "returning", CallID: "973355a9-2ec6-095c-9137-7a1081ac0a5f"}, + {Args: "returning", CallID: "1d8ca74e-c860-8a75-fc36-fe6d34350f0c"}, } -var diagramWithFooStartingFunc = `foo->foo: (1) -foo->bar: (2) -bar->baz: (3) -baz-->bar: (4) -bar-->foo: (5) -foo-->foo: (6) +var diagramWithFooStartingFunc = `"main.foo"->"main.bar": (1) +"main.bar"->"main.baz": (2) +"main.baz"-->"main.bar": (3) +"main.bar"-->"main.foo": (4) ` -var argsWithFooStartingFunc = []string{ - "calling with args (1) (true)", - "calling with args (test string)", - "calling ", - "returning", - "returning", - "returning", +var tableRowsWithFooStartingFunc = []TableRow{ + {Args: "calling with args (test string)", CallID: "6c294dfd-4c6a-39b1-474e-314bee73f514"}, + {Args: "calling ", CallID: "a019a297-0a6e-a792-0e3f-23c33a44622f"}, + {Args: "returning", CallID: "a019a297-0a6e-a792-0e3f-23c33a44622f"}, + {Args: "returning", CallID: "6c294dfd-4c6a-39b1-474e-314bee73f514"}, } -var diagramWithFooStartingFuncAnd2DepthLimit = `foo->foo: (1) -foo->bar: (2) -bar-->foo: (3) -foo-->foo: (4) +var diagramWithFooStartingFuncAnd2DepthLimit = `"main.foo"->"main.bar": (1) +"main.bar"-->"main.foo": (2) ` -var argsWithFooStartingFuncAnd2DepthLimit = []string{ - "calling with args (1) (true)", - "calling with args (test string)", - "returning", - "returning", +var tableRowsWithFooStartingFuncAnd2DepthLimit = []TableRow{ + {Args: "calling with args (test string)", CallID: "6c294dfd-4c6a-39b1-474e-314bee73f514"}, + {Args: "returning", CallID: "6c294dfd-4c6a-39b1-474e-314bee73f514"}, } func TestVisualizerConstructTemplateData(t *testing.T) { @@ -98,12 +114,12 @@ func TestVisualizerConstructTemplateData(t *testing.T) { MaxDepth int StartingFunc string Diagram string - Args []string + TableRows []TableRow }{ - {Name: "ConstructTemplateData", MaxDepth: math.MaxInt32, Diagram: fullDiagram, Args: fullArgs}, - {Name: "ConstructTemplateDataWithDepthLimit", MaxDepth: 2, Diagram: diagramWith2DepthLimit, Args: argsWith2DepthLimit}, - {Name: "ConstructTemplateDataWithFooStartingFunc", MaxDepth: math.MaxInt32, StartingFunc: "foo", Diagram: diagramWithFooStartingFunc, Args: argsWithFooStartingFunc}, - {Name: "ConstructTemplateDataWithFooStartingFuncAndDepthLimit", MaxDepth: 2, StartingFunc: "foo", Diagram: diagramWithFooStartingFuncAnd2DepthLimit, Args: argsWithFooStartingFuncAnd2DepthLimit}, + {Name: "ConstructTemplateData", MaxDepth: math.MaxInt32, Diagram: fullDiagram, TableRows: fullTableRows}, + {Name: "ConstructTemplateDataWithDepthLimit", MaxDepth: 2, Diagram: diagramWith2DepthLimit, TableRows: tableRowsWith2DepthLimit}, + {Name: "ConstructTemplateDataWithFooStartingFunc", MaxDepth: math.MaxInt32, StartingFunc: "main.foo", Diagram: diagramWithFooStartingFunc, TableRows: tableRowsWithFooStartingFunc}, + {Name: "ConstructTemplateDataWithFooStartingFuncAndDepthLimit", MaxDepth: 1, StartingFunc: "main.foo", Diagram: diagramWithFooStartingFuncAnd2DepthLimit, TableRows: tableRowsWithFooStartingFuncAnd2DepthLimit}, } visualizer := visualizer{} @@ -117,8 +133,8 @@ func TestVisualizerConstructTemplateData(t *testing.T) { if diagramData.Diagram != test.Diagram { t.Errorf("Assertion failed! Expected diagram data: %s bug got: %s", test.Diagram, diagramData.Diagram) } - if !reflect.DeepEqual(diagramData.Args, test.Args) { - t.Errorf("Assertion failed! Expected args: %v bug got: %v", test.Args, diagramData.Args) + if !reflect.DeepEqual(diagramData.TableRows, test.TableRows) { + t.Errorf("Assertion failed! Expected args: %v bug got: %v", test.TableRows, diagramData.TableRows) } }) } @@ -130,12 +146,12 @@ func TestVisualize(t *testing.T) { MaxDepth int StartingFunc string Diagram string - Args []string + TableRows []TableRow }{ - {Name: "ConstructTemplateData", MaxDepth: math.MaxInt32, Diagram: fullDiagram, Args: fullArgs}, - {Name: "ConstructTemplateDataWithDepthLimit", MaxDepth: 2, Diagram: diagramWith2DepthLimit, Args: argsWith2DepthLimit}, - {Name: "ConstructTemplateDataWithFooStartingFunc", MaxDepth: math.MaxInt32, StartingFunc: "foo", Diagram: diagramWithFooStartingFunc, Args: argsWithFooStartingFunc}, - {Name: "ConstructTemplateDataWithFooStartingFuncAndDepthLimit", MaxDepth: 2, StartingFunc: "foo", Diagram: diagramWithFooStartingFuncAnd2DepthLimit, Args: argsWithFooStartingFuncAnd2DepthLimit}, + {Name: "ConstructTemplateData", MaxDepth: math.MaxInt32, Diagram: fullDiagram, TableRows: fullTableRows}, + {Name: "ConstructTemplateDataWithDepthLimit", MaxDepth: 2, Diagram: diagramWith2DepthLimit, TableRows: tableRowsWith2DepthLimit}, + {Name: "ConstructTemplateDataWithFooStartingFunc", MaxDepth: math.MaxInt32, StartingFunc: "main.foo", Diagram: diagramWithFooStartingFunc, TableRows: tableRowsWithFooStartingFunc}, + {Name: "ConstructTemplateDataWithFooStartingFuncAndDepthLimit", MaxDepth: 1, StartingFunc: "main.foo", Diagram: diagramWithFooStartingFuncAnd2DepthLimit, TableRows: tableRowsWithFooStartingFuncAnd2DepthLimit}, } for _, test := range tests { @@ -155,13 +171,16 @@ func TestVisualize(t *testing.T) { t.Fatal(err) } - encodedDiagram := strings.ReplaceAll(strings.ReplaceAll(test.Diagram, "->", `-\x3e`), "\n", `\n`) + encodedDiagram := strings.ReplaceAll(strings.ReplaceAll(strings.ReplaceAll(test.Diagram, "->", `-\x3e`), "\n", `\n`), `"`, `\x22`) if !bytes.Contains(html, []byte(encodedDiagram)) { t.Error("Assertion failed! Expected html file to contain diagram data") } - for _, arg := range test.Args { - if !bytes.Contains(html, []byte(arg)) { - t.Errorf("Assertion failed! Expected html file to contain arg %s", arg) + for _, row := range test.TableRows { + if !bytes.Contains(html, []byte(row.Args)) { + t.Errorf("Assertion failed! Expected html file to contain arg %s", row.Args) + } + if !bytes.Contains(html, []byte(row.CallID)) { + t.Errorf("Assertion failed! Expected html file to contain callID %s", row.CallID) } } })