PowerShell/test
Kitt Holland d69193e49c Prettier formatting for ConvertTo-Json output. #2736 (#2787)
* Prettier formatting for ConvertTo-Json output. #2736

This change standardizes JSON output to example given, as well as
codemaid and online lint tools.

Sample object used for testing:

@{
foo = @{
first = 'a'
second = 'bbbbbbbb'
}
barbarbarbar = @{
first = 'a'
second = 'bbbbbbbb'
NestedArray = @(
'Test3'
'Test4'
'Test5'
3
4
)
NestedObject = @{
MoreObject = 'AnotherObject'
TestBool = $true
}
}
array = @(
'Thing1'
'Thing2'
)
dan = 15
} | ConvertTo-Json

* Updated CoreCLR implementation to use NewtonSoft Indented Formatting

I did not change the FullCLR behavior, I was not sure if you meant to
revert my changes or to leave it as is in the current pull request.

* Added tests that validate pretty Json output.

Not sure if there is a better thought on how to implement these. The
first two fail against current master, but succeed once this PR is
applied. Third test is successful prior and post this PR.

* Moved tests and removed extraneous file.

Moved pretty/compressed json tests from standalone file into the
existing ConvertTo-Json test file.

* Updated tests for cross-platform support
2017-02-24 14:40:11 -08:00
..
csharp Add 'osx.10.12-x64' runtime to project.json files 2017-02-01 17:52:35 -08:00
fullclr Remove trailing whitespace (#3001) 2017-01-16 13:31:14 -08:00
powershell Prettier formatting for ConvertTo-Json output. #2736 (#2787) 2017-02-24 14:40:11 -08:00
PSReadLine Add 'osx.10.12-x64' runtime to project.json files 2017-02-01 17:52:35 -08:00
shebang Reorganize tests 2016-01-14 17:00:06 -08:00
tools Provide class level coverage data via OpenCover module (#3088) 2017-02-06 23:04:45 -08:00
vs-csproj Add '<Link>' tag to '<Compile>', '<None>' and '<EmbeddedResource>' tags to make those items look similar as when the *.csproj files were in the original project folders. (#2519) 2016-10-21 17:04:05 -07:00
map.json Edit map.json to add in PackageManagement tests 2016-07-12 21:17:11 -07:00
README.md Add test/README.md 2016-03-30 23:30:26 -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 ./csharp. The sanity tests for the Full .NET build of PowerShell are in ./fullclr, and the third-party shebang test is in ./shebang.