github.com/randomtask1155/cli@v6.41.1-0.20181227003417-a98eed78cbde+incompatible/integration/helpers/domains.go (about) 1 package helpers 2 3 import ( 4 "fmt" 5 "regexp" 6 7 . "github.com/onsi/gomega" 8 . "github.com/onsi/gomega/gbytes" 9 . "github.com/onsi/gomega/gexec" 10 ) 11 12 func DomainName(prefix ...string) string { 13 if len(prefix) > 0 { 14 return fmt.Sprintf("integration-%s.com", PrefixedRandomName(prefix[0])) 15 } 16 return fmt.Sprintf("integration%s.com", PrefixedRandomName("")) 17 } 18 19 type Domain struct { 20 Org string 21 Name string 22 } 23 24 func NewDomain(org string, name string) Domain { 25 return Domain{ 26 Org: org, 27 Name: name, 28 } 29 } 30 31 // globally cached 32 var foundDefaultDomain string 33 34 func DefaultSharedDomain() string { 35 if foundDefaultDomain == "" { 36 session := CF("domains") 37 Eventually(session).Should(Exit(0)) 38 39 regex, err := regexp.Compile(`(.+?)\s+shared`) 40 Expect(err).ToNot(HaveOccurred()) 41 42 matches := regex.FindStringSubmatch(string(session.Out.Contents())) 43 Expect(matches).To(HaveLen(2)) 44 45 foundDefaultDomain = matches[1] 46 } 47 return foundDefaultDomain 48 } 49 50 func (d Domain) Create() { 51 Eventually(CF("create-domain", d.Org, d.Name)).Should(Exit(0)) 52 Eventually(CF("domains")).Should(And(Exit(0), Say(d.Name))) 53 } 54 55 func (d Domain) CreateShared() { 56 Eventually(CF("create-shared-domain", d.Name)).Should(Exit(0)) 57 } 58 59 func (d Domain) CreateWithRouterGroup(routerGroup string) { 60 Eventually(CF("create-shared-domain", d.Name, "--router-group", routerGroup)).Should(Exit(0)) 61 } 62 63 func (d Domain) CreateInternal() { 64 Eventually(CF("create-shared-domain", d.Name, "--internal")).Should(Exit(0)) 65 } 66 67 func (d Domain) Share() { 68 Eventually(CF("share-private-domain", d.Org, d.Name)).Should(Exit(0)) 69 } 70 71 func (d Domain) Delete() { 72 Eventually(CF("delete-domain", d.Name, "-f")).Should(Exit(0)) 73 } 74 75 func (d Domain) DeleteShared() { 76 Eventually(CF("delete-shared-domain", d.Name, "-f")).Should(Exit(0)) 77 }