public RawCode RecordRawCode() { var pulseList = RecordCode(); var rawCode = new RawCode(pulseList.Select(x => (int)x.Item2).ToArray()); return(rawCode); }
public void TestDontReplaceIndividualProperty(string source, string expectedBody) { var code = new RawCode(source.Split("\n")); _replacer.Replace(code); Assert.True(code.GetContent().Contains(expectedBody)); }
public void TestEnsureMethodNotProperty(string source) { var code = new RawCode(source.Split("\n")); var methodDeclaration = Extractor.MethodDeclarationIdentifier.TryFind(0, code); Assert.AreEqual(null, methodDeclaration); }
public void TestReplaceSingleMethod(string source, string bodyBefore, string expectedAfter) { var code = new RawCode(source.Split("\n")); _replacer.Replace(code); Assert.False(code.GetContent().Contains(bodyBefore)); Assert.True(code.GetContent().Contains(expectedAfter)); }
public void TestClassConstructorAndMethodLineShifting(string source, int expectedBracketCount) { var lines = source.Split("\n"); var code = new RawCode(lines); _replacer.Replace(code); Assert.AreEqual(expectedBracketCount, code.GetContent().Count(ch => ch == '}')); Assert.AreEqual(expectedBracketCount, code.GetContent().Count(ch => ch == '{')); }
public void TestDontReplaceClassWithTwoProperties() { var lines = TestConstants.TestClassWithTwoProperties.Split("\n"); var code = new RawCode(lines); _replacer.Replace(code); Assert.True(code.GetContent().Contains(TestConstants.TestProperty1)); Assert.True(code.GetContent().Contains(TestConstants.TestProperty2)); }
public void TestReplaceClassWithTwoConstructors() { var lines = TestConstants.TestClassWithConstructor1And2.Split("\n"); var code = new RawCode(lines); _replacer.Replace(code); Assert.False(code.GetContent().Contains(TestConstants.TestConstructor1)); Assert.False(code.GetContent().Contains(TestConstants.TestConstructor2)); Assert.True(code.GetContent().Contains(TestConstants.NotImplementedException)); }
public void TestReplaceWithinNamespace() { var lines = TestConstants.TestNamespaceAndClassWithSingleMethod.Split("\n"); var code = new RawCode(lines); _replacer.Replace(code); Assert.True(code.GetContent().Contains(TestConstants.NotImplementedException)); Assert.False(code.GetContent().Contains(TestConstants.PrintStatement)); Assert.True(code.Lines[0].Equals(new NotImplementedEmitStrategy().Imports.First())); }
public void TestReplaceConstructor(string source, string bodyBefore, string expectedAfter) { var code = new RawCode(source.Split("\n")); _replacer.Replace(code); if (!string.IsNullOrEmpty(bodyBefore)) { Assert.False(code.GetContent().Contains(bodyBefore)); } Assert.True(code.GetContent().Contains(expectedAfter)); }
public void TestInlineMethod(string source, string[] methodBodies) { var code = new RawCode(source.Split("\n")); Assert.AreEqual(MethodVariant.InlineMethod, Extractor.MethodDeclarationIdentifier.TryFind(0, code).Variant); var methods = Extractor.ExtractMethods(code).ToArray(); Assert.AreEqual(methodBodies.Length, methods.Length); for (var i = 0; i < methodBodies.Length; i++) { Assert.AreEqual(methodBodies[i], methods[i].MethodBody.Content); } }
public void TestExtractMethods(string source, int numExpectedMethods, int[] expectedMethodBodyLengths, string[] expectedMethodBodies) { var code = new RawCode(source.Split('\n')); var methods = Extractor.ExtractMethods(code).ToArray(); Assert.AreEqual(numExpectedMethods, methods.Length); for (var i = methods.Length - 1; i >= 0; i--) { var methodDef = methods[i]; Assert.AreEqual(expectedMethodBodyLengths[i], methodDef.MethodBody.NumLines); var expectedMethodBody = expectedMethodBodies[i]; Assert.AreEqual(expectedMethodBody, methodDef.MethodBody.Content); } }
static InputUploadPainter() { CodeAssets = CreateCodeAssets(); }
public override string ToString() { return(RawCode.Aggregate("", (current, line) => current + line)); }
get => Find(item => item.RawCode == RawCode.Numberize(ID));