bail on test failure
combine: accept streams as array