Ejemplo n.º 1
0
    def test_no_redirect_json(self, mock_req):
        self.setup_redirects(mock_req,
                             final_kwargs={'text': fake_response_json})

        xport = transport.Transport(redirect=False)
        self.assertRaises(exceptions.InvalidResponse, xport.get,
                          self.REDIRECT_CHAIN[0])
Ejemplo n.º 2
0
    def test_get_redirect(self, mock_req):
        self.setup_redirects(mock_req)

        xport = transport.Transport()
        resp = xport.get(self.REDIRECT_CHAIN[-2], accept=None)

        self.assertResponseOK(resp, body=fake_response)
Ejemplo n.º 3
0
    def test_post_keeps_correct_method(self, mock_req):
        self.setup_redirects(mock_req, method="POST", status_code=301)

        xport = transport.Transport()
        resp = xport.post(self.REDIRECT_CHAIN[-2], accept=None)

        self.assertResponseOK(resp, body=fake_response)
Ejemplo n.º 4
0
 def test_redirect_limit(self):
     self.setup_redirects()
     for i in (1, 2):
         xport = transport.Transport(redirect=i)
         resp = xport.get(self.REDIRECT_CHAIN[0], accept=None)
         self.assertResponseOK(resp, status=305, body=fake_redirect)
         self.assertEqual(self.REDIRECT_CHAIN[i], resp.url)
Ejemplo n.º 5
0
 def test_get_redirect_json(self):
     self.setup_redirects(
         final_kwargs={'body': fake_response_json},
     )
     xport = transport.Transport()
     resp = xport.get(self.REDIRECT_CHAIN[-2])
     self.assertResponseOK(resp, body=fake_response_json)
Ejemplo n.º 6
0
 def test_request_json(self):
     self.stub_url(httpretty.GET, json=fake_record1)
     xport = transport.Transport()
     resp = xport.request('GET', self.TEST_URL, accept=None)
     self.assertEqual(httpretty.GET, httpretty.last_request().method)
     self.assertResponseOK(resp, body=json.dumps(fake_record1))
     self.assertEqual(fake_record1, resp.json())
Ejemplo n.º 7
0
    def setUp(self):
        super(TestObjectStoreProxy, self).setUp()
        self.transport = transport.Transport(accept=transport.JSON)
        self.auth = fakes.FakeAuthenticator()
        self.session = session.Session(self.transport, self.auth)

        self.proxy = _proxy.Proxy(self.session)
Ejemplo n.º 8
0
    def test_head(self, mock_req):
        mock_req.head(self.TEST_URL, text="")

        xport = transport.Transport()
        resp = xport.head(self.TEST_URL, accept=None)

        self.assertEqual("HEAD", mock_req.last_request.method)
        self.assertResponseOK(resp, body='')
Ejemplo n.º 9
0
    def test_no_redirect(self, mock_req):
        self.setup_redirects(mock_req)

        xport = transport.Transport(redirect=False)
        resp = xport.get(self.REDIRECT_CHAIN[0], accept=None)

        self.assertEqual(305, resp.status_code)
        self.assertEqual(self.REDIRECT_CHAIN[0], resp.url)
Ejemplo n.º 10
0
    def test_request_accept(self):
        fake_record1_str = json.dumps(fake_record1)
        self.stub_url(httpretty.POST, body=fake_record1_str)
        xport = transport.Transport()
        resp = xport.post(self.TEST_URL, json=fake_record2, accept=None)
        self.assertRequestHeaderEqual('Accept', '*/*')
        self.assertEqual(fake_record1, resp.json())

        resp = xport.post(self.TEST_URL, json=fake_record2,
                          accept=transport.JSON)
        self.assertRequestHeaderEqual('Accept', transport.JSON)
        self.assertEqual(fake_record1, resp.json())

        xport = transport.Transport(accept=transport.JSON)
        resp = xport.post(self.TEST_URL, json=fake_record2)
        self.assertRequestHeaderEqual('Accept', transport.JSON)
        self.assertEqual(fake_record1, resp.json())
Ejemplo n.º 11
0
 def setUp(self):
     super(TestConnection, self).setUp()
     self.xport = transport.Transport()
     self.auth = v2.Token(auth_url='http://127.0.0.1/v2', token='b')
     self.prof = profile.Profile()
     self.conn = connection.Connection(authenticator=mock.MagicMock(),
                                       transport=mock.MagicMock())
     self.conn.session = mock.MagicMock()
Ejemplo n.º 12
0
 def test_redirect_forever(self):
     self.setup_redirects()
     xport = transport.Transport()
     resp = xport.get(self.REDIRECT_CHAIN[0], accept=None)
     self.assertResponseOK(resp)
     # Request history length is 1 less than the source chain due to the
     # last response not being a redirect and not added to the history.
     self.assertEqual(len(self.REDIRECT_CHAIN) - 1, len(resp.history))
