# import the generated classes import proto.calculator_pb2 as calculator_pb2 import proto.calculator_pb2_grpc as calculator_pb2_grpc # ******* Testing our square calculator function ********** # Open a gRPC channel channel = grpc.insecure_channel('localhost:50051') # Create a stub (client) stub = calculator_pb2_grpc.CalculatorStub(channel) # Create a valid request message # (basically create an object of type 'calculator_pb2.Number'.) a_number = calculator_pb2.Number(value=16) # Call the Square method and collect response. response = stub.Square(a_number) # Let's see the results. print(response.value) # ******* Testing our multiplier function ********** num_list = calculator_pb2.NumList() num_list.name = 'MyFirstList' n1 = num_list.nums.add() n2 = num_list.nums.add() n3 = num_list.nums.add() n1.value = 10 n2.value = 20
def yieldMsg(): for x in range(200, 300): yield calculator_pb2.Number(value=x)
def squareRoot(stub): response = stub.SquareRoot(calculator_pb2.Number(value=16)) print(response.value)
def SquareRoot(self, request, context): response = calculator_pb2.Number() response.value = (request.value) * (request.value) return response
def yieldEvents(): for x in range(100, 111): yield calculator_pb2.Number(value=x)
def Chat(self, request_iterator, context): for req in request_iterator: yield calculator_pb2.Number(value=(req.value + 11))
def SendEvents(self, request_iterator, context): count = 0 for req in request_iterator: print("Receive: %s, context: %s" % (req.value, context)) count += 1 return calculator_pb2.Number(value=count)
def ReceiveEvents(self, request, context): for x in range(10): yield calculator_pb2.Number(value=x) time.sleep(0.3)
def say_hello(self): req_data = calculator_pb2.Number(value=16) self.locust_request_handler("say_hello", req_data)
def Multiplier(self, request, context): response = calculator_pb2.Number() response.value = calculator.multiplier(request.nums, request.name) return response