@@ -20,21 +20,11 @@ import (
2020 "github.com/project-flogo/microgateway/api"
2121)
2222
23- func testGRPC2GRPC (t * testing.T , e engine.Engine ) {
23+ func testGRPC2GRPC (t * testing.T , e engine.Engine , done chan bool ) {
2424 defer api .ClearResources ()
25- util .Drain ("9000" )
26- server , err := grpc2grpc .CallServer ()
27- assert .Nil (t , err )
28- go func () {
29- server .Start ()
30- }()
31- util .Pour ("9000" )
32- defer server .Server .Stop ()
33-
34- server .Done = make (chan bool , 16 )
3525
3626 util .Drain ("9096" )
37- err = e .Start ()
27+ err : = e .Start ()
3828 assert .Nil (t , err )
3929 defer func () {
4030 err := e .Stop ()
@@ -56,7 +46,7 @@ func testGRPC2GRPC(t *testing.T, e engine.Engine) {
5646 _ , err = grpc2grpc .CallClient (& port , & method , "" , func (data interface {}) bool {
5747 count ++
5848 if count == 100 {
59- server . Done <- true
49+ done <- true
6050 }
6151 return false
6252 })
@@ -65,7 +55,7 @@ func testGRPC2GRPC(t *testing.T, e engine.Engine) {
6555
6656 method , count = "storeusers" , 0
6757 _ , err = grpc2grpc .CallClient (& port , & method , "" , func (data interface {}) bool {
68- <- server . Done
58+ <- done
6959 count ++
7060 if count == 100 {
7161 return true
@@ -80,10 +70,9 @@ func testGRPC2GRPC(t *testing.T, e engine.Engine) {
8070 count ++
8171 return false
8272 })
83- for range server . Done {
73+ for range done {
8474 count ++
8575 }
86- server .Done = nil
8776 assert .Nil (t , err )
8877 assert .Equal (t , 20 , count )
8978}
@@ -93,23 +82,49 @@ func TestGRPC2GRPCAPI(t *testing.T) {
9382 t .Skip ("skipping API integration test in short mode" )
9483 }
9584
85+ util .Drain ("9000" )
86+ server , err := grpc2grpc .CallServer ()
87+ assert .Nil (t , err )
88+ go func () {
89+ server .Start ()
90+ }()
91+ util .Pour ("9000" )
92+ defer server .Server .Stop ()
93+ server .Done = make (chan bool , 16 )
94+ defer func () {
95+ server .Done = nil
96+ }()
97+
9698 e , err := GRPC2GRPCExample ()
9799 assert .Nil (t , err )
98- testGRPC2GRPC (t , e )
100+ testGRPC2GRPC (t , e , server . Done )
99101}
100102
101103func TestGRPC2GRPCJSON (t * testing.T ) {
102104 if testing .Short () {
103105 t .Skip ("skipping JSON integration test in short mode" )
104106 }
105107
108+ util .Drain ("9000" )
109+ server , err := grpc2grpc .CallServer ()
110+ assert .Nil (t , err )
111+ go func () {
112+ server .Start ()
113+ }()
114+ util .Pour ("9000" )
115+ defer server .Server .Stop ()
116+ server .Done = make (chan bool , 16 )
117+ defer func () {
118+ server .Done = nil
119+ }()
120+
106121 data , err := ioutil .ReadFile (filepath .FromSlash ("./json/grpc-to-grpc/flogo.json" ))
107122 assert .Nil (t , err )
108123 cfg , err := engine .LoadAppConfig (string (data ), false )
109124 assert .Nil (t , err )
110125 e , err := engine .New (cfg )
111126 assert .Nil (t , err )
112- testGRPC2GRPC (t , e )
127+ testGRPC2GRPC (t , e , server . Done )
113128}
114129
115130func testGRPC2Rest (t * testing.T , e engine.Engine ) {
@@ -201,17 +216,9 @@ func TestGRPC2RestJSON(t *testing.T) {
201216
202217func testRest2GRPC (t * testing.T , e engine.Engine ) {
203218 defer api .ClearResources ()
204- util .Drain ("9000" )
205- server , err := rest2grpc .CallServer ()
206- assert .Nil (t , err )
207- go func () {
208- server .Start ()
209- }()
210- util .Pour ("9000" )
211- defer server .Server .Stop ()
212219
213220 util .Drain ("9096" )
214- err = e .Start ()
221+ err : = e .Start ()
215222 assert .Nil (t , err )
216223 defer func () {
217224 err := e .Stop ()
@@ -273,6 +280,15 @@ func TestRest2GRPCAPI(t *testing.T) {
273280 t .Skip ("skipping API integration test in short mode" )
274281 }
275282
283+ util .Drain ("9000" )
284+ server , err := rest2grpc .CallServer ()
285+ assert .Nil (t , err )
286+ go func () {
287+ server .Start ()
288+ }()
289+ util .Pour ("9000" )
290+ defer server .Server .Stop ()
291+
276292 e , err := Rest2GRPCExample ()
277293 assert .Nil (t , err )
278294 testRest2GRPC (t , e )
@@ -283,6 +299,15 @@ func TestRest2GRPCJSON(t *testing.T) {
283299 t .Skip ("skipping JSON integration test in short mode" )
284300 }
285301
302+ util .Drain ("9000" )
303+ server , err := rest2grpc .CallServer ()
304+ assert .Nil (t , err )
305+ go func () {
306+ server .Start ()
307+ }()
308+ util .Pour ("9000" )
309+ defer server .Server .Stop ()
310+
286311 data , err := ioutil .ReadFile (filepath .FromSlash ("./json/rest-to-grpc/flogo.json" ))
287312 assert .Nil (t , err )
288313 cfg , err := engine .LoadAppConfig (string (data ), false )
0 commit comments