diff --git a/distilclient/tests/unit/v2/test_invoices.py b/distilclient/tests/unit/v2/test_invoices.py index eb46178..a257c28 100644 --- a/distilclient/tests/unit/v2/test_invoices.py +++ b/distilclient/tests/unit/v2/test_invoices.py @@ -36,11 +36,13 @@ class InvoicesTest(utils.TestCase): self.client.invoices.list('2017-1-1', '2018-2-1', 'project_id') mock_list.assert_called_with('/v2/invoices?start=2017-1-1' - '&end=2018-2-1&project_id=project_id', + '&end=2018-2-1&detailed=False&' + 'project_id=project_id', 'invoices') @mock.patch.object(base.Manager, '_list') def test_list_without_project_id(self, mock_list): self.client.invoices.list('2017-1-1', '2018-2-1') mock_list.assert_called_with('/v2/invoices?start=2017-1-1' - '&end=2018-2-1', 'invoices') + '&end=2018-2-1&detailed=False', + 'invoices') diff --git a/distilclient/tests/unit/v2/test_quotations.py b/distilclient/tests/unit/v2/test_quotations.py index dc51d60..d908629 100644 --- a/distilclient/tests/unit/v2/test_quotations.py +++ b/distilclient/tests/unit/v2/test_quotations.py @@ -34,10 +34,12 @@ class QuotationsTest(utils.TestCase): @mock.patch.object(base.Manager, '_list') def test_list_with_project_id(self, mock_list): self.client.quotations.list('project_id') - mock_list.assert_called_with('/v2/quotations?project_id=project_id', + mock_list.assert_called_with('/v2/quotations?detailed=False&' + 'project_id=project_id', 'quotations') @mock.patch.object(base.Manager, '_list') def test_list_without_project_id(self, mock_list): self.client.quotations.list() - mock_list.assert_called_with('/v2/quotations', 'quotations') + mock_list.assert_called_with('/v2/quotations?detailed=False', + 'quotations') diff --git a/distilclient/v2/invoices.py b/distilclient/v2/invoices.py index eb9fd6b..92c29aa 100644 --- a/distilclient/v2/invoices.py +++ b/distilclient/v2/invoices.py @@ -17,20 +17,23 @@ from distilclient import base class InvoiceManager(base.Manager): - def list(self, start, end, project_id=None): + def list(self, start, end, project_id=None, detailed=False): """Retrieve a list of invoices. :param start: Start date of the query :param end: End date of the query :param project_id: Project ID, there there is no project id given, Distil will use the project ID from token. + :param detailed: Default value is False, indicate if inlucding detailed + usage info in the response. :returns: A list of invoices. """ - url = "/v2/invoices?start={0}&end={1}" + url = "/v2/invoices?start={0}&end={1}&detailed={2}" if project_id: - url = url.format(start, end) + "&project_id=" + project_id + url = (url.format(start, end, detailed) + + "&project_id=" + project_id) else: - url = url.format(start, end) + url = url.format(start, end, detailed) return self._list(url, "invoices") diff --git a/distilclient/v2/quotations.py b/distilclient/v2/quotations.py index 36a32b3..92e46c4 100644 --- a/distilclient/v2/quotations.py +++ b/distilclient/v2/quotations.py @@ -17,15 +17,17 @@ from distilclient import base class QuotationManager(base.Manager): - def list(self, project_id=None): + def list(self, project_id=None, detailed=False): """Retrieve a list of quotations. :param project_id: Project ID, there there is no project id given, Distil will use the project ID from token. + :param detailed: Default value is False, indicate if inlucding detailed + usage info in the response. :returns: A list of quotations. """ - url = "/v2/quotations" + url = "/v2/quotations?detailed=" + str(detailed) if project_id: - url = url + "?project_id=" + project_id + url = url + "&project_id=" + project_id return self._list(url, "quotations")