@@ -86,40 +86,25 @@ public async Task<VerifyResult> VerifyStream(Stream? stream, string extension, o
8686
8787 stream . MoveToStart ( ) ;
8888
89- using ( stream )
89+ // Check for stream converter first - converter info should be root for appenders
90+ if ( VerifierSettings . HasStreamConverter ( extension ) )
9091 {
91- if ( VerifierSettings . HasStreamConverter ( extension ) )
92- {
93- var ( newInfo , converted , cleanup ) = await DoExtensionConversion ( extension , stream , info , null ) ;
94-
95- return await VerifyInner ( newInfo , cleanup , converted , false , true ) ;
96- }
97-
98- var target = await GetTarget ( stream , extension ) ;
99-
100- var targets = new List < Target > ( 1 ) ;
101-
102- if ( info is not null )
103- {
104- targets . Add (
105- new (
106- settings . TxtOrJson ,
107- JsonFormatter . AsJson ( settings , counter , info ) ) ) ;
108- }
109-
110- targets . Add ( target ) ;
111- return await VerifyInner ( targets ) ;
92+ var ( newInfo , converted , cleanup ) = await DoExtensionConversion ( extension , stream , info , null ) ;
93+ return await VerifyInner ( newInfo , cleanup , converted , false , true ) ;
11294 }
113- }
11495
115- static async Task < Target > GetTarget ( Stream stream , string extension )
116- {
96+ // No converter - create target directly
97+ Target target ;
11798 if ( FileExtensions . IsTextExtension ( extension ) )
11899 {
119- return new ( extension , await stream . ReadStringBuilderWithFixedLines ( ) ) ;
100+ target = new ( extension , await stream . ReadStringBuilderWithFixedLines ( ) ) ;
101+ }
102+ else
103+ {
104+ target = new ( extension , stream ) ;
120105 }
121106
122- return new ( extension , stream ) ;
107+ return await VerifyInner ( info , stream . DisposeAsyncEx , [ target ] , true , true ) ;
123108 }
124109
125110 //TODO: possibly pass in the target here
0 commit comments