diff --git a/internal/method/resolver.go b/internal/method/resolver.go index 5ab4970..904fe74 100644 --- a/internal/method/resolver.go +++ b/internal/method/resolver.go @@ -29,7 +29,7 @@ import ( // NewResolveReferences returns a NewMethod that writes a ResolveReferences for // given managed resource, if needed. -func NewResolveReferences(traverser *xptypes.Traverser, receiver, clientPath, referencePkgPath string, helpersPkgPath string, ptrPkgPath string) New { +func NewResolveReferences(traverser *xptypes.Traverser, receiver, clientPath, referencePkgPath string, convertPkgPath string, ptrPkgPath string) New { return func(f *jen.File, o types.Object) { n, ok := o.Type().(*types.Named) if !ok { @@ -55,7 +55,7 @@ func NewResolveReferences(traverser *xptypes.Traverser, receiver, clientPath, re for i, ref := range refs { if ref.IsSlice { hasMultiResolution = true - resolverCalls[i] = encapsulate(0, multiResolutionCall(ref, referencePkgPath, helpersPkgPath), ref.GoValueFieldPath...).Line() + resolverCalls[i] = encapsulate(0, multiResolutionCall(ref, referencePkgPath, convertPkgPath), ref.GoValueFieldPath...).Line() } else { hasSingleResolution = true resolverCalls[i] = encapsulate(0, singleResolutionCall(ref, referencePkgPath, ptrPkgPath), ref.GoValueFieldPath...).Line() @@ -162,7 +162,7 @@ func singleResolutionCall(ref Reference, referencePkgPath string, ptrPkgPath str } } -func multiResolutionCall(ref Reference, referencePkgPath string, helpersPkgPath string) resolutionCallFn { +func multiResolutionCall(ref Reference, referencePkgPath string, convertPkgPath string) resolutionCallFn { return func(fields ...string) *jen.Statement { prefixPath := jen.Id(fields[0]) for i := 1; i < len(fields)-1; i++ { @@ -181,8 +181,8 @@ func multiResolutionCall(ref Reference, referencePkgPath string, helpersPkgPath } if ref.IsPointer { - setResolvedValues = currentValuePath.Clone().Op("=").Qual(helpersPkgPath, toPointersFunction).Call(jen.Id("mrsp").Dot("ResolvedValues")) - currentValuePath = jen.Qual(helpersPkgPath, fromPointersFunction).Call(currentValuePath) + setResolvedValues = currentValuePath.Clone().Op("=").Qual(convertPkgPath, toPointersFunction).Call(jen.Id("mrsp").Dot("ResolvedValues")) + currentValuePath = jen.Qual(convertPkgPath, fromPointersFunction).Call(currentValuePath) } return &jen.Statement{ diff --git a/internal/method/resolver_test.go b/internal/method/resolver_test.go index b4bcdac..b0da4bf 100644 --- a/internal/method/resolver_test.go +++ b/internal/method/resolver_test.go @@ -105,7 +105,7 @@ type Model struct { import ( "context" client "example.org/client" - helpers "example.org/helpers" + convert "example.org/convert" reference "example.org/reference" v1beta11 "github.com/crossplane/provider-aws/apis/ec2/v1beta1" v1beta1 "github.com/crossplane/provider-aws/apis/identity/v1beta1" @@ -270,7 +270,7 @@ func (mg *Model) ResolveReferences(ctx context.Context, c client.Reader) error { mg.Spec.ForProvider.SubnetIDRefs = mrsp.ResolvedReferences mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ - CurrentValues: helpers.FromPtrValues(mg.Spec.ForProvider.RouteTableIDs), + CurrentValues: convert.FromPtrValues(mg.Spec.ForProvider.RouteTableIDs), Extract: reference.ExternalName(), References: mg.Spec.ForProvider.RouteTableIDsRefs, Selector: mg.Spec.ForProvider.RouteTableIDsSelector, @@ -282,7 +282,7 @@ func (mg *Model) ResolveReferences(ctx context.Context, c client.Reader) error { if err != nil { return errors.Wrap(err, "mg.Spec.ForProvider.RouteTableIDs") } - mg.Spec.ForProvider.RouteTableIDs = helpers.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.RouteTableIDs = convert.ToPtrValues(mrsp.ResolvedValues) mg.Spec.ForProvider.RouteTableIDsRefs = mrsp.ResolvedReferences rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ @@ -320,7 +320,7 @@ func TestNewResolveReferences(t *testing.T) { t.Error(err) } f := jen.NewFilePath("golang.org/fake/v1alpha1") - NewResolveReferences(xptypes.NewTraverser(comments.In(pkgs[0])), "mg", "example.org/client", "example.org/reference", "example.org/helpers", "k8s.io/utils/ptr")(f, pkgs[0].Types.Scope().Lookup("Model")) + NewResolveReferences(xptypes.NewTraverser(comments.In(pkgs[0])), "mg", "example.org/client", "example.org/reference", "example.org/convert", "k8s.io/utils/ptr")(f, pkgs[0].Types.Scope().Lookup("Model")) if diff := cmp.Diff(generated, fmt.Sprintf("%#v", f)); diff != "" { t.Errorf("NewResolveReferences(): -want, +got\n%s", diff) }