Merge pull request #1881 from monopole/pluginSimplification

Simplify test framework
This commit is contained in:
Jeff Regan
2019-12-02 18:37:04 -08:00
committed by GitHub
37 changed files with 375 additions and 632 deletions

View File

@@ -20,10 +20,10 @@ type FakeLoader struct {
// NewFakeLoader returns a Loader that uses a fake filesystem. // NewFakeLoader returns a Loader that uses a fake filesystem.
// The loader will be restricted to root only. // The loader will be restricted to root only.
// The initialDir argument should be an absolute file path. // The root argument should be an absolute file path.
func NewFakeLoader(initialDir string) FakeLoader { func NewFakeLoader(root string) FakeLoader {
return NewFakeLoaderWithRestrictor( return NewFakeLoaderWithRestrictor(
loader.RestrictionRootOnly, filesys.MakeFsInMemory(), initialDir) loader.RestrictionRootOnly, filesys.MakeFsInMemory(), root)
} }
// NewFakeLoaderWithRestrictor returns a Loader that // NewFakeLoaderWithRestrictor returns a Loader that

View File

@@ -45,13 +45,10 @@ port: "12345"
) )
func TestLoader(t *testing.T) { func TestLoader(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() BuildGoPlugin("builtin", "", "SecretGenerator").
BuildGoPlugin("someteam.example.com", "v1", "SomeServiceGenerator")
tc.BuildGoPlugin( defer th.Reset()
"builtin", "", "SecretGenerator")
tc.BuildGoPlugin(
"someteam.example.com", "v1", "SomeServiceGenerator")
rmF := resmap.NewFactory(resource.NewFactory( rmF := resmap.NewFactory(resource.NewFactory(
kunstruct.NewKunstructuredFactoryImpl()), nil) kunstruct.NewKunstructuredFactoryImpl()), nil)

View File

@@ -21,21 +21,23 @@ import (
func makeKustTarget( func makeKustTarget(
t *testing.T, t *testing.T,
fSys filesys.FileSystem, path string) *target.KustTarget { fSys filesys.FileSystem,
root string) *target.KustTarget {
return makeKustTargetWithRf( return makeKustTargetWithRf(
t, fSys, path, t, fSys, root,
resource.NewFactory(kunstruct.NewKunstructuredFactoryImpl())) resource.NewFactory(kunstruct.NewKunstructuredFactoryImpl()))
} }
func makeKustTargetWithRf( func makeKustTargetWithRf(
t *testing.T, t *testing.T,
fSys filesys.FileSystem, path string, fSys filesys.FileSystem,
root string,
resFact *resource.Factory) *target.KustTarget { resFact *resource.Factory) *target.KustTarget {
rf := resmap.NewFactory(resFact, transformer.NewFactoryImpl()) rf := resmap.NewFactory(resFact, transformer.NewFactoryImpl())
pc := konfig.DisabledPluginConfig() pc := konfig.DisabledPluginConfig()
kt := target.NewKustTarget( kt := target.NewKustTarget(
loadertest.NewFakeLoaderWithRestrictor( loadertest.NewFakeLoaderWithRestrictor(
loader.RestrictionRootOnly, fSys, path), loader.RestrictionRootOnly, fSys, root),
valtest_test.MakeFakeValidator(), valtest_test.MakeFakeValidator(),
rf, rf,
transformer.NewFactoryImpl(), transformer.NewFactoryImpl(),

View File

@@ -28,13 +28,10 @@ import (
// TODO: Download and inflate the chart, and check that // TODO: Download and inflate the chart, and check that
// in for the test. // in for the test.
func TestChartInflatorPlugin(t *testing.T) { func TestChartInflatorPlugin(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepExecPlugin("someteam.example.com", "v1", "ChartInflator")
defer th.Reset()
tc.PrepExecPlugin(
"someteam.example.com", "v1", "ChartInflator")
th := kusttest_test.MakeHarness(t)
th.WriteK("/app", ` th.WriteK("/app", `
generators: generators:
- chartInflator.yaml - chartInflator.yaml

View File

@@ -13,13 +13,10 @@ import (
// This is a NamePrefixer that touches Deployments // This is a NamePrefixer that touches Deployments
// and Services exclusively. // and Services exclusively.
func TestCustomNamePrefixer(t *testing.T) { func TestCustomNamePrefixer(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PrefixSuffixTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "PrefixSuffixTransformer")
th := kusttest_test.MakeHarness(t)
th.WriteK("/app", ` th.WriteK("/app", `
resources: resources:
- deployment.yaml - deployment.yaml

View File

@@ -14,17 +14,11 @@ import (
// in a base, allowing them to be reused in any number of // in a base, allowing them to be reused in any number of
// kustomizations. // kustomizations.
func TestReusableCustomTransformers(t *testing.T) { func TestReusableCustomTransformers(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PrefixSuffixTransformer").
PrepBuiltin("AnnotationsTransformer").
tc.BuildGoPlugin( PrepBuiltin("LabelTransformer")
"builtin", "", "PrefixSuffixTransformer") defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "AnnotationsTransformer")
tc.BuildGoPlugin(
"builtin", "", "LabelTransformer")
th := kusttest_test.MakeHarness(t)
// First write three custom configurations for builtin plugins. // First write three custom configurations for builtin plugins.

View File

@@ -331,13 +331,10 @@ patchesStrategicMerge:
} }
func TestIssue1251_Plugins_ProdVsDev(t *testing.T) { func TestIssue1251_Plugins_ProdVsDev(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchJson6902Transformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "PatchJson6902Transformer")
th := kusttest_test.MakeHarness(t)
defineTransformerDirStructure(th) defineTransformerDirStructure(th)
th.WriteK("/app/prod", ` th.WriteK("/app/prod", `
resources: resources:
@@ -364,14 +361,11 @@ transformers:
} }
func TestIssue1251_Plugins_Local(t *testing.T) { func TestIssue1251_Plugins_Local(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchJson6902Transformer")
defer th.Reset()
tc.BuildGoPlugin( writeDeploymentBase(th.Harness)
"builtin", "", "PatchJson6902Transformer")
th := kusttest_test.MakeHarness(t)
writeDeploymentBase(th)
writeJsonTransformerPluginConfig( writeJsonTransformerPluginConfig(
th, "/app/composite", "addDnsPolicy", patchJsonDnsPolicy) th, "/app/composite", "addDnsPolicy", patchJsonDnsPolicy)
@@ -393,7 +387,7 @@ transformers:
} }
func writeJsonTransformerPluginConfig( func writeJsonTransformerPluginConfig(
th kusttest_test.Harness, path, name, patch string) { th *kusttest_test.HarnessEnhanced, path, name, patch string) {
th.WriteF(filepath.Join(path, name+"Config.yaml"), th.WriteF(filepath.Join(path, name+"Config.yaml"),
fmt.Sprintf(` fmt.Sprintf(`
apiVersion: builtin apiVersion: builtin
@@ -411,14 +405,10 @@ jsonOp: '%s'
// Remote in the sense that they are bundled in a different kustomization. // Remote in the sense that they are bundled in a different kustomization.
func TestIssue1251_Plugins_Bundled(t *testing.T) { func TestIssue1251_Plugins_Bundled(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchJson6902Transformer")
defer th.Reset()
tc.BuildGoPlugin( writeDeploymentBase(th.Harness)
"builtin", "", "PatchJson6902Transformer")
th := kusttest_test.MakeHarness(t)
writeDeploymentBase(th)
th.WriteK("/app/patches", ` th.WriteK("/app/patches", `
resources: resources:
@@ -443,8 +433,8 @@ transformers:
th.AssertActualEqualsExpected(m, expectedPatchedDeployment) th.AssertActualEqualsExpected(m, expectedPatchedDeployment)
} }
func defineTransformerDirStructure(th kusttest_test.Harness) { func defineTransformerDirStructure(th *kusttest_test.HarnessEnhanced) {
writeDeploymentBase(th) writeDeploymentBase(th.Harness)
th.WriteK("/app/patches/addDnsPolicy", ` th.WriteK("/app/patches/addDnsPolicy", `
resources: resources:

View File

@@ -18,11 +18,10 @@ import (
// its working directory and some environment variables, // its working directory and some environment variables,
// to add regression protection to plugin loading logic. // to add regression protection to plugin loading logic.
func TestPluginEnvironment(t *testing.T) { func TestPluginEnvironment(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepExecPlugin(
"someteam.example.com", "v1", "PrintPluginEnv")
tc.PrepExecPlugin( defer th.Reset()
"someteam.example.com", "v1", "PrintPluginEnv")
confirmBehavior( confirmBehavior(
kusttest_test.MakeHarnessWithFs(t, filesys.MakeFsInMemory()), kusttest_test.MakeHarnessWithFs(t, filesys.MakeFsInMemory()),

View File

@@ -90,7 +90,6 @@ resources:
} }
func TestBase(t *testing.T) { func TestBase(t *testing.T) {
//th := kusttest_test.NewKustTestHarness(t, "/app/base")
th := kusttest_test.MakeHarness(t) th := kusttest_test.MakeHarness(t)
writeBase(th) writeBase(th)
m := th.Run("/app/base", th.MakeDefaultOptions()) m := th.Run("/app/base", th.MakeDefaultOptions())
@@ -339,7 +338,6 @@ rules:
func TestMultibasesWithConflict(t *testing.T) { func TestMultibasesWithConflict(t *testing.T) {
th := kusttest_test.MakeHarness(t) th := kusttest_test.MakeHarness(t)
//th := kusttest_test.NewKustTestHarness(t, "/app/combined")
writeBase(th) writeBase(th)
writeMidOverlays(th) writeMidOverlays(th)
writeTopOverlay(th) writeTopOverlay(th)

View File

@@ -10,7 +10,7 @@ import (
"sigs.k8s.io/kustomize/api/types" "sigs.k8s.io/kustomize/api/types"
) )
func writeDeployment(th kusttest_test.Harness, path string) { func writeDeployment(th *kusttest_test.HarnessEnhanced, path string) {
th.WriteF(path, ` th.WriteF(path, `
apiVersion: apps/v1 apiVersion: apps/v1
kind: Deployment kind: Deployment
@@ -28,7 +28,7 @@ spec:
`) `)
} }
func writeStringPrefixer(th kusttest_test.Harness, path, name string) { func writeStringPrefixer(th *kusttest_test.HarnessEnhanced, path, name string) {
th.WriteF(path, ` th.WriteF(path, `
apiVersion: someteam.example.com/v1 apiVersion: someteam.example.com/v1
kind: StringPrefixer kind: StringPrefixer
@@ -37,7 +37,7 @@ metadata:
`) `)
} }
func writeDatePrefixer(th kusttest_test.Harness, path, name string) { func writeDatePrefixer(th *kusttest_test.HarnessEnhanced, path, name string) {
th.WriteF(path, ` th.WriteF(path, `
apiVersion: someteam.example.com/v1 apiVersion: someteam.example.com/v1
kind: DatePrefixer kind: DatePrefixer
@@ -47,15 +47,11 @@ metadata:
} }
func TestOrderedTransformers(t *testing.T) { func TestOrderedTransformers(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() BuildGoPlugin("someteam.example.com", "v1", "StringPrefixer").
BuildGoPlugin("someteam.example.com", "v1", "DatePrefixer")
defer th.Reset()
tc.BuildGoPlugin(
"someteam.example.com", "v1", "StringPrefixer")
tc.BuildGoPlugin(
"someteam.example.com", "v1", "DatePrefixer")
th := kusttest_test.MakeHarness(t)
th.WriteK("/app", ` th.WriteK("/app", `
resources: resources:
- deployment.yaml - deployment.yaml
@@ -89,13 +85,10 @@ spec:
} }
func TestPluginsNotEnabled(t *testing.T) { func TestPluginsNotEnabled(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() BuildGoPlugin("someteam.example.com", "v1", "StringPrefixer")
defer th.Reset()
tc.BuildGoPlugin(
"someteam.example.com", "v1", "StringPrefixer")
th := kusttest_test.MakeHarness(t)
th.WriteK("/app", ` th.WriteK("/app", `
transformers: transformers:
- stringPrefixer.yaml - stringPrefixer.yaml
@@ -111,13 +104,10 @@ transformers:
} }
func TestSedTransformer(t *testing.T) { func TestSedTransformer(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepExecPlugin("someteam.example.com", "v1", "SedTransformer")
defer th.Reset()
tc.PrepExecPlugin(
"someteam.example.com", "v1", "SedTransformer")
th := kusttest_test.MakeHarness(t)
th.WriteK("/app", ` th.WriteK("/app", `
resources: resources:
- configmap.yaml - configmap.yaml
@@ -176,16 +166,10 @@ metadata:
} }
func TestTransformedTransformers(t *testing.T) { func TestTransformedTransformers(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() BuildGoPlugin("someteam.example.com", "v1", "StringPrefixer").
BuildGoPlugin("someteam.example.com", "v1", "DatePrefixer")
tc.BuildGoPlugin( defer th.Reset()
"someteam.example.com", "v1", "StringPrefixer")
tc.BuildGoPlugin(
"someteam.example.com", "v1", "DatePrefixer")
th := kusttest_test.MakeHarness(t)
th.WriteK("/app/base", ` th.WriteK("/app/base", `
resources: resources:

View File

@@ -75,7 +75,7 @@ func (th Harness) MakeOptionsPluginsEnabled() krusty.Options {
if strings.Contains(err.Error(), "unable to find plugin root") { if strings.Contains(err.Error(), "unable to find plugin root") {
th.t.Log( th.t.Log(
"Tests that want to run with plugins enabled must be " + "Tests that want to run with plugins enabled must be " +
"bookended by calls to NewPluginTestEnv.Set(), Reset().") "bookended by calls to newPluginTestEnv.Set(), Reset().")
} }
th.t.Fatal(err) th.t.Fatal(err)
} }

View File

@@ -20,30 +20,60 @@ import (
) )
// HarnessEnhanced manages a full plugin environment for tests. // HarnessEnhanced manages a full plugin environment for tests.
// TODO: get rid of this. Combine Harness and PluginTestEnv.
type HarnessEnhanced struct { type HarnessEnhanced struct {
Harness Harness
pte *pluginTestEnv
rf *resmap.Factory rf *resmap.Factory
ldr loadertest.FakeLoader ldr loadertest.FakeLoader
pl *pLdr.Loader pl *pLdr.Loader
} }
func MakeHarnessEnhanced( func MakeEnhancedHarness(t *testing.T) *HarnessEnhanced {
t *testing.T, path string) *HarnessEnhanced { pte := newPluginTestEnv(t).set()
pc, err := konfig.EnabledPluginConfig() pc, err := konfig.EnabledPluginConfig()
if err != nil { if err != nil {
t.Fatal(err) t.Fatal(err)
} }
fSys := filesys.MakeFsInMemory() fSys := filesys.MakeFsInMemory()
rf := resmap.NewFactory( rf := resmap.NewFactory(
resource.NewFactory(kunstruct.NewKunstructuredFactoryImpl()), resource.NewFactory(kunstruct.NewKunstructuredFactoryImpl()),
transformer.NewFactoryImpl()) transformer.NewFactoryImpl())
return &HarnessEnhanced{
result := &HarnessEnhanced{
Harness: Harness{t: t, fSys: fSys}, Harness: Harness{t: t, fSys: fSys},
pte: pte,
rf: rf, rf: rf,
ldr: loadertest.NewFakeLoaderWithRestrictor( pl: pLdr.NewLoader(pc, rf)}
fLdr.RestrictionRootOnly, fSys, path), result.ResetLoaderRoot(filesys.Separator)
pl: pLdr.NewLoader(pc, rf)}
return result
}
func (th *HarnessEnhanced) Reset() {
th.pte.reset()
}
func (th *HarnessEnhanced) BuildGoPlugin(g, v, k string) *HarnessEnhanced {
th.pte.buildGoPlugin(g, v, k)
return th
}
func (th *HarnessEnhanced) PrepExecPlugin(g, v, k string) *HarnessEnhanced {
th.pte.prepExecPlugin(g, v, k)
return th
}
func (th *HarnessEnhanced) PrepBuiltin(k string) *HarnessEnhanced {
th.pte.buildGoPlugin(konfig.BuiltinPluginPackage, "", k)
return th
}
func (th *HarnessEnhanced) ResetLoaderRoot(root string) {
th.ldr = loadertest.NewFakeLoaderWithRestrictor(
fLdr.RestrictionRootOnly, th.fSys, root)
} }
func (th *HarnessEnhanced) LoadAndRunGenerator( func (th *HarnessEnhanced) LoadAndRunGenerator(

View File

@@ -16,11 +16,11 @@ import (
"sigs.k8s.io/kustomize/api/konfig" "sigs.k8s.io/kustomize/api/konfig"
) )
// PluginTestEnv manages the plugin test environment. // pluginTestEnv manages plugins for tests.
// It manages a Go plugin compiler, // It manages a Go plugin compiler,
// makes and removes a temporary working directory, // makes and removes a temporary working directory,
// and sets/resets shell env vars as needed. // and sets/resets shell env vars as needed.
type PluginTestEnv struct { type pluginTestEnv struct {
t *testing.T t *testing.T
compiler *compiler.Compiler compiler *compiler.Compiler
srcRoot string srcRoot string
@@ -29,13 +29,16 @@ type PluginTestEnv struct {
wasSet bool wasSet bool
} }
// NewPluginTestEnv returns a new instance of PluginTestEnv. // newPluginTestEnv returns a new instance of pluginTestEnv.
func NewPluginTestEnv(t *testing.T) *PluginTestEnv { func newPluginTestEnv(t *testing.T) *pluginTestEnv {
return &PluginTestEnv{t: t} return &pluginTestEnv{t: t}
} }
// Set creates a test environment. // set creates a test environment.
func (x *PluginTestEnv) Set() *PluginTestEnv { // Uses a filesystem on disk for compilation (or copying) of
// plugin code - this FileSystem has nothing to do with
// the FileSystem used for loading config yaml in the tests.
func (x *pluginTestEnv) set() *pluginTestEnv {
x.createWorkDir() x.createWorkDir()
var err error var err error
x.srcRoot, err = compiler.DeterminePluginSrcRoot(filesys.MakeFsOnDisk()) x.srcRoot, err = compiler.DeterminePluginSrcRoot(filesys.MakeFsOnDisk())
@@ -47,30 +50,25 @@ func (x *PluginTestEnv) Set() *PluginTestEnv {
return x return x
} }
// Reset restores the environment to pre-test state. // reset restores the environment to pre-test state.
func (x *PluginTestEnv) Reset() { func (x *pluginTestEnv) reset() {
x.resetEnv() x.resetEnv()
x.removeWorkDir() x.removeWorkDir()
} }
// WorkDir allows inspection of the temp working directory. // buildGoPlugin compiles a Go plugin, leaving the newly
func (x *PluginTestEnv) WorkDir() string {
return x.workDir
}
// BuildGoPlugin compiles a Go plugin, leaving the newly
// created object code in the right place - a temporary // created object code in the right place - a temporary
// working directory pointed to by KustomizePluginHomeEnv. // working directory pointed to by KustomizePluginHomeEnv.
// This avoids overwriting anything the user/developer has // This avoids overwriting anything the user/developer has
// otherwise created. // otherwise created.
func (x *PluginTestEnv) BuildGoPlugin(g, v, k string) { func (x *pluginTestEnv) buildGoPlugin(g, v, k string) {
err := x.compiler.Compile(g, v, k) err := x.compiler.Compile(g, v, k)
if err != nil { if err != nil {
x.t.Errorf("compile failed: %v", err) x.t.Errorf("compile failed: %v", err)
} }
} }
// PrepExecPlugin copies an exec plugin from it's // prepExecPlugin copies an exec plugin from it's
// home in the discovered srcRoot to the same temp // home in the discovered srcRoot to the same temp
// directory where Go plugin object code is placed. // directory where Go plugin object code is placed.
// Kustomize (and its tests) expect to find plugins // Kustomize (and its tests) expect to find plugins
@@ -78,7 +76,7 @@ func (x *PluginTestEnv) BuildGoPlugin(g, v, k string) {
// framework is compiling Go plugins to a temp dir, // framework is compiling Go plugins to a temp dir,
// it must likewise copy Exec plugins to that same // it must likewise copy Exec plugins to that same
// temp dir. // temp dir.
func (x *PluginTestEnv) PrepExecPlugin(g, v, k string) { func (x *pluginTestEnv) prepExecPlugin(g, v, k string) {
lowK := strings.ToLower(k) lowK := strings.ToLower(k)
src := filepath.Join(x.srcRoot, g, v, lowK, k) src := filepath.Join(x.srcRoot, g, v, lowK, k)
tmp := filepath.Join(x.workDir, g, v, lowK, k) tmp := filepath.Join(x.workDir, g, v, lowK, k)
@@ -92,7 +90,7 @@ func (x *PluginTestEnv) PrepExecPlugin(g, v, k string) {
} }
} }
func (x *PluginTestEnv) createWorkDir() { func (x *pluginTestEnv) createWorkDir() {
var err error var err error
x.workDir, err = ioutil.TempDir("", "kustomize-plugin-tests") x.workDir, err = ioutil.TempDir("", "kustomize-plugin-tests")
if err != nil { if err != nil {
@@ -100,7 +98,7 @@ func (x *PluginTestEnv) createWorkDir() {
} }
} }
func (x *PluginTestEnv) removeWorkDir() { func (x *pluginTestEnv) removeWorkDir() {
err := os.RemoveAll(x.workDir) err := os.RemoveAll(x.workDir)
if err != nil { if err != nil {
x.t.Errorf( x.t.Errorf(
@@ -108,12 +106,12 @@ func (x *PluginTestEnv) removeWorkDir() {
} }
} }
func (x *PluginTestEnv) setEnv() { func (x *pluginTestEnv) setEnv() {
x.oldXdg, x.wasSet = os.LookupEnv(konfig.KustomizePluginHomeEnv) x.oldXdg, x.wasSet = os.LookupEnv(konfig.KustomizePluginHomeEnv)
os.Setenv(konfig.KustomizePluginHomeEnv, x.workDir) os.Setenv(konfig.KustomizePluginHomeEnv, x.workDir)
} }
func (x *PluginTestEnv) resetEnv() { func (x *pluginTestEnv) resetEnv() {
if x.wasSet { if x.wasSet {
os.Setenv(konfig.KustomizePluginHomeEnv, x.oldXdg) os.Setenv(konfig.KustomizePluginHomeEnv, x.oldXdg)
} else { } else {

View File

@@ -6,17 +6,13 @@ package main_test
import ( import (
"testing" "testing"
"sigs.k8s.io/kustomize/api/testutils/kusttest" kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
func TestAnnotationsTransformer(t *testing.T) { func TestAnnotationsTransformer(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("AnnotationsTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "AnnotationsTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin

View File

@@ -6,22 +6,18 @@ package main_test
import ( import (
"testing" "testing"
"sigs.k8s.io/kustomize/api/testutils/kusttest" kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
func TestConfigMapGenerator(t *testing.T) { func TestConfigMapGenerator(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("ConfigMapGenerator")
defer th.Reset()
tc.BuildGoPlugin( th.WriteF("devops.env", `
"builtin", "", "ConfigMapGenerator")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
th.WriteF("/app/devops.env", `
SERVICE_PORT=32 SERVICE_PORT=32
`) `)
th.WriteF("/app/uxteam.env", ` th.WriteF("uxteam.env", `
COLOR=red COLOR=red
`) `)

View File

@@ -10,13 +10,9 @@ import (
) )
func TestHashTransformer(t *testing.T) { func TestHashTransformer(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("HashTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "HashTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin

View File

@@ -6,17 +6,13 @@ package main_test
import ( import (
"testing" "testing"
"sigs.k8s.io/kustomize/api/testutils/kusttest" kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
func TestImageTagTransformerNewTag(t *testing.T) { func TestImageTagTransformerNewTag(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("ImageTagTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "ImageTagTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -81,13 +77,9 @@ spec:
`) `)
} }
func TestImageTagTransformerNewImage(t *testing.T) { func TestImageTagTransformerNewImage(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("ImageTagTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "ImageTagTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -153,13 +145,9 @@ spec:
} }
func TestImageTagTransformerNewImageAndTag(t *testing.T) { func TestImageTagTransformerNewImageAndTag(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("ImageTagTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "ImageTagTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -226,13 +214,9 @@ spec:
} }
func TestImageTagTransformerNewDigest(t *testing.T) { func TestImageTagTransformerNewDigest(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("ImageTagTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "ImageTagTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -298,13 +282,9 @@ spec:
} }
func TestImageTagTransformerNewImageAndDigest(t *testing.T) { func TestImageTagTransformerNewImageAndDigest(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("ImageTagTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "ImageTagTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -369,14 +349,11 @@ spec:
name: init-alpine name: init-alpine
`) `)
} }
func TestImageTagTransformerEmptyContainers(t *testing.T) { func TestImageTagTransformerEmptyContainers(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("ImageTagTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "ImageTagTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin

View File

@@ -6,7 +6,7 @@ package main_test
import ( import (
"testing" "testing"
"sigs.k8s.io/kustomize/api/testutils/kusttest" kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
const ( const (
@@ -58,13 +58,9 @@ metadata:
) )
func TestInventoryTransformerCollect(t *testing.T) { func TestInventoryTransformerCollect(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("InventoryTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "InventoryTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -79,13 +75,9 @@ policy: GarbageCollect
} }
func TestInventoryTransformerIgnore(t *testing.T) { func TestInventoryTransformerIgnore(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("InventoryTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "InventoryTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -100,13 +92,9 @@ policy: GarbageIgnore
} }
func TestInventoryTransformerDefaultPolicy(t *testing.T) { func TestInventoryTransformerDefaultPolicy(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("InventoryTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "InventoryTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin

View File

@@ -10,13 +10,9 @@ import (
) )
func TestLabelTransformer(t *testing.T) { func TestLabelTransformer(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("LabelTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "LabelTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin

View File

@@ -4,19 +4,15 @@
package main_test package main_test
import ( import (
kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
"testing" "testing"
"sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
func TestLegacyOrderTransformer(t *testing.T) { func TestLegacyOrderTransformer(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("LegacyOrderTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "LegacyOrderTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin
kind: LegacyOrderTransformer kind: LegacyOrderTransformer

View File

@@ -7,17 +7,13 @@ import (
"strings" "strings"
"testing" "testing"
"sigs.k8s.io/kustomize/api/testutils/kusttest" kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
func TestNamespaceTransformer1(t *testing.T) { func TestNamespaceTransformer1(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("NamespaceTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "NamespaceTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -189,13 +185,9 @@ metadata:
} }
func TestNamespaceTransformerClusterLevelKinds(t *testing.T) { func TestNamespaceTransformerClusterLevelKinds(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("NamespaceTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "NamespaceTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
const noChangeExpected = ` const noChangeExpected = `
apiVersion: v1 apiVersion: v1
@@ -240,13 +232,9 @@ fieldSpecs:
} }
func TestNamespaceTransformerObjectConflict(t *testing.T) { func TestNamespaceTransformerObjectConflict(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("NamespaceTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "NamespaceTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
err := th.ErrorFromLoadAndRunTransformer(` err := th.ErrorFromLoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin

View File

@@ -7,7 +7,7 @@ import (
"strings" "strings"
"testing" "testing"
"sigs.k8s.io/kustomize/api/testutils/kusttest" kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
const target = ` const target = `
@@ -28,13 +28,9 @@ spec:
` `
func TestPatchJson6902TransformerMissingFile(t *testing.T) { func TestPatchJson6902TransformerMissingFile(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchJson6902Transformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "PatchJson6902Transformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
_, err := th.RunTransformer(` _, err := th.RunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -51,19 +47,15 @@ path: jsonpatch.json
if err == nil { if err == nil {
t.Fatalf("expected error") t.Fatalf("expected error")
} }
if !strings.Contains(err.Error(), "'/app/jsonpatch.json' doesn't exist") { if !strings.Contains(err.Error(), "'/jsonpatch.json' doesn't exist") {
t.Fatalf("unexpected err: %v", err) t.Fatalf("unexpected err: %v", err)
} }
} }
func TestBadPatchJson6902Transformer(t *testing.T) { func TestBadPatchJson6902Transformer(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchJson6902Transformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "PatchJson6902Transformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
_, err := th.RunTransformer(` _, err := th.RunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -86,13 +78,9 @@ jsonOp: 'thisIsNotAPatch'
} }
func TestBothEmptyJson6902Transformer(t *testing.T) { func TestBothEmptyJson6902Transformer(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchJson6902Transformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "PatchJson6902Transformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
_, err := th.RunTransformer(` _, err := th.RunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -114,13 +102,9 @@ target:
} }
func TestBothSpecifiedJson6902Transformer(t *testing.T) { func TestBothSpecifiedJson6902Transformer(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchJson6902Transformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "PatchJson6902Transformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
th.WriteF("/app/jsonpatch.json", `[ th.WriteF("/app/jsonpatch.json", `[
{"op": "replace", "path": "/spec/template/spec/containers/0/name", "value": "my-nginx"}, {"op": "replace", "path": "/spec/template/spec/containers/0/name", "value": "my-nginx"},
@@ -150,15 +134,11 @@ jsonOp: '[{"op": "add", "path": "/spec/template/spec/dnsPolicy", "value": "Clust
} }
func TestPatchJson6902TransformerFromJsonFile(t *testing.T) { func TestPatchJson6902TransformerFromJsonFile(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchJson6902Transformer")
defer th.Reset()
tc.BuildGoPlugin( th.WriteF("jsonpatch.json", `[
"builtin", "", "PatchJson6902Transformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
th.WriteF("/app/jsonpatch.json", `[
{"op": "replace", "path": "/spec/template/spec/containers/0/name", "value": "my-nginx"}, {"op": "replace", "path": "/spec/template/spec/containers/0/name", "value": "my-nginx"},
{"op": "add", "path": "/spec/replica", "value": "999"}, {"op": "add", "path": "/spec/replica", "value": "999"},
{"op": "add", "path": "/spec/template/spec/containers/0/command", "value": ["arg1", "arg2", "arg3"]} {"op": "add", "path": "/spec/template/spec/containers/0/command", "value": ["arg1", "arg2", "arg3"]}
@@ -200,15 +180,11 @@ spec:
} }
func TestPatchJson6902TransformerFromYamlFile(t *testing.T) { func TestPatchJson6902TransformerFromYamlFile(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchJson6902Transformer")
defer th.Reset()
tc.BuildGoPlugin( th.WriteF("jsonpatch.json", `
"builtin", "", "PatchJson6902Transformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
th.WriteF("/app/jsonpatch.json", `
- op: add - op: add
path: /spec/template/spec/containers/0/command path: /spec/template/spec/containers/0/command
value: ["arg1", "arg2", "arg3"] value: ["arg1", "arg2", "arg3"]
@@ -250,13 +226,9 @@ spec:
} }
func TestPatchJson6902TransformerWithInlineJSON(t *testing.T) { func TestPatchJson6902TransformerWithInlineJSON(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchJson6902Transformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "PatchJson6902Transformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -291,13 +263,9 @@ spec:
} }
func TestPatchJson6902TransformerWithInlineYAML(t *testing.T) { func TestPatchJson6902TransformerWithInlineYAML(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchJson6902Transformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "PatchJson6902Transformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin

View File

@@ -8,7 +8,7 @@ import (
"strings" "strings"
"testing" "testing"
"sigs.k8s.io/kustomize/api/testutils/kusttest" kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
const ( const (
@@ -58,12 +58,9 @@ spec:
) )
func TestPatchStrategicMergeTransformerMissingFile(t *testing.T) { func TestPatchStrategicMergeTransformerMissingFile(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchStrategicMergeTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "PatchStrategicMergeTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
_, err := th.RunTransformer(` _, err := th.RunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -77,7 +74,7 @@ paths:
t.Fatalf("expected error") t.Fatalf("expected error")
} }
if !strings.Contains(err.Error(), if !strings.Contains(err.Error(),
"'/app/patch.yaml' doesn't exist") && "'/patch.yaml' doesn't exist") &&
!strings.Contains(err.Error(), !strings.Contains(err.Error(),
"cannot unmarshal string") { "cannot unmarshal string") {
t.Fatalf("unexpected err: %v", err) t.Fatalf("unexpected err: %v", err)
@@ -85,13 +82,9 @@ paths:
} }
func TestBadPatchStrategicMergeTransformer(t *testing.T) { func TestBadPatchStrategicMergeTransformer(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchStrategicMergeTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "PatchStrategicMergeTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
_, err := th.RunTransformer(` _, err := th.RunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -110,13 +103,9 @@ patches: 'thisIsNotAPatch'
} }
func TestBothEmptyPatchStrategicMergeTransformer(t *testing.T) { func TestBothEmptyPatchStrategicMergeTransformer(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchStrategicMergeTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "PatchStrategicMergeTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
_, err := th.RunTransformer(` _, err := th.RunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -133,15 +122,11 @@ metadata:
} }
func TestPatchStrategicMergeTransformerFromFiles(t *testing.T) { func TestPatchStrategicMergeTransformerFromFiles(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchStrategicMergeTransformer")
defer th.Reset()
tc.BuildGoPlugin( th.WriteF("/patch.yaml", `
"builtin", "", "PatchStrategicMergeTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
th.WriteF("/app/patch.yaml", `
apiVersion: apps/v1 apiVersion: apps/v1
metadata: metadata:
name: myDeploy name: myDeploy
@@ -183,13 +168,9 @@ spec:
} }
func TestPatchStrategicMergeTransformerWithInlineJSON(t *testing.T) { func TestPatchStrategicMergeTransformerWithInlineJSON(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchStrategicMergeTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "PatchStrategicMergeTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -218,13 +199,9 @@ spec:
} }
func TestPatchStrategicMergeTransformerWithInlineYAML(t *testing.T) { func TestPatchStrategicMergeTransformerWithInlineYAML(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchStrategicMergeTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "PatchStrategicMergeTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -270,15 +247,11 @@ spec:
} }
func TestPatchStrategicMergeTransformerMultiplePatches(t *testing.T) { func TestPatchStrategicMergeTransformerMultiplePatches(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchStrategicMergeTransformer")
defer th.Reset()
tc.BuildGoPlugin( th.WriteF("patch1.yaml", `
"builtin", "", "PatchStrategicMergeTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
th.WriteF("/app/patch1.yaml", `
apiVersion: apps/v1 apiVersion: apps/v1
metadata: metadata:
name: myDeploy name: myDeploy
@@ -294,7 +267,7 @@ spec:
value: BAR value: BAR
`) `)
th.WriteF("/app/patch2.yaml", ` th.WriteF("patch2.yaml", `
apiVersion: apps/v1 apiVersion: apps/v1
metadata: metadata:
name: myDeploy name: myDeploy
@@ -347,15 +320,11 @@ spec:
} }
func TestStrategicMergeTransformerMultiplePatchesWithConflicts(t *testing.T) { func TestStrategicMergeTransformerMultiplePatchesWithConflicts(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchStrategicMergeTransformer")
defer th.Reset()
tc.BuildGoPlugin( th.WriteF("patch1.yaml", `
"builtin", "", "PatchStrategicMergeTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
th.WriteF("/app/patch1.yaml", `
apiVersion: apps/v1 apiVersion: apps/v1
metadata: metadata:
name: myDeploy name: myDeploy
@@ -371,7 +340,7 @@ spec:
value: BAR value: BAR
`) `)
th.WriteF("/app/patch2.yaml", ` th.WriteF("patch2.yaml", `
apiVersion: apps/v1 apiVersion: apps/v1
metadata: metadata:
name: myDeploy name: myDeploy
@@ -408,15 +377,11 @@ paths:
} }
func TestStrategicMergeTransformerWrongNamespace(t *testing.T) { func TestStrategicMergeTransformerWrongNamespace(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchStrategicMergeTransformer")
defer th.Reset()
tc.BuildGoPlugin( th.WriteF("patch.yaml", `
"builtin", "", "PatchStrategicMergeTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
th.WriteF("/app/patch.yaml", `
apiVersion: apps/v1 apiVersion: apps/v1
metadata: metadata:
name: myDeploy name: myDeploy
@@ -451,15 +416,11 @@ paths:
} }
func TestStrategicMergeTransformerNoSchema(t *testing.T) { func TestStrategicMergeTransformerNoSchema(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchStrategicMergeTransformer")
defer th.Reset()
tc.BuildGoPlugin( th.WriteF("patch.yaml", `
"builtin", "", "PatchStrategicMergeTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
th.WriteF("/app/patch.yaml", `
apiVersion: example.com/v1 apiVersion: example.com/v1
kind: Foo kind: Foo
metadata: metadata:
@@ -491,15 +452,11 @@ spec:
} }
func TestStrategicMergeTransformerNoSchemaMultiPatches(t *testing.T) { func TestStrategicMergeTransformerNoSchemaMultiPatches(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchStrategicMergeTransformer")
defer th.Reset()
tc.BuildGoPlugin( th.WriteF("patch1.yaml", `
"builtin", "", "PatchStrategicMergeTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
th.WriteF("/app/patch1.yaml", `
apiVersion: example.com/v1 apiVersion: example.com/v1
kind: Foo kind: Foo
metadata: metadata:
@@ -509,7 +466,7 @@ spec:
B: B:
C: Z C: Z
`) `)
th.WriteF("/app/patch2.yaml", ` th.WriteF("patch2.yaml", `
apiVersion: example.com/v1 apiVersion: example.com/v1
kind: Foo kind: Foo
metadata: metadata:
@@ -547,15 +504,11 @@ spec:
} }
func TestStrategicMergeTransformerNoSchemaMultiPatchesWithConflict(t *testing.T) { func TestStrategicMergeTransformerNoSchemaMultiPatchesWithConflict(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchStrategicMergeTransformer")
defer th.Reset()
tc.BuildGoPlugin( th.WriteF("patch1.yaml", `
"builtin", "", "PatchStrategicMergeTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
th.WriteF("/app/patch1.yaml", `
apiVersion: example.com/v1 apiVersion: example.com/v1
kind: Foo kind: Foo
metadata: metadata:
@@ -564,7 +517,7 @@ spec:
bar: bar:
C: Z C: Z
`) `)
th.WriteF("/app/patch2.yaml", ` th.WriteF("patch2.yaml", `
apiVersion: example.com/v1 apiVersion: example.com/v1
kind: Foo kind: Foo
metadata: metadata:
@@ -883,15 +836,13 @@ func TestSinglePatch(t *testing.T) {
}, },
} }
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchStrategicMergeTransformer")
tc.BuildGoPlugin( defer th.Reset()
"builtin", "", "PatchStrategicMergeTransformer")
for _, test := range tests { for _, test := range tests {
th := kusttest_test.MakeHarnessEnhanced(t, fmt.Sprintf("/%s", test.name)) th.ResetLoaderRoot(fmt.Sprintf("/%s", test.name))
th.WriteF(fmt.Sprintf("/%s/patch%d.yaml", test.name, 0), test.patch) th.WriteF(fmt.Sprintf("/%s/patch%d.yaml", test.name, 0), test.patch)
if test.errorExpected { if test.errorExpected {
err := th.ErrorFromLoadAndRunTransformer(toConfig(test.patch), test.base) err := th.ErrorFromLoadAndRunTransformer(toConfig(test.patch), test.base)
compareExpectedError(t, test.name, err, test.errorMsg) compareExpectedError(t, test.name, err, test.errorMsg)
@@ -986,13 +937,12 @@ func TestMultiplePatches(t *testing.T) {
}, },
} }
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchStrategicMergeTransformer")
tc.BuildGoPlugin( defer th.Reset()
"builtin", "", "PatchStrategicMergeTransformer")
for _, test := range tests { for _, test := range tests {
th := kusttest_test.MakeHarnessEnhanced(t, fmt.Sprintf("/%s", test.name)) th.ResetLoaderRoot(fmt.Sprintf("/%s", test.name))
for idx, patch := range test.patch { for idx, patch := range test.patch {
th.WriteF(fmt.Sprintf("/%s/patch%d.yaml", test.name, idx), patch) th.WriteF(fmt.Sprintf("/%s/patch%d.yaml", test.name, idx), patch)
} }
@@ -1117,13 +1067,12 @@ func TestMultiplePatchesWithConflict(t *testing.T) {
}, },
} }
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchStrategicMergeTransformer")
tc.BuildGoPlugin( defer th.Reset()
"builtin", "", "PatchStrategicMergeTransformer")
for _, test := range tests { for _, test := range tests {
th := kusttest_test.MakeHarnessEnhanced(t, fmt.Sprintf("/%s", test.name)) th.ResetLoaderRoot(fmt.Sprintf("/%s", test.name))
for idx, patch := range test.patch { for idx, patch := range test.patch {
th.WriteF(fmt.Sprintf("/%s/patch%d.yaml", test.name, idx), patch) th.WriteF(fmt.Sprintf("/%s/patch%d.yaml", test.name, idx), patch)
} }
@@ -1226,13 +1175,12 @@ func TestMultipleNamespaces(t *testing.T) {
}, },
} }
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchStrategicMergeTransformer")
tc.BuildGoPlugin( defer th.Reset()
"builtin", "", "PatchStrategicMergeTransformer")
for _, test := range tests { for _, test := range tests {
th := kusttest_test.MakeHarnessEnhanced(t, fmt.Sprintf("/%s", test.name)) th.ResetLoaderRoot(fmt.Sprintf("/%s", test.name))
for idx, patch := range test.patch { for idx, patch := range test.patch {
th.WriteF(fmt.Sprintf("/%s/patch%d.yaml", test.name, idx), patch) th.WriteF(fmt.Sprintf("/%s/patch%d.yaml", test.name, idx), patch)
} }
@@ -1248,15 +1196,11 @@ func TestMultipleNamespaces(t *testing.T) {
} }
func TestPatchStrategicMergeTransformerPatchDelete(t *testing.T) { func TestPatchStrategicMergeTransformerPatchDelete(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchStrategicMergeTransformer")
defer th.Reset()
tc.BuildGoPlugin( th.WriteF("patch.yaml", `
"builtin", "", "PatchStrategicMergeTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
th.WriteF("/app/patch.yaml", `
apiVersion: apps/v1 apiVersion: apps/v1
metadata: metadata:
name: myDeploy name: myDeploy

View File

@@ -7,7 +7,7 @@ import (
"strings" "strings"
"testing" "testing"
"sigs.k8s.io/kustomize/api/testutils/kusttest" kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
const ( const (
@@ -65,12 +65,9 @@ spec:
) )
func TestPatchTransformerMissingFile(t *testing.T) { func TestPatchTransformerMissingFile(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "PatchTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
_, err := th.RunTransformer(` _, err := th.RunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -83,18 +80,15 @@ path: patch.yaml
t.Fatalf("expected error") t.Fatalf("expected error")
} }
if !strings.Contains(err.Error(), if !strings.Contains(err.Error(),
"'/app/patch.yaml' doesn't exist") { "'/patch.yaml' doesn't exist") {
t.Fatalf("unexpected err: %v", err) t.Fatalf("unexpected err: %v", err)
} }
} }
func TestPatchTransformerBadPatch(t *testing.T) { func TestPatchTransformerBadPatch(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "PatchTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
_, err := th.RunTransformer(` _, err := th.RunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -113,12 +107,9 @@ patch: "thisIsNotAPatch"
} }
func TestPatchTransformerMissingSelector(t *testing.T) { func TestPatchTransformerMissingSelector(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "PatchTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
_, err := th.RunTransformer(` _, err := th.RunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -137,13 +128,9 @@ patch: '[{"op": "add", "path": "/spec/template/spec/dnsPolicy", "value": "Cluste
} }
func TestPatchTransformerBothEmptyPathAndPatch(t *testing.T) { func TestPatchTransformerBothEmptyPathAndPatch(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "PatchTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
_, err := th.RunTransformer(` _, err := th.RunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -160,13 +147,9 @@ metadata:
} }
func TestPatchTransformerBothNonEmptyPathAndPatch(t *testing.T) { func TestPatchTransformerBothNonEmptyPathAndPatch(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "PatchTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
_, err := th.RunTransformer(` _, err := th.RunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -185,15 +168,11 @@ Patch: "something"
} }
func TestPatchTransformerFromFiles(t *testing.T) { func TestPatchTransformerFromFiles(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchTransformer")
defer th.Reset()
tc.BuildGoPlugin( th.WriteF("patch.yaml", `
"builtin", "", "PatchTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
th.WriteF("/app/patch.yaml", `
apiVersion: apps/v1 apiVersion: apps/v1
kind: Deployment kind: Deployment
metadata: metadata:
@@ -267,13 +246,9 @@ spec:
} }
func TestPatchTransformerWithInline(t *testing.T) { func TestPatchTransformerWithInline(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PatchTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "PatchTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin

View File

@@ -6,17 +6,14 @@ package main_test
import ( import (
"testing" "testing"
"sigs.k8s.io/kustomize/api/testutils/kusttest" kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
func TestPrefixSuffixTransformer(t *testing.T) { func TestPrefixSuffixTransformer(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PrefixSuffixTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "PrefixSuffixTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin
kind: PrefixSuffixTransformer kind: PrefixSuffixTransformer

View File

@@ -6,17 +6,13 @@ package main_test
import ( import (
"testing" "testing"
"sigs.k8s.io/kustomize/api/testutils/kusttest" kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
func TestReplicaCountTransformer(t *testing.T) { func TestReplicaCountTransformer(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("ReplicaCountTransformer")
defer th.Reset()
tc.BuildGoPlugin(
"builtin", "", "ReplicaCountTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -152,13 +148,10 @@ spec:
} }
func TestMatchesCurrentID(t *testing.T) { func TestMatchesCurrentID(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("PrefixSuffixTransformer").
PrepBuiltin("ReplicaCountTransformer")
tc.BuildGoPlugin("builtin", "", "PrefixSuffixTransformer") defer th.Reset()
tc.BuildGoPlugin("builtin", "", "ReplicaCountTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin
@@ -198,12 +191,9 @@ spec:
} }
func TestNoMatch(t *testing.T) { func TestNoMatch(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("ReplicaCountTransformer")
defer th.Reset()
tc.BuildGoPlugin("builtin", "", "ReplicaCountTransformer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
err := th.ErrorFromLoadAndRunTransformer(` err := th.ErrorFromLoadAndRunTransformer(`
apiVersion: builtin apiVersion: builtin

View File

@@ -6,25 +6,21 @@ package main_test
import ( import (
"testing" "testing"
"sigs.k8s.io/kustomize/api/testutils/kusttest" kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
func TestSecretGenerator(t *testing.T) { func TestSecretGenerator(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepBuiltin("SecretGenerator")
defer th.Reset()
tc.BuildGoPlugin( th.WriteF("a.env", `
"builtin", "", "SecretGenerator")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
th.WriteF("/app/a.env", `
ROUTER_PASSWORD=admin ROUTER_PASSWORD=admin
`) `)
th.WriteF("/app/b.env", ` th.WriteF("b.env", `
DB_PASSWORD=iloveyou DB_PASSWORD=iloveyou
`) `)
th.WriteF("/app/longsecret.txt", ` th.WriteF("longsecret.txt", `
Lorem ipsum dolor sit amet, Lorem ipsum dolor sit amet,
consectetur adipiscing elit. consectetur adipiscing elit.
`) `)

View File

@@ -6,17 +6,13 @@ package main_test
import ( import (
"testing" "testing"
"sigs.k8s.io/kustomize/api/testutils/kusttest" kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
func TestBashedConfigMapPlugin(t *testing.T) { func TestBashedConfigMapPlugin(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepExecPlugin("someteam.example.com", "v1", "BashedConfigMap")
defer th.Reset()
tc.PrepExecPlugin(
"someteam.example.com", "v1", "BashedConfigMap")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
m := th.LoadAndRunGenerator(` m := th.LoadAndRunGenerator(`
apiVersion: someteam.example.com/v1 apiVersion: someteam.example.com/v1

View File

@@ -11,7 +11,7 @@ import (
"regexp" "regexp"
"testing" "testing"
"sigs.k8s.io/kustomize/api/testutils/kusttest" kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
// This test requires having the helm binary on the PATH. // This test requires having the helm binary on the PATH.
@@ -19,13 +19,9 @@ import (
// TODO: Download and inflate the chart, and check that // TODO: Download and inflate the chart, and check that
// in for the test. // in for the test.
func TestChartInflator(t *testing.T) { func TestChartInflator(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepExecPlugin("someteam.example.com", "v1", "ChartInflator")
defer th.Reset()
tc.PrepExecPlugin(
"someteam.example.com", "v1", "ChartInflator")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
m := th.LoadAndRunGenerator(` m := th.LoadAndRunGenerator(`
apiVersion: someteam.example.com/v1 apiVersion: someteam.example.com/v1

View File

@@ -6,16 +6,13 @@ package main_test
import ( import (
"testing" "testing"
"sigs.k8s.io/kustomize/api/testutils/kusttest" kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
func TestDatePrefixerPlugin(t *testing.T) { func TestDatePrefixerPlugin(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() BuildGoPlugin("someteam.example.com", "v1", "DatePrefixer")
defer th.Reset()
tc.BuildGoPlugin(
"someteam.example.com", "v1", "DatePrefixer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
m := th.LoadAndRunTransformer(` m := th.LoadAndRunTransformer(`
apiVersion: someteam.example.com/v1 apiVersion: someteam.example.com/v1

View File

@@ -10,19 +10,14 @@ package main_test
import ( import (
"testing" "testing"
"sigs.k8s.io/kustomize/api/testutils/kusttest" kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
// This test requires having the go-getter binary on the PATH. // This test requires having the go-getter binary on the PATH.
//
func TestGoGetter(t *testing.T) { func TestGoGetter(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepExecPlugin("someteam.example.com", "v1", "GoGetter")
defer th.Reset()
tc.PrepExecPlugin(
"someteam.example.com", "v1", "GoGetter")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
m := th.LoadAndRunGenerator(` m := th.LoadAndRunGenerator(`
apiVersion: someteam.example.com/v1 apiVersion: someteam.example.com/v1
@@ -44,13 +39,9 @@ metadata:
} }
func TestGoGetterUrl(t *testing.T) { func TestGoGetterUrl(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepExecPlugin("someteam.example.com", "v1", "GoGetter")
defer th.Reset()
tc.PrepExecPlugin(
"someteam.example.com", "v1", "GoGetter")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
m := th.LoadAndRunGenerator(` m := th.LoadAndRunGenerator(`
apiVersion: someteam.example.com/v1 apiVersion: someteam.example.com/v1
@@ -73,13 +64,9 @@ metadata:
} }
func TestGoGetterCommand(t *testing.T) { func TestGoGetterCommand(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepExecPlugin("someteam.example.com", "v1", "GoGetter")
defer th.Reset()
tc.PrepExecPlugin(
"someteam.example.com", "v1", "GoGetter")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
m := th.LoadAndRunGenerator(` m := th.LoadAndRunGenerator(`
apiVersion: someteam.example.com/v1 apiVersion: someteam.example.com/v1
@@ -102,13 +89,9 @@ metadata:
} }
func TestGoGetterSubPath(t *testing.T) { func TestGoGetterSubPath(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepExecPlugin("someteam.example.com", "v1", "GoGetter")
defer th.Reset()
tc.PrepExecPlugin(
"someteam.example.com", "v1", "GoGetter")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
m := th.LoadAndRunGenerator(` m := th.LoadAndRunGenerator(`
apiVersion: someteam.example.com/v1 apiVersion: someteam.example.com/v1

View File

@@ -7,7 +7,7 @@ import (
"strings" "strings"
"testing" "testing"
"sigs.k8s.io/kustomize/api/testutils/kusttest" kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
func shouldContain(t *testing.T, s []byte, x string) { func shouldContain(t *testing.T, s []byte, x string) {
@@ -17,13 +17,11 @@ func shouldContain(t *testing.T, s []byte, x string) {
} }
func TestPrintPluginEnvPlugin(t *testing.T) { func TestPrintPluginEnvPlugin(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepExecPlugin("someteam.example.com", "v1", "PrintPluginEnv")
// Just to be clear.
tc.PrepExecPlugin( th.ResetLoaderRoot("/theAppRoot")
"someteam.example.com", "v1", "PrintPluginEnv") defer th.Reset()
th := kusttest_test.MakeHarnessEnhanced(t, "/theAppRoot")
m := th.LoadAndRunGenerator(` m := th.LoadAndRunGenerator(`
apiVersion: someteam.example.com/v1 apiVersion: someteam.example.com/v1

View File

@@ -6,17 +6,13 @@ package main_test
import ( import (
"testing" "testing"
"sigs.k8s.io/kustomize/api/testutils/kusttest" kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
func TestSecretsFromDatabasePlugin(t *testing.T) { func TestSecretsFromDatabasePlugin(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() BuildGoPlugin("someteam.example.com", "v1", "SecretsFromDatabase")
defer th.Reset()
tc.BuildGoPlugin(
"someteam.example.com", "v1", "SecretsFromDatabase")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
m := th.LoadAndRunGenerator(` m := th.LoadAndRunGenerator(`
apiVersion: someteam.example.com/v1 apiVersion: someteam.example.com/v1

View File

@@ -6,17 +6,15 @@ package main_test
import ( import (
"testing" "testing"
"sigs.k8s.io/kustomize/api/testutils/kusttest" kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
func TestSedTransformer(t *testing.T) { func TestSedTransformer(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepExecPlugin("someteam.example.com", "v1", "SedTransformer")
defer th.Reset()
tc.PrepExecPlugin("someteam.example.com", "v1", "SedTransformer") th.WriteF("sed-input.txt", `
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
th.WriteF("/app/sed-input.txt", `
s/$FRUIT/orange/g s/$FRUIT/orange/g
s/$VEGGIE/tomato/g s/$VEGGIE/tomato/g
`) `)

View File

@@ -6,17 +6,13 @@ package main_test
import ( import (
"testing" "testing"
"sigs.k8s.io/kustomize/api/testutils/kusttest" kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
func TestSomeServiceGeneratorPlugin(t *testing.T) { func TestSomeServiceGeneratorPlugin(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).BuildGoPlugin(
defer tc.Reset()
tc.BuildGoPlugin(
"someteam.example.com", "v1", "SomeServiceGenerator") "someteam.example.com", "v1", "SomeServiceGenerator")
defer th.Reset()
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
m := th.LoadAndRunGenerator(` m := th.LoadAndRunGenerator(`
apiVersion: someteam.example.com/v1 apiVersion: someteam.example.com/v1

View File

@@ -6,16 +6,14 @@ package main_test
import ( import (
"testing" "testing"
"sigs.k8s.io/kustomize/api/testutils/kusttest" kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
func TestStringPrefixerPlugin(t *testing.T) { func TestStringPrefixerPlugin(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() BuildGoPlugin(
"someteam.example.com", "v1", "StringPrefixer")
tc.BuildGoPlugin( defer th.Reset()
"someteam.example.com", "v1", "StringPrefixer")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
m := th.LoadAndRunTransformer(` m := th.LoadAndRunTransformer(`
apiVersion: someteam.example.com/v1 apiVersion: someteam.example.com/v1

View File

@@ -9,15 +9,13 @@ import (
"strings" "strings"
"testing" "testing"
"sigs.k8s.io/kustomize/api/testutils/kusttest" kusttest_test "sigs.k8s.io/kustomize/api/testutils/kusttest"
) )
func TestValidatorHappy(t *testing.T) { func TestValidatorHappy(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepExecPlugin("someteam.example.com", "v1", "Validator")
defer th.Reset()
tc.PrepExecPlugin("someteam.example.com", "v1", "Validator")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
rm := th.LoadAndRunTransformer(` rm := th.LoadAndRunTransformer(`
apiVersion: someteam.example.com/v1 apiVersion: someteam.example.com/v1
@@ -48,11 +46,9 @@ metadata:
} }
func TestValidatorUnHappy(t *testing.T) { func TestValidatorUnHappy(t *testing.T) {
tc := kusttest_test.NewPluginTestEnv(t).Set() th := kusttest_test.MakeEnhancedHarness(t).
defer tc.Reset() PrepExecPlugin("someteam.example.com", "v1", "Validator")
defer th.Reset()
tc.PrepExecPlugin("someteam.example.com", "v1", "Validator")
th := kusttest_test.MakeHarnessEnhanced(t, "/app")
err := th.ErrorFromLoadAndRunTransformer(` err := th.ErrorFromLoadAndRunTransformer(`
apiVersion: someteam.example.com/v1 apiVersion: someteam.example.com/v1