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.
We have been getting intermittent failures in the JSON tests. These are occurring in the 'number' and 'integer' tests, and are almost certainly due to the behaviour of the
model.Mock
class.Once its supplied string has been exhausted,
Mock
generates random characters (or to be more precise, produces randomised logits for the valid tokens). This means that every now and then, a digit can be produced, which will pass the grammar check for a number, but then fail our round-trip check. This is not a problem for any of our other tests, since in those cases, the final character is forced (e.g."
to close a string or]
to end an array), and there is no possible valid character afterwards.The fix is to append a character to the string supplied to
Mock
which never appears in the one we supply from the test. This acts as a universal 'stop code.'