github.com/pivotal-cf/go-pivnet/v6@v6.0.2/integration/upgrade_path_specifiers_test.go (about)

     1  package integration_test
     2  
     3  import (
     4  	. "github.com/onsi/ginkgo"
     5  	. "github.com/onsi/gomega"
     6  	pivnet "github.com/pivotal-cf/go-pivnet/v6"
     7  )
     8  
     9  const (
    10  	upgradePathSpecifier = "~>1.2.3"
    11  )
    12  
    13  var _ = Describe("Upgrade Path Specifier Integration", func() {
    14  	var (
    15  		newRelease pivnet.Release
    16  	)
    17  
    18  	BeforeEach(func() {
    19  		var err error
    20  		newRelease, err = client.Releases.Create(pivnet.CreateReleaseConfig{
    21  			ProductSlug: testProductSlug,
    22  			Version:     "some-test-version",
    23  			ReleaseType: "Beta Release",
    24  			EULASlug:    "pivotal_beta_eula",
    25  		})
    26  		Expect(err).NotTo(HaveOccurred())
    27  	})
    28  
    29  	AfterEach(func() {
    30  		err := client.Releases.Delete(testProductSlug, newRelease)
    31  		Expect(err).NotTo(HaveOccurred())
    32  	})
    33  
    34  	It("creates, lists, and deletes upgrade path specifiers", func() {
    35  		By("Listing upgrade path specifiers")
    36  		upgradePathSpecifiers, err := client.UpgradePathSpecifiers.List(testProductSlug, newRelease.ID)
    37  		Expect(err).NotTo(HaveOccurred())
    38  
    39  		By("Creating new dependency specifier")
    40  		upgradePathSpecifier, err := client.UpgradePathSpecifiers.Create(
    41  			testProductSlug,
    42  			newRelease.ID,
    43  			upgradePathSpecifier,
    44  		)
    45  		Expect(err).NotTo(HaveOccurred())
    46  
    47  		Expect(upgradePathSpecifiers).ShouldNot(ContainElement(upgradePathSpecifier))
    48  
    49  		By("Re-listing upgrade path specifiers")
    50  		updatedUpgradePathSpecifiers, err := client.UpgradePathSpecifiers.List(testProductSlug, newRelease.ID)
    51  		Expect(err).NotTo(HaveOccurred())
    52  
    53  		Expect(updatedUpgradePathSpecifiers).Should(ContainElement(upgradePathSpecifier))
    54  
    55  		By("Getting individual dependency specifier")
    56  		individualUpgradePathSpecifier, err := client.UpgradePathSpecifiers.Get(
    57  			testProductSlug,
    58  			newRelease.ID,
    59  			upgradePathSpecifier.ID,
    60  		)
    61  		Expect(err).NotTo(HaveOccurred())
    62  
    63  		Expect(individualUpgradePathSpecifier).To(Equal(upgradePathSpecifier))
    64  
    65  		By("Deleting upgrade path specifier")
    66  		err = client.UpgradePathSpecifiers.Delete(
    67  			testProductSlug,
    68  			newRelease.ID,
    69  			upgradePathSpecifier.ID,
    70  		)
    71  		Expect(err).NotTo(HaveOccurred())
    72  
    73  		newlyUpdatedUpgradePathSpecifiers, err := client.UpgradePathSpecifiers.List(testProductSlug, newRelease.ID)
    74  		Expect(err).NotTo(HaveOccurred())
    75  
    76  		Expect(newlyUpdatedUpgradePathSpecifiers).ShouldNot(ContainElement(upgradePathSpecifier))
    77  	})
    78  })