userver: pytest_userver.grpc.MockserverSession Class Reference
Loading...
Searching...
No Matches
pytest_userver.grpc.MockserverSession Class Reference

Detailed Description

Allows to install mocks that are kept active between tests, see grpc_mockserver_session.

Warning
This is a sharp knife, use with caution! For most use-cases, prefer grpc_mockserver instead.

Definition at line 33 of file __init__.py.

Public Member Functions

None __init__ (self, *grpc.aio.Server server, bool experimental=False)
 
None reset_mocks (self)
 Removes all mocks for this mockserver that have been installed using MockserverSession or Mockserver API.
 
 asyncexc_append_scope (self, AsyncExcAppend|None asyncexc_append)
 Sets testsuite's asyncexc_append for use in the returned scope.
 
grpc.aio.Server server (self)
 The underlying grpc.aio.Server.
 
None start (self)
 Starts the server.
 
None stop (self)
 Stops the server properly.
 
MockserverSession __aenter__ (self)
 
None __aexit__ (self, exc_type, exc_val, exc_tb)
 

Protected Member Functions

_ServiceMock _get_auto_service_mock (self, type servicer_class)
 
None _set_asyncexc_append (self, AsyncExcAppend|None asyncexc_append)
 

Protected Attributes

 _server
 
 _asyncexc_append
 

Constructor & Destructor Documentation

◆ __init__()

None pytest_userver.grpc.MockserverSession.__init__ (   self,
*grpc.aio.Server  server,
bool   experimental = False 
)
Warning
This initializer is an experimental API, likely to break in the future. Consider using grpc_mockserver_session instead.

Initializes MockserverSession. Takes ownership of server. To properly start and stop the server, use MockserverSession as an async contextmanager:

async with pytest_userver.grpc.mockserver.MockserverSession(server=server) as mockserver:
# ...
Note
MockserverSession is usually obtained from grpc_mockserver_session.

Definition at line 42 of file __init__.py.

Member Function Documentation

◆ __aenter__()

MockserverSession pytest_userver.grpc.MockserverSession.__aenter__ (   self)

Definition at line 118 of file __init__.py.

◆ __aexit__()

None pytest_userver.grpc.MockserverSession.__aexit__ (   self,
  exc_type,
  exc_val,
  exc_tb 
)

Definition at line 122 of file __init__.py.

◆ _get_auto_service_mock()

_ServiceMock pytest_userver.grpc.MockserverSession._get_auto_service_mock (   self,
type  servicer_class 
)
protected

Definition at line 63 of file __init__.py.

◆ _set_asyncexc_append()

None pytest_userver.grpc.MockserverSession._set_asyncexc_append (   self,
AsyncExcAppend | None  asyncexc_append 
)
protected

Definition at line 73 of file __init__.py.

◆ asyncexc_append_scope()

pytest_userver.grpc.MockserverSession.asyncexc_append_scope (   self,
AsyncExcAppend | None  asyncexc_append 
)

Sets testsuite's asyncexc_append for use in the returned scope.

Definition at line 88 of file __init__.py.

◆ reset_mocks()

None pytest_userver.grpc.MockserverSession.reset_mocks (   self)

Removes all mocks for this mockserver that have been installed using MockserverSession or Mockserver API.

Note
Mocks installed manually using MockserverSession.server will not be removed, though.

Definition at line 78 of file __init__.py.

◆ server()

grpc.aio.Server pytest_userver.grpc.MockserverSession.server (   self)

The underlying grpc.aio.Server.

Definition at line 99 of file __init__.py.

◆ start()

None pytest_userver.grpc.MockserverSession.start (   self)

Starts the server.

Note
Prefer starting mockserver using the async contextmanager syntax if possible.

Definition at line 105 of file __init__.py.

◆ stop()

None pytest_userver.grpc.MockserverSession.stop (   self)

Stops the server properly.

Prefer this method to stopping server manually.

Definition at line 112 of file __init__.py.

Member Data Documentation

◆ _asyncexc_append

pytest_userver.grpc.MockserverSession._asyncexc_append
protected

Definition at line 68 of file __init__.py.

◆ _server

pytest_userver.grpc.MockserverSession._server
protected

Definition at line 59 of file __init__.py.


The documentation for this class was generated from the following file: