Do nothing on put_scalar(None)

master
Alinson S. Xavier 4 years ago
parent 6c98986675
commit f1dc450cbf
No known key found for this signature in database
GPG Key ID: DCA0DAD4D2F58624

@ -132,6 +132,8 @@ class MemorySample(Sample):
@overrides @overrides
def put_scalar(self, key: str, value: Scalar) -> None: def put_scalar(self, key: str, value: Scalar) -> None:
if value is None:
return
self._assert_is_scalar(value) self._assert_is_scalar(value)
self._put(key, value) self._put(key, value)
@ -220,6 +222,8 @@ class Hdf5Sample(Sample):
@overrides @overrides
def put_scalar(self, key: str, value: Any) -> None: def put_scalar(self, key: str, value: Any) -> None:
if value is None:
return
self._assert_is_scalar(value) self._assert_is_scalar(value)
self._put(key, value) self._put(key, value)

@ -39,11 +39,16 @@ def _test_sample(sample: Sample) -> None:
# Bytes # Bytes
_assert_roundtrip_bytes(sample, b"\x00\x01\x02\x03\x04\x05") _assert_roundtrip_bytes(sample, b"\x00\x01\x02\x03\x04\x05")
# Querying unknown keys should return None
assert sample.get_scalar("unknown-key") is None assert sample.get_scalar("unknown-key") is None
assert sample.get_vector("unknown-key") is None assert sample.get_vector("unknown-key") is None
assert sample.get_vector_list("unknown-key") is None assert sample.get_vector_list("unknown-key") is None
assert sample.get_bytes("unknown-key") is None assert sample.get_bytes("unknown-key") is None
# Putting None should not modify HDF5 file
sample.put_scalar("key", None)
sample.put_vector("key", None)
def _assert_roundtrip_bytes(sample: Sample, expected: Any) -> None: def _assert_roundtrip_bytes(sample: Sample, expected: Any) -> None:
sample.put_bytes("key", expected) sample.put_bytes("key", expected)

Loading…
Cancel
Save