@@ -379,6 +379,7 @@ def test_is_started(self):
379379
380380 def _start_method_helper (self , admin ):
381381 from gcloud ._testing import _Monkey
382+ from gcloud .bigtable ._testing import _FakeStub
382383 from gcloud .bigtable import client as MUT
383384
384385 credentials = _Credentials ()
@@ -429,6 +430,8 @@ def test_start_while_started(self):
429430 self .assertEqual (client ._data_stub_internal , data_stub )
430431
431432 def _stop_method_helper (self , admin ):
433+ from gcloud .bigtable ._testing import _FakeStub
434+
432435 credentials = _Credentials ()
433436 project = 'PROJECT'
434437 client = self ._makeOne (project = project , credentials = credentials ,
@@ -499,6 +502,7 @@ def _list_zones_helper(self, zone_status):
499502 bigtable_cluster_data_pb2 as data_pb2 )
500503 from gcloud .bigtable ._generated import (
501504 bigtable_cluster_service_messages_pb2 as messages_pb2 )
505+ from gcloud .bigtable ._testing import _FakeStub
502506
503507 credentials = _Credentials ()
504508 project = 'PROJECT'
@@ -552,6 +556,7 @@ def test_list_clusters(self):
552556 bigtable_cluster_data_pb2 as data_pb2 )
553557 from gcloud .bigtable ._generated import (
554558 bigtable_cluster_service_messages_pb2 as messages_pb2 )
559+ from gcloud .bigtable ._testing import _FakeStub
555560
556561 credentials = _Credentials ()
557562 project = 'PROJECT'
@@ -625,45 +630,3 @@ def create_scoped(self, scope):
625630
626631 def __eq__ (self , other ):
627632 return self .value == other .value
628-
629-
630- class _FakeStub (object ):
631- """Acts as a gPRC stub."""
632-
633- def __init__ (self , * results ):
634- self .results = results
635- self .method_calls = []
636- self ._entered = 0
637- self ._exited = []
638-
639- def __enter__ (self ):
640- self ._entered += 1
641- return self
642-
643- def __exit__ (self , exc_type , exc_val , exc_tb ):
644- self ._exited .append ((exc_type , exc_val , exc_tb ))
645- return True
646-
647- def __getattr__ (self , name ):
648- # We need not worry about attributes set in constructor
649- # since __getattribute__ will handle them.
650- return _MethodMock (name , self )
651-
652-
653- class _MethodMock (object ):
654- """Mock for API method attached to a gRPC stub.
655-
656- In the beta implementation, these are of type.
657- :class:`grpc.framework.crust.implementations._UnaryUnaryMultiCallable`
658- """
659-
660- def __init__ (self , name , factory ):
661- self ._name = name
662- self ._factory = factory
663-
664- def __call__ (self , * args , ** kwargs ):
665- """Sync method meant to mock a gRPC stub request."""
666- self ._factory .method_calls .append ((self ._name , args , kwargs ))
667- curr_result , self ._factory .results = (self ._factory .results [0 ],
668- self ._factory .results [1 :])
669- return curr_result
0 commit comments