github.com/cloudfoundry-community/cloudfoundry-cli@v6.44.1-0.20240130060226-cda5ed8e89a5+incompatible/integration/shared/isolated/rename_service_command_test.go (about)

     1  package isolated
     2  
     3  import (
     4  	"code.cloudfoundry.org/cli/api/cloudcontroller/ccversion"
     5  	"code.cloudfoundry.org/cli/integration/helpers"
     6  	. "github.com/onsi/ginkgo"
     7  	. "github.com/onsi/gomega"
     8  	. "github.com/onsi/gomega/gbytes"
     9  	. "github.com/onsi/gomega/gexec"
    10  )
    11  
    12  var _ = Describe("rename-service command", func() {
    13  	When("there is a service instance created", func() {
    14  		var (
    15  			instanceName string
    16  			serviceName  string
    17  			orgName      string
    18  			spaceName    string
    19  		)
    20  
    21  		BeforeEach(func() {
    22  			instanceName = helpers.PrefixedRandomName("INSTANCE")
    23  			serviceName = helpers.PrefixedRandomName("SERVICE")
    24  			orgName = helpers.NewOrgName()
    25  			spaceName = helpers.NewSpaceName()
    26  			helpers.SetupCF(orgName, spaceName)
    27  
    28  			servicePlanName := helpers.NewPlanName()
    29  			broker := helpers.NewServiceBroker(
    30  				helpers.NewServiceBrokerName(),
    31  				helpers.NewAssets().ServiceBroker,
    32  				helpers.DefaultSharedDomain(),
    33  				serviceName,
    34  				servicePlanName,
    35  			)
    36  			broker.Push()
    37  			broker.Configure(true)
    38  			broker.Create()
    39  
    40  			Eventually(helpers.CF("enable-service-access", serviceName)).Should(Exit(0))
    41  			Eventually(helpers.CF("create-service", serviceName, servicePlanName, instanceName)).Should(Exit(0))
    42  		})
    43  
    44  		AfterEach(func() {
    45  			Eventually(helpers.CF("delete-service", "my-new-instance-name", "-f")).Should(Exit(0))
    46  			helpers.QuickDeleteOrg(orgName)
    47  		})
    48  
    49  		When("and that service access is revoked for a non-admin user", func() {
    50  			var unprivilegedUsername string
    51  
    52  			BeforeEach(func() {
    53  				Eventually(helpers.CF("disable-service-access", serviceName)).Should(Exit(0))
    54  
    55  				var password string
    56  				unprivilegedUsername, password = helpers.CreateUserInSpaceRole(orgName, spaceName, "SpaceDeveloper")
    57  				helpers.LoginAs(unprivilegedUsername, password)
    58  				helpers.TargetOrgAndSpace(orgName, spaceName)
    59  			})
    60  
    61  			AfterEach(func() {
    62  				helpers.LoginCF()
    63  				helpers.TargetOrgAndSpace(orgName, spaceName)
    64  				helpers.DeleteUser(unprivilegedUsername)
    65  			})
    66  
    67  			When("CC API allows updating a service when plan is not visible", func() {
    68  				BeforeEach(func() {
    69  					helpers.SkipIfVersionLessThan(ccversion.MinVersionUpdateServiceNameWhenPlanNotVisibleV2)
    70  				})
    71  
    72  				It("can still rename the service", func() {
    73  					session := helpers.CF("rename-service", instanceName, "my-new-instance-name")
    74  					Eventually(session).Should(Exit(0))
    75  
    76  					session = helpers.CF("services")
    77  					Eventually(session).Should(Exit(0))
    78  					Eventually(session).Should(Say("my-new-instance-name"))
    79  				})
    80  			})
    81  		})
    82  	})
    83  })