isdatelike is more strict about type checking
clean up repr(expr) test