Skip to content

Commit

Permalink
use assert statements for kustomize edit tests
Browse files Browse the repository at this point in the history
  • Loading branch information
natasha41575 committed May 12, 2021
1 parent fcfdf6b commit dca13a4
Show file tree
Hide file tree
Showing 12 changed files with 172 additions and 501 deletions.
36 changes: 9 additions & 27 deletions kustomize/commands/edit/add/addbase_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import (
"strings"
"testing"

"github.com/stretchr/testify/assert"
"sigs.k8s.io/kustomize/api/filesys"
"sigs.k8s.io/kustomize/kustomize/v4/commands/internal/kustfile"
testutils_test "sigs.k8s.io/kustomize/kustomize/v4/commands/internal/testutils"
Expand All @@ -26,19 +27,12 @@ func TestAddBaseHappyPath(t *testing.T) {

cmd := newCmdAddBase(fSys)
args := []string{baseDirectoryPaths}
err := cmd.RunE(cmd, args)
if err != nil {
t.Errorf("unexpected cmd error: %v", err)
}
assert.NoError(t, cmd.RunE(cmd, args))
content, err := testutils_test.ReadTestKustomization(fSys)
if err != nil {
t.Errorf("unexpected read error: %v", err)
}
assert.NoError(t, err)

for _, base := range bases {
if !strings.Contains(string(content), base) {
t.Errorf("expected base name in kustomization")
}
assert.Contains(t, string(content), base)
}
}

Expand All @@ -53,22 +47,14 @@ func TestAddBaseAlreadyThere(t *testing.T) {

cmd := newCmdAddBase(fSys)
args := []string{baseDirectoryPaths}
err := cmd.RunE(cmd, args)
if err != nil {
t.Fatalf("unexpected cmd error: %v", err)
}
assert.NoError(t, cmd.RunE(cmd, args))
// adding an existing base should return an error
err = cmd.RunE(cmd, args)
if err == nil {
t.Errorf("expected already there problem")
}
assert.Error(t, cmd.RunE(cmd, args))
var expectedErrors []string
for _, base := range bases {
msg := "base " + base + " already in kustomization file"
expectedErrors = append(expectedErrors, msg)
if !kustfile.StringInSlice(msg, expectedErrors) {
t.Errorf("unexpected error %v", err)
}
assert.True(t, kustfile.StringInSlice(msg, expectedErrors))
}
}

Expand All @@ -77,10 +63,6 @@ func TestAddBaseNoArgs(t *testing.T) {

cmd := newCmdAddBase(fSys)
err := cmd.Execute()
if err == nil {
t.Errorf("expected error: %v", err)
}
if err.Error() != "must specify a base directory" {
t.Errorf("incorrect error: %v", err.Error())
}
assert.Error(t, err)
assert.Equal(t, "must specify a base directory", err.Error())
}
51 changes: 12 additions & 39 deletions kustomize/commands/edit/add/addcomponent_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@
package add

import (
"strings"
"testing"

"github.com/stretchr/testify/assert"
"sigs.k8s.io/kustomize/api/filesys"
testutils_test "sigs.k8s.io/kustomize/kustomize/v4/commands/internal/testutils"
)
Expand All @@ -27,20 +27,11 @@ func TestAddComponentHappyPath(t *testing.T) {

cmd := newCmdAddComponent(fSys)
args := []string{componentFileName + "*"}
err := cmd.RunE(cmd, args)
if err != nil {
t.Errorf("unexpected cmd error: %v", err)
}
assert.NoError(t, cmd.RunE(cmd, args))
content, err := testutils_test.ReadTestKustomization(fSys)
if err != nil {
t.Errorf("unexpected read error: %v", err)
}
if !strings.Contains(string(content), componentFileName) {
t.Errorf("expected component name in kustomization")
}
if !strings.Contains(string(content), componentFileName+"another") {
t.Errorf("expected component name in kustomization")
}
assert.NoError(t, err)
assert.Contains(t, string(content), componentFileName)
assert.Contains(t, string(content), componentFileName+"another")
}

func TestAddComponentAlreadyThere(t *testing.T) {
Expand All @@ -50,16 +41,10 @@ func TestAddComponentAlreadyThere(t *testing.T) {

cmd := newCmdAddComponent(fSys)
args := []string{componentFileName}
err := cmd.RunE(cmd, args)
if err != nil {
t.Fatalf("unexpected cmd error: %v", err)
}
assert.NoError(t, cmd.RunE(cmd, args))

// adding an existing component doesn't return an error
err = cmd.RunE(cmd, args)
if err != nil {
t.Errorf("unexpected cmd error :%v", err)
}
assert.NoError(t, cmd.RunE(cmd, args))
}

func TestAddKustomizationFileAsComponent(t *testing.T) {
Expand All @@ -69,30 +54,18 @@ func TestAddKustomizationFileAsComponent(t *testing.T) {

cmd := newCmdAddComponent(fSys)
args := []string{componentFileName}
err := cmd.RunE(cmd, args)
if err != nil {
t.Fatalf("unexpected cmd error: %v", err)
}
assert.NoError(t, cmd.RunE(cmd, args))

content, err := testutils_test.ReadTestKustomization(fSys)
if err != nil {
t.Errorf("unexpected read error: %v", err)
}

if strings.Contains(string(content), componentFileName) {
t.Errorf("%v shouldn't be in the list of the components", componentFileName)
}
assert.NoError(t, err)
assert.NotContains(t, string(content), componentFileName)
}

func TestAddComponentNoArgs(t *testing.T) {
fSys := filesys.MakeFsInMemory()

cmd := newCmdAddComponent(fSys)
err := cmd.Execute()
if err == nil {
t.Errorf("expected error: %v", err)
}
if err.Error() != "must specify a component file" {
t.Errorf("incorrect error: %v", err.Error())
}
assert.Error(t, err)
assert.Equal(t, "must specify a component file", err.Error())
}

0 comments on commit dca13a4

Please sign in to comment.