Skip to content
Merged
Prev Previous commit
Next Next commit
fixup! fixup! fixup! [BUG] Fix issue with results_iter when API retur…
…ns an object CAT-213
  • Loading branch information
rhiannon-eldridge-lrn committed Aug 5, 2019
commit 4c2b8c93144d7ba28192780bde39824c70dd11b6
26 changes: 6 additions & 20 deletions tests/integration/test_dataapi.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,8 @@

class IntegrationTestDataApiClient(unittest.TestCase):

def _build_base_url(self):
@staticmethod
def __build_base_url():
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I changed this to a static method as it's only used internally by the integration tests and does not access any class variables.

env = os.environ
env_domain = ''
region_domain = '.learnosity.com'
Expand All @@ -49,14 +50,12 @@ def _build_base_url(self):

base_url = "https://data%s%s/%s" % (env_domain, region_domain, version_path)

print('Using base URL: ' + base_url)

return base_url

def test_real_request(self):
"""Make a request against Data Api to ensure the SDK works"""
client = DataApi()
res = client.request(self._build_base_url() + items_endpoint, security, consumer_secret, items_request,
res = client.request(self.__build_base_url() + items_endpoint, security, consumer_secret, items_request,
action)
returned_json = res.json()

Expand All @@ -68,7 +67,7 @@ def test_real_request(self):
def test_paging(self):
"""Verify that paging works"""
client = DataApi()
pages = client.request_iter(self._build_base_url() + items_endpoint, security, consumer_secret,
pages = client.request_iter(self.__build_base_url() + items_endpoint, security, consumer_secret,
items_request, action)
results = set()

Expand All @@ -83,21 +82,14 @@ def test_real_question_request(self):
"""Make a request against Data Api to ensure the SDK works"""
client = DataApi()

test_url = self._build_base_url() + questions_endpoint

print("test_url is", test_url)

questions_request['limit'] = 3

res = client.request(test_url, security, consumer_secret, questions_request,
res = client.request(self.__build_base_url() + questions_endpoint, security, consumer_secret, questions_request,
action)

returned_json = res.json()

assert len(returned_json['data']) > 0

keys = set()

for key, value in Future.iteritems(returned_json['data']):
keys.add(key)

Expand All @@ -107,21 +99,15 @@ def test_question_paging(self):
"""Verify that paging works"""
client = DataApi()

test_url = self._build_base_url() + questions_endpoint

print("test_url is", test_url)

pages = client.request_iter(test_url, security, consumer_secret,
pages = client.request_iter(self.__build_base_url() + questions_endpoint, security, consumer_secret,
questions_request, action)

results = []

for page in pages:
if page['data']:
results.append(page['data'])

keys = set()

for row in results:
for key in row.keys():
keys.add(key)
Expand Down