PowerShell/test
Staffan Gustafsson 42c289fc8e Improve formatting performance by having better primitives on PSObject (#8785)
By not doing excessive amounts of extra work, formatting can be sped up quite significantly (about 8x faster).
The main change comes from adding new, more efficient, primitive to query an object for the existence of an instance member.
The formatting system has been checking for if an object has properties other than some decorated properties added by PS remoting, and it doesn't this by retrieving all properties which results in heavy allocations and wasted cycles.
By adding `GetFirstOrDefault` to `PSObject` and similar primitives to the underlying Adapters, we are able to return early, without having to get all properties back.
2019-03-20 18:43:52 -07:00
..
common/markdown Update markdown test dependencies (#9075) 2019-03-09 08:30:14 +05:00
docker/networktest Remove appveyor functions from New-DockerTestBuild.psm1 (#8756) 2019-01-31 11:15:31 -08:00
hosting Update version for PowerShell.Native and hosting tests (#8983) 2019-03-04 11:08:19 -08:00
packaging/windows Remove extra AppVeyor environment check (#8709) 2019-02-08 10:57:41 -08:00
powershell Improve type inference of array literals and foreach statement variables (#8100) 2019-03-19 13:36:27 -07:00
shebang Reorganize tests 2016-01-14 17:00:06 -08:00
tools Adding CmdletsToExport and AliasesToExport to test module manifests. (#9108) 2019-03-18 11:09:05 +05:00
xUnit Improve formatting performance by having better primitives on PSObject (#8785) 2019-03-20 18:43:52 -07:00
README.md Move xUnit tests in new folder (#8356) 2018-12-13 14:22:07 -08:00
Test.Common.props Removing Hardlink from Mode property in default file system format (#8789) 2019-03-12 15:49:16 -07:00

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 ./xUnit. The third-party shebang test is in ./shebang.