def test_publisher_service_base_transport_error(): # Passing both a credentials object and credentials_file should raise an error with pytest.raises(exceptions.DuplicateCredentialArgs): transport = transports.PublisherServiceTransport( credentials=credentials.AnonymousCredentials(), credentials_file="credentials.json", )
def test_publisher_service_base_transport_with_adc(): # Test the default credentials are used if credentials and credentials_file are None. with mock.patch.object(auth, "default") as adc, mock.patch( "google.cloud.pubsublite_v1.services.publisher_service.transports.PublisherServiceTransport._prep_wrapped_messages" ) as Transport: Transport.return_value = None adc.return_value = (credentials.AnonymousCredentials(), None) transport = transports.PublisherServiceTransport() adc.assert_called_once()
def test_publisher_service_base_transport(): # Instantiate the base transport. with mock.patch( "google.cloud.pubsublite_v1.services.publisher_service.transports.PublisherServiceTransport.__init__" ) as Transport: Transport.return_value = None transport = transports.PublisherServiceTransport( credentials=ga_credentials.AnonymousCredentials(), ) # Every method on the transport should just blindly # raise NotImplementedError. methods = ("publish", ) for method in methods: with pytest.raises(NotImplementedError): getattr(transport, method)(request=object())
def test_publisher_service_base_transport_with_credentials_file(): # Instantiate the base transport with a credentials file with mock.patch.object( auth, "load_credentials_from_file" ) as load_creds, mock.patch( "google.cloud.pubsublite_v1.services.publisher_service.transports.PublisherServiceTransport._prep_wrapped_messages" ) as Transport: Transport.return_value = None load_creds.return_value = (credentials.AnonymousCredentials(), None) transport = transports.PublisherServiceTransport( credentials_file="credentials.json", quota_project_id="octopus", ) load_creds.assert_called_once_with( "credentials.json", scopes=("https://www.googleapis.com/auth/cloud-platform",), quota_project_id="octopus", )