use identify_by to order if order_by is not set
it should be cleared; and removed a surplus line
use inheriting
better test case