The bug was already fixed by 01b9c3d519, so only tests added. At the same time promote_joins()'s uncoditional flag is gone, it isn't needed for anything any more.
01b9c3d519