示例#1
0
 public function setUp()
 {
     $credentials = Grpc\Credentials::createSsl(file_get_contents(dirname(__FILE__) . '/../data/ca.pem'));
     $server_credentials = Grpc\ServerCredentials::createSsl(null, file_get_contents(dirname(__FILE__) . '/../data/server1.key'), file_get_contents(dirname(__FILE__) . '/../data/server1.pem'));
     $this->server = new Grpc\Server();
     $port = $this->server->addSecureHttp2Port('0.0.0.0:0', $server_credentials);
     $this->server->start();
     $this->channel = new Grpc\Channel('localhost:' . $port, ['grpc.ssl_target_name_override' => 'foo.test.google.fr', 'credentials' => $credentials]);
 }
示例#2
0
    $host_override = $args['server_host_override'];
}
$use_tls = false;
if (array_key_exists('use_tls', $args) && $args['use_tls'] != 'false') {
    $use_tls = true;
}
$use_test_ca = false;
if (array_key_exists('use_test_ca', $args) && $args['use_test_ca'] != 'false') {
    $use_test_ca = true;
}
$opts = [];
if ($use_tls) {
    if ($use_test_ca) {
        $ssl_credentials = Grpc\Credentials::createSsl(file_get_contents(dirname(__FILE__) . '/../data/ca.pem'));
    } else {
        $ssl_credentials = Grpc\Credentials::createSsl();
    }
    $opts['credentials'] = $ssl_credentials;
    $opts['grpc.ssl_target_name_override'] = $host_override;
}
if (in_array($test_case, array('service_account_creds', 'compute_engine_creds', 'jwt_token_creds'))) {
    if ($test_case == 'jwt_token_creds') {
        $auth_credentials = ApplicationDefaultCredentials::getCredentials();
    } else {
        $auth_credentials = ApplicationDefaultCredentials::getCredentials($args['oauth_scope']);
    }
    $opts['update_metadata'] = $auth_credentials->getUpdateMetadataFunc();
}
if ($test_case == 'oauth2_auth_token') {
    $auth_credentials = ApplicationDefaultCredentials::getCredentials($args['oauth_scope']);
    $token = $auth_credentials->fetchAuthToken();
示例#3
0
if (!array_key_exists('server_host', $args) || !array_key_exists('server_port', $args) || !array_key_exists('test_case', $args)) {
    throw new Exception('Missing argument');
}
if ($args['server_port'] == 443) {
    $server_address = $args['server_host'];
} else {
    $server_address = $args['server_host'] . ':' . $args['server_port'];
}
if (!array_key_exists('server_host_override', $args)) {
    $args['server_host_override'] = 'foo.test.google.fr';
}
$ssl_cert_file = getenv('SSL_CERT_FILE');
if (!$ssl_cert_file) {
    $ssl_cert_file = dirname(__FILE__) . '/../data/ca.pem';
}
$credentials = Grpc\Credentials::createSsl(file_get_contents($ssl_cert_file));
$opts = ['grpc.ssl_target_name_override' => $args['server_host_override'], 'credentials' => $credentials];
if (in_array($args['test_case'], array('service_account_creds', 'compute_engine_creds', 'jwt_token_creds'))) {
    if ($args['test_case'] == 'jwt_token_creds') {
        $auth = Google\Auth\ApplicationDefaultCredentials::getCredentials();
    } else {
        $auth = Google\Auth\ApplicationDefaultCredentials::getCredentials($args['oauth_scope']);
    }
    $opts['update_metadata'] = $auth->getUpdateMetadataFunc();
}
$stub = new grpc\testing\TestServiceClient($server_address, $opts);
echo "Connecting to {$server_address}\n";
echo "Running test case {$args['test_case']}\n";
switch ($args['test_case']) {
    case 'empty_unary':
        emptyUnary($stub);
示例#4
0
    $response_parameters->setSize(31415);
    $request->addResponseParameters($response_parameters);
    $payload = new grpc\testing\Payload();
    $payload->setBody(str_repeat("", 27182));
    $request->setPayload($payload);
    $call->write($request);
    $response = $call->read();
    $call->cancel();
    hardAssert($call->getStatus()->code === Grpc\STATUS_CANCELLED, 'Call status was not CANCELLED');
}
$args = getopt('', array('server_host:', 'server_port:', 'test_case:'));
if (!array_key_exists('server_host', $args) || !array_key_exists('server_port', $args) || !array_key_exists('test_case', $args)) {
    throw new Exception('Missing argument');
}
$server_address = $args['server_host'] . ':' . $args['server_port'];
$credentials = Grpc\Credentials::createSsl(file_get_contents(dirname(__FILE__) . '/../data/ca.pem'));
$stub = new grpc\testing\TestServiceClient(new Grpc\BaseStub($server_address, ['grpc.ssl_target_name_override' => 'foo.test.google.fr', 'credentials' => $credentials]));
echo "Connecting to {$server_address}\n";
echo "Running test case {$args['test_case']}\n";
switch ($args['test_case']) {
    case 'empty_unary':
        emptyUnary($stub);
        break;
    case 'large_unary':
        largeUnary($stub);
        break;
    case 'client_streaming':
        clientStreaming($stub);
        break;
    case 'server_streaming':
        serverStreaming($stub);