@@ -167,3 +167,93 @@ func TestJSONNestedConfigure(t *testing.T) {
167167 }
168168 }` )
169169}
170+
171+ func TestJSONNestedConfigureWithSecrets (t * testing.T ) {
172+ server , err := newProviderServer (t , testprovider .SyntheticTestBridgeProvider ())
173+ require .NoError (t , err )
174+ replay .ReplaySequence (t , server , `
175+ [
176+ {
177+ "method": "/pulumirpc.ResourceProvider/Configure",
178+ "request": {
179+ "args": {
180+ "stringConfigProp": {
181+ "4dabf18193072939515e22adb298388d": "1b47061264138c4ac30d75fd1eb44270",
182+ "value": "secret-example"
183+ },
184+ "mapNestedProp": "{\"k1\":{\"4dabf18193072939515e22adb298388d\":\"1b47061264138c4ac30d75fd1eb44270\",\"value\":1},\"k2\":2}",
185+ "listNestedProps": "[{\"4dabf18193072939515e22adb298388d\":\"1b47061264138c4ac30d75fd1eb44270\",\"value\":true},false]"
186+ }
187+ },
188+ "response": {
189+ "supportsPreview": true,
190+ "acceptResources": true
191+ }
192+ },
193+ {
194+ "method": "/pulumirpc.ResourceProvider/Create",
195+ "request": {
196+ "urn": "urn:pulumi:test-stack::basicprogram::testbridge:index/testres:TestConfigRes::r1",
197+ "preview": false
198+ },
199+ "response": {
200+ "id": "id-1",
201+ "properties": {
202+ "configCopy": "secret-example",
203+ "id": "id-1"
204+ }
205+ }
206+ }
207+ ]` )
208+ }
209+
210+ func TestConfigureWithSecrets (t * testing.T ) {
211+ server , err := newProviderServer (t , testprovider .SyntheticTestBridgeProvider ())
212+ require .NoError (t , err )
213+ replay .ReplaySequence (t , server , `
214+ [
215+ {
216+ "method": "/pulumirpc.ResourceProvider/Configure",
217+ "request": {
218+ "args": {
219+ "stringConfigProp": {
220+ "4dabf18193072939515e22adb298388d": "1b47061264138c4ac30d75fd1eb44270",
221+ "value": "secret-example"
222+ },
223+ "mapNestedProp": {
224+ "k1": {
225+ "4dabf18193072939515e22adb298388d": "1b47061264138c4ac30d75fd1eb44270",
226+ "value": 1
227+ },
228+ "k2": 2
229+ },
230+ "listNestedProps": [
231+ {
232+ "4dabf18193072939515e22adb298388d": "1b47061264138c4ac30d75fd1eb44270",
233+ "value": true
234+ },
235+ false
236+ ]
237+ }
238+ },
239+ "response": {
240+ "supportsPreview": true,
241+ "acceptResources": true
242+ }
243+ },
244+ {
245+ "method": "/pulumirpc.ResourceProvider/Create",
246+ "request": {
247+ "urn": "urn:pulumi:test-stack::basicprogram::testbridge:index/testres:TestConfigRes::r1",
248+ "preview": false
249+ },
250+ "response": {
251+ "id": "id-1",
252+ "properties": {
253+ "configCopy": "secret-example",
254+ "id": "id-1"
255+ }
256+ }
257+ }
258+ ]` )
259+ }
0 commit comments