'Test that a client (logged in) cannot update preferences for another user.'

@ddt.data(('different_client', 'different_user'), ('staff_client', 'staff_user'))
@ddt.unpack
def test_update_preferences_other_user(self, api_client, user):

    set_user_preference(self.user, 'dict_pref', {'int_key': 10})
    set_user_preference(self.user, 'string_pref', 'value')
    set_user_preference(self.user, 'extra_pref', 'extra_value')
    client = self.login_client(api_client, user)
    self.send_patch(client, {'string_pref': 'updated_value', 'new_pref': 'new_value', 'extra_pref': None}, expected_status=(403 if (user == 'staff_user') else 404))
