adding user factory and more tests