added some tests around choosing join implementation