Removed the old test case #3 (and renumbered the remaining ones). The test checked that updating the cache without sync'ing the children didn't change the results returned by the get procedure. However the lazy caching code by Malte changed the semantics of get to automatically load the cache with children if you try to get the node_id of a node with kids. This is a good thing, actually, since the update cache w/o sync'ing kids exists to make the cache update quick. But it did break the test checking explicitly for the old semantics.
It would be nice, however, if people, after writing new code and noticing that tests break, would actually sit down and determine if the test or code is wrong and take appropriate action.
Because I just spent two full hours tracking this down and verifying that the new semantics invalidate the old test code in a reasonable way, and I'm not the author of the new code.