-
Notifications
You must be signed in to change notification settings - Fork 7
Open
Description
In json "null" is a valid value for an item in a list or object. json.loads("null") returns None.
Because next_value returns json.loads(value_string) or None (or a Transient subclass), and that value is compared to None, a list like [1,2,null,3,4,5] is wrongly interpreted.
Here is a comparison with json_stream too.
import adafruit_json_stream
import json_stream
import io
def test_null_item(json_stream):
print("-"*10)
source = io.BytesIO(b'[1,2,null,3,4]')
stream = json_stream.load(source)
for item in stream:
print("-", item)
test_null_item(adafruit_json_stream)
test_null_item(json_stream)----------
- 1
- 2
----------
- 1
- 2
- None
- 3
- 4
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels