示例#1
0
        public void Dispose_ShouldUnregisterFromSelectionEvents()
        {
            uint cookie = 1234;

            monitorSelectionMock.Setup(x => x.AdviseSelectionEvents(It.IsAny <IVsSelectionEvents>(), out cookie));

            testSubject = new ActiveDocumentTracker(serviceProviderMock.Object, textDocumentProviderMock.Object);
            testSubject.Dispose();

            monitorSelectionMock.Verify(x => x.UnadviseSelectionEvents(cookie), Times.Once);
        }
示例#2
0
        public void OnElementValueChanged_ValidDocumentFrame_NoEventSubscribers_DoesNotFail()
        {
            testSubject = new ActiveDocumentTracker(serviceProviderMock.Object, textDocumentProviderMock.Object);

            var selectedFrame = ValidWindowFrame;

            textDocumentProviderMock.Setup(x => x.GetFromFrame(selectedFrame)).Returns(textDocumentMock);

            Func <int> act = () => (testSubject as IVsSelectionEvents).OnElementValueChanged((uint)VSConstants.VSSELELEMID.SEID_WindowFrame, "1", selectedFrame);

            act.Should().NotThrow().And.Subject().Should().Be(VSConstants.S_OK);
        }
示例#3
0
        public void Ctor_RegisterToSelectionEvents()
        {
            uint cookie = 1234;

            // Reset invocations that were performed in TestInitialize
            monitorSelectionMock.Reset();
            monitorSelectionMock.Setup(x => x.AdviseSelectionEvents(It.IsAny <IVsSelectionEvents>(), out cookie));

            testSubject = new ActiveDocumentTracker(serviceProviderMock.Object, textDocumentProviderMock.Object);

            monitorSelectionMock.Verify(x => x.AdviseSelectionEvents(testSubject, out cookie), Times.Once);
            monitorSelectionMock.VerifyNoOtherCalls();
        }
示例#4
0
        public void TestInitialize()
        {
            ThreadHelper.SetCurrentThreadAsUIThread();

            textDocumentMock = Mock.Of <ITextDocument>();

            monitorSelectionMock = new Mock <IVsMonitorSelection>();

            serviceProviderMock = new Mock <IServiceProvider>();
            serviceProviderMock
            .Setup(x => x.GetService(typeof(SVsShellMonitorSelection)))
            .Returns(monitorSelectionMock.Object);

            textDocumentProviderMock = new Mock <ITextDocumentProvider>();
            mockEventHandler         = new Mock <Action <ActiveDocumentChangedEventArgs> >();

            testSubject = new ActiveDocumentTracker(serviceProviderMock.Object, textDocumentProviderMock.Object);
            testSubject.ActiveDocumentChanged += (sender, e) => mockEventHandler.Object(e);
        }