mosn
1//go:build MOSNTest
2// +build MOSNTest
3
4package grpc
5
6import (
7"context"
8"testing"
9
10"google.golang.org/grpc"
11pb "google.golang.org/grpc/examples/helloworld/helloworld"
12. "mosn.io/mosn/test/framework"
13"mosn.io/mosn/test/lib"
14)
15
16func TestSimpleGrpc(t *testing.T) {
17Scenario(t, "simple grpc server in mosn networkfilter", func() {
18_, _ = lib.InitMosn(ConfigHelloGrpcFilter) // no servers need
19Case("call grpc", func() {
20conn, err := grpc.Dial("127.0.0.1:2045", grpc.WithInsecure(), grpc.WithBlock())
21Verify(err, Equal, nil)
22defer conn.Close()
23c := pb.NewGreeterClient(conn)
24r, err := c.SayHello(context.Background(), &pb.HelloRequest{Name: "mosn grpc"})
25Verify(err, Equal, nil)
26Verify(r.GetMessage(), Equal, "Hello mosn grpc")
27})
28})
29}
30
31const ConfigHelloGrpcFilter = `{
32"servers":[
33{
34"default_log_path":"stdout",
35"default_log_level":"DEBUG",
36"listeners":[
37{
38"address":"127.0.0.1:2045",
39"bind_port": true,
40"filter_chains": [{
41"filters": [
42{
43"type":"grpc",
44"config": {
45"server_name":"hello"
46}
47}
48]
49}]
50}
51]
52}
53]
54}`
55