correct behaviour of recursive delete and tests