@@ -530,93 +530,103 @@ public void WriteEmbeddedResources_HasNoEmbeddedResources(
530530
531531 private static System . Collections . IEnumerable YieldTestCases_WriteReferencedAssemblies ( )
532532 {
533- foreach ( var writeReferencedAssemblies in new [ ] { true , false } ) {
533+ foreach ( var loadIntoReflectionOnlyContext in new [ ] { true , false } ) {
534+ foreach ( var writeReferencedAssemblies in new [ ] { true , false } ) {
534535#if NETCOREAPP3_1_OR_GREATER || NET6_0_OR_GREATER
535- yield return new object [ ] {
536- "Lib" ,
537- "netstandard2.1" ,
538- writeReferencedAssemblies ,
539- new [ ] {
540- "netstandard, Version=2.1." ,
541- }
542- } ;
536+ yield return new object [ ] {
537+ "Lib" ,
538+ "netstandard2.1" ,
539+ writeReferencedAssemblies ,
540+ loadIntoReflectionOnlyContext ,
541+ new [ ] {
542+ "netstandard, Version=2.1." ,
543+ }
544+ } ;
543545#endif
544546#if NET6_0_OR_GREATER
545- yield return new object [ ] {
546- "Lib" ,
547- "net6.0" ,
548- writeReferencedAssemblies ,
549- new [ ] {
550- "System.Runtime, Version=6.0." ,
551- }
552- } ;
547+ yield return new object [ ] {
548+ "Lib" ,
549+ "net6.0" ,
550+ writeReferencedAssemblies ,
551+ loadIntoReflectionOnlyContext ,
552+ new [ ] {
553+ "System.Runtime, Version=6.0." ,
554+ }
555+ } ;
553556#endif
554557#if NET7_0_OR_GREATER
555- yield return new object [ ] {
556- "Lib" ,
557- "net7.0" ,
558- writeReferencedAssemblies ,
559- new [ ] {
560- "System.Runtime, Version=7.0." ,
561- }
562- } ;
558+ yield return new object [ ] {
559+ "Lib" ,
560+ "net7.0" ,
561+ writeReferencedAssemblies ,
562+ loadIntoReflectionOnlyContext ,
563+ new [ ] {
564+ "System.Runtime, Version=7.0." ,
565+ }
566+ } ;
563567#endif
564568#if NETCOREAPP3_1_OR_GREATER || NET6_0_OR_GREATER
565- yield return new object [ ] {
566- "LibB" ,
567- "netstandard2.1" ,
568- writeReferencedAssemblies ,
569- new [ ] {
570- "netstandard, Version=2.1." ,
571- "LibA, Version=" ,
572- }
573- } ;
569+ yield return new object [ ] {
570+ "LibB" ,
571+ "netstandard2.1" ,
572+ writeReferencedAssemblies ,
573+ loadIntoReflectionOnlyContext ,
574+ new [ ] {
575+ "netstandard, Version=2.1." ,
576+ "LibA, Version=" ,
577+ }
578+ } ;
574579#endif
575580#if NET6_0_OR_GREATER
576- yield return new object [ ] {
577- "LibB" ,
578- "net6.0" ,
579- writeReferencedAssemblies ,
580- new [ ] {
581- "System.Runtime, Version=6.0." ,
582- "LibA, Version=" ,
583- }
584- } ;
581+ yield return new object [ ] {
582+ "LibB" ,
583+ "net6.0" ,
584+ writeReferencedAssemblies ,
585+ loadIntoReflectionOnlyContext ,
586+ new [ ] {
587+ "System.Runtime, Version=6.0." ,
588+ "LibA, Version=" ,
589+ }
590+ } ;
585591#endif
586592#if NETCOREAPP3_1_OR_GREATER || NET6_0_OR_GREATER
587- yield return new object [ ] {
588- "LibReferencedAssemblies1" ,
589- "netstandard2.1" ,
590- writeReferencedAssemblies ,
591- new [ ] {
592- "netstandard, Version=2.1." ,
593- }
594- } ;
593+ yield return new object [ ] {
594+ "LibReferencedAssemblies1" ,
595+ "netstandard2.1" ,
596+ writeReferencedAssemblies ,
597+ loadIntoReflectionOnlyContext ,
598+ new [ ] {
599+ "netstandard, Version=2.1." ,
600+ }
601+ } ;
595602#endif
596603#if NET6_0_OR_GREATER
597- yield return new object [ ] {
598- "LibReferencedAssemblies1" ,
599- "net6.0" ,
600- writeReferencedAssemblies ,
601- new [ ] {
602- "System.Runtime, Version=6.0." ,
603- "System.Threading, Version=6.0." ,
604- "System.Xml.ReaderWriter, Version=6.0." ,
605- }
606- } ;
604+ yield return new object [ ] {
605+ "LibReferencedAssemblies1" ,
606+ "net6.0" ,
607+ writeReferencedAssemblies ,
608+ loadIntoReflectionOnlyContext ,
609+ new [ ] {
610+ "System.Runtime, Version=6.0." ,
611+ "System.Threading, Version=6.0." ,
612+ "System.Xml.ReaderWriter, Version=6.0." ,
613+ }
614+ } ;
607615#endif
608616#if NET7_0_OR_GREATER
609- yield return new object [ ] {
610- "LibReferencedAssemblies1" ,
611- "net7.0" ,
612- writeReferencedAssemblies ,
613- new [ ] {
614- "System.Runtime, Version=7.0." ,
615- "System.Threading, Version=7.0." ,
616- "System.Xml.ReaderWriter, Version=7.0." ,
617- }
618- } ;
617+ yield return new object [ ] {
618+ "LibReferencedAssemblies1" ,
619+ "net7.0" ,
620+ writeReferencedAssemblies ,
621+ loadIntoReflectionOnlyContext ,
622+ new [ ] {
623+ "System.Runtime, Version=7.0." ,
624+ "System.Threading, Version=7.0." ,
625+ "System.Xml.ReaderWriter, Version=7.0." ,
626+ }
627+ } ;
619628#endif
629+ }
620630 }
621631 }
622632
@@ -629,6 +639,7 @@ public void WriteReferencedAssemblies(
629639 string assemblyFileName ,
630640 string targetFrameworkMoniker ,
631641 bool writeReferencedAssemblies ,
642+ bool loadIntoReflectionOnlyContext ,
632643 string [ ] expectedReferencedAssemblies
633644 )
634645 {
@@ -642,7 +653,7 @@ string[] expectedReferencedAssemblies
642653 options . Writer . WriteEmbeddedResources = false ;
643654 options . Writer . WriteReferencedAssemblies = writeReferencedAssemblies ;
644655
645- var generated = GenerateApiListFrom ( assemblyFile , options ) ;
656+ var generated = GenerateApiListFrom ( assemblyFile , loadIntoReflectionOnlyContext , options ) ;
646657
647658 if ( writeReferencedAssemblies ) {
648659 StringAssert . Contains (
@@ -664,11 +675,15 @@ string[] expectedReferencedAssemblies
664675 ) ;
665676 }
666677
667- string GenerateApiListFrom ( FileInfo assemblyFile , ApiListWriterOptions options )
678+ string GenerateApiListFrom (
679+ FileInfo assemblyFile ,
680+ bool loadIntoReflectionOnlyContext ,
681+ ApiListWriterOptions options
682+ )
668683 {
669684 var ret = AssemblyLoader . UsingAssembly (
670685 assemblyFile ,
671- loadIntoReflectionOnlyContext : false ,
686+ loadIntoReflectionOnlyContext : loadIntoReflectionOnlyContext ,
672687 arg : options ,
673688 logger : logger ,
674689 actionWithLoadedAssembly : static ( assm , options ) => {
0 commit comments