コード例 #1
0
        public void Dispose_UnsubscribesFromEvents()
        {
            var storeMock = new Mock <IIssueLocationStore>();

            storeMock.SetupAdd(x => x.IssuesChanged += (sender, args) => { });

            var bufferMock = CreateBufferMock(filePath: ValidBufferDocName);

            bufferMock.SetupAdd(x => x.ChangedLowPriority += (sender, args) => { });

            var testSubject = new LocationTagger(bufferMock.Object, storeMock.Object, ValidSpanCalculator, ValidLogger);

            testSubject.Dispose();

            storeMock.VerifyRemove(x => x.IssuesChanged       -= It.IsAny <EventHandler <IssuesChangedEventArgs> >(), Times.Once);
            bufferMock.VerifyRemove(x => x.ChangedLowPriority -= It.IsAny <EventHandler <TextContentChangedEventArgs> >(), Times.Once);
        }