ISSUE-689 # Sanitize json report file name #692
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.
Sanitize json report file name
Fixes Issue
PR Branch
https://github.com/javiertuya/zerocode/tree/689-report-scenario-invalid-chars
Motivation and Context
To generate html reports, a json file is created for each scenario. The file name is taken from the scenario name. Report for this scenario fails if the name contains characters that are not allowed as part of a filename. This PR sanitizes the report file name.
Note to reviewers: Sanitization is strict (only keeps alphanumeric, spaces, dots and dashes) because the report filenames are guaranteed to be unique because they contain the correlation id. It could be less strict by replacing only the windows forbidden characters (also valid for unix), even making different replacements for linux and windows, but I'm not sure if it's worth it.
Checklist:
New Unit tests were added
Integration tests were added
Test names are meaningful
Feature manually tested and outcome is successful
PR doesn't break any of the earlier features for end users
Branch build passed in CI
No 'package.*' in the imports
Relevant DOcumentation page added or updated with clear instructions and examples for the end user
Http test added to
http-testing
module(if applicable) ?Kafka test added to
kafka-testing
module(if applicable) ?