Our assembly cache contains assemblies that are explicitly loaded by powershell egine, such as via module loading or the assembly entries from InitialSessionState. We should search it before searching all loaded assemblies to give preference to resolve a type against the assemblies contained in the cache, so that in case there is a conflict, we might have a preferred assembly to use for a type resolution. Changes: - Search from context.AssemblyCache.Values before search from all loaded assemblies. - Skip assemblies that we already searched and found no matching type. - Skip checking PS types kept in the scope and type accelerators when it's not necessary. |
||
---|---|---|
.. | ||
csharp | ||
fullclr | ||
powershell | ||
PSReadLine | ||
shebang | ||
tools | ||
vs-csproj | ||
map.json | ||
README.md |
Testing
The tests are organized by testing language. Thus Pester tests, which are written in the PowerShell language, are in ./powershell and xUnit tests, written in C#, are in ./csharp. The sanity tests for the Full .NET build of PowerShell are in ./fullclr, and the third-party shebang test is in ./shebang.