github.com/jenspinney/cli@v6.42.1-0.20190207184520-7450c600020e+incompatible/integration/shared/isolated/delete_isolation_segment_command_test.go (about) 1 package isolated 2 3 import ( 4 "code.cloudfoundry.org/cli/integration/helpers" 5 . "github.com/onsi/ginkgo" 6 . "github.com/onsi/gomega" 7 . "github.com/onsi/gomega/gbytes" 8 . "github.com/onsi/gomega/gexec" 9 ) 10 11 var _ = Describe("delete-isolation-segment command", func() { 12 var isolationSegmentName string 13 14 BeforeEach(func() { 15 isolationSegmentName = helpers.NewIsolationSegmentName() 16 }) 17 18 Describe("help", func() { 19 When("--help flag is set", func() { 20 It("Displays command usage to output", func() { 21 session := helpers.CF("delete-isolation-segment", "--help") 22 Eventually(session).Should(Say("NAME:")) 23 Eventually(session).Should(Say("delete-isolation-segment - Delete an isolation segment")) 24 Eventually(session).Should(Say("USAGE:")) 25 Eventually(session).Should(Say("cf delete-isolation-segment SEGMENT_NAME")) 26 Eventually(session).Should(Say("SEE ALSO:")) 27 Eventually(session).Should(Say("disable-org-isolation, isolation-segments")) 28 Eventually(session).Should(Exit(0)) 29 }) 30 }) 31 }) 32 33 When("the environment is not setup correctly", func() { 34 It("fails with the appropriate errors", func() { 35 helpers.CheckEnvironmentTargetedCorrectly(false, false, ReadOnlyOrg, "delete-isolation-segment", "isolation-segment-name") 36 }) 37 }) 38 39 When("the environment is set up correctly", func() { 40 BeforeEach(func() { 41 helpers.LoginCF() 42 }) 43 44 When("the isolation segment exists", func() { 45 BeforeEach(func() { 46 Eventually(helpers.CF("create-isolation-segment", isolationSegmentName)).Should(Exit(0)) 47 }) 48 49 When("passed the force flag", func() { 50 It("deletes the isolation segment", func() { 51 session := helpers.CF("delete-isolation-segment", "-f", isolationSegmentName) 52 userName, _ := helpers.GetCredentials() 53 Eventually(session).Should(Say("Deleting isolation segment %s as %s...", isolationSegmentName, userName)) 54 Eventually(session).Should(Say("OK")) 55 Eventually(session).Should(Exit(0)) 56 }) 57 }) 58 59 When("the force flag is not provided", func() { 60 var buffer *Buffer 61 62 BeforeEach(func() { 63 buffer = NewBuffer() 64 }) 65 66 When("'yes' is inputted", func() { 67 BeforeEach(func() { 68 buffer.Write([]byte("y\n")) 69 }) 70 71 It("deletes the isolation segment", func() { 72 session := helpers.CFWithStdin(buffer, "delete-isolation-segment", isolationSegmentName) 73 Eventually(session).Should(Say(`Really delete the isolation segment %s\?`, isolationSegmentName)) 74 75 userName, _ := helpers.GetCredentials() 76 Eventually(session).Should(Say("Deleting isolation segment %s as %s...", isolationSegmentName, userName)) 77 Eventually(session).Should(Say("OK")) 78 Eventually(session).Should(Exit(0)) 79 }) 80 }) 81 82 When("'no' is inputted", func() { 83 BeforeEach(func() { 84 buffer.Write([]byte("n\n")) 85 }) 86 87 It("cancels the deletion", func() { 88 session := helpers.CFWithStdin(buffer, "delete-isolation-segment", isolationSegmentName) 89 Eventually(session).Should(Say(`Really delete the isolation segment %s\?`, isolationSegmentName)) 90 Eventually(session).Should(Say("Delete cancelled")) 91 Eventually(session).Should(Exit(0)) 92 }) 93 }) 94 95 When("using the default value", func() { 96 BeforeEach(func() { 97 buffer.Write([]byte("\n")) 98 }) 99 100 It("cancels the deletion", func() { 101 session := helpers.CFWithStdin(buffer, "delete-isolation-segment", isolationSegmentName) 102 Eventually(session).Should(Say(`Really delete the isolation segment %s\?`, isolationSegmentName)) 103 Eventually(session).Should(Say("Delete cancelled")) 104 Eventually(session).Should(Exit(0)) 105 }) 106 }) 107 }) 108 }) 109 110 When("the isolation segment does not exist", func() { 111 It("returns an ok and warning", func() { 112 session := helpers.CF("delete-isolation-segment", "-f", isolationSegmentName) 113 Eventually(session.Err).Should(Say("Isolation segment %s does not exist.", isolationSegmentName)) 114 Eventually(session).Should(Say("OK")) 115 Eventually(session).Should(Exit(0)) 116 }) 117 }) 118 }) 119 })