Strip directives by commenting out rather than omitting #85
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.
This fixes issue #84 by simply keeping the directive lines in the script source, prefixed with "//", making roslyn Diagnostics point to correct locations.
To get green tests I also did the following small changes in the tests file:
Script constant line endings (Unsure if it's my git config causing problems): the test splits by Environment.NewLine, but it's not clear whether the source files will always have newlines that are Environment.NewLine (windows CRLF in my case). A .gitattributes file could maybe help here, but my workaround was simply to split on \n and strip trailing \r (meaning LF and CRLF both work in the tests).
Globalization: the tests assume the system, decimal separator is a dot, failing on e.g. French and Swedish locales where the floating point format is "42,00". Added CultureInfo.InvariantCulture.