Exemple #1
0
        public void ContainsCallToTest()
        {
            string source = @"int foo() {
    printf(""hello world!"");
    int x = 5;
}";
            var srcmlObject = new Src2SrcMLRunner(Path.Combine(SrcMLHelper.GetSrcMLRootDirectory(), SrcMLHelper.srcMLExecutableLocation));
            var xml = srcmlObject.GenerateSrcMLFromString(source);

            var element = XElement.Parse(xml);
            var expression = element.Descendants(SRC.DeclarationStatement).First();

            Assert.IsTrue(element.ContainsCallTo("printf"));
            Assert.IsFalse(expression.ContainsCallTo("printf"));
        }
Exemple #2
0
        public void GetLineInfoWithString()
        {
            var source = @"int foo() {
printf(""hello world!"");
}";
            var srcmlObject = new Src2SrcMLRunner(Path.Combine(SrcMLHelper.GetSrcMLRootDirectory(), SrcMLHelper.srcMLExecutableLocation));

            var xml = srcmlObject.GenerateSrcMLFromString(source);

            var element = XElement.Parse(xml).Elements().First();

            Assert.AreEqual(1, element.GetSrcLineNumber());
            Assert.AreEqual(1, element.GetSrcLinePosition());
        }
Exemple #3
0
        public void DeclStmtWithTwoDecl()
        {
            var srcmlObject = new Src2SrcMLRunner();
            var source = "int x = 0, y = 2;";

            var xml = srcmlObject.GenerateSrcMLFromString(source);
            var element = XElement.Parse(xml);

            var decl = element.Element(SRC.DeclarationStatement).Element(SRC.Declaration);
            var nameCount = decl.Elements(SRC.Name).Count();
            var initCount = decl.Elements(SRC.Init).Count();
            Assert.AreEqual(2, nameCount, srcmlObject.ApplicationDirectory);
            Assert.AreEqual(2, initCount, srcmlObject.ApplicationDirectory);
        }
Exemple #4
0
        public void DeclStmtWithTwoDecl()
        {
            const int NumNamesInDecl = 1;
            const int NumInitInDecl = 1;

            var srcmlObject = new Src2SrcMLRunner(Path.Combine(SrcMLHelper.GetSrcMLRootDirectory(), SrcMLHelper.srcMLExecutableLocation));
            var source = "int x = 0, y = 2;";

            var xml = srcmlObject.GenerateSrcMLFromString(source);
            var element = XElement.Parse(xml);

            var decl = element.Element(SRC.DeclarationStatement).Element(SRC.Declaration);
            var nameCount = decl.Elements(SRC.Name).Count();
            var initCount = decl.Elements(SRC.Init).Count();
            Assert.AreEqual(NumNamesInDecl, nameCount, srcmlObject.ApplicationDirectory);
            Assert.AreEqual(NumInitInDecl, initCount, srcmlObject.ApplicationDirectory);
        }
Exemple #5
0
        public void GetLineInfoWithString()
        {
            var source = @"int foo() {
printf(""hello world!"");
}";
            var srcmlObject = new Src2SrcMLRunner();

            var xml = srcmlObject.GenerateSrcMLFromString(source);

            var element = XElement.Parse(xml);

            Assert.AreEqual(-1, element.GetSrcLineNumber());
            Assert.AreEqual(-1, element.GetSrcLinePosition());
        }
        public void SrcMLFromStringTest()
        {
            string sourceCode = @"int foo() {
printf(""hello world!"");
}";
            var srcmlObject = new Src2SrcMLRunner(Path.Combine(".", "SrcML"));
            string xml = srcmlObject.GenerateSrcMLFromString(sourceCode, Language.C);

            XElement element = XElement.Parse(xml);

            Assert.IsNotNull(element);
        }
        public void SrcMLFromStringTest()
        {
            string sourceCode = @"int foo() {
printf(""hello world!"");
}";
            var srcmlObject = new Src2SrcMLRunner(Path.Combine(SrcMLHelper.GetSrcMLRootDirectory(), SrcMLHelper.srcMLExecutableLocation));
            string xml = srcmlObject.GenerateSrcMLFromString(sourceCode, Language.C);

            XElement element = XElement.Parse(xml);

            Assert.IsNotNull(element);
        }