예제 #1
0
    def test_send_request_returns_result_when_no_error(self):
        logger = mock.MagicMock()
        arguments = self.construct_arguments()

        uri = "/api/nodes"
        url = "%s://%s:%s%s" % (arguments["server_scheme"],
                                arguments["server_host"],
                                arguments["server_port"], uri)

        client = apiclient.ApiClient(logger, arguments)
        apiclient.urllib2.HTTPPasswordMgrWithDefaultRealm = mock.MagicMock()
        apiclient.urllib2.build_opener = mock.MagicMock()
        apiclient.json.loads = mock.MagicMock(
            return_value=self.construct_response_nodes())
        response = client.send_request(uri)

        apiclient.urllib2.HTTPPasswordMgrWithDefaultRealm(
        ).add_password.assert_called_once_with(None, url,
                                               arguments["server_username"],
                                               arguments["server_password"])
        apiclient.urllib2.build_opener(
            mock.MagicMock()).open.assert_called_with(url)
        apiclient.json.loads.assert_called_once()
        self.assertEqual(self.construct_response_nodes(), response)
        logger.error.assert_not_called()
예제 #2
0
    def test_get_connections_returns_result_when_no_error(self):
        logger = mock.MagicMock()
        arguments = self.construct_arguments()

        client = apiclient.ApiClient(logger, arguments)
        client.send_request = mock.MagicMock(
            return_value=self.construct_response_connections())
        response = client.get_connections()

        client.send_request.assert_called_once()
        self.assertEquals(self.construct_response_connections(), response)
예제 #3
0
    def test_get_queues_returns_empty_list_when_error(self):
        logger = mock.MagicMock()
        arguments = self.construct_arguments()

        client = apiclient.ApiClient(logger, arguments)
        client.send_request = mock.MagicMock(return_value=None)
        apiclient.urllib2.build_opener.open = mock.MagicMock(
            side_effect=urllib2.HTTPError)
        response = client.get_queues()

        client.send_request.assert_called_once()
        self.assertEquals([], response)
예제 #4
0
    def test_get_queues_returns_empty_list_when_no_queues_exist(self):
        logger = mock.MagicMock()
        arguments = self.construct_arguments()

        client = apiclient.ApiClient(logger, arguments)
        client.send_request = mock.MagicMock(
            return_value=self.construct_response_queues_empty())
        queues = client.get_queues()

        logger.info.assert_not_called()
        logger.error.assert_called_once()
        client.send_request.assert_called_once()
        self.assertEquals([], queues)
예제 #5
0
    def test_get_queue_returns_result_when_no_error(self):
        logger = mock.MagicMock()
        arguments = self.construct_arguments()

        client = apiclient.ApiClient(logger, arguments)
        client.send_request = mock.MagicMock(
            return_value=self.construct_response_queue())
        response = client.get_queue()

        uri = "/api/queues/%s/%s" % (arguments["server_vhost"],
                                     arguments["server_queue"])
        client.send_request.assert_called_once_with(uri)
        self.assertEquals(self.construct_response_queue(), response)
예제 #6
0
    def test_get_queue_returns_none_when_error(self):
        logger = mock.MagicMock()
        arguments = self.construct_arguments()

        client = apiclient.ApiClient(logger, arguments)
        client.send_request = mock.MagicMock(return_value=None)
        apiclient.urllib2.build_opener.open = mock.MagicMock(
            side_effect=urllib2.HTTPError)
        response = client.get_queue()

        uri = "/api/queues/%s/%s" % (arguments["server_vhost"],
                                     arguments["server_queue"])
        client.send_request.assert_called_once_with(uri)
        self.assertEquals(None, response)
예제 #7
0
    def test_send_request_returns_none_when_error(self):
        logger = mock.MagicMock()
        arguments = self.construct_arguments()

        uri = "/api/nodes"
        url = "%s://%s:%s%s" % (arguments["server_scheme"],
                                arguments["server_host"],
                                arguments["server_port"], uri)

        client = apiclient.ApiClient(logger, arguments)
        apiclient.urllib2.build_opener.open = mock.MagicMock(
            side_effect=urllib2.HTTPError)
        apiclient.json.loads = mock.MagicMock(
            return_value=self.construct_response_nodes())
        response = client.send_request(uri)

        apiclient.json.loads.assert_not_called()
        logger.error.assert_called_once()
        self.assertEquals(None, response)