working unit tests, shared user model and view