mirror of
https://github.com/kubernetes-sigs/kustomize.git
synced 2026-05-17 18:25:26 +00:00
Merge pull request #5495 from stormqueen1990/chore/removetest-internal-package
chore: move removetest.go to the internal package
This commit is contained in:
@@ -7,14 +7,14 @@ import (
|
||||
"errors"
|
||||
"testing"
|
||||
|
||||
"sigs.k8s.io/kustomize/kustomize/v5/commands/edit/remove_test"
|
||||
testutils_test "sigs.k8s.io/kustomize/kustomize/v5/commands/internal/testutils"
|
||||
)
|
||||
|
||||
func TestRemoveResources(t *testing.T) {
|
||||
testCases := []remove_test.Case{
|
||||
testCases := []testutils_test.RemoveTestCase{
|
||||
{
|
||||
Description: "remove resources",
|
||||
Given: remove_test.Given{
|
||||
Given: testutils_test.RemoveTestGivenValues{
|
||||
Items: []string{
|
||||
"resource1.yaml",
|
||||
"resource2.yaml",
|
||||
@@ -22,7 +22,7 @@ func TestRemoveResources(t *testing.T) {
|
||||
},
|
||||
RemoveArgs: []string{"resource1.yaml"},
|
||||
},
|
||||
Expected: remove_test.Expected{
|
||||
Expected: testutils_test.RemoveTestExpectedValues{
|
||||
Items: []string{
|
||||
"resource2.yaml",
|
||||
"resource3.yaml",
|
||||
@@ -34,7 +34,7 @@ func TestRemoveResources(t *testing.T) {
|
||||
},
|
||||
{
|
||||
Description: "remove resource with pattern",
|
||||
Given: remove_test.Given{
|
||||
Given: testutils_test.RemoveTestGivenValues{
|
||||
Items: []string{
|
||||
"foo/resource1.yaml",
|
||||
"foo/resource2.yaml",
|
||||
@@ -43,7 +43,7 @@ func TestRemoveResources(t *testing.T) {
|
||||
},
|
||||
RemoveArgs: []string{"foo/resource*.yaml"},
|
||||
},
|
||||
Expected: remove_test.Expected{
|
||||
Expected: testutils_test.RemoveTestExpectedValues{
|
||||
Items: []string{
|
||||
"do/not/deleteme/please.yaml",
|
||||
},
|
||||
@@ -56,7 +56,7 @@ func TestRemoveResources(t *testing.T) {
|
||||
},
|
||||
{
|
||||
Description: "nothing found to remove",
|
||||
Given: remove_test.Given{
|
||||
Given: testutils_test.RemoveTestGivenValues{
|
||||
Items: []string{
|
||||
"resource1.yaml",
|
||||
"resource2.yaml",
|
||||
@@ -64,7 +64,7 @@ func TestRemoveResources(t *testing.T) {
|
||||
},
|
||||
RemoveArgs: []string{"foo"},
|
||||
},
|
||||
Expected: remove_test.Expected{
|
||||
Expected: testutils_test.RemoveTestExpectedValues{
|
||||
Items: []string{
|
||||
"resource2.yaml",
|
||||
"resource3.yaml",
|
||||
@@ -74,14 +74,14 @@ func TestRemoveResources(t *testing.T) {
|
||||
},
|
||||
{
|
||||
Description: "no arguments",
|
||||
Given: remove_test.Given{},
|
||||
Expected: remove_test.Expected{
|
||||
Given: testutils_test.RemoveTestGivenValues{},
|
||||
Expected: testutils_test.RemoveTestExpectedValues{
|
||||
Err: errors.New("must specify a resource file"),
|
||||
},
|
||||
},
|
||||
{
|
||||
Description: "remove with multiple pattern arguments",
|
||||
Given: remove_test.Given{
|
||||
Given: testutils_test.RemoveTestGivenValues{
|
||||
Items: []string{
|
||||
"foo/foo.yaml",
|
||||
"bar/bar.yaml",
|
||||
@@ -94,7 +94,7 @@ func TestRemoveResources(t *testing.T) {
|
||||
"res*.yaml",
|
||||
},
|
||||
},
|
||||
Expected: remove_test.Expected{
|
||||
Expected: testutils_test.RemoveTestExpectedValues{
|
||||
Items: []string{
|
||||
"do/not/deleteme/please.yaml",
|
||||
},
|
||||
@@ -107,5 +107,5 @@ func TestRemoveResources(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
remove_test.ExecuteTestCases(t, testCases, "resources", newCmdRemoveResource)
|
||||
testutils_test.ExecuteRemoveTestCases(t, testCases, "resources", newCmdRemoveResource)
|
||||
}
|
||||
|
||||
@@ -6,15 +6,15 @@ package remove
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"sigs.k8s.io/kustomize/kustomize/v5/commands/edit/remove_test"
|
||||
testutils_test "sigs.k8s.io/kustomize/kustomize/v5/commands/internal/testutils"
|
||||
"sigs.k8s.io/kustomize/kyaml/errors"
|
||||
)
|
||||
|
||||
func TestRemoveTransformer(t *testing.T) {
|
||||
testCases := []remove_test.Case{
|
||||
testCases := []testutils_test.RemoveTestCase{
|
||||
{
|
||||
Description: "remove transformers",
|
||||
Given: remove_test.Given{
|
||||
Given: testutils_test.RemoveTestGivenValues{
|
||||
Items: []string{
|
||||
"transformer1.yaml",
|
||||
"transformer2.yaml",
|
||||
@@ -22,7 +22,7 @@ func TestRemoveTransformer(t *testing.T) {
|
||||
},
|
||||
RemoveArgs: []string{"transformer1.yaml"},
|
||||
},
|
||||
Expected: remove_test.Expected{
|
||||
Expected: testutils_test.RemoveTestExpectedValues{
|
||||
Items: []string{
|
||||
"transformer2.yaml",
|
||||
"transformer3.yaml",
|
||||
@@ -34,7 +34,7 @@ func TestRemoveTransformer(t *testing.T) {
|
||||
},
|
||||
{
|
||||
Description: "remove transformer with pattern",
|
||||
Given: remove_test.Given{
|
||||
Given: testutils_test.RemoveTestGivenValues{
|
||||
Items: []string{
|
||||
"foo/transformer1.yaml",
|
||||
"foo/transformer2.yaml",
|
||||
@@ -43,7 +43,7 @@ func TestRemoveTransformer(t *testing.T) {
|
||||
},
|
||||
RemoveArgs: []string{"foo/transformer*.yaml"},
|
||||
},
|
||||
Expected: remove_test.Expected{
|
||||
Expected: testutils_test.RemoveTestExpectedValues{
|
||||
Items: []string{
|
||||
"do/not/deleteme/please.yaml",
|
||||
},
|
||||
@@ -56,7 +56,7 @@ func TestRemoveTransformer(t *testing.T) {
|
||||
},
|
||||
{
|
||||
Description: "nothing found to remove",
|
||||
Given: remove_test.Given{
|
||||
Given: testutils_test.RemoveTestGivenValues{
|
||||
Items: []string{
|
||||
"transformer1.yaml",
|
||||
"transformer2.yaml",
|
||||
@@ -64,7 +64,7 @@ func TestRemoveTransformer(t *testing.T) {
|
||||
},
|
||||
RemoveArgs: []string{"foo"},
|
||||
},
|
||||
Expected: remove_test.Expected{
|
||||
Expected: testutils_test.RemoveTestExpectedValues{
|
||||
Items: []string{
|
||||
"transformer2.yaml",
|
||||
"transformer3.yaml",
|
||||
@@ -74,14 +74,14 @@ func TestRemoveTransformer(t *testing.T) {
|
||||
},
|
||||
{
|
||||
Description: "no arguments",
|
||||
Given: remove_test.Given{},
|
||||
Expected: remove_test.Expected{
|
||||
Given: testutils_test.RemoveTestGivenValues{},
|
||||
Expected: testutils_test.RemoveTestExpectedValues{
|
||||
Err: errors.Errorf("must specify a transformer file"),
|
||||
},
|
||||
},
|
||||
{
|
||||
Description: "remove with multiple pattern arguments",
|
||||
Given: remove_test.Given{
|
||||
Given: testutils_test.RemoveTestGivenValues{
|
||||
Items: []string{
|
||||
"foo/foo.yaml",
|
||||
"bar/bar.yaml",
|
||||
@@ -94,7 +94,7 @@ func TestRemoveTransformer(t *testing.T) {
|
||||
"tra*.yaml",
|
||||
},
|
||||
},
|
||||
Expected: remove_test.Expected{
|
||||
Expected: testutils_test.RemoveTestExpectedValues{
|
||||
Items: []string{
|
||||
"do/not/deleteme/please.yaml",
|
||||
},
|
||||
@@ -107,5 +107,5 @@ func TestRemoveTransformer(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
remove_test.ExecuteTestCases(t, testCases, "transformers", newCmdRemoveTransformer)
|
||||
testutils_test.ExecuteRemoveTestCases(t, testCases, "transformers", newCmdRemoveTransformer)
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
// Copyright 2022 The Kubernetes Authors.
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
package remove_test
|
||||
package testutils_test
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
@@ -9,21 +9,20 @@ import (
|
||||
"testing"
|
||||
|
||||
"github.com/spf13/cobra"
|
||||
testutils_test "sigs.k8s.io/kustomize/kustomize/v5/commands/internal/testutils"
|
||||
"sigs.k8s.io/kustomize/kyaml/filesys"
|
||||
)
|
||||
|
||||
// Given represents the provided inputs for the test case.
|
||||
type Given struct {
|
||||
// RemoveTestGivenValues represents the provided inputs for the test case.
|
||||
type RemoveTestGivenValues struct {
|
||||
// Items is the given input items.
|
||||
Items []string
|
||||
// RemoveArgs are the arguments to pass to the remove command.
|
||||
RemoveArgs []string
|
||||
}
|
||||
|
||||
// Expected represents the expected outputs of the test case.
|
||||
type Expected struct {
|
||||
// Expected is the collection of expected output items.
|
||||
// RemoveTestExpectedValues represents the expected outputs of the test case.
|
||||
type RemoveTestExpectedValues struct {
|
||||
// RemoveTestExpectedValues is the collection of expected output items.
|
||||
Items []string
|
||||
// Deleted is the collection of expected Deleted items (if any).
|
||||
Deleted []string
|
||||
@@ -31,26 +30,30 @@ type Expected struct {
|
||||
Err error
|
||||
}
|
||||
|
||||
// Case represents a test case to execute.
|
||||
type Case struct {
|
||||
// RemoveTestCase represents a test case to execute.
|
||||
type RemoveTestCase struct {
|
||||
// Description is the description of the test case.
|
||||
Description string
|
||||
// Given is the provided inputs for the test case.
|
||||
Given Given
|
||||
Given RemoveTestGivenValues
|
||||
// Expected is the expected outputs for the test case.
|
||||
Expected Expected
|
||||
Expected RemoveTestExpectedValues
|
||||
}
|
||||
|
||||
// ExecuteTestCases executes the provided test cases against the specified command
|
||||
// ExecuteRemoveTestCases executes the provided test cases against the specified command
|
||||
// for a particular collection (e.g. ) tests a command defined by the provided
|
||||
// collection Name (e.g. transformers or resources) and newRemoveCmdToTest function.
|
||||
func ExecuteTestCases(t *testing.T, testCases []Case, collectionName string,
|
||||
newRemoveCmdToTest func(filesys.FileSystem) *cobra.Command) {
|
||||
func ExecuteRemoveTestCases(
|
||||
t *testing.T,
|
||||
testCases []RemoveTestCase,
|
||||
collectionName string,
|
||||
newRemoveCmdToTest func(filesys.FileSystem) *cobra.Command,
|
||||
) {
|
||||
t.Helper()
|
||||
for _, tc := range testCases {
|
||||
t.Run(tc.Description, func(t *testing.T) {
|
||||
fSys := filesys.MakeFsInMemory()
|
||||
testutils_test.WriteTestKustomizationWith(
|
||||
WriteTestKustomizationWith(
|
||||
fSys,
|
||||
[]byte(fmt.Sprintf("%s:\n - %s",
|
||||
collectionName,
|
||||
@@ -61,13 +64,13 @@ func ExecuteTestCases(t *testing.T, testCases []Case, collectionName string,
|
||||
t.Errorf("unexpected cmd error: %v", err)
|
||||
} else if tc.Expected.Err != nil {
|
||||
if err.Error() != tc.Expected.Err.Error() {
|
||||
t.Errorf("expected error did not occurred. Expected: %v. Actual: %v",
|
||||
t.Errorf("expected error did not occur. Expected: %v. Actual: %v",
|
||||
tc.Expected.Err,
|
||||
err)
|
||||
}
|
||||
return
|
||||
}
|
||||
content, err := testutils_test.ReadTestKustomization(fSys)
|
||||
content, err := ReadTestKustomization(fSys)
|
||||
if err != nil {
|
||||
t.Errorf("unexpected read error: %v", err)
|
||||
}
|
||||
Reference in New Issue
Block a user