Adds support for system properties apiTests, modelTests, modelTests, modelDocs.
All accepting a boolean value to explicitly define whether or not these
should be generated.
These properties aren't considered "features", so specifying
-DmodelTests=false for example won't cause api or supportFiles to be ignored.
Includes additionalProperty excludeTests for when apiTests and modelTests are
both set to false.
Also includes update to csharp client generator to prevent generation of
the Test project or inclusion of the Test project when both api and
model tests are excluded.
see #2506
Aligns C# project outputs more with community accepted standards and
leverges Nuget for package management.
This also moves the generated C# sample code out of the test project's
Lib folder. The output structure here was causing some issues with
maintainability (e.g. had to update test project with generated code).
(see: https://gist.github.com/davidfowl/ed7564297c61fe9ab814)
Output for a project, IO.Swagger will now look like:
.
├── IO.Swagger.sln
├── README.md
├── bin
├── build.bat
├── build.sh
├── docs
├── packages
└── src
├── IO.Swagger
│ └── packages.config
└── IO.Swagger.Test
└── packages.config
This is a change from the Java-like src/main/csharp/IO/Swagger/etc
structure and will be a breaking change for some.