pw_rpc: Test raw client & bidirectional streaming

- Expand RawTestMethodClient and NanopbTestMethodClient to support
  client and bidirectional streaming methods. Move shared functionality
  to a common InvocationContext base class.
- Add tests for raw client & bidirectional streaming methods.

Change-Id: I26f5d0608f6215bc846e69d89b3c9735595a7930
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/52523
Pigweed-Auto-Submit: Wyatt Hepler <hepler@google.com>
Commit-Queue: Auto-Submit <auto-submit@pigweed.google.com.iam.gserviceaccount.com>
Reviewed-by: Alexei Frolov <frolv@google.com>
diff --git a/pw_rpc/BUILD.gn b/pw_rpc/BUILD.gn
index 42f04c4..367a83d 100644
--- a/pw_rpc/BUILD.gn
+++ b/pw_rpc/BUILD.gn
@@ -131,6 +131,7 @@
 pw_source_set("test_utils") {
   public = [
     "public/pw_rpc/internal/test_method.h",
+    "public/pw_rpc/internal/test_method_context.h",
     "pw_rpc_private/fake_channel_output.h",
     "pw_rpc_private/fake_server_reader_writer.h",
     "pw_rpc_private/internal_test_utils.h",