public void ConstructionTest() { TextBufferMock textBuffer = new TextBufferMock(string.Empty, RContentTypeDefinition.ContentType); var tree = new EditorTree(textBuffer, _editorShell); using (var editorDocument = new EditorDocumentMock(tree)) { using (var ob = new ROutlineRegionBuilder(editorDocument, _editorShell)) { ob.EditorDocument.Should().NotBeNull(); ob.EditorTree.Should().NotBeNull(); editorDocument.DocumentClosing.GetInvocationList().Should().ContainSingle(); FieldInfo treeUpdateField = tree.GetType().GetField("UpdateCompleted", BindingFlags.Instance | BindingFlags.NonPublic); var d = (MulticastDelegate)treeUpdateField.GetValue(tree); d.GetInvocationList().Should().ContainSingle(); tree.Dispose(); editorDocument.DocumentClosing.Should().BeNull(); treeUpdateField.GetValue(tree).Should().BeNull(); } } }