-
Notifications
You must be signed in to change notification settings - Fork 112
Expand file tree
/
Copy pathreleases_test.go
More file actions
56 lines (51 loc) · 1.78 KB
/
releases_test.go
File metadata and controls
56 lines (51 loc) · 1.78 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
package _tests_test
import (
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
)
var _ = Describe("Releases", func() {
appName := getRandAppName()
Context("with no app", func() {
It("can create an app", func() {
output, err := execute("deis apps:create %s --no-remote", appName)
Expect(err).To(BeNil())
Expect(output).Should(HavePrefix("Creating Application... done, created %s", appName))
})
It("can deploy the app", func() {
output, err := execute("deis pull deis/example-go -a %s", appName)
Expect(err).To(BeNil())
Expect(output).To(ContainSubstring(HavePrefix("Creating build... done")))
})
})
Context("with a deployed app", func() {
It("can list releases", func() {
output, err := execute("deis releases:list -a %s", appName)
Expect(err).To(BeNil())
Expect(output).To(SatisfyAll(
HavePrefix("=== %s Releases", appName),
MatchRegexp(`v1\t.*\t%s created initial release`, testUser),
MatchRegexp(`v2\t.*\t%s deployed \w+`, testUser)),
)
})
It("can rollback to a previous release", func() {
output, err := execute("deis releases:rollback v1 -a %s", appName)
Expect(err).To(BeNil())
Expect(output).To(SatisfyAll(
HavePrefix("Rolling back to"),
ContainSubstring("...done"),
))
})
It("can get info on releases", func() {
output, err := execute("deis releases:info v1 -a %s", appName)
Expect(err).To(BeNil())
Expect(output).To(SatisfyAll(
HavePrefix("=== %s Release v1", appName),
MatchRegexp(`config:\s+[\w-]+`),
MatchRegexp(`owner:\s+%s`, testUser),
MatchRegexp(`summary:\s+%s \w+`, testUser),
// the below updated date has to match a string like 2015-12-22T21:20:31UTC
MatchRegexp(`updated:\s+[0-9]+-[0-9]+-[A-Z0-9]+:[0-9]+:[A-Z0-9:-]+`, appName),
MatchRegexp(`uuid:\s+[\w-]+`)))
})
})
})