1+ from typing import Any , Dict , cast
12import unittest
23import responses
34from learnosity_sdk .request import DataApi
@@ -8,7 +9,7 @@ class UnitTestDataApiClient(unittest.TestCase):
89 Tests to ensure that the Data API client functions correctly.
910 """
1011
11- def setUp (self ):
12+ def setUp (self ) -> None :
1213 # This test uses the consumer key and secret for the demos consumer
1314 # this is the only consumer with publicly available keys
1415 self .security = {
@@ -44,7 +45,7 @@ def setUp(self):
4445 self .invalid_json = "This is not valid JSON!"
4546
4647 @responses .activate
47- def test_request (self ):
48+ def test_request (self ) -> None :
4849 """
4950 Verify that `request` sends a request after it has been signed
5051 """
@@ -55,10 +56,10 @@ def test_request(self):
5556 self .action )
5657 assert res .json () == self .dummy_responses [0 ]
5758 assert responses .calls [0 ].request .url == self .endpoint
58- assert 'signature' in responses .calls [0 ].request .body
59+ assert 'signature' in cast ( Dict [ str , Any ], responses .calls [0 ].request .body )
5960
6061 @responses .activate
61- def test_request_iter (self ):
62+ def test_request_iter (self ) -> None :
6263 """Verify that `request_iter` returns an iterator of pages"""
6364 for dummy in self .dummy_responses :
6465 responses .add (responses .POST , self .endpoint , json = dummy )
@@ -74,7 +75,7 @@ def test_request_iter(self):
7475 assert results [1 ]['data' ][0 ]['id' ] == 'b'
7576
7677 @responses .activate
77- def test_results_iter (self ):
78+ def test_results_iter (self ) -> None :
7879 """Verify that `result_iter` returns an iterator of results"""
7980 self .dummy_responses [1 ]['data' ] = {'id' : 'b' }
8081 for dummy in self .dummy_responses :
@@ -89,7 +90,7 @@ def test_results_iter(self):
8990 assert results [1 ]['id' ] == 'b'
9091
9192 @responses .activate
92- def test_results_iter_error_status (self ):
93+ def test_results_iter_error_status (self ) -> None :
9394 """Verify that a DataApiException is raised http status is not ok"""
9495 for dummy in self .dummy_responses :
9596 responses .add (responses .POST , self .endpoint , json = {}, status = 500 )
@@ -99,10 +100,12 @@ def test_results_iter_error_status(self):
99100 self .request , self .action ))
100101
101102 @responses .activate
102- def test_results_iter_no_meta_status (self ):
103+ def test_results_iter_no_meta_status (self ) -> None :
103104 """Verify that a DataApiException is raised when 'meta' 'status' is None"""
104105 for response in self .dummy_responses :
105- response ['meta' ]['status' ] = None
106+ # This is for typing purposes only, and should always be True
107+ if isinstance (response ['meta' ], dict ):
108+ response ['meta' ]['status' ] = None
106109
107110 for dummy in self .dummy_responses :
108111 responses .add (responses .POST , self .endpoint , json = dummy )
@@ -112,7 +115,7 @@ def test_results_iter_no_meta_status(self):
112115 self .request , self .action ))
113116
114117 @responses .activate
115- def test_results_iter_invalid_response_data (self ):
118+ def test_results_iter_invalid_response_data (self ) -> None :
116119 """Verify that a DataApiException is raised response data isn't valid JSON"""
117120 for dummy in self .dummy_responses :
118121 responses .add (responses .POST , self .endpoint , json = None )
0 commit comments