public void SanityCheck() { var viewMock = new Mock<IWpfTextView>(); var viewMock2 = new Mock<IWpfTextView>(); var contentType = new Mock<IContentType>(); contentType.Setup(c => c.IsOfType(ContentTypeNames.RoslynContentType)).Returns(true); var bufferMock = new Mock<ITextBuffer>(); bufferMock.Setup(b => b.ContentType).Returns(contentType.Object); var bufferCollection = new Collection<ITextBuffer>(SpecializedCollections.SingletonEnumerable(bufferMock.Object).ToList()); var dummyReason = ConnectionReason.BufferGraphChange; var service = new TextBufferAssociatedViewService(); ((IWpfTextViewConnectionListener)service).SubjectBuffersConnected(viewMock.Object, dummyReason, bufferCollection); Assert.Equal(1, service.GetAssociatedTextViews(bufferMock.Object).Count()); ((IWpfTextViewConnectionListener)service).SubjectBuffersDisconnected(viewMock.Object, dummyReason, bufferCollection); Assert.Equal(0, service.GetAssociatedTextViews(bufferMock.Object).Count()); ((IWpfTextViewConnectionListener)service).SubjectBuffersConnected(viewMock.Object, dummyReason, bufferCollection); ((IWpfTextViewConnectionListener)service).SubjectBuffersConnected(viewMock2.Object, dummyReason, bufferCollection); Assert.Equal(2, service.GetAssociatedTextViews(bufferMock.Object).Count()); ((IWpfTextViewConnectionListener)service).SubjectBuffersDisconnected(viewMock.Object, dummyReason, bufferCollection); Assert.Equal(1, service.GetAssociatedTextViews(bufferMock.Object).Count()); ((IWpfTextViewConnectionListener)service).SubjectBuffersDisconnected(viewMock2.Object, dummyReason, bufferCollection); Assert.Equal(0, service.GetAssociatedTextViews(bufferMock.Object).Count()); }
public void SanityCheck() { var viewMock = new Mock <IWpfTextView>(); var viewMock2 = new Mock <IWpfTextView>(); var contentType = new Mock <IContentType>(); contentType.Setup(c => c.IsOfType(ContentTypeNames.RoslynContentType)).Returns(true); var bufferMock = new Mock <ITextBuffer>(); bufferMock.Setup(b => b.ContentType).Returns(contentType.Object); var bufferCollection = new Collection <ITextBuffer>(SpecializedCollections.SingletonEnumerable(bufferMock.Object).ToList()); var dummyReason = ConnectionReason.BufferGraphChange; var service = new TextBufferAssociatedViewService(); ((IWpfTextViewConnectionListener)service).SubjectBuffersConnected(viewMock.Object, dummyReason, bufferCollection); Assert.Equal(1, service.GetAssociatedTextViews(bufferMock.Object).Count()); ((IWpfTextViewConnectionListener)service).SubjectBuffersDisconnected(viewMock.Object, dummyReason, bufferCollection); Assert.Equal(0, service.GetAssociatedTextViews(bufferMock.Object).Count()); ((IWpfTextViewConnectionListener)service).SubjectBuffersConnected(viewMock.Object, dummyReason, bufferCollection); ((IWpfTextViewConnectionListener)service).SubjectBuffersConnected(viewMock2.Object, dummyReason, bufferCollection); Assert.Equal(2, service.GetAssociatedTextViews(bufferMock.Object).Count()); ((IWpfTextViewConnectionListener)service).SubjectBuffersDisconnected(viewMock.Object, dummyReason, bufferCollection); Assert.Equal(1, service.GetAssociatedTextViews(bufferMock.Object).Count()); ((IWpfTextViewConnectionListener)service).SubjectBuffersDisconnected(viewMock2.Object, dummyReason, bufferCollection); Assert.Equal(0, service.GetAssociatedTextViews(bufferMock.Object).Count()); }
internal static int ComputeTimeDelay(this TaggerDelay behavior, ITextBuffer textBufferOpt) { if (TextBufferAssociatedViewService.AnyAssociatedViewHasFocus(textBufferOpt)) { // TODO : should we remove TaggerBehavior enum all together and put NearImmediateDelay // const in Interaction? switch (behavior) { case TaggerDelay.NearImmediate: return(NearImmediateDelay); case TaggerDelay.Short: return(ShortDelay); case TaggerDelay.Medium: return(MediumDelay); case TaggerDelay.OnIdle: default: return(IdleDelay); } } return(NonFocusDelay); }
internal static TimeSpan ComputeTimeDelay(this TaggerDelay behavior, ITextBuffer textBufferOpt) { if (TextBufferAssociatedViewService.AnyAssociatedViewHasFocus(textBufferOpt)) { // TODO : should we remove TaggerBehavior enum all together and put NearImmediateDelay // const in Interaction? return(ComputeTimeDelay(behavior)); } return(TimeSpan.FromMilliseconds(NonFocusDelay)); }