Ejemplo n.º 1
0
        public async Task TestFindReferencesAsynchronousCall()
        {
            using (var workspace = TestWorkspace.CreateCSharp("class C { C() { new C(); } }"))
            {
                var context   = new MockFindUsagesContext();
                var presenter = new MockStreamingFindUsagesPresenter(context);

                var listenerProvider = new AsynchronousOperationListenerProvider();

                var handler = new FindReferencesCommandHandler(
                    SpecializedCollections.SingletonEnumerable(new Lazy <IStreamingFindUsagesPresenter>(() => presenter)),
                    listenerProvider);

                var textView = workspace.Documents[0].GetTextView();
                textView.Caret.MoveTo(new SnapshotPoint(textView.TextSnapshot, 7));
                handler.ExecuteCommand(new FindReferencesCommandArgs(
                                           textView,
                                           textView.TextBuffer), TestCommandExecutionContext.Create());

                var waiter = listenerProvider.GetWaiter(FeatureAttribute.FindReferences);
                await waiter.CreateWaitTask();

                AssertResult(context.Result, "C.C()", "class C");
            }
        }
Ejemplo n.º 2
0
        public void TestFindReferencesSynchronousCall()
        {
            using (var workspace = CSharpWorkspaceFactory.CreateWorkspaceFromLines("class C { C() { new C(); } }"))
            {
                var findReferencesPresenter = new MockReferencedSymbolsPresenter();

                var handler = new FindReferencesCommandHandler(
                    TestWaitIndicator.Default,
                    SpecializedCollections.SingletonEnumerable(findReferencesPresenter));

                var textView = workspace.Documents[0].GetTextView();
                textView.Caret.MoveTo(new SnapshotPoint(textView.TextSnapshot, 7));
                handler.ExecuteCommand(new FindReferencesCommandArgs(
                                           textView,
                                           textView.TextBuffer), () => { });

                AssertResult(findReferencesPresenter.Result, "C", ".ctor");
            }
        }
        public async Task TestFindReferencesSynchronousCall()
        {
            using (var workspace = await TestWorkspace.CreateCSharpAsync("class C { C() { new C(); } }"))
            {
                var findReferencesPresenter = new MockReferencedSymbolsPresenter();

                var handler = new FindReferencesCommandHandler(
                    TestWaitIndicator.Default,
                    SpecializedCollections.SingletonEnumerable(findReferencesPresenter));

                var textView = workspace.Documents[0].GetTextView();
                textView.Caret.MoveTo(new SnapshotPoint(textView.TextSnapshot, 7));
                handler.ExecuteCommand(new FindReferencesCommandArgs(
                    textView,
                    textView.TextBuffer), () => { });

                AssertResult(findReferencesPresenter.Result, "C", ".ctor");
            }
        }
        public async Task TestFindReferencesSynchronousCall()
        {
            using (var workspace = await TestWorkspace.CreateCSharpAsync("class C { C() { new C(); } }"))
            {
                var findReferencesPresenter = new MockDefinitionsAndReferencesPresenter();

                var handler = new FindReferencesCommandHandler(
                    TestWaitIndicator.Default,
                    SpecializedCollections.SingletonEnumerable(findReferencesPresenter),
                    SpecializedCollections.EmptyEnumerable <Lazy <IStreamingFindUsagesPresenter> >(),
                    workspace.ExportProvider.GetExports <IAsynchronousOperationListener, FeatureMetadata>());

                var textView = workspace.Documents[0].GetTextView();
                textView.Caret.MoveTo(new SnapshotPoint(textView.TextSnapshot, 7));
                handler.ExecuteCommand(new FindReferencesCommandArgs(
                                           textView,
                                           textView.TextBuffer), () => { });

                AssertResult(findReferencesPresenter.DefinitionsAndReferences, "C", ".ctor");
            }
        }
        public async Task TestFindReferencesSynchronousCall()
        {
            using (var workspace = await TestWorkspace.CreateCSharpAsync("class C { C() { new C(); } }"))
            {
                var findReferencesPresenter = new MockDefinitionsAndReferencesPresenter();

                var handler = new FindReferencesCommandHandler(
                    TestWaitIndicator.Default,
                    SpecializedCollections.SingletonEnumerable(findReferencesPresenter),
                    SpecializedCollections.EmptyEnumerable<Lazy<IStreamingFindUsagesPresenter>>(),
                    workspace.ExportProvider.GetExports<IAsynchronousOperationListener, FeatureMetadata>());

                var textView = workspace.Documents[0].GetTextView();
                textView.Caret.MoveTo(new SnapshotPoint(textView.TextSnapshot, 7));
                handler.ExecuteCommand(new FindReferencesCommandArgs(
                    textView,
                    textView.TextBuffer), () => { });

                AssertResult(findReferencesPresenter.DefinitionsAndReferences, "C", ".ctor");
            }
        }
Ejemplo n.º 6
0
        public async Task TestFindReferencesAsynchronousCall()
        {
            using var workspace = TestWorkspace.CreateCSharp("class C { C() { new C(); } }");
            var context   = new MockFindUsagesContext();
            var presenter = new MockStreamingFindUsagesPresenter(context);

            var listenerProvider = workspace.ExportProvider.GetExportedValue <IAsynchronousOperationListenerProvider>();

            var handler = new FindReferencesCommandHandler(
                presenter,
                listenerProvider);

            var textView = workspace.Documents[0].GetTextView();

            textView.Caret.MoveTo(new SnapshotPoint(textView.TextSnapshot, 7));
            handler.ExecuteCommand(new FindReferencesCommandArgs(
                                       textView,
                                       textView.TextBuffer), TestCommandExecutionContext.Create());

            var waiter = listenerProvider.GetWaiter(FeatureAttribute.FindReferences);
            await waiter.CreateExpeditedWaitTask();

            AssertResult(context.Result, "C.C()", "class C");
        }