@@ -309,132 +309,6 @@ def test_cancelled(self):
309309
310310 self .assertTrue (job .cancelled ())
311311
312- def test_done_job_complete (self ):
313- client = _make_client (project = self .PROJECT )
314- resource = self ._make_resource (ended = True )
315- job = self ._get_target_class ().from_api_repr (resource , client )
316- job ._query_results = google .cloud .bigquery .query ._QueryResults .from_api_repr (
317- {"jobComplete" : True , "jobReference" : resource ["jobReference" ]}
318- )
319- self .assertTrue (job .done ())
320-
321- def test_done_w_timeout (self ):
322- client = _make_client (project = self .PROJECT )
323- resource = self ._make_resource (ended = False )
324- job = self ._get_target_class ().from_api_repr (resource , client )
325-
326- with mock .patch .object (
327- client , "_get_query_results"
328- ) as fake_get_results , mock .patch .object (job , "reload" ) as fake_reload :
329- job .done (timeout = 42 )
330-
331- fake_get_results .assert_called_once ()
332- call_args = fake_get_results .call_args
333- self .assertEqual (call_args .kwargs .get ("timeout" ), 42 )
334-
335- call_args = fake_reload .call_args
336- self .assertEqual (call_args .kwargs .get ("timeout" ), 42 )
337-
338- def test_done_w_timeout_and_longer_internal_api_timeout (self ):
339- client = _make_client (project = self .PROJECT )
340- resource = self ._make_resource (ended = False )
341- job = self ._get_target_class ().from_api_repr (resource , client )
342- job ._done_timeout = 8.8
343-
344- with mock .patch .object (
345- client , "_get_query_results"
346- ) as fake_get_results , mock .patch .object (job , "reload" ) as fake_reload :
347- job .done (timeout = 5.5 )
348-
349- # The expected timeout used is simply the given timeout, as the latter
350- # is shorter than the job's internal done timeout.
351- expected_timeout = 5.5
352-
353- fake_get_results .assert_called_once ()
354- call_args = fake_get_results .call_args
355- self .assertAlmostEqual (call_args .kwargs .get ("timeout" ), expected_timeout )
356-
357- call_args = fake_reload .call_args
358- self .assertAlmostEqual (call_args .kwargs .get ("timeout" ), expected_timeout )
359-
360- def test_done_w_query_results_error_reload_ok_job_finished (self ):
361- client = _make_client (project = self .PROJECT )
362- bad_request_error = exceptions .BadRequest ("Error in query" )
363- client ._get_query_results = mock .Mock (side_effect = bad_request_error )
364-
365- resource = self ._make_resource (ended = False )
366- job = self ._get_target_class ().from_api_repr (resource , client )
367- job ._exception = None
368-
369- def fake_reload (self , * args , ** kwargs ):
370- self ._properties ["status" ]["state" ] = "DONE"
371- self .set_exception (copy .copy (bad_request_error ))
372-
373- fake_reload_method = types .MethodType (fake_reload , job )
374-
375- with mock .patch .object (job , "reload" , new = fake_reload_method ):
376- is_done = job .done ()
377-
378- assert is_done
379- assert isinstance (job ._exception , exceptions .BadRequest )
380-
381- def test_done_w_query_results_error_reload_ok_job_still_running (self ):
382- client = _make_client (project = self .PROJECT )
383- retry_error = exceptions .RetryError ("Too many retries" , cause = TimeoutError )
384- client ._get_query_results = mock .Mock (side_effect = retry_error )
385-
386- resource = self ._make_resource (ended = False )
387- job = self ._get_target_class ().from_api_repr (resource , client )
388- job ._exception = None
389-
390- def fake_reload (self , * args , ** kwargs ):
391- self ._properties ["status" ]["state" ] = "RUNNING"
392-
393- fake_reload_method = types .MethodType (fake_reload , job )
394-
395- with mock .patch .object (job , "reload" , new = fake_reload_method ):
396- is_done = job .done ()
397-
398- assert not is_done
399- assert job ._exception is None
400-
401- def test_done_w_query_results_error_reload_error (self ):
402- client = _make_client (project = self .PROJECT )
403- bad_request_error = exceptions .BadRequest ("Error in query" )
404- client ._get_query_results = mock .Mock (side_effect = bad_request_error )
405-
406- resource = self ._make_resource (ended = False )
407- job = self ._get_target_class ().from_api_repr (resource , client )
408- reload_error = exceptions .DataLoss ("Oops, sorry!" )
409- job .reload = mock .Mock (side_effect = reload_error )
410- job ._exception = None
411-
412- is_done = job .done ()
413-
414- assert is_done
415- assert job ._exception is bad_request_error
416-
417- def test_done_w_job_query_results_ok_reload_error (self ):
418- client = _make_client (project = self .PROJECT )
419- query_results = google .cloud .bigquery .query ._QueryResults (
420- properties = {
421- "jobComplete" : True ,
422- "jobReference" : {"projectId" : self .PROJECT , "jobId" : "12345" },
423- }
424- )
425- client ._get_query_results = mock .Mock (return_value = query_results )
426-
427- resource = self ._make_resource (ended = False )
428- job = self ._get_target_class ().from_api_repr (resource , client )
429- retry_error = exceptions .RetryError ("Too many retries" , cause = TimeoutError )
430- job .reload = mock .Mock (side_effect = retry_error )
431- job ._exception = None
432-
433- is_done = job .done ()
434-
435- assert is_done
436- assert job ._exception is retry_error
437-
438312 def test_query_plan (self ):
439313 from google .cloud ._helpers import _RFC3339_MICROS
440314 from google .cloud .bigquery .job import QueryPlanEntry
@@ -1905,8 +1779,6 @@ def test_reload_w_timeout(self):
19051779 )
19061780
19071781 def test_iter (self ):
1908- import types
1909-
19101782 begun_resource = self ._make_resource ()
19111783 query_resource = {
19121784 "jobComplete" : True ,
0 commit comments