Skip to content

Commit 9b6fe52

Browse files
committed
add tests for disable|enable-semantic-versioning
1 parent 1315c8e commit 9b6fe52

File tree

2 files changed

+168
-0
lines changed

2 files changed

+168
-0
lines changed
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
package test
2+
3+
import (
4+
"bytes"
5+
"fmt"
6+
. "github.com/onsi/ginkgo/v2"
7+
. "github.com/onsi/gomega"
8+
"github.com/replicatedhq/replicated/cli/cmd"
9+
"github.com/replicatedhq/replicated/pkg/kotsclient"
10+
"github.com/replicatedhq/replicated/pkg/platformclient"
11+
"github.com/replicatedhq/replicated/pkg/types"
12+
"io/ioutil"
13+
"os"
14+
)
15+
16+
var _ = Describe("channel disable semantic versioning", func() {
17+
var (
18+
httpClient *platformclient.HTTPClient
19+
kotsRestClient kotsclient.VendorV3Client
20+
app *types.KotsAppWithChannels
21+
params *Params
22+
err error
23+
tmpdir string
24+
)
25+
26+
BeforeEach(func() {
27+
params, err = GetParams()
28+
Expect(err).ToNot(HaveOccurred())
29+
30+
httpClient = platformclient.NewHTTPClient(params.APIOrigin, params.APIToken)
31+
kotsRestClient = kotsclient.VendorV3Client{HTTPClient: *httpClient}
32+
33+
app, err = kotsRestClient.CreateKOTSApp(mustToken(8))
34+
Expect(err).ToNot(HaveOccurred())
35+
36+
tmpdir, err = ioutil.TempDir("", "replicated-cli-test")
37+
Expect(err).ToNot(HaveOccurred())
38+
})
39+
40+
AfterEach(func() {
41+
err := kotsRestClient.DeleteKOTSApp(app.Id)
42+
Expect(err).ToNot(HaveOccurred())
43+
44+
err = os.RemoveAll(tmpdir)
45+
Expect(err).ToNot(HaveOccurred())
46+
})
47+
48+
Context("replicated channel disable-semantic-versioning --help ", func() {
49+
It("should print usage", func() {
50+
var stdout bytes.Buffer
51+
var stderr bytes.Buffer
52+
53+
rootCmd := cmd.GetRootCmd()
54+
rootCmd.SetArgs([]string{"channel", "disable-semantic-versioning", "--help"})
55+
56+
err = cmd.Execute(rootCmd, nil, &stdout, &stderr)
57+
Expect(err).ToNot(HaveOccurred())
58+
59+
Expect(stderr.String()).To(BeEmpty())
60+
Expect(stdout.String()).ToNot(BeEmpty())
61+
62+
Expect(stdout.String()).To(ContainSubstring("Disable semantic versioning for the CHANNEL_ID."))
63+
})
64+
})
65+
66+
Context("with a valid CHANNEL_ID", func() {
67+
It("should disable semantic versioning", func() {
68+
var stdout bytes.Buffer
69+
var stderr bytes.Buffer
70+
var chanID = app.Channels[0].ID
71+
72+
rootCmd := cmd.GetRootCmd()
73+
rootCmd.SetArgs([]string{"channel", "disable-semantic-versioning", chanID, "--app", app.Id})
74+
75+
err = cmd.Execute(rootCmd, nil, &stdout, &stderr)
76+
Expect(err).ToNot(HaveOccurred())
77+
78+
Expect(stderr.String()).To(BeEmpty())
79+
Expect(stdout.String()).ToNot(BeEmpty())
80+
81+
Expect(stdout.String()).To(ContainSubstring(fmt.Sprintf("Semantic versioning successfully disabled for channel %s\n", chanID)))
82+
})
83+
})
84+
})
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
package test
2+
3+
import (
4+
"bytes"
5+
"fmt"
6+
. "github.com/onsi/ginkgo/v2"
7+
. "github.com/onsi/gomega"
8+
"github.com/replicatedhq/replicated/cli/cmd"
9+
"github.com/replicatedhq/replicated/pkg/kotsclient"
10+
"github.com/replicatedhq/replicated/pkg/platformclient"
11+
"github.com/replicatedhq/replicated/pkg/types"
12+
"io/ioutil"
13+
"os"
14+
)
15+
16+
var _ = Describe("channel enable semantic versioning", func() {
17+
var (
18+
httpClient *platformclient.HTTPClient
19+
kotsRestClient kotsclient.VendorV3Client
20+
app *types.KotsAppWithChannels
21+
params *Params
22+
err error
23+
tmpdir string
24+
)
25+
26+
BeforeEach(func() {
27+
params, err = GetParams()
28+
Expect(err).ToNot(HaveOccurred())
29+
30+
httpClient = platformclient.NewHTTPClient(params.APIOrigin, params.APIToken)
31+
kotsRestClient = kotsclient.VendorV3Client{HTTPClient: *httpClient}
32+
33+
app, err = kotsRestClient.CreateKOTSApp(mustToken(8))
34+
Expect(err).ToNot(HaveOccurred())
35+
36+
tmpdir, err = ioutil.TempDir("", "replicated-cli-test")
37+
Expect(err).ToNot(HaveOccurred())
38+
})
39+
40+
AfterEach(func() {
41+
err := kotsRestClient.DeleteKOTSApp(app.Id)
42+
Expect(err).ToNot(HaveOccurred())
43+
44+
err = os.RemoveAll(tmpdir)
45+
Expect(err).ToNot(HaveOccurred())
46+
})
47+
48+
Context("replicated channel enable-semantic-versioning --help ", func() {
49+
It("should print usage", func() {
50+
var stdout bytes.Buffer
51+
var stderr bytes.Buffer
52+
53+
rootCmd := cmd.GetRootCmd()
54+
rootCmd.SetArgs([]string{"channel", "enable-semantic-versioning", "--help"})
55+
56+
err = cmd.Execute(rootCmd, nil, &stdout, &stderr)
57+
Expect(err).ToNot(HaveOccurred())
58+
59+
Expect(stderr.String()).To(BeEmpty())
60+
Expect(stdout.String()).ToNot(BeEmpty())
61+
62+
Expect(stdout.String()).To(ContainSubstring("Enable semantic versioning for the CHANNEL_ID."))
63+
})
64+
})
65+
66+
Context("with a valid CHANNEL_ID", func() {
67+
It("should enable semantic versioning", func() {
68+
var stdout bytes.Buffer
69+
var stderr bytes.Buffer
70+
var chanID = app.Channels[0].ID
71+
72+
rootCmd := cmd.GetRootCmd()
73+
rootCmd.SetArgs([]string{"channel", "enable-semantic-versioning", chanID, "--app", app.Id})
74+
75+
err = cmd.Execute(rootCmd, nil, &stdout, &stderr)
76+
Expect(err).ToNot(HaveOccurred())
77+
78+
Expect(stderr.String()).To(BeEmpty())
79+
Expect(stdout.String()).ToNot(BeEmpty())
80+
81+
Expect(stdout.String()).To(ContainSubstring(fmt.Sprintf("Semantic versioning successfully enabled for channel %s\n", chanID)))
82+
})
83+
})
84+
})

0 commit comments

Comments
 (0)