Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

grpc-js: Client interceptors #1184

Merged
merged 19 commits into from
Feb 28, 2020

Conversation

murgatroid99
Copy link
Member

This implements client interceptors in grpc-js, based primarily on the tests provided with the original client interceptors PR (grpc/grpc#9842) in the grpc library, and conforming to the specification gRFC where possible. This commit shows the semantically meaningful changes made to the tests to make them pass with this implementation. In short:

  • When constructing a client or making a call, absent interceptors or interceptor_providers options are considered equivalent to empty list values of the same options. So, those options are only considered conflicting if each list has at least one element.

  • This implementation does not make the same guarantees as the other with respect to the order in which requester methods are called.

Both implementations are tested against the modified tests.

In addition, any APIs and behaviors not described in the specification document are equivalent only where the tests depend on them.

CC @drobertduke

@WeiranFang
Copy link
Member

LGTM for the intercepting logic!

@murgatroid99 murgatroid99 merged commit 846b05f into grpc:master Feb 28, 2020
@lock lock bot locked as resolved and limited conversation to collaborators Jun 24, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants