Skip to content

Commit bb0aaee

Browse files
committed
add GRPC tests for GenerateResourceConfig
1 parent 5d99e2e commit bb0aaee

File tree

2 files changed

+66
-0
lines changed

2 files changed

+66
-0
lines changed

internal/plugin/grpc_provider_test.go

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2102,3 +2102,36 @@ func TestGRPCProvider_ListResource_Limit(t *testing.T) {
21022102
t.Fatalf("Expected 2 events, got %d", len(results))
21032103
}
21042104
}
2105+
2106+
func TestGRPCProvider_GenerateResourceConfig(t *testing.T) {
2107+
client := mockProviderClient(t)
2108+
p := &GRPCProvider{
2109+
client: client,
2110+
}
2111+
client.EXPECT().GenerateResourceConfig(
2112+
gomock.Any(),
2113+
gomock.Cond[any](func(x any) bool {
2114+
req := x.(*proto.GenerateResourceConfig_Request)
2115+
if req.TypeName != "resource" {
2116+
return false
2117+
}
2118+
if req.State == nil {
2119+
t.Log("GenerateResourceConfig state is nil")
2120+
return false
2121+
}
2122+
return true
2123+
}),
2124+
).Return(&proto.GenerateResourceConfig_Response{
2125+
Config: &proto.DynamicValue{
2126+
Msgpack: []byte("\x81\xa4attr\xa3bar"),
2127+
},
2128+
}, nil)
2129+
resp := p.GenerateResourceConfig(providers.GenerateResourceConfigRequest{
2130+
TypeName: "resource",
2131+
State: cty.ObjectVal(map[string]cty.Value{
2132+
"computed": cty.StringVal("computed"),
2133+
"attr": cty.StringVal("foo"),
2134+
}),
2135+
})
2136+
checkDiags(t, resp.Diagnostics)
2137+
}

internal/plugin6/grpc_provider_test.go

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3366,3 +3366,36 @@ func TestGRPCProvider_WriteStateBytes(t *testing.T) {
33663366
}
33673367
})
33683368
}
3369+
3370+
func TestGRPCProvider_GenerateResourceConfig(t *testing.T) {
3371+
client := mockProviderClient(t)
3372+
p := &GRPCProvider{
3373+
client: client,
3374+
}
3375+
client.EXPECT().GenerateResourceConfig(
3376+
gomock.Any(),
3377+
gomock.Cond[any](func(x any) bool {
3378+
req := x.(*proto.GenerateResourceConfig_Request)
3379+
if req.TypeName != "resource" {
3380+
return false
3381+
}
3382+
if req.State == nil {
3383+
t.Log("GenerateResourceConfig state is nil")
3384+
return false
3385+
}
3386+
return true
3387+
}),
3388+
).Return(&proto.GenerateResourceConfig_Response{
3389+
Config: &proto.DynamicValue{
3390+
Msgpack: []byte("\x81\xa4attr\xa3bar"),
3391+
},
3392+
}, nil)
3393+
resp := p.GenerateResourceConfig(providers.GenerateResourceConfigRequest{
3394+
TypeName: "resource",
3395+
State: cty.ObjectVal(map[string]cty.Value{
3396+
"computed": cty.StringVal("computed"),
3397+
"attr": cty.StringVal("foo"),
3398+
}),
3399+
})
3400+
checkDiags(t, resp.Diagnostics)
3401+
}

0 commit comments

Comments
 (0)