(GH-240) Fix incorrect enum generation #244
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Prior to this change enums with a single value would be generated with a lowercase counterpart but the enum definition was malformed.
For example, given the the value
Yes
the following enum would be generated:Optional[Enum['Yes' 'yes]]
This was happening because when a PowerShell array has a single value it will output a string.
This meant that when being assigned the lowercase variant of the value a string concatination occured causing the join on the next line to be ineffective.
This change updates the flow to use a
System.Collections.ArrayList
so that we will always have the expected datastructure.After this change, given the value `Yes' the following enum would be generated:
Optional[Enum['Yes', 'yes]]
This is expected syntax and does not cause Puppets syntax parser to raise an error.