@@ -21,6 +21,26 @@ class TestClient(unittest.TestCase):
2121 AUDIO_SOURCE_URI = 'gs://sample-bucket/sample-recording.flac'
2222 AUDIO_CONTENT = '/9j/4QNURXhpZgAASUkq'
2323
24+ @staticmethod
25+ def _make_result (transcript , confidence ):
26+ from google .cloud .grpc .speech .v1beta1 import cloud_speech_pb2
27+ return cloud_speech_pb2 .SpeechRecognitionResult (
28+ alternatives = [
29+ cloud_speech_pb2 .SpeechRecognitionAlternative (
30+ transcript = transcript ,
31+ confidence = confidence ,
32+ ),
33+ ],
34+ )
35+
36+ def _make_sync_response (self , * results ):
37+ from google .cloud .grpc .speech .v1beta1 import cloud_speech_pb2
38+ response = cloud_speech_pb2 .SyncRecognizeResponse (
39+ results = results ,
40+ )
41+
42+ return response
43+
2444 def _getTargetClass (self ):
2545 from google .cloud .speech .client import Client
2646
@@ -199,7 +219,9 @@ def test_sync_recognize_with_empty_results_gax(self):
199219 credentials = _Credentials ()
200220 client = self ._makeOne (credentials = credentials , use_gax = True )
201221 client .connection = _Connection ()
202- _MockGAPICSpeechAPI ._results = []
222+ client .connection .credentials = credentials
223+
224+ _MockGAPICSpeechAPI ._response = self ._make_sync_response ()
203225
204226 with self .assertRaises (ValueError ):
205227 with _Monkey (MUT , SpeechApi = _MockGAPICSpeechAPI ):
@@ -216,18 +238,20 @@ def test_sync_recognize_with_gax(self):
216238 creds = _Credentials ()
217239 client = self ._makeOne (credentials = creds , use_gax = True )
218240 client .connection = _Connection ()
241+ client .connection .credentials = creds
219242 client ._speech_api = None
220- _MockGAPICSpeechAPI ._results = [_MockGAPICSyncResult ]
243+ transcript = 'testing 1 2 3'
244+ confidence = 0.9224355
245+ result = self ._make_result (transcript , confidence )
246+ _MockGAPICSpeechAPI ._response = self ._make_sync_response (result )
221247
222248 with _Monkey (MUT , SpeechApi = _MockGAPICSpeechAPI ):
223249 sample = client .sample (source_uri = self .AUDIO_SOURCE_URI ,
224250 encoding = speech .Encoding .FLAC ,
225251 sample_rate = self .SAMPLE_RATE )
226252 results = client .sync_recognize (sample )
227- self .assertEqual (results [0 ].transcript ,
228- _MockGAPICAlternative .transcript )
229- self .assertEqual (results [0 ].confidence ,
230- _MockGAPICAlternative .confidence )
253+ self .assertEqual (results [0 ].transcript , transcript )
254+ self .assertEqual (results [0 ].confidence , confidence )
231255
232256 def test_async_supported_encodings (self ):
233257 from google .cloud import speech
@@ -270,6 +294,7 @@ def test_async_recognize_with_gax(self):
270294 from google .cloud .speech import _gax as MUT
271295 from google .cloud ._testing import _Monkey
272296 from google .cloud import speech
297+ from google .cloud .speech .operation import Operation
273298
274299 credentials = _Credentials ()
275300 client = self ._makeOne (credentials = credentials )
@@ -282,6 +307,7 @@ def test_async_recognize_with_gax(self):
282307 with _Monkey (MUT , SpeechApi = _MockGAPICSpeechAPI ):
283308 operation = client .async_recognize (sample )
284309
310+ self .assertIsInstance (operation , Operation )
285311 self .assertFalse (operation .complete )
286312 self .assertIsNone (operation .response )
287313
@@ -316,32 +342,28 @@ def test_speech_api_preset(self):
316342 self .assertIs (client .speech_api , fake_api )
317343
318344
319- class _MockGAPICAlternative (object ):
320- transcript = 'testing 1 2 3'
321- confidence = 0.95234356
322-
323-
324- class _MockGAPICMetadata (object ):
325- type_url = None
326-
327-
328- class _MockGAPICSyncResult (object ):
329- alternatives = [_MockGAPICAlternative ()]
330-
331-
332- class _MockGAPICSpeechResponse (object ):
333- error = None
334- endpointer_type = None
335- name = None
336- metadata = _MockGAPICMetadata ()
337- results = []
338- result_index = 0
345+ # class _MockGAPICAlternative(object):
346+ # transcript = 'testing 1 2 3'
347+ # confidence = 0.95234356
348+ #
349+ #
350+ # class _MockGAPICSyncResult(object):
351+ # alternatives = [_MockGAPICAlternative()]
352+ #
353+ #
354+ # class _MockGAPICSpeechResponse(object):
355+ # error = None
356+ # endpointer_type = None
357+ # name = None
358+ # metadata = _MockGAPICMetadata()
359+ # results = []
360+ # result_index = 0
339361
340362
341363class _MockGAPICSpeechAPI (object ):
342364 _requests = None
343- _response = _MockGAPICSpeechResponse
344- _results = [ _MockGAPICSyncResult ()]
365+ _response = None
366+ _results = None
345367
346368 def async_recognize (self , config , audio ):
347369 from google .longrunning .operations_pb2 import Operation
@@ -353,7 +375,7 @@ def async_recognize(self, config, audio):
353375 def sync_recognize (self , config , audio ):
354376 self .config = config
355377 self .audio = audio
356- self ._response .results = self ._results
378+ # self._response.results = self._results
357379 return self ._response
358380
359381
0 commit comments