'accessToken', 'expires_in' => '100', ], [ 'access_token' => 'accessToken2', 'expires_in' => '100' ], ]; public function testCreateCallCredentialsCallbackDefault() { $grpcCredentialsHelper = new MockGrpcCredentialsHelper($this->defaultScope); $callback = $grpcCredentialsHelper->createCallCredentialsCallback(); $callbackResult = $callback(); $this->assertEquals(['Bearer adcAccessToken'], $callbackResult['authorization']); } public function testCreateCallCredentialsCallbackCustomCredsLoader() { $grpcCredentialsHelper = new MockGrpcCredentialsHelper( $this->defaultScope, ['credentialsLoader' => new MockCredentialsLoader( $this->defaultScope, $this->defaultTokens )] ); $callback = $grpcCredentialsHelper->createCallCredentialsCallback(); $callbackResult = $callback(); $this->assertEquals(['Bearer accessToken'], $callbackResult['authorization']); } public function testCreateCallCredentialsCallbackDisableCaching() { $grpcCredentialsHelper = new MockGrpcCredentialsHelper( $this->defaultScope, ['credentialsLoader' => new MockCredentialsLoader( $this->defaultScope, $this->defaultTokens ), 'enableCaching' => false] ); $callback = $grpcCredentialsHelper->createCallCredentialsCallback(); $callbackResult = $callback(); $this->assertEquals(['Bearer accessToken'], $callbackResult['authorization']); $callback = $grpcCredentialsHelper->createCallCredentialsCallback(); $callbackResult = $callback(); $this->assertEquals(['Bearer accessToken2'], $callbackResult['authorization']); } public function testCreateCallCredentialsCallbackCaching() { $grpcCredentialsHelper = new MockGrpcCredentialsHelper( $this->defaultScope, ['credentialsLoader' => new MockCredentialsLoader( $this->defaultScope, $this->defaultTokens )] ); $callback = $grpcCredentialsHelper->createCallCredentialsCallback(); $callbackResult = $callback(); $this->assertEquals(['Bearer accessToken'], $callbackResult['authorization']); $callback = $grpcCredentialsHelper->createCallCredentialsCallback(); $callbackResult = $callback(); $this->assertEquals(['Bearer accessToken'], $callbackResult['authorization']); } public function testCreateStubWithDefaultSslCreds() { $grpcCredentialsHelper = new MockGrpcCredentialsHelper($this->defaultScope); $createStubCallback = function ($hostname, $stubOpts) { return ['hostname' => $hostname, 'stubOpts' => $stubOpts]; }; $createStubResult = $grpcCredentialsHelper->createStub( $createStubCallback, 'my-service-address', 8443 ); $this->assertEquals('my-service-address:8443', $createStubResult['hostname']); $this->assertEquals('DummySslCreds', $createStubResult['stubOpts']['credentials']); $this->assertEquals( 'my-service-address:8443', $createStubResult['stubOpts']['grpc.ssl_target_name_override'] ); } public function testCreateStubWithExplicitSslCreds() { $grpcCredentialsHelper = new MockGrpcCredentialsHelper($this->defaultScope); $createStubCallback = function ($hostname, $stubOpts) { return ['hostname' => $hostname, 'stubOpts' => $stubOpts]; }; $createStubResult = $grpcCredentialsHelper->createStub( $createStubCallback, 'my-service-address', 8443, ['sslCreds' => 'provided-creds'] ); $this->assertEquals('my-service-address:8443', $createStubResult['hostname']); $this->assertEquals('provided-creds', $createStubResult['stubOpts']['credentials']); $this->assertEquals( 'my-service-address:8443', $createStubResult['stubOpts']['grpc.ssl_target_name_override'] ); } public function testCreateStubWithInsecureSslCreds() { $grpcCredentialsHelper = new MockGrpcCredentialsHelper($this->defaultScope); $createStubCallback = function ($hostname, $stubOpts) { return ['hostname' => $hostname, 'stubOpts' => $stubOpts]; }; $insecureCreds = \Grpc\ChannelCredentials::createInsecure(); $createStubResult = $grpcCredentialsHelper->createStub( $createStubCallback, 'my-service-address', 8443, ['sslCreds' => $insecureCreds] ); $this->assertEquals('my-service-address:8443', $createStubResult['hostname']); $this->assertEquals($insecureCreds, $createStubResult['stubOpts']['credentials']); $this->assertEquals( 'my-service-address:8443', $createStubResult['stubOpts']['grpc.ssl_target_name_override'] ); } }