Improve tests for AbstractDataSource subclasses

These are fairly basic objects with almost no tests, and tests should be straightforward.
Is this comment about the fact that `ArrayDataSource` should really done something else? If so, that should go into the source code, not in the test.