Skip to content

Commit 49d414e

Browse files
Merge branch 'dev' into POP-2285
2 parents 6386e57 + b826b00 commit 49d414e

File tree

5 files changed

+47
-32
lines changed

5 files changed

+47
-32
lines changed

dynatademand/api.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -152,8 +152,11 @@ def get_project(self, project_id):
152152
def get_projects(self):
153153
return self._api_get('/projects')
154154

155-
def get_lineitem(self, project_id, lineitem_id):
156-
return self._api_get('/projects/{}/lineItems/{}'.format(project_id, lineitem_id))
155+
def get_line_item(self, project_id, line_item_id):
156+
return self._api_get('/projects/{}/lineItems/{}'.format(project_id, line_item_id))
157+
158+
def get_line_items(self, project_id):
159+
return self._api_get('/projects/{}/lineItems'.format(project_id))
157160

158161
def get_feasibility(self, project_id):
159162
return self._api_get('/projects/{}/feasibility'.format(project_id))

tests/test_files/get_line_items.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"test": "Literally anything can go here"
3+
}

tests/test_line_items.py

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# encoding: utf-8
2+
from __future__ import unicode_literals, print_function
3+
4+
import json
5+
import unittest
6+
import responses
7+
8+
try:
9+
from unittest.mock import patch
10+
except ImportError:
11+
from mock import patch
12+
13+
from dynatademand.api import DemandAPIClient
14+
15+
BASE_HOST = "http://test-url.example"
16+
17+
18+
class TestLineItemEndpoints(unittest.TestCase):
19+
def setUp(self):
20+
self.api = DemandAPIClient(client_id='test', username='testuser', password='testpass', base_host=BASE_HOST)
21+
self.api._access_token = 'Bearer testtoken'
22+
23+
@responses.activate
24+
def test_get_line_item(self):
25+
with open('./tests/test_files/get_line_item.json', 'r') as line_item_file:
26+
line_item_json = json.load(line_item_file)
27+
responses.add(responses.GET, '{}/sample/v1/projects/1/lineItems/100'.format(BASE_HOST), json=line_item_json, status=200)
28+
self.api.get_line_item(1, 100)
29+
self.assertEqual(len(responses.calls), 1)
30+
self.assertEqual(responses.calls[0].response.json(), line_item_json)
31+
32+
@responses.activate
33+
def test_get_line_items(self):
34+
with open('./tests/test_files/get_line_items.json', 'r') as line_item_file:
35+
line_item_json = json.load(line_item_file)
36+
responses.add(responses.GET, '{}/sample/v1/projects/1/lineItems'.format(BASE_HOST), json=line_item_json, status=200)
37+
self.api.get_line_items(1)
38+
self.assertEqual(len(responses.calls), 1)
39+
self.assertEqual(responses.calls[0].response.json(), line_item_json)

tests/test_lineitems.py

Lines changed: 0 additions & 30 deletions
This file was deleted.

0 commit comments

Comments
 (0)