def METHOD_NAME(self):
    self.prepare_data()
    url = '/user'
    params = [
        ('oauth_consumer_key', 'client'),
        ('oauth_token', 'valid-token'),
        ('oauth_signature_method', 'RSA-SHA1'),
        ('oauth_timestamp', str(int(time.time()))),
        ('oauth_nonce', 'rsa-sha1-nonce'),
    ]
    base_string = signature.construct_base_string(
        'GET', 'http://localhost/user', params
    )
    sig = signature.rsa_sha1_signature(
        base_string, read_file_path('rsa_private.pem'))
    params.append(('oauth_signature', sig))
    auth_param = ','.join([f'{k}="{v}"' for k, v in params])
    auth_header = 'OAuth ' + auth_param
    headers = {'Authorization': auth_header}
    rv = self.client.get(url, headers=headers)
    data = json.loads(rv.data)
    self.assertIn('username', data)
    # case: invalid signature
    auth_param = auth_param.replace('rsa-sha1-nonce', 'alt-sha1-nonce')
    auth_header = 'OAuth ' + auth_param
    headers = {'Authorization': auth_header}
    rv = self.client.get(url, headers=headers)
    data = json.loads(rv.data)
    self.assertEqual(data['error'], 'invalid_signature')