Move personal to controller and add tests for it

fixed