@@ -124,9 +124,15 @@ def _verifyResourceProperties(self, query, resource):
124
124
self .assertEqual (query .complete , resource .get ('jobComplete' ))
125
125
self .assertEqual (query .errors , resource .get ('errors' ))
126
126
self .assertEqual (query .page_token , resource .get ('pageToken' ))
127
- self .assertEqual (query .total_rows , resource .get ('totalRows' ))
128
- self .assertEqual (query .total_bytes_processed ,
129
- resource .get ('totalBytesProcessed' ))
127
+ if 'totalRows' in resource :
128
+ self .assertEqual (query .total_rows , int (resource ['totalRows' ]))
129
+ else :
130
+ self .assertIsNone (query .total_rows )
131
+ if 'totalBytesProcessed' in resource :
132
+ self .assertEqual (query .total_bytes_processed ,
133
+ int (resource ['totalBytesProcessed' ]))
134
+ else :
135
+ self .assertIsNone (query .total_bytes_processed )
130
136
131
137
if 'jobReference' in resource :
132
138
self .assertEqual (query .name , resource ['jobReference' ]['jobId' ])
@@ -336,6 +342,14 @@ def test_total_rows_present_integer(self):
336
342
query ._set_properties (resource )
337
343
self .assertEqual (query .total_rows , TOTAL_ROWS )
338
344
345
+ def test_total_rows_present_string (self ):
346
+ TOTAL_ROWS = 42
347
+ client = _Client (self .PROJECT )
348
+ query = self ._make_one (self .QUERY , client )
349
+ resource = {'totalRows' : str (TOTAL_ROWS )}
350
+ query ._set_properties (resource )
351
+ self .assertEqual (query .total_rows , TOTAL_ROWS )
352
+
339
353
def test_total_bytes_processed_missing (self ):
340
354
client = _Client (self .PROJECT )
341
355
query = self ._make_one (self .QUERY , client )
@@ -349,6 +363,14 @@ def test_total_bytes_processed_present_integer(self):
349
363
query ._set_properties (resource )
350
364
self .assertEqual (query .total_bytes_processed , TOTAL_BYTES_PROCESSED )
351
365
366
+ def test_total_bytes_processed_present_string (self ):
367
+ TOTAL_BYTES_PROCESSED = 123456
368
+ client = _Client (self .PROJECT )
369
+ query = self ._make_one (self .QUERY , client )
370
+ resource = {'totalBytesProcessed' : str (TOTAL_BYTES_PROCESSED )}
371
+ query ._set_properties (resource )
372
+ self .assertEqual (query .total_bytes_processed , TOTAL_BYTES_PROCESSED )
373
+
352
374
def test_schema (self ):
353
375
client = _Client (self .PROJECT )
354
376
query = self ._make_one (self .QUERY , client )
0 commit comments