read resource go sdk test
This commit is contained in:
parent
536966739d
commit
55310b2ac2
|
@ -5026,3 +5026,46 @@ func TestIgnoreChangesGolangLifecycle(t *testing.T) {
|
|||
ignoreChanges = []string{}
|
||||
setupAndRunProgram(ignoreChanges)
|
||||
}
|
||||
|
||||
func TestReadResourceGolangLifecycle(t *testing.T) {
|
||||
loaders := []*deploytest.ProviderLoader{
|
||||
deploytest.NewProviderLoader("pkgA", semver.MustParse("1.0.0"), func() (plugin.Provider, error) {
|
||||
return &deploytest.Provider{
|
||||
ReadF: func(urn resource.URN, id resource.ID,
|
||||
inputs, state resource.PropertyMap) (plugin.ReadResult, resource.Status, error) {
|
||||
return plugin.ReadResult{Inputs: inputs, Outputs: state}, resource.StatusOK, nil
|
||||
},
|
||||
}, nil
|
||||
}),
|
||||
}
|
||||
|
||||
setupAndRunProgram := func() *deploy.Snapshot {
|
||||
program := deploytest.NewLanguageRuntime(func(info plugin.RunInfo, monitor *deploytest.ResourceMonitor) error {
|
||||
ctx, err := pulumi.NewContext(context.Background(), pulumi.RunInfo{
|
||||
Project: info.Project,
|
||||
Stack: info.Stack,
|
||||
Parallel: info.Parallel,
|
||||
DryRun: info.DryRun,
|
||||
MonitorAddr: info.MonitorAddress,
|
||||
})
|
||||
assert.NoError(t, err)
|
||||
|
||||
return pulumi.RunWithContext(ctx, func(ctx *pulumi.Context) error {
|
||||
opts := pulumi.ResourceOpt{}
|
||||
_, err := ctx.ReadResource("pkgA:m:typA", "resA", "someId", map[string]interface{}{}, opts)
|
||||
assert.NoError(t, err)
|
||||
|
||||
return nil
|
||||
})
|
||||
})
|
||||
|
||||
host := deploytest.NewPluginHost(nil, nil, program, loaders...)
|
||||
p := &TestPlan{
|
||||
Options: UpdateOptions{host: host},
|
||||
Steps: []TestStep{{Op: Update}},
|
||||
}
|
||||
return p.Run(t, nil)
|
||||
}
|
||||
|
||||
setupAndRunProgram()
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue