def METHOD_NAME(self):
    """Test that a useful error is raised when the array that is indexed
    to provide data does not exist because the index is out of range. More
    simply, if there are only 3 sub-arays, indices of 3 or more should lead
    to a sensbile error. Note that the behaviour of this function is
    equivalent to numpy choose with mode=raise, there is no attempt to wrap
    or clip invalid index values."""
    index_array = np.array([[[0, 1], [1, 0]], [[0, 2], [0, 1]], [[3, 3], [3, 3]]])
    msg = "index_array contains an index that is larger than the number"
    with self.assertRaisesRegex(IndexError, msg):
        choose(index_array, self.small_data)