github.com/annwntech/go-micro/v2@v2.9.5/web/web_test.go (about) 1 package web_test 2 3 import ( 4 "context" 5 "fmt" 6 "sync" 7 "testing" 8 "time" 9 10 "github.com/micro/cli/v2" 11 "github.com/annwntech/go-micro/v2" 12 "github.com/annwntech/go-micro/v2/logger" 13 "github.com/annwntech/go-micro/v2/web" 14 ) 15 16 func TestWeb(t *testing.T) { 17 for i := 0; i < 10; i++ { 18 fmt.Println("Test nr", i) 19 testFunc() 20 } 21 } 22 23 func testFunc() { 24 ctx, cancel := context.WithTimeout(context.Background(), time.Millisecond*250) 25 defer cancel() 26 27 s := micro.NewService( 28 micro.Name("test"), 29 micro.Context(ctx), 30 micro.HandleSignal(false), 31 micro.Flags( 32 &cli.StringFlag{ 33 Name: "test.timeout", 34 }, 35 &cli.BoolFlag{ 36 Name: "test.v", 37 }, 38 &cli.StringFlag{ 39 Name: "test.run", 40 }, 41 &cli.StringFlag{ 42 Name: "test.testlogfile", 43 }, 44 ), 45 ) 46 w := web.NewService( 47 web.MicroService(s), 48 web.Context(ctx), 49 web.HandleSignal(false), 50 ) 51 //s.Init() 52 //w.Init() 53 54 var wg sync.WaitGroup 55 wg.Add(2) 56 go func() { 57 defer wg.Done() 58 err := s.Run() 59 if err != nil { 60 logger.Errorf("micro run error: %v", err) 61 } 62 }() 63 go func() { 64 defer wg.Done() 65 err := w.Run() 66 if err != nil { 67 logger.Errorf("web run error: %v", err) 68 } 69 }() 70 71 wg.Wait() 72 }