Inheritance: MonoDevelop.Refactoring.FindReferencesProvider
        public async Task TestIssue4709()
        {
            string testCode = @"
public interface ITest {
}

public class Test : ITest
{
	public static void Main (string[] args)
	{
		Test test;
	}
}

";
            var    refs     = await GatherReferences(testCode, async project => {
                var provider = new CSharpFindReferencesProvider();
                var monitor  = new MockSearchProgressMonitor();
                await provider.FindReferences("T:ITest", project, monitor);
                return(monitor.Results);
            });

            Assert.AreEqual(2, refs.Count);

            refs = await GatherReferences(testCode, async project => {
                var provider = new CSharpFindReferencesProvider();
                var monitor  = new MockSearchProgressMonitor();
                await provider.FindAllReferences("T:ITest", project, monitor);
                return(monitor.Results);
            });

            Assert.AreEqual(4, refs.Count);
        }
Beispiel #2
0
        public async Task TestFindReferences()
        {
            var refs = await GatherReferences(@"class FooBar {}", project => {
                var provider = new CSharpFindReferencesProvider();
                return(provider.FindReferences("T:FooBar", project, default(CancellationToken)));
            });

            Assert.AreEqual(1, refs.Count);
        }
        public async Task TestFindReferences()
        {
            var refs = await GatherReferences(@"class FooBar {}", async project => {
                var provider = new CSharpFindReferencesProvider();
                var monitor  = new MockSearchProgressMonitor();
                await provider.FindReferences("T:FooBar", project, monitor);
                return(monitor.Results);
            });

            Assert.AreEqual(1, refs.Count);
        }
        public override async Task <bool> TryJumpToDeclarationAsync(string documentIdString, MonoDevelop.Projects.Project hintProject, System.Threading.CancellationToken token)
        {
            var lookup = await CSharpFindReferencesProvider.TryLookupSymbol(documentIdString, hintProject, token);

            if (!lookup.Success || lookup.Symbol.Locations.First().IsInMetadata)
            {
                return(false);
            }
            IdeApp.ProjectOperations.JumpToDeclaration(lookup.Symbol, lookup.MonoDevelopProject);
            return(true);
        }
Beispiel #5
0
        public async Task TestFindAllReferences()
        {
            var refs = await GatherReferences(@"class FooBar {  
public void Foo() {}
public void Foo(int i) {}
public void Foo(string s) {}
public void Foo(int i, int j) {}
 }", project => {
                var provider = new CSharpFindReferencesProvider();
                return(provider.FindAllReferences("M:FooBar.Foo", project, default(CancellationToken)));
            });

            Assert.AreEqual(4, refs.Count);
        }
        public async Task TestFindAllReferences()
        {
            var refs = await GatherReferences(@"class FooBar {  
public void Foo() {}
public void Foo(int i) {}
public void Foo(string s) {}
public void Foo(int i, int j) {}
 }", async project => {
                var provider = new CSharpFindReferencesProvider();
                var monitor  = new MockSearchProgressMonitor();
                await provider.FindAllReferences("M:FooBar.Foo", project, monitor);
                return(monitor.Results);
            });

            Assert.AreEqual(4, refs.Count);
        }
Beispiel #7
0
        public async Task TestBug591385()
        {
            var refs = await GatherReferences(@"
public class RefBug {
    public int xxx;
    public void Meth() { xxx++; }
}

public class RefBug2
{
    public int xxx;
    public void Meth() { xxx++; }
}

", project => {
                var provider = new CSharpFindReferencesProvider();
                return(provider.FindAllReferences("F:RefBug2.xxx", project, default(CancellationToken)));
            });

            Assert.AreEqual(2, refs.Count);
        }
        public async Task TestBug591385()
        {
            var refs = await GatherReferences(@"
public class RefBug {
    public int xxx;
    public void Meth() { xxx++; }
}

public class RefBug2
{
    public int xxx;
    public void Meth() { xxx++; }
}

", async project => {
                var provider = new CSharpFindReferencesProvider();
                var monitor  = new MockSearchProgressMonitor();
                await provider.FindAllReferences("F:RefBug2.xxx", project, monitor);
                return(monitor.Results);
            });

            Assert.AreEqual(2, refs.Count);
        }