public void SetupSourceFile() { dir = GitTests.RepoPath; GitReset(); var fName = "ClassA.cs"; sourceFile = PipelineComponentsFactory.GetSourceFileForFile(fName); }
public void TestSetterInjection() { var source = PipelineComponentsFactory.GetSourceFileForFile("WithSetter.cs"); var sourceFileAnalyzer = new SourceFileAnalyzer(source); var blocks = sourceFileAnalyzer.GetCodeBlocks(); Assert.IsTrue(blocks.Count == 1); Assert.IsTrue(blocks[0].IsMethod); Assert.IsTrue(blocks[0].methodName.Equals("testSetter.set")); Assert.IsTrue(blocks[0].Statements.Count == 3); }
public void TestHooksRenderer_UNIT() { List <Hooks> hooksList = PipelineComponentsFactory.GenerateHookList(sourceFile); HooksRenderer hooksRenderer = new HooksRenderer(); string outText = hooksRenderer.GetHookedCode(sourceFile, hooksList); Assert.IsTrue(outText.Contains("OnMethodEnter")); Assert.IsTrue(outText.Contains("LogLineRun")); Assert.IsTrue(outText.Contains("using CodeRecordHelpers;")); File.WriteAllText("/tmp/code.cs", outText); }
public void TestCodeBlockToHooksGenerator_UNIT() { List <CodeBlock> blocks = PipelineComponentsFactory.GenerateTestCodeBlock(sourceFile); CodeblocksToHooksGenerator gen = new CodeblocksToHooksGenerator(); var hooksList = gen.GenerateHooks(blocks); Assert.IsTrue(hooksList.Count > 0); Assert.IsTrue(hooksList[1].Pairs[1].Key == 0); Assert.IsTrue(hooksList[1].Pairs[0].Value.Contains("var mrid = CodeHooks.Instance().OnMethodEnter(@\"ClassA.cs\", \"MethodA_1\");\n\n")); Assert.IsTrue(hooksList[1].Pairs[1].Value.Contains("CodeHooks.Instance().LogLineRun(mrid, 19")); }