inject only session service, refefine service, add some unit tests