Content-Length: 724362 | pFad | http://github.com/googleapis/google-cloud-python/commit/a6375d8dd362fc153179ee873b20a771b73f4be1

C0 Isolating speech Connection in _http module. · googleapis/google-cloud-python@a6375d8 · GitHub
Skip to content

Commit a6375d8

Browse files
committed
Isolating speech Connection in _http module.
1 parent ba9a779 commit a6375d8

File tree

5 files changed

+34
-38
lines changed

5 files changed

+34
-38
lines changed

speech/google/cloud/speech/_gax.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ class GAPICSpeechAPI(object):
4242
"""Manage calls through GAPIC wrappers to the Speech API."""
4343
def __init__(self, client=None):
4444
self._client = client
45-
credentials = self._client._connection.credentials
45+
credentials = self._client._credentials
4646
channel = make_secure_channel(
4747
credentials, DEFAULT_USER_AGENT,
4848
SpeechClient.SERVICE_ADDRESS)

speech/google/cloud/speech/_http.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ class HTTPSpeechAPI(object):
5757
"""
5858
def __init__(self, client):
5959
self._client = client
60-
self._connection = client._connection
60+
self._connection = Connection(client)
6161

6262
def async_recognize(self, sample, language_code=None,
6363
max_alternatives=None, profanity_filter=None,

speech/google/cloud/speech/client.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
from google.cloud.environment_vars import DISABLE_GRPC
2121

2222
from google.cloud.speech._gax import GAPICSpeechAPI
23-
from google.cloud.speech._http import Connection
2423
from google.cloud.speech._http import HTTPSpeechAPI
2524
from google.cloud.speech.sample import Sample
2625

@@ -58,8 +57,6 @@ class Client(BaseClient):
5857

5958
def __init__(self, credentials=None, http=None, use_gax=None):
6059
super(Client, self).__init__(credentials=credentials, http=http)
61-
self._connection = Connection(self)
62-
6360
# Save on the actual client class whether we use GAX or not.
6461
if use_gax is None:
6562
self._use_gax = _USE_GAX

speech/unit_tests/test__gax.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,11 +49,16 @@ def test_constructor(self, mocked_stub, mocked_cls, mocked_channel):
4949
from google.cloud.speech import __version__
5050
from google.cloud.speech._gax import OPERATIONS_API_HOST
5151

52+
credentials = _make_credentials()
5253
mock_cnxn = mock.Mock(
53-
credentials=_make_credentials(),
54+
credentials=credentials,
5455
spec=['credentials'],
5556
)
56-
mock_client = mock.Mock(_connection=mock_cnxn, spec=['_connection'])
57+
mock_client = mock.Mock(
58+
_connection=mock_cnxn,
59+
_credentials=credentials,
60+
spec=['_connection', '_credentials'],
61+
)
5762

5863
speech_api = self._make_one(mock_client)
5964
self.assertIs(speech_api._client, mock_client)

speech/unit_tests/test_client.py

Lines changed: 25 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -90,9 +90,8 @@ def test_ctor(self):
9090
creds = _make_credentials()
9191
http = object()
9292
client = self._make_one(credentials=creds, http=http)
93-
self.assertIsInstance(client._connection, Connection)
94-
self.assertTrue(client._connection.credentials is creds)
95-
self.assertTrue(client._connection.http is http)
93+
self.assertTrue(client._credentials is creds)
94+
self.assertTrue(client._http is http)
9695

9796
def test_ctor_use_gax_preset(self):
9897
creds = _make_credentials()
@@ -153,7 +152,9 @@ def test_sync_recognize_content_with_optional_params_no_gax(self):
153152
}
154153
credentials = _make_credentials()
155154
client = self._make_one(credentials=credentials, use_gax=False)
156-
client._connection = _Connection(RETURNED)
155+
speech_api = client.speech_api
156+
connection = _Connection(RETURNED)
157+
speech_api._connection = connection
157158

158159
encoding = speech.Encoding.FLAC
159160

@@ -165,8 +166,8 @@ def test_sync_recognize_content_with_optional_params_no_gax(self):
165166
profanity_filter=True,
166167
speech_context=self.HINTS)
167168

168-
self.assertEqual(len(client._connection._requested), 1)
169-
req = client._connection._requested[0]
169+
self.assertEqual(len(connection._requested), 1)
170+
req = connection._requested[0]
170171
self.assertEqual(len(req), 3)
171172
self.assertEqual(req['data'], REQUEST)
172173
self.assertEqual(req['method'], 'POST')
@@ -199,7 +200,9 @@ def test_sync_recognize_source_uri_without_optional_params_no_gax(self):
199200
}
200201
credentials = _make_credentials()
201202
client = self._make_one(credentials=credentials, use_gax=False)
202-
client._connection = _Connection(RETURNED)
203+
speech_api = client.speech_api
204+
connection = _Connection(RETURNED)
205+
speech_api._connection = connection
203206

204207
encoding = speech.Encoding.FLAC
205208

@@ -208,8 +211,8 @@ def test_sync_recognize_source_uri_without_optional_params_no_gax(self):
208211

209212
response = [i for i in sample.sync_recognize()]
210213

211-
self.assertEqual(len(client._connection._requested), 1)
212-
req = client._connection._requested[0]
214+
self.assertEqual(len(connection._requested), 1)
215+
req = connection._requested[0]
213216
self.assertEqual(len(req), 3)
214217
self.assertEqual(req['data'], REQUEST)
215218
self.assertEqual(req['method'], 'POST')
@@ -231,7 +234,8 @@ def test_sync_recognize_with_empty_results_no_gax(self):
231234

232235
credentials = _make_credentials()
233236
client = self._make_one(credentials=credentials, use_gax=False)
234-
client._connection = _Connection(SYNC_RECOGNIZE_EMPTY_RESPONSE)
237+
speech_api = client.speech_api
238+
speech_api._connection = _Connection(SYNC_RECOGNIZE_EMPTY_RESPONSE)
235239

236240
sample = client.sample(source_uri=self.AUDIO_SOURCE_URI,
237241
encoding=speech.Encoding.FLAC,
@@ -248,8 +252,7 @@ def test_sync_recognize_with_empty_results_gax(self):
248252

249253
credentials = _make_credentials()
250254
client = self._make_one(credentials=credentials, use_gax=True)
251-
client._connection = _Connection()
252-
client._connection.credentials = credentials
255+
client._credentials = credentials
253256

254257
channel_args = []
255258
channel_obj = object()
@@ -291,9 +294,7 @@ def test_sync_recognize_with_gax(self):
291294

292295
creds = _make_credentials()
293296
client = self._make_one(credentials=creds, use_gax=True)
294-
client._connection = _Connection()
295-
client._connection.credentials = creds
296-
client._speech_api = None
297+
client._credentials = creds
297298

298299
alternatives = [{
299300
'transcript': 'testing 1 2 3',
@@ -352,8 +353,7 @@ def test_async_supported_encodings(self):
352353
from google.cloud import speech
353354

354355
credentials = _make_credentials()
355-
client = self._make_one(credentials=credentials)
356-
client._connection = _Connection({})
356+
client = self._make_one(credentials=credentials, use_gax=True)
357357

358358
sample = client.sample(source_uri=self.AUDIO_SOURCE_URI,
359359
encoding=speech.Encoding.FLAC,
@@ -370,7 +370,8 @@ def test_async_recognize_no_gax(self):
370370

371371
credentials = _make_credentials()
372372
client = self._make_one(credentials=credentials, use_gax=False)
373-
client._connection = _Connection(RETURNED)
373+
speech_api = client.speech_api
374+
speech_api._connection = _Connection(RETURNED)
374375

375376
sample = client.sample(source_uri=self.AUDIO_SOURCE_URI,
376377
encoding=speech.Encoding.LINEAR16,
@@ -393,8 +394,7 @@ def test_async_recognize_with_gax(self):
393394
credentials = _make_credentials()
394395
client = self._make_one(credentials=credentials,
395396
use_gax=True)
396-
client._connection = _Connection()
397-
client._connection.credentials = credentials
397+
client._credentials = credentials
398398

399399
channel_args = []
400400
channel_obj = object()
@@ -434,7 +434,6 @@ def test_streaming_depends_on_gax(self):
434434

435435
credentials = _make_credentials()
436436
client = self._make_one(credentials=credentials, use_gax=False)
437-
client.connection = _Connection()
438437
sample = client.sample(content=self.AUDIO_CONTENT,
439438
encoding=speech.Encoding.LINEAR16,
440439
sample_rate=self.SAMPLE_RATE)
@@ -453,8 +452,7 @@ def test_streaming_closed_stream(self):
453452
stream = BytesIO(b'Some audio data...')
454453
credentials = _make_credentials()
455454
client = self._make_one(credentials=credentials)
456-
client.connection = _Connection()
457-
client.connection.credentials = credentials
455+
client._credentials = credentials
458456

459457
channel_args = []
460458
channel_obj = object()
@@ -495,8 +493,7 @@ def test_stream_recognize_interim_results(self):
495493
stream = BytesIO(b'Some audio data...')
496494
credentials = _make_credentials()
497495
client = self._make_one(credentials=credentials)
498-
client.connection = _Connection()
499-
client.connection.credentials = credentials
496+
client._credentials = credentials
500497

501498
alternatives = [{
502499
'transcript': 'testing streaming 1 2 3',
@@ -576,8 +573,7 @@ def test_stream_recognize(self):
576573
stream = BytesIO(b'Some audio data...')
577574
credentials = _make_credentials()
578575
client = self._make_one(credentials=credentials)
579-
client.connection = _Connection()
580-
client.connection.credentials = credentials
576+
client._credentials = credentials
581577

582578
alternatives = [{
583579
'transcript': 'testing streaming 1 2 3',
@@ -633,8 +629,7 @@ def test_stream_recognize_no_results(self):
633629
stream = BytesIO(b'Some audio data...')
634630
credentials = _make_credentials()
635631
client = self._make_one(credentials=credentials)
636-
client.connection = _Connection()
637-
client.connection.credentials = credentials
632+
client._credentials = credentials
638633

639634
responses = [_make_streaming_response()]
640635

@@ -670,8 +665,7 @@ def test_speech_api_with_gax(self):
670665

671666
creds = _make_credentials()
672667
client = self._make_one(credentials=creds, use_gax=True)
673-
client._connection = _Connection()
674-
client._connection.credentials = creds
668+
client._credentials = creds
675669

676670
channel_args = []
677671
channel_obj = object()

0 commit comments

Comments
 (0)








ApplySandwichStrip

pFad - (p)hone/(F)rame/(a)nonymizer/(d)eclutterfier!      Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

Fetched URL: http://github.com/googleapis/google-cloud-python/commit/a6375d8dd362fc153179ee873b20a771b73f4be1

Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy