| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
| |
It may seem weird that code and details would travel along two paths
now instead of one but it makes sense after considering that sometimes
the code and details are application data from the remote application
and sometimes they are transport data from the transport between the
local and remote applications.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(1) In _ingestion, it's the "details" attribute of a
NoSuchMethodException that we want. The "message" is inherited from the
base Exception class.
(2) In _transmission, use a proper sum type for representing operation
abortion. Trying to overload the existing _completion value for
status-and-details-when-aborting was trying to be too clever.
(3) In _calls... oof. Just look. Oof. Test coverage for this code path
is added.
(4) In _service, the application-provided
face.MultiMethodImplementation isn't directly callable, but rather
exposes a method named "service".
(5) In crust.implementations, the wrapping that we've put around the
application-provided face.MultiMethodImplementation *is* directly
callable, and *does not* expose a method named "service".
(6) Also in crust.implementations, base.NoSuchMethodError's constructor
takes a code value and a details value.
(7) Again in crust.implementations, the application-provided
face.MultiMethodImplementation may be None, and if it is None, we
shouldn't wrap it with an adaptation function that would only raise a
TypeError at a later time.
|
|\
| |
| | |
Python Beta codegen.
|
| | |
|
|/
|
|
|
|
|
|
|
| |
(1) Plumb the metadata transformer given at the Beta API through to the
InvocationLink where it will be used.
(2) In both InvocationLink and ServiceLink, if there isn't a registered
serializer or deserializer, just pass the payload through rather than
ignoring the entire RPC.
|
|\ |
|
|/
|
|
|
|
|
| |
The invoker is an object derived from, and referring to, objects of the
Face implementation under test. If those objects are to be garbage
collected at the appropriate time the invoker that references them must
be made eligible for garbage collection in the test's tearDown method.
|
|\
| |
| | |
Credentials naming and cleanup
|
|\ \
| | |
| | | |
Made ServiceLink shut-down a two step process.
|
| | |\
| |_|/
|/| |
| | | |
credentials_naming_and_cleanup
|
| | | |
|
|\ \ \
| | | |
| | | | |
Python test clean-up
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
(1) Move metadata and details constants for gRPC-on-the-wire tests into
grpc.test_common.
(2) Drop definitions of setUpModule and tearDownModule from a unit test
module that, because it uses the load_tests protocol, never had those
methods called anyway. :-(
|
|/ / |
|
|\ \
| | |
| | | |
Python OAuth2 auth-token interop test.
|
| |/
|/| |
|
| | |
|
|\ \
| | |
| | | |
The Beta API Channel
|
|\ \ \
| | | |
| | | | |
The RPC Framework crust package
|
| |/ /
|/| | |
|
|\ \ \
| |_|/
|/| |
| | |
| | | |
nathanielmanistaatgoogle/no-such-method-code-and-message
Add code and message to base.NoSuchMethodError
|
|\ \ \
| | | |
| | | | |
Outlaw illegal metadata characters
|
| | | | |
|
| |_|/
|/| | |
|
|\ \ \
| | | |
| | | | |
Use a custom exception in test_control
|
| | | |
| | | |
| | | |
| | | | |
Whitespace is now disallowed in metadata keys.
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Use of ValueError is too easily misconstrued as an actual defect in the
system under test.
|
| |_|/
|/| |
| | |
| | |
| | | |
This is part of support for applications being able to respond to RPCs
with unrecognized names with specific codes and messages.
|
|\ \ \
| |/ /
|/| | |
A test suite for the RPC Framework Face interface
|
| | |
| | |
| | |
| | |
| | | |
While a full Cartesian product across all variables isn't yet present
this is still reasonably comprehensive.
|
|\ \ \
| | | |
| | | | |
Add a "transport" field to links.Ticket
|
|\ \ \ \
| |_|/ /
|/| | | |
Add cancel_all_calls to Python server.
|
| |/ /
|/| |
| | |
| | |
| | | |
This will be used for communication of transport-specific values and
objects up to applications.
|
| | |\
| |_|/
|/| | |
|
| | | |
|
| |/
|/|
| |
| |
| |
| | |
This is the second generation of the old base package (framework.base)
and implements the translation between the new links and base
interfaces.
|
|/
|
|
|
| |
Also format _low_test.py to fit within the 80 character fill-limit and
re-style test assertions.
|
|
|
|
|
| |
I wasn't able to flesh this out nearly as much as I had wanted to but I
can come back to it after Beta (issue #2959).
|
|
|
|
| |
This compensates for the abstraction mismatch described in issue 2916.
|
|\
| |
| | |
Expose new core functionality to Python.
|
| | |
|
|\ \
| | |
| | | |
Use common timeouts in Python face-layer test-cases.
|
|\ \ \
| | | |
| | | | |
Move Python protoc plugin tests to grpcio_test.
|
|\ \ \ \
| | | | |
| | | | | |
Set Python user-agent string.
|
| |_|_|/
|/| | | |
|
|/ / / |
|
| |/
|/| |
|
| | |
|
|\ \
| |/
|/| |
Affirm metadata transmission in a common function
|
| |
| |
| |
| |
| | |
This introduces grpc_test.test_common for gRPC-specific test code and
fixes issue 2570.
|