Skip to content

Commit b137a32

Browse files
committed
Removing unused MethodIterator.
1 parent 927e4a4 commit b137a32

File tree

2 files changed

+0
-132
lines changed

2 files changed

+0
-132
lines changed

core/google/cloud/iterator.py

Lines changed: 0 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -281,47 +281,3 @@ def reset(self):
281281
self.next_page_token = None
282282
self.num_results = 0
283283
self._page = None
284-
285-
286-
class MethodIterator(object):
287-
"""Method-based iterator iterating through Cloud JSON APIs list responses.
288-
289-
:type method: instance method
290-
:param method: ``list_foo`` method of a domain object, taking as arguments
291-
``page_token``, ``page_size``, and optional additional
292-
keyword arguments.
293-
294-
:type page_token: string or ``NoneType``
295-
:param page_token: Initial page token to pass. if ``None``, fetch the
296-
first page from the ``method`` API call.
297-
298-
:type page_size: integer or ``NoneType``
299-
:param page_size: Maximum number of items to return from the ``method``
300-
API call; if ``None``, uses the default for the API.
301-
302-
:type max_calls: integer or ``NoneType``
303-
:param max_calls: Maximum number of times to make the ``method``
304-
API call; if ``None``, applies no limit.
305-
306-
:type kw: dict
307-
:param kw: optional keyword arguments to be passed to ``method``.
308-
"""
309-
def __init__(self, method, page_token=None, page_size=None,
310-
max_calls=None, **kw):
311-
self._method = method
312-
self._token = page_token
313-
self._page_size = page_size
314-
self._kw = kw
315-
self._max_calls = max_calls
316-
self._page_num = 0
317-
318-
def __iter__(self):
319-
while self._max_calls is None or self._page_num < self._max_calls:
320-
items, new_token = self._method(
321-
page_token=self._token, page_size=self._page_size, **self._kw)
322-
for item in items:
323-
yield item
324-
if new_token is None:
325-
return
326-
self._page_num += 1
327-
self._token = new_token

core/unit_tests/test_iterator.py

Lines changed: 0 additions & 88 deletions
Original file line numberDiff line numberDiff line change
@@ -290,94 +290,6 @@ def test_reset(self):
290290
self.assertIsNone(iterator.page)
291291

292292

293-
class TestMethodIterator(unittest.TestCase):
294-
295-
def _getTargetClass(self):
296-
from google.cloud.iterator import MethodIterator
297-
return MethodIterator
298-
299-
def _makeOne(self, *args, **kw):
300-
return self._getTargetClass()(*args, **kw)
301-
302-
def test_ctor_defaults(self):
303-
wlm = _WithListMethod()
304-
iterator = self._makeOne(wlm.list_foo)
305-
self.assertEqual(iterator._method, wlm.list_foo)
306-
self.assertIsNone(iterator._token)
307-
self.assertIsNone(iterator._page_size)
308-
self.assertEqual(iterator._kw, {})
309-
self.assertIsNone(iterator._max_calls)
310-
self.assertEqual(iterator._page_num, 0)
311-
312-
def test_ctor_explicit(self):
313-
wlm = _WithListMethod()
314-
TOKEN = wlm._letters
315-
SIZE = 4
316-
CALLS = 2
317-
iterator = self._makeOne(wlm.list_foo, TOKEN, SIZE, CALLS,
318-
foo_type='Bar')
319-
self.assertEqual(iterator._method, wlm.list_foo)
320-
self.assertEqual(iterator._token, TOKEN)
321-
self.assertEqual(iterator._page_size, SIZE)
322-
self.assertEqual(iterator._kw, {'foo_type': 'Bar'})
323-
self.assertEqual(iterator._max_calls, CALLS)
324-
self.assertEqual(iterator._page_num, 0)
325-
326-
def test___iter___defaults(self):
327-
import string
328-
wlm = _WithListMethod()
329-
iterator = self._makeOne(wlm.list_foo)
330-
found = []
331-
for char in iterator:
332-
found.append(char)
333-
self.assertEqual(found, list(string.printable))
334-
self.assertEqual(len(wlm._called_with), len(found) // 10)
335-
for i, (token, size, kw) in enumerate(wlm._called_with):
336-
if i == 0:
337-
self.assertIsNone(token)
338-
else:
339-
self.assertEqual(token, string.printable[i * 10:])
340-
self.assertIsNone(size)
341-
self.assertEqual(kw, {})
342-
343-
def test___iter___explicit_size_and_maxcalls_and_kw(self):
344-
import string
345-
wlm = _WithListMethod()
346-
iterator = self._makeOne(wlm.list_foo, page_size=2, max_calls=3,
347-
foo_type='Bar')
348-
found = []
349-
for char in iterator:
350-
found.append(char)
351-
self.assertEqual(found, list(string.printable[:2 * 3]))
352-
self.assertEqual(len(wlm._called_with), len(found) // 2)
353-
for i, (token, size, kw) in enumerate(wlm._called_with):
354-
if i == 0:
355-
self.assertIsNone(token)
356-
else:
357-
self.assertEqual(token, string.printable[i * 2:])
358-
self.assertEqual(size, 2)
359-
self.assertEqual(kw, {'foo_type': 'Bar'})
360-
361-
362-
class _WithListMethod(object):
363-
364-
def __init__(self):
365-
import string
366-
self._called_with = []
367-
self._letters = string.printable
368-
369-
def list_foo(self, page_token, page_size, **kw):
370-
if page_token is not None:
371-
assert page_token == self._letters
372-
self._called_with.append((page_token, page_size, kw))
373-
if page_size is None:
374-
page_size = 10
375-
page, self._letters = (
376-
self._letters[:page_size], self._letters[page_size:])
377-
token = self._letters or None
378-
return page, token
379-
380-
381293
class _Connection(object):
382294

383295
def __init__(self, *responses):

0 commit comments

Comments
 (0)