github.com/docker/compose-on-kubernetes@v0.5.0/cmd/compose-controller/main_test.go (about)

     1  package main
     2  
     3  import (
     4  	"os"
     5  	"strconv"
     6  	"testing"
     7  
     8  	"github.com/docker/compose-on-kubernetes/api/constants"
     9  
    10  	"github.com/docker/cli/opts"
    11  	log "github.com/sirupsen/logrus"
    12  )
    13  
    14  func TestImageServer(t *testing.T) {
    15  	if os.Getenv("TEST_COMPOSE_CONTROLLER") != "" {
    16  		options := defaultOptions()
    17  		options.kubeconfig = ""
    18  		interval := constants.DefaultFullSyncInterval
    19  		options.reconciliationInterval = opts.PositiveDurationOpt{DurationOpt: *opts.NewDurationOpt(&interval)}
    20  		options.logLevel = "debug"
    21  		options.defaultServiceType = "LoadBalancer"
    22  		healthzPort := os.Getenv("TEST_COMPOSE_HEALTHZ_PORT")
    23  		if healthzPort != "" {
    24  			port, err := strconv.Atoi(healthzPort)
    25  			if err != nil {
    26  				log.Errorf("invalid healthz port: %s", err)
    27  				t.Fail()
    28  			}
    29  			options.healthzCheckPort = port
    30  		}
    31  		err := start(&options)
    32  		if err != nil {
    33  			log.Errorf("compose-controller fatal error: %s", err)
    34  			t.Fail()
    35  		} else {
    36  			log.Info("compose-controller exited normally")
    37  		}
    38  	} else {
    39  		t.Skip("skipping test: TEST_COMPOSE_CONTROLLER is not set")
    40  	}
    41  }