Refactor error report deserialisation #419
Merged
+118
−90
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.
Goal
The
ErrorReader
class is hard to read in places which may have contributed to #418. This changeset attempts to improve readability by extracting methods so that each has a single responsibility.Changeset
Breadcrumbs, stackframes, and threads are all serialised as a JSON array in the error report. The current implementation completes something like the following steps in a single method:
The step of deserialising individual JSON objects has now been extracted to a separate method, like thus:
This ensures each method only has a single responsibility and improves readability of the code.
Tests
Ran existing tests, and performed testing as detailed in #418.