Merge pull request #20 from hasheddan/provider-ref

Update Provider reference methods to use runtime Reference
This commit is contained in:
Daniel Mangum 2020-06-29 17:42:05 -05:00 committed by GitHub
commit 12a1a1fb07
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 15 additions and 12 deletions

View File

@ -110,8 +110,8 @@ func GenerateManaged(filename, header string, p *packages.Package) error {
"GetClaimReference": method.NewGetClaimReference(receiver, CoreImport),
"SetClassReference": method.NewSetClassReference(receiver, CoreImport),
"GetClassReference": method.NewGetClassReference(receiver, CoreImport),
"GetProviderReference": method.NewGetProviderReference(receiver, CoreImport),
"SetProviderReference": method.NewSetProviderReference(receiver, CoreImport),
"GetProviderReference": method.NewGetProviderReference(receiver, RuntimeImport),
"SetProviderReference": method.NewSetProviderReference(receiver, RuntimeImport),
"SetWriteConnectionSecretToReference": method.NewSetWriteConnectionSecretToReference(receiver, RuntimeImport),
"GetWriteConnectionSecretToReference": method.NewGetWriteConnectionSecretToReference(receiver, RuntimeImport),
"SetReclaimPolicy": method.NewSetReclaimPolicy(receiver, RuntimeImport, fields.NameSpec),

3
go.sum
View File

@ -16,12 +16,15 @@ github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+
github.com/stretchr/testify v1.4.0 h1:2E4SXV/wtOkTonXsotYi4li6zVWxYlZuYNCXe9XRJyk=
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859 h1:R/3boaszxrf1GEUWTVDzSKVwLmSJpwZ1yqXm8j0v2QI=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/sync v0.0.0-20190423024810-112230192c58 h1:8gQV6CLnAEikrhgkHFbMAEhagSSnXWGV915qUMm9mrU=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/tools v0.0.0-20191018212557-ed542cd5b28a h1:UuQ+70Pi/ZdWHuP4v457pkXeOynTdgd/4enxeIO/98k=
golang.org/x/tools v0.0.0-20191018212557-ed542cd5b28a/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7 h1:9zdDQZ7Thm29KFXgAX/+yaf3eVbP7djjWp/dXAppNCc=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
gopkg.in/alecthomas/kingpin.v2 v2.2.6 h1:jMFz6MfLP0/4fUyZle81rXUoxOBFi19VUFKVDOQfozc=
gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw=

View File

@ -210,10 +210,10 @@ func NewGetClassReference(receiver, core string) New {
// NewSetProviderReference returns a NewMethod that writes a SetProviderReference
// method for the supplied Object to the supplied file.
func NewSetProviderReference(receiver, core string) New {
func NewSetProviderReference(receiver, runtime string) New {
return func(f *jen.File, o types.Object) {
f.Commentf("SetProviderReference of this %s.", o.Name())
f.Func().Params(jen.Id(receiver).Op("*").Id(o.Name())).Id("SetProviderReference").Params(jen.Id("r").Op("*").Qual(core, "ObjectReference")).Block(
f.Func().Params(jen.Id(receiver).Op("*").Id(o.Name())).Id("SetProviderReference").Params(jen.Id("r").Qual(runtime, "Reference")).Block(
jen.Id(receiver).Dot(fields.NameSpec).Dot("ProviderReference").Op("=").Id("r"),
)
}
@ -221,10 +221,10 @@ func NewSetProviderReference(receiver, core string) New {
// NewGetProviderReference returns a NewMethod that writes a GetProviderReference
// method for the supplied Object to the supplied file.
func NewGetProviderReference(receiver, core string) New {
func NewGetProviderReference(receiver, runtime string) New {
return func(f *jen.File, o types.Object) {
f.Commentf("GetProviderReference of this %s.", o.Name())
f.Func().Params(jen.Id(receiver).Op("*").Id(o.Name())).Id("GetProviderReference").Params().Op("*").Qual(core, "ObjectReference").Block(
f.Func().Params(jen.Id(receiver).Op("*").Id(o.Name())).Id("GetProviderReference").Params().Qual(runtime, "Reference").Block(
jen.Return(jen.Id(receiver).Dot(fields.NameSpec).Dot("ProviderReference")),
)
}

View File

@ -243,15 +243,15 @@ func (t *Type) GetClassReference() *core.ObjectReference {
func TestNewSetProviderReference(t *testing.T) {
want := `package pkg
import core "example.org/core"
import runtime "example.org/runtime"
// SetProviderReference of this Type.
func (t *Type) SetProviderReference(r *core.ObjectReference) {
func (t *Type) SetProviderReference(r runtime.Reference) {
t.Spec.ProviderReference = r
}
`
f := jen.NewFile("pkg")
NewSetProviderReference("t", "example.org/core")(f, MockObject{Named: "Type"})
NewSetProviderReference("t", "example.org/runtime")(f, MockObject{Named: "Type"})
if diff := cmp.Diff(want, fmt.Sprintf("%#v", f)); diff != "" {
t.Errorf("NewSetProviderReference(): -want, +got\n%s", diff)
}
@ -260,15 +260,15 @@ func (t *Type) SetProviderReference(r *core.ObjectReference) {
func TestNewGetProviderReference(t *testing.T) {
want := `package pkg
import core "example.org/core"
import runtime "example.org/runtime"
// GetProviderReference of this Type.
func (t *Type) GetProviderReference() *core.ObjectReference {
func (t *Type) GetProviderReference() runtime.Reference {
return t.Spec.ProviderReference
}
`
f := jen.NewFile("pkg")
NewGetProviderReference("t", "example.org/core")(f, MockObject{Named: "Type"})
NewGetProviderReference("t", "example.org/runtime")(f, MockObject{Named: "Type"})
if diff := cmp.Diff(want, fmt.Sprintf("%#v", f)); diff != "" {
t.Errorf("NewGetProviderReference(): -want, +got\n%s", diff)
}