Пример #1
0
 public void TextReferencesAClass()
 {
     Assert.IsFalse(ApexTestFinder.TextReferencesAClass(null, "Foo"));
     Assert.IsFalse(ApexTestFinder.TextReferencesAClass(" ", "Foo"));
     Assert.IsFalse(ApexTestFinder.TextReferencesAClass("Foo", null));
     Assert.IsFalse(ApexTestFinder.TextReferencesAClass("Foo", " "));
     Assert.IsTrue(ApexTestFinder.TextReferencesAClass("Foo.Bar()", "Foo"));
     Assert.IsFalse(ApexTestFinder.TextReferencesAClass("NonFoo.Bar()", "Foo"));
 }
Пример #2
0
        public void GetAllTextClassesReturnsAllTextClassesAsExpected()
        {
            var location  = Path.GetDirectoryName(typeof(ApexTestFinderTest).Assembly.Location);
            var subfolder = Path.Combine(location, "..", "..", "..", "ApexClasses");
            var classes   = ApexTestFinder.GetAllTestClasses(subfolder, "Dx");

            Assert.AreEqual(1, classes.Count);
            Assert.IsTrue(classes.Contains("DxTestTwo"));
        }
Пример #3
0
        public void HasReferencesToReturnsTrueForTheMethodDeclarations()
        {
            var sampleClass = ParseClass("class SampleClass { Foo getSomething() { } }");

            Assert.IsTrue(ApexTestFinder.HasReferencesTo(sampleClass, "Foo"));

            // commented out
            sampleClass = ParseClass("class SampleClass { /* Foo getSomething() { } */ }");
            Assert.IsFalse(ApexTestFinder.HasReferencesTo(sampleClass, "Foo"));
        }
Пример #4
0
        public void HasReferencesToReturnsTrueForThePropertyDeclarations()
        {
            var sampleClass = ParseClass("class SampleClass { Foo f { get; } }");

            Assert.IsTrue(ApexTestFinder.HasReferencesTo(sampleClass, "Foo"));

            // commented out
            sampleClass = ParseClass("class SampleClass { /* Foo f { get; } */ }");
            Assert.IsFalse(ApexTestFinder.HasReferencesTo(sampleClass, "Foo"));
        }
Пример #5
0
        public void HasReferencesToReturnsTrueForTheFieldInitializationExpressions()
        {
            var sampleClass = ParseClass("class SampleClass { object x = new Foo(); }");

            Assert.IsTrue(ApexTestFinder.HasReferencesTo(sampleClass, "Foo"));

            // commented out
            sampleClass = ParseClass("class SampleClass { /* object x = new Foo(); */ }");
            Assert.IsFalse(ApexTestFinder.HasReferencesTo(sampleClass, "Foo"));
        }
Пример #6
0
        public void HasReferencesToReturnsTrueForTheConstructorExpressions()
        {
            var sampleClass = ParseClass("class SampleClass { void Test() { new Foo(); } }");

            Assert.IsTrue(ApexTestFinder.HasReferencesTo(sampleClass, "Foo"));

            // commented out
            sampleClass = ParseClass("class SampleClass { void Test() { /* new Foo(); */ } }");
            Assert.IsFalse(ApexTestFinder.HasReferencesTo(sampleClass, "Foo"));
        }
Пример #7
0
        public void HasReferencesToReturnsTrueForTheVariableDeclarations()
        {
            var sampleClass = ParseClass("class SampleClass { void Test() { Foo x; } }");

            Assert.IsTrue(ApexTestFinder.HasReferencesTo(sampleClass, "Foo"));

            // commented out
            sampleClass = ParseClass("class SampleClass { void Test() { /* Foo x; */ } }");
            Assert.IsFalse(ApexTestFinder.HasReferencesTo(sampleClass, "Foo"));
        }
Пример #8
0
        public void HasReferencesToReturnsTrueForStaticMethodCallReferences()
        {
            var sampleClass = ParseClass("class SampleClass { void Test() { Foo.Bar(); } }");

            Assert.IsTrue(ApexTestFinder.HasReferencesTo(sampleClass, "Foo"));

            // commented out
            sampleClass = ParseClass("class SampleClass { void Test() { /* Foo.Bar(); */ } }");
            Assert.IsFalse(ApexTestFinder.HasReferencesTo(sampleClass, "Foo"));
        }
