In the cache if a cache value was a dictionary but it did not contain the exact key of modified_time the code would return back the parent dict - causing further code to fail that was expecting a string to be returned.
Solution:
Adding a guard statement in _get_cache_modified_time that verified that the data returned is going to be a string or the value for modified_time
Testing:
Added unit tests around the logic that verify the behavior if the cache map:
Is a dict but does not contain modified_time key
Is a dict but contains neither of the expected keys
Problem:
modified_time
the code would return back the parent dict - causing further code to fail that was expecting a string to be returned.Solution:
_get_cache_modified_time
that verified that the data returned is going to be a string or the value formodified_time
Testing:
Added unit tests around the logic that verify the behavior if the cache map:
modified_time
key