ConditionalReader + tests.