grpc added initial tests and fixture to support them

This commit is contained in:
bharnden 2019-03-21 23:29:26 -07:00
parent 0c0ff95fb6
commit 3498a59ed5
4 changed files with 74 additions and 9 deletions

51
daemon/tests/test_grpc.py Normal file
View file

@ -0,0 +1,51 @@
import os
import time
import pytest
from core.grpc import core_pb2
from core.enumerations import NodeTypes
from core.grpc.client import CoreGrpcClient
MODELS = [
"router",
"host",
"PC",
"mdr",
]
NET_TYPES = [
NodeTypes.SWITCH,
NodeTypes.HUB,
NodeTypes.WIRELESS_LAN
]
class TestGrpc:
def test_create_session(self, grpc_server):
# given
client = CoreGrpcClient()
# when
with client.context_connect():
response = client.create_session()
# then
assert isinstance(response.id, int)
assert isinstance(response.state, int)
session = grpc_server.coreemu.sessions.get(response.id)
assert session is not None
assert session.state == response.state
def test_delete_session(self, grpc_server):
# given
client = CoreGrpcClient()
session = grpc_server.coreemu.create_session()
# then
with client.context_connect():
response = client.delete_session(session.session_id)
# then
assert response.result is True
assert grpc_server.coreemu.sessions.get(session.session_id) is None