Skip to content

Commit 6d50cf6

Browse files
committed
Implementation hiding in Iterator class.
Making JSON API call helpers non-public. This reduces the interface to methods relevant to iterating.
1 parent b137a32 commit 6d50cf6

File tree

2 files changed

+17
-16
lines changed

2 files changed

+17
-16
lines changed

core/google/cloud/iterator.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -217,7 +217,7 @@ def _update_page(self):
217217
if self.page is not None and self.page.remaining > 0:
218218
return
219219
if self.has_next_page():
220-
response = self.get_next_page_response()
220+
response = self._get_next_page_response()
221221
self._page = self.PAGE_CLASS(self, response)
222222
else:
223223
raise StopIteration
@@ -247,7 +247,7 @@ def has_next_page(self):
247247

248248
return self.next_page_token is not None
249249

250-
def get_query_params(self):
250+
def _get_query_params(self):
251251
"""Getter for query parameters for the next request.
252252
253253
:rtype: dict
@@ -261,14 +261,15 @@ def get_query_params(self):
261261
result.update(self.extra_params)
262262
return result
263263

264-
def get_next_page_response(self):
264+
def _get_next_page_response(self):
265265
"""Requests the next page from the path provided.
266266
267267
:rtype: dict
268268
:returns: The parsed JSON response of the next page's contents.
269269
"""
270270
response = self.client.connection.api_request(
271-
method='GET', path=self.path, query_params=self.get_query_params())
271+
method='GET', path=self.path,
272+
query_params=self._get_query_params())
272273

273274
self.page_number += 1
274275
self.next_page_token = response.get('nextPageToken')

core/unit_tests/test_iterator.py

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -206,24 +206,24 @@ def test_has_next_page_w_max_results_done(self):
206206
iterator.num_results = iterator.max_results
207207
self.assertFalse(iterator.has_next_page())
208208

209-
def test_get_query_params_no_token(self):
209+
def test__get_query_params_no_token(self):
210210
connection = _Connection()
211211
client = _Client(connection)
212212
path = '/foo'
213213
iterator = self._makeOne(client, path=path)
214-
self.assertEqual(iterator.get_query_params(), {})
214+
self.assertEqual(iterator._get_query_params(), {})
215215

216-
def test_get_query_params_w_token(self):
216+
def test__get_query_params_w_token(self):
217217
connection = _Connection()
218218
client = _Client(connection)
219219
path = '/foo'
220220
token = 'token'
221221
iterator = self._makeOne(client, path=path)
222222
iterator.next_page_token = token
223-
self.assertEqual(iterator.get_query_params(),
223+
self.assertEqual(iterator._get_query_params(),
224224
{'pageToken': token})
225225

226-
def test_get_query_params_w_max_results(self):
226+
def test__get_query_params_w_max_results(self):
227227
connection = _Connection()
228228
client = _Client(connection)
229229
path = '/foo'
@@ -232,18 +232,18 @@ def test_get_query_params_w_max_results(self):
232232
max_results=max_results)
233233
iterator.num_results = 1
234234
local_max = max_results - iterator.num_results
235-
self.assertEqual(iterator.get_query_params(),
235+
self.assertEqual(iterator._get_query_params(),
236236
{'maxResults': local_max})
237237

238-
def test_get_query_params_extra_params(self):
238+
def test__get_query_params_extra_params(self):
239239
connection = _Connection()
240240
client = _Client(connection)
241241
path = '/foo'
242242
extra_params = {'key': 'val'}
243243
iterator = self._makeOne(client, path=path, extra_params=extra_params)
244-
self.assertEqual(iterator.get_query_params(), extra_params)
244+
self.assertEqual(iterator._get_query_params(), extra_params)
245245

246-
def test_get_query_params_w_token_and_extra_params(self):
246+
def test__get_query_params_w_token_and_extra_params(self):
247247
connection = _Connection()
248248
client = _Client(connection)
249249
path = '/foo'
@@ -254,9 +254,9 @@ def test_get_query_params_w_token_and_extra_params(self):
254254

255255
expected_query = extra_params.copy()
256256
expected_query.update({'pageToken': token})
257-
self.assertEqual(iterator.get_query_params(), expected_query)
257+
self.assertEqual(iterator._get_query_params(), expected_query)
258258

259-
def test_get_next_page_response_new_no_token_in_response(self):
259+
def test__get_next_page_response_new_no_token_in_response(self):
260260
path = '/foo'
261261
token = 'token'
262262
key1 = 'key1'
@@ -265,7 +265,7 @@ def test_get_next_page_response_new_no_token_in_response(self):
265265
'nextPageToken': token})
266266
client = _Client(connection)
267267
iterator = self._makeOne(client, path=path)
268-
response = iterator.get_next_page_response()
268+
response = iterator._get_next_page_response()
269269
self.assertEqual(response['items'], [{'name': key1}, {'name': key2}])
270270
self.assertEqual(iterator.page_number, 1)
271271
self.assertEqual(iterator.next_page_token, token)

0 commit comments

Comments
 (0)