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

client: Improve testing and increase coverage #636

Draft
wants to merge 9 commits into
base: master
Choose a base branch
from
Draft

Conversation

cthulhu-rider
Copy link
Contributor

  • inline conn code from api-go
  • refactor client to use grpc.Conn directly
  • prepare the ground for testing operations over gRPC
  • add a typical test of one RPC
  • do the rest similarly

One of the added tests fails: it is planned to be corrected in the
future.

Signed-off-by: Leonard Lyubich <[email protected]>
Previously, `Client.Dial` lost causing error of network endpoint parsing.
Although the method returned "invalid endpoint options" error, the
original reason could not be obtained. This made debugging difficult.

Now causes are kept and returned. For this, function
`WithNetworkURIAddress` is inlined and the `ParseURI` error is not
ignored.

Fixes one of the corresponding tests.

Signed-off-by: Leonard Lyubich <[email protected]>
The function is placed inside the lib to facilitate its support and as a
preliminary preparation for the obsolescence of
`github.com/nspcc-dev/neofs-api-go/v2` module.

Signed-off-by: Leonard Lyubich <[email protected]>
The function return zeros on multiaddr input.

Signed-off-by: Leonard Lyubich <[email protected]>
Previously, `Client.Dial` method sometimes tried to connect to obviously
invalid addresses (e.g. with missing port). although a preliminary
endpoint check is performed, some errors were ignored, and they still
popped up during the subsequent dial. Thus, in general the client's
behavior was correct and the expected error was still caught. Thus, in
general, the client's behavior was correct and the error was still
caught, however, unnecessary obviously failed actions were made, which
could be cut off at the pre-check stage.

Now the `util.ParseURI` function has been improved and catches most
cases.

Signed-off-by: Leonard Lyubich <[email protected]>
There is no any point to have them different.

Signed-off-by: Leonard Lyubich <[email protected]>
Nil response without an error can lead to the undesired behavior. Since
other methods are not expected to be called, unimplemented error fits
the best.

Signed-off-by: Leonard Lyubich <[email protected]>
There is already an interface for this. Also, changing global variables
is always weird.

Signed-off-by: Leonard Lyubich <[email protected]>
For two operations it has already been properly done, and for the rest
for some reason through global variables.

Signed-off-by: Leonard Lyubich <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant