TST: Parametrized index tests
I came across this module on another change and noticed that a lot of the tests could really use refactoring. There's a ton more to be done with this module but submitting as is so it doesn't get too large.

Can either add other commits on top of this or have this merged (assuming looks OK) and continue down the module in additional PR(s)