...
1
2
3
4 package resmaptest_test
5
6 import (
7 "testing"
8
9 "sigs.k8s.io/kustomize/api/provider"
10 "sigs.k8s.io/kustomize/api/resmap"
11 "sigs.k8s.io/kustomize/api/resource"
12 "sigs.k8s.io/kustomize/kyaml/resid"
13 )
14
15
16 type rmBuilder struct {
17 t *testing.T
18 m resmap.ResMap
19 rf *resource.Factory
20 }
21
22 func NewSeededRmBuilder(t *testing.T, rf *resource.Factory, m resmap.ResMap) *rmBuilder {
23 t.Helper()
24 return &rmBuilder{t: t, rf: rf, m: m}
25 }
26
27 func NewRmBuilder(t *testing.T, rf *resource.Factory) *rmBuilder {
28 t.Helper()
29 return NewSeededRmBuilder(t, rf, resmap.New())
30 }
31
32 func NewRmBuilderDefault(t *testing.T) *rmBuilder {
33 t.Helper()
34 return NewSeededRmBuilderDefault(t, resmap.New())
35 }
36
37 func NewSeededRmBuilderDefault(t *testing.T, m resmap.ResMap) *rmBuilder {
38 t.Helper()
39 return NewSeededRmBuilder(
40 t, provider.NewDefaultDepProvider().GetResourceFactory(), m)
41 }
42
43 func (rm *rmBuilder) Add(m map[string]interface{}) *rmBuilder {
44 return rm.AddR(rm.rf.FromMap(m))
45 }
46
47 func (rm *rmBuilder) AddR(r *resource.Resource) *rmBuilder {
48 err := rm.m.Append(r)
49 if err != nil {
50 rm.t.Fatalf("test setup failure: %v", err)
51 }
52 return rm
53 }
54
55 func (rm *rmBuilder) AddWithName(n string, m map[string]interface{}) *rmBuilder {
56 err := rm.m.Append(rm.rf.FromMapWithNamespaceAndName(resid.DefaultNamespace, n, m))
57 if err != nil {
58 rm.t.Fatalf("test setup failure: %v", err)
59 }
60 return rm
61 }
62
63 func (rm *rmBuilder) AddWithNsAndName(ns string, n string, m map[string]interface{}) *rmBuilder {
64 err := rm.m.Append(rm.rf.FromMapWithNamespaceAndName(ns, n, m))
65 if err != nil {
66 rm.t.Fatalf("test setup failure: %v", err)
67 }
68 return rm
69 }
70
71 func (rm *rmBuilder) ReplaceResource(m map[string]interface{}) *rmBuilder {
72 r := rm.rf.FromMap(m)
73 _, err := rm.m.Replace(r)
74 if err != nil {
75 rm.t.Fatalf("test setup failure: %v", err)
76 }
77 return rm
78 }
79
80 func (rm *rmBuilder) ResMap() resmap.ResMap {
81 return rm.m
82 }
83
View as plain text