@@ -25,6 +25,14 @@ def _getTargetClass(self):
2525 def _makeOne (self , * args , ** kw ):
2626 return self ._getTargetClass ()(* args , ** kw )
2727
28+ def _verifyProtobufCall (self , called_with , URI , conn ):
29+ self .assertEqual (called_with ['uri' ], URI )
30+ self .assertEqual (called_with ['method' ], 'POST' )
31+ self .assertEqual (called_with ['headers' ]['Content-Type' ],
32+ 'application/x-protobuf' )
33+ self .assertEqual (called_with ['headers' ]['User-Agent' ],
34+ conn .USER_AGENT )
35+
2836 def test_ctor_defaults (self ):
2937 conn = self ._makeOne ()
3038 self .assertEqual (conn .credentials , None )
@@ -75,12 +83,7 @@ def test__request_w_200(self):
7583 ])
7684 http = conn ._http = Http ({'status' : '200' }, 'CONTENT' )
7785 self .assertEqual (conn ._request (DATASET_ID , METHOD , DATA ), 'CONTENT' )
78- self .assertEqual (http ._called_with ['uri' ], URI )
79- self .assertEqual (http ._called_with ['method' ], 'POST' )
80- self .assertEqual (http ._called_with ['headers' ]['Content-Type' ],
81- 'application/x-protobuf' )
82- self .assertEqual (http ._called_with ['headers' ]['User-Agent' ],
83- conn .USER_AGENT )
86+ self ._verifyProtobufCall (http ._called_with , URI , conn )
8487 self .assertEqual (http ._called_with ['body' ], DATA )
8588
8689 def test__request_not_200 (self ):
@@ -126,12 +129,7 @@ def FromString(cls, pb):
126129 response = conn ._rpc (DATASET_ID , METHOD , ReqPB (), RspPB )
127130 self .assertTrue (isinstance (response , RspPB ))
128131 self .assertEqual (response ._pb , 'CONTENT' )
129- self .assertEqual (http ._called_with ['uri' ], URI )
130- self .assertEqual (http ._called_with ['method' ], 'POST' )
131- self .assertEqual (http ._called_with ['headers' ]['Content-Type' ],
132- 'application/x-protobuf' )
133- self .assertEqual (http ._called_with ['headers' ]['User-Agent' ],
134- conn .USER_AGENT )
132+ self ._verifyProtobufCall (http ._called_with , URI , conn )
135133 self .assertEqual (http ._called_with ['body' ], REQPB )
136134
137135 def test_build_api_url_w_default_base_version (self ):
@@ -225,11 +223,7 @@ def test_lookup_single_key_empty_response(self):
225223 http = conn ._http = Http ({'status' : '200' }, rsp_pb .SerializeToString ())
226224 self .assertEqual (conn .lookup (DATASET_ID , key_pb ), None )
227225 cw = http ._called_with
228- self .assertEqual (cw ['uri' ], URI )
229- self .assertEqual (cw ['method' ], 'POST' )
230- self .assertEqual (cw ['headers' ]['Content-Type' ],
231- 'application/x-protobuf' )
232- self .assertEqual (cw ['headers' ]['User-Agent' ], conn .USER_AGENT )
226+ self ._verifyProtobufCall (cw , URI , conn )
233227 rq_class = datastore_pb .LookupRequest
234228 request = rq_class ()
235229 request .ParseFromString (cw ['body' ])
@@ -261,11 +255,7 @@ def test_lookup_single_key_nonempty_response(self):
261255 self .assertEqual (found .key .path_element [0 ].kind , 'Kind' )
262256 self .assertEqual (found .key .path_element [0 ].id , 1234 )
263257 cw = http ._called_with
264- self .assertEqual (cw ['uri' ], URI )
265- self .assertEqual (cw ['method' ], 'POST' )
266- self .assertEqual (cw ['headers' ]['Content-Type' ],
267- 'application/x-protobuf' )
268- self .assertEqual (cw ['headers' ]['User-Agent' ], conn .USER_AGENT )
258+ self ._verifyProtobufCall (cw , URI , conn )
269259 rq_class = datastore_pb .LookupRequest
270260 request = rq_class ()
271261 request .ParseFromString (cw ['body' ])
@@ -293,11 +283,7 @@ def test_lookup_multiple_keys_empty_response(self):
293283 http = conn ._http = Http ({'status' : '200' }, rsp_pb .SerializeToString ())
294284 self .assertEqual (conn .lookup (DATASET_ID , [key_pb1 , key_pb2 ]), [])
295285 cw = http ._called_with
296- self .assertEqual (cw ['uri' ], URI )
297- self .assertEqual (cw ['method' ], 'POST' )
298- self .assertEqual (cw ['headers' ]['Content-Type' ],
299- 'application/x-protobuf' )
300- self .assertEqual (cw ['headers' ]['User-Agent' ], conn .USER_AGENT )
286+ self ._verifyProtobufCall (cw , URI , conn )
301287 rq_class = datastore_pb .LookupRequest
302288 request = rq_class ()
303289 request .ParseFromString (cw ['body' ])
@@ -334,11 +320,7 @@ def test_lookup_multiple_keys_w_missing(self):
334320 self .assertEqual ([missed .key for missed in missing ],
335321 [key_pb1 , key_pb2 ])
336322 cw = http ._called_with
337- self .assertEqual (cw ['uri' ], URI )
338- self .assertEqual (cw ['method' ], 'POST' )
339- self .assertEqual (cw ['headers' ]['Content-Type' ],
340- 'application/x-protobuf' )
341- self .assertEqual (cw ['headers' ]['User-Agent' ], conn .USER_AGENT )
323+ self ._verifyProtobufCall (cw , URI , conn )
342324 rq_class = datastore_pb .LookupRequest
343325 request = rq_class ()
344326 request .ParseFromString (cw ['body' ])
@@ -372,6 +354,7 @@ def test_lookup_multiple_keys_w_deferred(self):
372354 self .assertEqual (result , [])
373355 self .assertEqual ([def_key for def_key in deferred ], [key_pb1 , key_pb2 ])
374356 cw = http ._called_with
357+ self ._verifyProtobufCall (cw , URI , conn )
375358 self .assertEqual (cw ['uri' ], URI )
376359 self .assertEqual (cw ['method' ], 'POST' )
377360 self .assertEqual (cw ['headers' ]['Content-Type' ],
@@ -424,22 +407,15 @@ def test_lookup_multiple_keys_w_deferred_from_backend_but_not_passed(self):
424407 rq_class = datastore_pb .LookupRequest
425408 request = rq_class ()
426409 self .assertEqual (len (cw ), 2 )
427- self .assertEqual (cw [0 ]['uri' ], URI )
428- self .assertEqual (cw [0 ]['method' ], 'POST' )
429- self .assertEqual (cw [0 ]['headers' ]['Content-Type' ],
430- 'application/x-protobuf' )
431- self .assertEqual (cw [0 ]['headers' ]['User-Agent' ], conn .USER_AGENT )
410+
411+ self ._verifyProtobufCall (cw [0 ], URI , conn )
432412 request .ParseFromString (cw [0 ]['body' ])
433413 keys = list (request .key )
434414 self .assertEqual (len (keys ), 2 )
435415 self .assertEqual (keys [0 ], key_pb1 )
436416 self .assertEqual (keys [1 ], key_pb2 )
437417
438- self .assertEqual (cw [1 ]['uri' ], URI )
439- self .assertEqual (cw [1 ]['method' ], 'POST' )
440- self .assertEqual (cw [1 ]['headers' ]['Content-Type' ],
441- 'application/x-protobuf' )
442- self .assertEqual (cw [1 ]['headers' ]['User-Agent' ], conn .USER_AGENT )
418+ self ._verifyProtobufCall (cw [1 ], URI , conn )
443419 request .ParseFromString (cw [1 ]['body' ])
444420 keys = list (request .key )
445421 self .assertEqual (len (keys ), 1 )
@@ -469,11 +445,7 @@ def test_run_query_wo_namespace_empty_result(self):
469445 self .assertTrue (more )
470446 self .assertEqual (skipped , 0 )
471447 cw = http ._called_with
472- self .assertEqual (cw ['uri' ], URI )
473- self .assertEqual (cw ['method' ], 'POST' )
474- self .assertEqual (cw ['headers' ]['Content-Type' ],
475- 'application/x-protobuf' )
476- self .assertEqual (cw ['headers' ]['User-Agent' ], conn .USER_AGENT )
448+ self ._verifyProtobufCall (cw , URI , conn )
477449 rq_class = datastore_pb .RunQueryRequest
478450 request = rq_class ()
479451 request .ParseFromString (cw ['body' ])
@@ -505,11 +477,7 @@ def test_run_query_w_namespace_nonempty_result(self):
505477 pbs = conn .run_query (DATASET_ID , q_pb , 'NS' )[0 ]
506478 self .assertEqual (len (pbs ), 1 )
507479 cw = http ._called_with
508- self .assertEqual (cw ['uri' ], URI )
509- self .assertEqual (cw ['method' ], 'POST' )
510- self .assertEqual (cw ['headers' ]['Content-Type' ],
511- 'application/x-protobuf' )
512- self .assertEqual (cw ['headers' ]['User-Agent' ], conn .USER_AGENT )
480+ self ._verifyProtobufCall (cw , URI , conn )
513481 rq_class = datastore_pb .RunQueryRequest
514482 request = rq_class ()
515483 request .ParseFromString (cw ['body' ])
@@ -541,11 +509,7 @@ def test_begin_transaction_default_serialize(self):
541509 http = conn ._http = Http ({'status' : '200' }, rsp_pb .SerializeToString ())
542510 self .assertEqual (conn .begin_transaction (DATASET_ID ), TRANSACTION )
543511 cw = http ._called_with
544- self .assertEqual (cw ['uri' ], URI )
545- self .assertEqual (cw ['method' ], 'POST' )
546- self .assertEqual (cw ['headers' ]['Content-Type' ],
547- 'application/x-protobuf' )
548- self .assertEqual (cw ['headers' ]['User-Agent' ], conn .USER_AGENT )
512+ self ._verifyProtobufCall (cw , URI , conn )
549513 rq_class = datastore_pb .BeginTransactionRequest
550514 request = rq_class ()
551515 request .ParseFromString (cw ['body' ])
@@ -570,11 +534,7 @@ def test_begin_transaction_explicit_serialize(self):
570534 http = conn ._http = Http ({'status' : '200' }, rsp_pb .SerializeToString ())
571535 self .assertEqual (conn .begin_transaction (DATASET_ID , True ), TRANSACTION )
572536 cw = http ._called_with
573- self .assertEqual (cw ['uri' ], URI )
574- self .assertEqual (cw ['method' ], 'POST' )
575- self .assertEqual (cw ['headers' ]['Content-Type' ],
576- 'application/x-protobuf' )
577- self .assertEqual (cw ['headers' ]['User-Agent' ], conn .USER_AGENT )
537+ self ._verifyProtobufCall (cw , URI , conn )
578538 rq_class = datastore_pb .BeginTransactionRequest
579539 request = rq_class ()
580540 request .ParseFromString (cw ['body' ])
@@ -607,11 +567,7 @@ def test_commit_wo_transaction(self):
607567 self .assertEqual (result .index_updates , 0 )
608568 self .assertEqual (list (result .insert_auto_id_key ), [])
609569 cw = http ._called_with
610- self .assertEqual (cw ['uri' ], URI )
611- self .assertEqual (cw ['method' ], 'POST' )
612- self .assertEqual (cw ['headers' ]['Content-Type' ],
613- 'application/x-protobuf' )
614- self .assertEqual (cw ['headers' ]['User-Agent' ], conn .USER_AGENT )
570+ self ._verifyProtobufCall (cw , URI , conn )
615571 rq_class = datastore_pb .CommitRequest
616572 request = rq_class ()
617573 request .ParseFromString (cw ['body' ])
@@ -650,11 +606,7 @@ def id(self):
650606 self .assertEqual (result .index_updates , 0 )
651607 self .assertEqual (list (result .insert_auto_id_key ), [])
652608 cw = http ._called_with
653- self .assertEqual (cw ['uri' ], URI )
654- self .assertEqual (cw ['method' ], 'POST' )
655- self .assertEqual (cw ['headers' ]['Content-Type' ],
656- 'application/x-protobuf' )
657- self .assertEqual (cw ['headers' ]['User-Agent' ], conn .USER_AGENT )
609+ self ._verifyProtobufCall (cw , URI , conn )
658610 rq_class = datastore_pb .CommitRequest
659611 request = rq_class ()
660612 request .ParseFromString (cw ['body' ])
@@ -703,11 +655,7 @@ def id(self):
703655 http = conn ._http = Http ({'status' : '200' }, rsp_pb .SerializeToString ())
704656 self .assertEqual (conn .rollback (DATASET_ID ), None )
705657 cw = http ._called_with
706- self .assertEqual (cw ['uri' ], URI )
707- self .assertEqual (cw ['method' ], 'POST' )
708- self .assertEqual (cw ['headers' ]['Content-Type' ],
709- 'application/x-protobuf' )
710- self .assertEqual (cw ['headers' ]['User-Agent' ], conn .USER_AGENT )
658+ self ._verifyProtobufCall (cw , URI , conn )
711659 rq_class = datastore_pb .RollbackRequest
712660 request = rq_class ()
713661 request .ParseFromString (cw ['body' ])
@@ -730,11 +678,7 @@ def test_allocate_ids_empty(self):
730678 http = conn ._http = Http ({'status' : '200' }, rsp_pb .SerializeToString ())
731679 self .assertEqual (conn .allocate_ids (DATASET_ID , []), [])
732680 cw = http ._called_with
733- self .assertEqual (cw ['uri' ], URI )
734- self .assertEqual (cw ['method' ], 'POST' )
735- self .assertEqual (cw ['headers' ]['Content-Type' ],
736- 'application/x-protobuf' )
737- self .assertEqual (cw ['headers' ]['User-Agent' ], conn .USER_AGENT )
681+ self ._verifyProtobufCall (cw , URI , conn )
738682 rq_class = datastore_pb .AllocateIdsRequest
739683 request = rq_class ()
740684 request .ParseFromString (cw ['body' ])
@@ -769,11 +713,7 @@ def test_allocate_ids_non_empty(self):
769713 self .assertEqual (conn .allocate_ids (DATASET_ID , before_key_pbs ),
770714 after_key_pbs )
771715 cw = http ._called_with
772- self .assertEqual (cw ['uri' ], URI )
773- self .assertEqual (cw ['method' ], 'POST' )
774- self .assertEqual (cw ['headers' ]['Content-Type' ],
775- 'application/x-protobuf' )
776- self .assertEqual (cw ['headers' ]['User-Agent' ], conn .USER_AGENT )
716+ self ._verifyProtobufCall (cw , URI , conn )
777717 rq_class = datastore_pb .AllocateIdsRequest
778718 request = rq_class ()
779719 request .ParseFromString (cw ['body' ])
@@ -799,11 +739,7 @@ def test_save_entity_wo_transaction_w_upsert(self):
799739 result = conn .save_entity (DATASET_ID , key_pb , {'foo' : u'Foo' })
800740 self .assertEqual (result , True )
801741 cw = http ._called_with
802- self .assertEqual (cw ['uri' ], URI )
803- self .assertEqual (cw ['method' ], 'POST' )
804- self .assertEqual (cw ['headers' ]['Content-Type' ],
805- 'application/x-protobuf' )
806- self .assertEqual (cw ['headers' ]['User-Agent' ], conn .USER_AGENT )
742+ self ._verifyProtobufCall (cw , URI , conn )
807743 rq_class = datastore_pb .CommitRequest
808744 request = rq_class ()
809745 request .ParseFromString (cw ['body' ])
@@ -845,11 +781,7 @@ def test_save_entity_w_exclude_from_indexes(self):
845781 exclude_from_indexes = ['foo' , 'bar' ])
846782 self .assertEqual (result , True )
847783 cw = http ._called_with
848- self .assertEqual (cw ['uri' ], URI )
849- self .assertEqual (cw ['method' ], 'POST' )
850- self .assertEqual (cw ['headers' ]['Content-Type' ],
851- 'application/x-protobuf' )
852- self .assertEqual (cw ['headers' ]['User-Agent' ], conn .USER_AGENT )
784+ self ._verifyProtobufCall (cw , URI , conn )
853785 rq_class = datastore_pb .CommitRequest
854786 request = rq_class ()
855787 request .ParseFromString (cw ['body' ])
@@ -901,11 +833,7 @@ def test_save_entity_wo_transaction_w_auto_id(self):
901833 result = conn .save_entity (DATASET_ID , key_pb , {'foo' : u'Foo' })
902834 self .assertEqual (result , updated_key_pb )
903835 cw = http ._called_with
904- self .assertEqual (cw ['uri' ], URI )
905- self .assertEqual (cw ['method' ], 'POST' )
906- self .assertEqual (cw ['headers' ]['Content-Type' ],
907- 'application/x-protobuf' )
908- self .assertEqual (cw ['headers' ]['User-Agent' ], conn .USER_AGENT )
836+ self ._verifyProtobufCall (cw , URI , conn )
909837 rq_class = datastore_pb .CommitRequest
910838 request = rq_class ()
911839 request .ParseFromString (cw ['body' ])
@@ -989,11 +917,7 @@ def test_delete_entities_wo_transaction(self):
989917 result = conn .delete_entities (DATASET_ID , [key_pb ])
990918 self .assertEqual (result , True )
991919 cw = http ._called_with
992- self .assertEqual (cw ['uri' ], URI )
993- self .assertEqual (cw ['method' ], 'POST' )
994- self .assertEqual (cw ['headers' ]['Content-Type' ],
995- 'application/x-protobuf' )
996- self .assertEqual (cw ['headers' ]['User-Agent' ], conn .USER_AGENT )
920+ self ._verifyProtobufCall (cw , URI , conn )
997921 rq_class = datastore_pb .CommitRequest
998922 request = rq_class ()
999923 request .ParseFromString (cw ['body' ])
0 commit comments