@@ -117,41 +117,40 @@ module XmlDocInheritanceTests =
117117
118118 let private noResolver ( _cref : string ) : string option = None
119119
120- let private expandWithNoResolver visited doc =
121- expandInheritDoc noResolver None Range.range0 visited doc
120+ let private expandWithNoResolver visited xmlText =
121+ expandInheritDocFromXmlText noResolver None Range.range0 visited xmlText
122122
123123 [<Fact>]
124124 let ``Empty XmlDoc returns empty`` () =
125- let result = expandWithNoResolver Set.empty XmlDoc.Empty
126- Assert.True ( result.IsEmpty )
125+ let result = expandWithNoResolver Set.empty " "
126+ Assert.Equal ( " " , result)
127127
128128 [<Fact>]
129129 let ``XmlDoc without inheritdoc returns unchanged`` () =
130- let doc = XmlDoc ([| " <summary>Test summary</summary>" |], Range.range0 )
131- let result = expandWithNoResolver Set.empty doc
132- Assert.Equal( doc.GetXmlText () , result.GetXmlText () )
130+ let xmlText = " <summary>Test summary</summary>"
131+ let result = expandWithNoResolver Set.empty xmlText
132+ Assert.Equal( xmlText , result)
133133
134134 // These all pass different inheritdoc variants without resolver - result should be non-null
135135 [<Theory>]
136136 [<InlineData( " <inheritdoc/>" ) >]
137137 [<InlineData( " <inheritdoc cref=\" T:System.String\" />" ) >]
138138 [<InlineData( " <inheritdoc path=\" /summary\" />" ) >]
139139 let ``XmlDoc with inheritdoc but no resolver returns non - null`` ( xmlLine : string ) =
140- let doc = XmlDoc([| xmlLine |], Range.range0)
141- let result = expandWithNoResolver Set.empty doc
140+ let result = expandWithNoResolver Set.empty xmlLine
142141 Assert.NotNull( result)
143142
144143 [<Fact>]
145144 let ``Malformed XML is handled gracefully`` () =
146- let doc = XmlDoc ([| " <unclosed>" |], Range.range0 )
147- let result = expandWithNoResolver Set.empty doc
148- Assert.Equal( doc.GetXmlText () , result.GetXmlText () )
145+ let xmlText = " <unclosed>"
146+ let result = expandWithNoResolver Set.empty xmlText
147+ Assert.Equal( xmlText , result)
149148
150149 [<Fact>]
151150 let ``Cycle detection prevents infinite recursion`` () =
152- let doc = XmlDoc ([| " <inheritdoc cref=\" T:System.String\" />" |], Range.range0 )
151+ let xmlText = " <inheritdoc cref=\" T:System.String\" />"
153152 let visited = Set.ofList [ " T:System.String" ]
154- let result = expandWithNoResolver visited doc
153+ let result = expandWithNoResolver visited xmlText
155154 Assert.NotNull( result)
156155
157156 [<Fact>]
@@ -162,11 +161,10 @@ module XmlDocInheritanceTests =
162161 else
163162 None
164163
165- let doc = XmlDoc([| " <inheritdoc cref=\" T:Test.BaseType\" />" |], Range.range0)
166- let result = expandInheritDoc resolver None Range.range0 Set.empty doc
167- let text = result.GetXmlText()
168- Assert.Contains( " Base type summary" , text)
169- Assert.DoesNotContain( " <inheritdoc" , text)
164+ let xmlText = " <inheritdoc cref=\" T:Test.BaseType\" />"
165+ let result = expandInheritDocFromXmlText resolver None Range.range0 Set.empty xmlText
166+ Assert.Contains( " Base type summary" , result)
167+ Assert.DoesNotContain( " <inheritdoc" , result)
170168
171169 [<Fact>]
172170 let ``Recursive chained resolution expands through multiple levels`` () =
@@ -176,10 +174,9 @@ module XmlDocInheritanceTests =
176174 | " T:Base" -> Some " <inheritdoc cref=\" T:GrandBase\" />"
177175 | _ -> None
178176
179- let doc = XmlDoc([| " <inheritdoc cref=\" T:Base\" />" |], Range.range0)
180- let result = expandInheritDoc resolver None Range.range0 Set.empty doc
181- let text = result.GetXmlText()
182- Assert.Contains( " GrandBase documentation" , text)
177+ let xmlText = " <inheritdoc cref=\" T:Base\" />"
178+ let result = expandInheritDocFromXmlText resolver None Range.range0 Set.empty xmlText
179+ Assert.Contains( " GrandBase documentation" , result)
183180
184181 [<Fact>]
185182 let ``Implicit target resolves when no cref is specified`` () =
@@ -189,13 +186,12 @@ module XmlDocInheritanceTests =
189186 else
190187 None
191188
192- let doc = XmlDoc ([| " <inheritdoc/>" |], Range.range0 )
189+ let xmlText = " <inheritdoc/>"
193190
194191 let result =
195- expandInheritDoc resolver ( Some " T:Test.IService" ) Range.range0 Set.empty doc
192+ expandInheritDocFromXmlText resolver ( Some " T:Test.IService" ) Range.range0 Set.empty xmlText
196193
197- let text = result.GetXmlText()
198- Assert.Contains( " Service contract docs" , text)
194+ Assert.Contains( " Service contract docs" , result)
199195
200196 [<Fact>]
201197 let ``XPath path filter selects only matching elements`` () =
@@ -205,9 +201,8 @@ module XmlDocInheritanceTests =
205201 else
206202 None
207203
208- let doc = XmlDoc([| " <inheritdoc cref=\" T:Test.Base\" path=\" /remarks\" />" |], Range.range0)
209- let result = expandInheritDoc resolver None Range.range0 Set.empty doc
210- let text = result.GetXmlText()
211- Assert.Contains( " Base remarks" , text)
212- Assert.DoesNotContain( " Base summary" , text)
204+ let xmlText = " <inheritdoc cref=\" T:Test.Base\" path=\" /remarks\" />"
205+ let result = expandInheritDocFromXmlText resolver None Range.range0 Set.empty xmlText
206+ Assert.Contains( " Base remarks" , result)
207+ Assert.DoesNotContain( " Base summary" , result)
213208
0 commit comments