Ejemplo n.º 13
0
    def test_not_found(self):
        xport = transport.Transport()
        status = 404
        self.stub_url(httpretty.GET, status=status)

        exc = self.assertRaises(exceptions.HttpException, xport.get,
                                self.TEST_URL)
        self.assertEqual(status, exc.status_code)
Ejemplo n.º 14
0
    def test_user_agent_arg_none(self):
        # None gets converted to the transport.USER_AGENT by default.
        self.stub_url(httpretty.GET, body=fake_response)
        xport = transport.Transport(user_agent=None)

        resp = xport.get(self.TEST_URL, accept=None)
        self.assertTrue(resp.ok)
        self.assertRequestHeaderEqual('User-Agent', self.test_user_agent)
Ejemplo n.º 15
0
    def test_get(self, mock_req):
        mock_req.get(self.TEST_URL, text=fake_response)

        xport = transport.Transport()
        resp = xport.get(self.TEST_URL, accept=None)

        self.assertEqual("GET", mock_req.last_request.method)
        self.assertResponseOK(resp, body=fake_response)
Ejemplo n.º 16
0
    def test_server_error(self):
        xport = transport.Transport()
        status = 500
        self.stub_url(httpretty.GET, status=500)

        exc = self.assertRaises(exceptions.HttpException, xport.get,
                                self.TEST_URL)
        self.assertEqual(status, exc.status_code)
Ejemplo n.º 17
0
    def test_server_error(self, mock_req):
        xport = transport.Transport()
        status = 500

        mock_req.get(self.TEST_URL, status_code=500)

        exc = self.assertRaises(exceptions.HttpException, xport.get,
                                self.TEST_URL)
        self.assertEqual(status, exc.status_code)
Ejemplo n.º 18
0
    def test_user_agent_arg_default(self):
        self.stub_url(httpretty.GET, body=fake_response)
        agent = 'test-agent'
        xport = transport.Transport(user_agent=agent)

        resp = xport.get(self.TEST_URL, accept=None)
        self.assertTrue(resp.ok)
        self.assertRequestHeaderEqual('User-Agent', '%s %s' % (
                                      agent, self.test_user_agent))
Ejemplo n.º 19
0
    def test_not_found(self, mock_req):
        xport = transport.Transport()
        status = 404

        mock_req.get(self.TEST_URL, status_code=status)

        exc = self.assertRaises(exceptions.NotFoundException, xport.get,
                                self.TEST_URL)
        self.assertEqual(status, exc.status_code)
Ejemplo n.º 20
0
 def test_post_keeps_correct_method_json(self):
     self.setup_redirects(
         method=httpretty.POST,
         status=301,
         final_kwargs={'body': fake_response_json},
     )
     xport = transport.Transport()
     resp = xport.post(self.REDIRECT_CHAIN[-2])
     self.assertResponseOK(resp, body=fake_response_json)
Ejemplo n.º 21
0
    def test_request_json(self, mock_req):
        mock_req.get(self.TEST_URL, json=fake_record1)
        req = "GET"

        xport = transport.Transport()
        resp = xport.request(req, self.TEST_URL, accept=None)

        self.assertEqual(req, mock_req.last_request.method)
        self.assertResponseOK(resp, body=json.dumps(fake_record1))
        self.assertEqual(fake_record1, resp.json())
Ejemplo n.º 22
0
 def test_post(self):
     self.stub_url(httpretty.POST, body=fake_response_json)
     xport = transport.Transport()
     resp = xport.post(self.TEST_URL, json=fake_record2)
     self.assertEqual(httpretty.POST, httpretty.last_request().method)
     self.assertEqual(
         json.dumps(fake_record2),
         httpretty.last_request().body.decode('utf-8'),
     )
     self.assertResponseOK(resp, body=fake_response_json)
Ejemplo n.º 23
0
    def test_post_keeps_correct_method_json(self, mock_req):
        self.setup_redirects(mock_req,
                             method="POST",
                             status_code=301,
                             final_kwargs={'text': fake_response_json})

        xport = transport.Transport()
        resp = xport.post(self.REDIRECT_CHAIN[-2])

        self.assertResponseOK(resp, body=fake_response_json)
Ejemplo n.º 24
0
    def test_user_agent_arg_none(self, mock_req):
        # None gets converted to the transport.USER_AGENT by default.
        mock_req.get(self.TEST_URL, text=fake_response)

        xport = transport.Transport(user_agent=None)
        resp = xport.get(self.TEST_URL, accept=None)

        self.assertTrue(resp.ok)
        self.assertRequestHeaderEqual(mock_req, 'User-Agent',
                                      self.test_user_agent)
