'Revoking a role from one user should not affect other users.'

def test_removing_role_assignment_does_not_affect_other_users(self):

    time = datetime.datetime.utcnow()
    with freezegun.freeze_time(time) as frozen_datetime:
        self.delete(('/projects/%(p_id)s/groups/%(g_id)s/roles/%(r_id)s' % {'p_id': self.projectA['id'], 'g_id': self.group1['id'], 'r_id': self.role1['id']}))
        frozen_datetime.tick(delta=datetime.timedelta(seconds=1))
        user1_token = self.get_requested_token(self.build_authentication_request(user_id=self.user1['id'], password=self.user1['password'], project_id=self.projectA['id']))
        user3_token = self.get_requested_token(self.build_authentication_request(user_id=self.user3['id'], password=self.user3['password'], project_id=self.projectA['id']))
        self.delete(('/projects/%(p_id)s/users/%(u_id)s/roles/%(r_id)s' % {'p_id': self.projectA['id'], 'u_id': self.user1['id'], 'r_id': self.role1['id']}))
        self.head('/auth/tokens', headers={'X-Subject-Token': user1_token}, expected_status=http_client.NOT_FOUND)
        self.v3_create_token(self.build_authentication_request(user_id=self.user1['id'], password=self.user1['password'], project_id=self.projectA['id']), expected_status=http_client.UNAUTHORIZED)
        self.head('/auth/tokens', headers={'X-Subject-Token': user3_token}, expected_status=http_client.OK)
        self.v3_create_token(self.build_authentication_request(user_id=self.user3['id'], password=self.user3['password'], project_id=self.projectA['id']))
