Improve tests for AbstractDataSource subclasses

These are fairly basic objects with almost no tests, and tests should be straightforward.
Seems to be a philosophical question: should you test private attributes and methods so that it is all solid or does it make your code calcified, making it harder to change things that should be able to change without warnings. I don't have the answer and open to inputs.