예제 #1
0
        public void CanReadBaseType()
        {
            var    testLine = @"       extends [mscorlib]System.Object";
            string baseType;

            Assert.IsTrue(ILParseHelper.ReadExtendsLine(testLine, out baseType));
            Assert.AreEqual(baseType, @"[mscorlib]System.Object");
        }
예제 #2
0
        public void CanGetClassNameFromClassDeclarationLine()
        {
            var    testLine = @".class public auto ansi beforefieldinit ExampleAssembly.AnotherExampleClass";
            string className;
            string templateSpecifcation;

            ILParseHelper.GetClassNameFromClassDeclarationLine(testLine, out className, out templateSpecifcation);
            Assert.AreEqual(@"ExampleAssembly.AnotherExampleClass", className);
        }
예제 #3
0
        public void CanParseAnoymousTemplateClass()
        {
            var    testLine = @"  .class auto ansi sealed nested private beforefieldinit '<GetVisualChildren>d__0`1'<([WindowsBase]System.Windows.DependencyObject) T>";
            string className;
            string templateSpecifcation;

            ILParseHelper.GetClassNameFromClassDeclarationLine(testLine, out className, out templateSpecifcation);
            Assert.AreEqual(className, @"'<GetVisualChildren>d__0`1'");
            Assert.AreEqual(templateSpecifcation, @"<([WindowsBase]System.Windows.DependencyObject) T>");
        }
예제 #4
0
        public void CanIdentifyEndClassLine()
        {
            var testLine = @"} // end of class ExampleAssembly.AnotherExampleClass";

            Assert.IsTrue(ILParseHelper.IsLineStartClassEndToken(testLine));
        }
예제 #5
0
        public void CanIdentifyInterfaceDeclaration()
        {
            var testLine = @".class interface public abstract auto ansi ExampleAssembly.ExampleInterface";

            Assert.IsTrue(ILParseHelper.IsLineInterfaceDeclaration(testLine));
        }
예제 #6
0
        public void CanIdentifyStructDeclaration()
        {
            var testLine = @".class public sequential ansi sealed beforefieldinit ExampleAssembly.ExampleStructure";

            Assert.IsTrue(ILParseHelper.IsLineStructDeclaration(testLine));
        }
예제 #7
0
        public void CanIdentifyClassDeclaration()
        {
            var testLine = @".class public auto ansi beforefieldinit ExampleAssembly.AnotherExampleClass";

            Assert.IsTrue(ILParseHelper.IsLineClassDeclaration(testLine));
        }