Пример #9
0
        public void GetCSharpClassesReferencingAGivenClassReturnsEmptyArrayForEmptyList()
        {
            var result = ApexTestFinder.GetApexClassesReferencingAGivenClass((MemberDeclarationSyntax[])null, "Something");

            Assert.NotNull(result);
            Assert.IsEmpty(result);

            result = ApexTestFinder.GetApexClassesReferencingAGivenClass(new MemberDeclarationSyntax[0], "Something");
            Assert.NotNull(result);
            Assert.IsEmpty(result);
        }
Пример #10
0
        public void GetApexClassesReferencingAGivenClassReturnsEmptyArrayForEmptyList()
        {
            var result = ApexTestFinder.GetApexClassesReferencingAGivenClass((string[])null, "Something");

            Assert.NotNull(result);
            Assert.IsEmpty(result);

            result = ApexTestFinder.GetApexClassesReferencingAGivenClass(new string[0], "Something");
            Assert.NotNull(result);
            Assert.IsEmpty(result);
        }
Пример #11
0
        public void GetApexClassesReferencingAGivenClassReturnsClassNames()
        {
            var classes = ApexTestFinder.GetApexClassesReferencingAGivenClass(new[]
            {
                "class NotATestClass { Foo x; }",
                "@isTest class ClassWithNoReferencesToFoo { /* Foo x = commented out */ }",
                "@isTest class MyClass { void Test() { Foo x = new Foo(); } }",
                "@isTest class NotMyClass { void Test() { FooBar x = new FooBar(); } }",
            }, "Foo");

            Assert.AreEqual(1, classes.Length);
            Assert.AreEqual("MyClass", classes[0]);
        }
Пример #12
0
        public void HasReferencesToReturnsFalseForNullOrEmptyClass()
        {
            Assert.IsFalse(ApexTestFinder.HasReferencesTo(null, "Foo"));

            var emptyClass = new ClassDeclarationSyntax {
                Identifier = "EmptyClass"
            };

            Assert.IsFalse(ApexTestFinder.HasReferencesTo(emptyClass, "Foo"));

            var sampleClass = ParseClass("class SampleClass {}");

            Assert.IsFalse(ApexTestFinder.HasReferencesTo(sampleClass, "Foo"));
        }
Пример #13
0
        public void IsTestClassReturnsFalseForNullOrEmptyClass()
        {
            Assert.IsFalse(ApexTestFinder.IsTestClass(null));

            var emptyClass = new ClassDeclarationSyntax {
                Identifier = "EmptyClass"
            };

            Assert.IsFalse(ApexTestFinder.IsTestClass(emptyClass));

            var sampleClass = ParseClass("class SampleClass {}");

            Assert.IsFalse(ApexTestFinder.IsTestClass(sampleClass));
        }
Пример #14
0
        public void IsTestClassReturnsTrueForClassDecoratedWithTestAttribute()
        {
            var testFixture = ParseClass("@TestFixture class NUnitSample {}");

            Assert.NotNull(testFixture);
            Assert.IsTrue(ApexTestFinder.IsTestClass(testFixture));

            testFixture = ParseClass("@Test class MSTestSample {}");
            Assert.NotNull(testFixture);
            Assert.IsTrue(ApexTestFinder.IsTestClass(testFixture));

            testFixture = ParseClass("@isTest class ApexSample {}");
            Assert.NotNull(testFixture);
            Assert.IsTrue(ApexTestFinder.IsTestClass(testFixture));

            testFixture = ParseClass("@Dummy class NotATestSample {}");
            Assert.NotNull(testFixture);
            Assert.IsFalse(ApexTestFinder.IsTestClass(testFixture));
        }
Пример #15
0
        public bool IsTestClass(MemberDeclarationSyntax ast)
        {
            var cds = ast as ClassDeclarationSyntax;

            return(ApexTestFinder.IsTestClass(cds));
        }