add user provider and tested