Looks to me, from the documentation, like InputRangeObject will become "array like" if it was passed an array, and hence fail to exercise the non-array code paths.