1. You need to know how to write a half decent test case, and, for full credit, how to write a recursive function. Check.
2. As alluded to in the previous point, we can judge the quality of the test cases. So, I think this is at least a provisional pass.
3. A really good candidate can talk about issues like Unicode, how to handle or avoid stack overflow, dealing with circular references, maybe think a bit about optimizations.
4. Unless you consider recursion to be "fiddly code," then we meet this criterion as well. I allowed people to use str() or repr() to convert things to strings, so there was no incidental difficulty there, either.
5. Nope, no tricks. Just use recursion.
So, it looks to me like I had a pretty okay question.
Anybody take issue with any of what I wrote, or have any suggestions for making it a better question?