Refactor base64 decoding null check. #13
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.
The base64 decoding function is used to deserialize channel values, pending writes, and pending sends. Even though pending writes and pending sends also have nullable blobs according to the DB schema, they seem to always hold non-null values.
The code and type hints in the _load_checkpoint method assume that pending write and pending sends are non-null, so we continue to do the same and only scope null handling to channel values.
We also add a test to catch this regression moving forward.
Builds off of #11.