Ejemplo n.º 25
0
    def test_user_agent_arg_default(self, mock_req):
        mock_req.get(self.TEST_URL, text=fake_response)

        agent = 'test-agent'
        xport = transport.Transport(user_agent=agent)
        resp = xport.get(self.TEST_URL, accept=None)

        self.assertTrue(resp.ok)
        self.assertRequestHeaderEqual(mock_req, 'User-Agent',
                                      '%s %s' % (agent, self.test_user_agent))
Ejemplo n.º 26
0
 def test_no_redirect_json(self):
     self.setup_redirects(
         final_kwargs={'body': fake_response_json},
     )
     xport = transport.Transport(redirect=False)
     self.assertRaises(
         exceptions.InvalidResponse,
         xport.get,
         self.REDIRECT_CHAIN[0],
     )
Ejemplo n.º 27
0
 def test_redirect_forever_json(self):
     self.setup_redirects(
         final_kwargs={'body': fake_response_json},
     )
     xport = transport.Transport()
     resp = xport.get(self.REDIRECT_CHAIN[0])
     self.assertResponseOK(resp)
     # Request history length is 1 less than the source chain due to the
     # last response not being a redirect and not added to the history.
     self.assertEqual(len(self.REDIRECT_CHAIN) - 1, len(resp.history))
Ejemplo n.º 28
0
    def test_user_agent_no_arg(self):
        self.stub_url(httpretty.GET, body=fake_response)
        xport = transport.Transport()

        resp = xport.get(self.TEST_URL, accept=None)
        self.assertTrue(resp.ok)
        self.assertRequestHeaderEqual('User-Agent', self.test_user_agent)

        resp = xport.get(self.TEST_URL, headers={'User-Agent': None},
                         accept=None)
        self.assertTrue(resp.ok)
        self.assertRequestHeaderEqual('User-Agent', None)

        resp = xport.get(self.TEST_URL, user_agent=None, accept=None)
        self.assertTrue(resp.ok)
        self.assertRequestHeaderEqual('User-Agent', self.test_user_agent)

        resp = xport.get(self.TEST_URL, headers={'User-Agent': ''},
                         accept=None)
        self.assertTrue(resp.ok)
        self.assertRequestHeaderEqual('User-Agent', '')

        resp = xport.get(self.TEST_URL, user_agent='', accept=None)
        self.assertTrue(resp.ok)
        self.assertRequestHeaderEqual('User-Agent', self.test_user_agent)

        new_agent = 'new-agent'
        resp = xport.get(self.TEST_URL, headers={'User-Agent': new_agent},
                         accept=None)
        self.assertTrue(resp.ok)
        self.assertRequestHeaderEqual('User-Agent', new_agent)

        resp = xport.get(self.TEST_URL, user_agent=new_agent, accept=None)
        self.assertTrue(resp.ok)
        self.assertRequestHeaderEqual('User-Agent', '%s %s' % (
                                      new_agent, self.test_user_agent))

        custom_value = 'new-agent'
        resp = xport.get(self.TEST_URL, headers={'User-Agent': custom_value},
                         user_agent=None, accept=None)
        self.assertTrue(resp.ok)
        self.assertRequestHeaderEqual('User-Agent', custom_value)

        override = 'overrides-agent'
        resp = xport.get(self.TEST_URL, headers={'User-Agent': None},
                         user_agent=override, accept=None)
        self.assertTrue(resp.ok)
        self.assertRequestHeaderEqual('User-Agent', '%s %s' % (
                                      override, self.test_user_agent))

        resp = xport.get(self.TEST_URL, headers={'User-Agent': custom_value},
                         user_agent=override, accept=None)
        self.assertTrue(resp.ok)
        self.assertRequestHeaderEqual('User-Agent', '%s %s' % (
                                      override, self.test_user_agent))
Ejemplo n.º 29
0
def authenticate(**kwargs):
    '''Authenticate using openstack sdk based on user credential'''

    try:
        auth = create_connection(kwargs).session.authenticator
        xport = transport.Transport()
        access_info = auth.authorize(xport)
    except Exception as ex:
        raise parse_exception(ex)

    return access_info
Ejemplo n.º 30
0
    def test_put(self):
        self.stub_url(httpretty.PUT, body=fake_response)
        xport = transport.Transport()

        resp = xport.put(self.TEST_URL, data=fake_request, accept=None)
        self.assertEqual(httpretty.PUT, httpretty.last_request().method)
        self.assertEqual(
            fake_request,
            httpretty.last_request().body.decode('utf-8'),
        )
        self.assertResponseOK(resp, body=fake_response)