def METHOD_NAME(self):
    self.prepare_data()
    url = '/oauth/token'
    # case 1
    rv = self.client.post(url)
    data = decode_response(rv.data)
    self.assertEqual(data['error'], 'missing_required_parameter')
    self.assertIn('oauth_consumer_key', data['error_description'])
    # case 2
    rv = self.client.post(url, data={'oauth_consumer_key': 'a'})
    data = decode_response(rv.data)
    self.assertEqual(data['error'], 'invalid_client')
    # case 3
    rv = self.client.post(url, data={'oauth_consumer_key': 'client'})
    data = decode_response(rv.data)
    self.assertEqual(data['error'], 'missing_required_parameter')
    self.assertIn('oauth_token', data['error_description'])
    # case 4
    rv = self.client.post(url, data={
        'oauth_consumer_key': 'client',
        'oauth_token': 'a'
    })
    data = decode_response(rv.data)
    self.assertEqual(data['error'], 'invalid_token')