router and tests