aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/php/tests/interop/interop_client.php
diff options
context:
space:
mode:
authorGravatar Stanley Cheung <stanleycheung@google.com>2016-06-17 11:20:19 -0700
committerGravatar Stanley Cheung <stanleycheung@google.com>2016-06-17 11:52:51 -0700
commit89391406cddd8f0ff89992835d89baa716465447 (patch)
tree85074704c414381e201fd6fe639b5249094f3cb2 /src/php/tests/interop/interop_client.php
parente2e08735e5226195ed3706bc10a9d297dd88bdf0 (diff)
php: implement 2 more interop tests
Diffstat (limited to 'src/php/tests/interop/interop_client.php')
-rwxr-xr-xsrc/php/tests/interop/interop_client.php45
1 files changed, 45 insertions, 0 deletions
diff --git a/src/php/tests/interop/interop_client.php b/src/php/tests/interop/interop_client.php
index e3c234e869..92a27d17aa 100755
--- a/src/php/tests/interop/interop_client.php
+++ b/src/php/tests/interop/interop_client.php
@@ -446,6 +446,45 @@ function customMetadata($stub)
$ECHO_TRAILING_VALUE, 'Incorrect trailing metadata value');
}
+function statusCodeAndMessage($stub)
+{
+ $echo_status = new grpc\testing\EchoStatus();
+ $echo_status->setCode(2);
+ $echo_status->setMessage("test status message");
+
+ $request = new grpc\testing\SimpleRequest();
+ $request->setResponseStatus($echo_status);
+
+ $call = $stub->UnaryCall($request);
+ list($result, $status) = $call->wait();
+
+ hardAssert($status->code === 2,
+ 'Received unexpected status code');
+ hardAssert($status->details === "test status message",
+ 'Received unexpected status details');
+
+ $streaming_call = $stub->FullDuplexCall();
+
+ $streaming_request = new grpc\testing\StreamingOutputCallRequest();
+ $streaming_request->setResponseStatus($echo_status);
+ $streaming_call->write($streaming_request);
+ $streaming_call->writesDone();
+
+ $status = $streaming_call->getStatus();
+ hardAssert($status->code === 2,
+ 'Received unexpected status code');
+ hardAssert($status->details === "test status message",
+ 'Received unexpected status details');
+}
+
+function unimplementedMethod($stub)
+{
+ $call = $stub->UnimplementedCall(new grpc\testing\EmptyMessage());
+ list($result, $status) = $call->wait();
+ hardAssert($status->code === Grpc\STATUS_UNIMPLEMENTED,
+ 'Received unexpected status code');
+}
+
function _makeStub($args)
{
if (!array_key_exists('server_host', $args)) {
@@ -575,6 +614,12 @@ function interop_main($args, $stub = false)
case 'custom_metadata':
customMetadata($stub);
break;
+ case 'status_code_and_message':
+ statusCodeAndMessage($stub);
+ break;
+ case 'unimplemented_method':
+ unimplementedMethod($stub);
+ break;
case 'service_account_creds':
serviceAccountCreds($stub, $args);
break;