fix tests

This commit is contained in:
Bryce Lampe
2024-04-26 11:49:50 -07:00
parent 63ca9973ae
commit f2e43df5af
3 changed files with 43 additions and 11 deletions

View File

@@ -24,7 +24,10 @@ import (
emptypb "google.golang.org/protobuf/types/known/emptypb"
"google.golang.org/protobuf/types/known/structpb"
pulumirpc "github.com/pulumi/pulumi/sdk/v3/proto/go"
provider "github.com/pulumi/pulumi-go-provider"
"github.com/pulumi/pulumi-go-provider/integration"
"github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin"
rpc "github.com/pulumi/pulumi/sdk/v3/proto/go"
)
// TestConfigure checks backwards-compatibility with SDKs that still send
@@ -34,8 +37,6 @@ import (
func TestConfigure(t *testing.T) {
t.Parallel()
ctx := context.Background()
p, err := New(nil)
require.NoError(t, err)
@@ -44,8 +45,25 @@ func TestConfigure(t *testing.T) {
})
require.NoError(t, err)
_, err = p.Configure(ctx, &pulumirpc.ConfigureRequest{
Args: args,
// Ideally we would just call p.Configure directly, but we need the
// integration server to inject runtime info for us.
argsMap, err := plugin.UnmarshalProperties(args, plugin.MarshalOptions{})
require.NoError(t, err)
s := integration.NewServer("docker-build", semver.Version{Major: 0}, provider.Provider{
// Roundabout way to get the integration server to invoke our outermost
// Configure RPC endpoint.
Configure: func(ctx context.Context, req provider.ConfigureRequest) error {
args, err := plugin.MarshalProperties(req.Args, plugin.MarshalOptions{})
require.NoError(t, err)
_, err = p.Configure(ctx, &rpc.ConfigureRequest{
Variables: req.Variables,
Args: args,
})
return err
},
})
err = s.Configure(provider.ConfigureRequest{
Args: argsMap,
})
assert.NoError(t, err)