github.com/ablease/cli@v6.37.1-0.20180613014814-3adbb7d7fb19+incompatible/integration/push/push_suite_test.go (about)

     1  package push
     2  
     3  import (
     4  	"fmt"
     5  	"io/ioutil"
     6  	"os"
     7  	"testing"
     8  	"time"
     9  
    10  	"code.cloudfoundry.org/cli/api/cloudcontroller/ccversion"
    11  	"code.cloudfoundry.org/cli/integration/helpers"
    12  	. "github.com/onsi/ginkgo"
    13  	. "github.com/onsi/gomega"
    14  )
    15  
    16  const (
    17  	CFEventuallyTimeout   = 300 * time.Second
    18  	CFConsistentlyTimeout = 500 * time.Millisecond
    19  	RealIsolationSegment  = "persistent_isolation_segment"
    20  	PushCommandName       = "push"
    21  	PublicDockerImage     = "cloudfoundry/diego-docker-app-custom"
    22  )
    23  
    24  var (
    25  	// Suite Level
    26  	organization string
    27  	space        string
    28  	realDir      string
    29  
    30  	// Per Test Level
    31  	homeDir string
    32  )
    33  
    34  func TestPush(t *testing.T) {
    35  	RegisterFailHandler(Fail)
    36  	RunSpecs(t, "Push Integration Suite")
    37  }
    38  
    39  var _ = SynchronizedBeforeSuite(func() []byte {
    40  	GinkgoWriter.Write([]byte("==============================Global FIRST Node Synchronized Before Each=============================="))
    41  	SetDefaultEventuallyTimeout(CFEventuallyTimeout)
    42  	SetDefaultConsistentlyDuration(CFConsistentlyTimeout)
    43  
    44  	helpers.SetupSynchronizedSuite(func() {
    45  		helpers.EnableFeatureFlag("diego_docker")
    46  
    47  		if helpers.IsVersionMet(ccversion.MinVersionShareServiceV3) {
    48  			helpers.EnableFeatureFlag("service_instance_sharing")
    49  		}
    50  	})
    51  
    52  	GinkgoWriter.Write([]byte("==============================End of Global FIRST Node Synchronized Before Each=============================="))
    53  
    54  	return nil
    55  }, func(_ []byte) {
    56  	GinkgoWriter.Write([]byte(fmt.Sprintf("==============================Global Node %d Synchronized Before Each==============================", GinkgoParallelNode())))
    57  	// Ginkgo Globals
    58  	SetDefaultEventuallyTimeout(CFEventuallyTimeout)
    59  	SetDefaultConsistentlyDuration(CFConsistentlyTimeout)
    60  
    61  	// Setup common environment variables
    62  	helpers.TurnOffColors()
    63  
    64  	homeDir = helpers.SetHomeDir()
    65  	helpers.SetAPI()
    66  	helpers.LoginCF()
    67  
    68  	organization = helpers.NewOrgName()
    69  	helpers.CreateOrg(organization)
    70  	helpers.TargetOrg(organization)
    71  	helpers.CreateSpace("empty-space")
    72  	helpers.DestroyHomeDir(homeDir)
    73  
    74  	var err error
    75  	realDir, err = ioutil.TempDir("", "push-real-dir")
    76  	Expect(err).ToNot(HaveOccurred())
    77  	GinkgoWriter.Write([]byte(fmt.Sprintf("==============================End of Global Node %d Synchronized Before Each==============================", GinkgoParallelNode())))
    78  })
    79  
    80  var _ = SynchronizedAfterSuite(func() {
    81  	GinkgoWriter.Write([]byte(fmt.Sprintf("==============================Global Node %d Synchronized After Each==============================", GinkgoParallelNode())))
    82  	homeDir = helpers.SetHomeDir()
    83  	helpers.SetAPI()
    84  	helpers.LoginCF()
    85  	helpers.QuickDeleteOrg(organization)
    86  	Expect(os.RemoveAll(realDir)).ToNot(HaveOccurred())
    87  	helpers.DestroyHomeDir(homeDir)
    88  	GinkgoWriter.Write([]byte(fmt.Sprintf("==============================End of Global Node %d Synchronized After Each==============================", GinkgoParallelNode())))
    89  }, func() {
    90  })
    91  
    92  var _ = BeforeEach(func() {
    93  	GinkgoWriter.Write([]byte("==============================Global Before Each=============================="))
    94  	homeDir = helpers.SetHomeDir()
    95  	helpers.SetAPI()
    96  	space = helpers.NewSpaceName()
    97  	helpers.SetupCF(organization, space)
    98  	GinkgoWriter.Write([]byte("==============================End of Global Before Each=============================="))
    99  })
   100  
   101  var _ = AfterEach(func() {
   102  	GinkgoWriter.Write([]byte("==============================Global After Each=============================="))
   103  	helpers.SetAPI()
   104  	helpers.SetupCF(organization, space)
   105  	helpers.QuickDeleteSpace(space)
   106  	helpers.DestroyHomeDir(homeDir)
   107  })