github.com/tickoalcantara12/micro/v3@v3.0.0-20221007104245-9d75b9bcbab9/test/events_test.go (about)

     1  //go:build integration
     2  // +build integration
     3  
     4  package test
     5  
     6  import (
     7  	"errors"
     8  	"strings"
     9  	"testing"
    10  	"time"
    11  )
    12  
    13  func TestEventsStream(t *testing.T) {
    14  	// temporarily nuking this test
    15  	return
    16  	TrySuite(t, testEventsStream, retryCount)
    17  }
    18  
    19  func testEventsStream(t *T) {
    20  	t.Parallel()
    21  	serv := NewServer(t, WithLogin(), WithNamespace("micro"))
    22  	defer serv.Close()
    23  	if err := serv.Run(); err != nil {
    24  		return
    25  	}
    26  
    27  	cmd := serv.Command()
    28  
    29  	// Temp fix to support k8s tests until we have file upload to remote server
    30  	if outp, err := cmd.Exec("run", "--image", "localhost:5000/cells:v3", "/service/events"); err != nil {
    31  		t.Fatalf("Error running service: %v, %v", err, string(outp))
    32  		return
    33  	}
    34  
    35  	if err := Try("Check logs for success", t, func() ([]byte, error) {
    36  		outp, _ := cmd.Exec("status")
    37  		outp, err := cmd.Exec("logs", "-n", "200", "events")
    38  		if err != nil {
    39  			return outp, err
    40  		}
    41  		if !strings.Contains(string(outp), "TEST1: Finished ok") {
    42  			return outp, errors.New("Received event log not found")
    43  		}
    44  		if !strings.Contains(string(outp), "TEST2: Finished ok") {
    45  			return outp, errors.New("Test 2 not finished")
    46  		}
    47  		return outp, nil
    48  	}, 180*time.Second); err != nil {
    49  		return
    50  	}
    51  }