The behaviour here in this test, for the `Timestamp` object, is the "fallback" I was talking about -- the `Float64Index` constructor sometimes raises an error, but sometimes "falls back" to returning a different kind of `Index`. It's an incoherent design and makes no sense to me. If the user calls `Float64Index` with something that can't be converted into floats, then raise an error! `float("asdf")` doesn't go "hmm, this isn't a float, guess I'll just return a string instead", it raises an error.

"When in doubt, refuse to guess."