ProviderMetadata providerMetadata = ProviderMetadata.builder()
.id("test-provider").defaultProperties(props)
.name("My test provider").build();
Gson gson = new GsonBuilder().create();
JsonElement json = gson.toJsonTree(providerMetadata);
assertNotNull(json);
assertEquals("test-provider", json.getAsJsonObject().get("id").getAsString());
assertEquals("value1", json.getAsJsonObject().getAsJsonObject("defaultProperties").get("key1").getAsString());
assertEquals("value2", json.getAsJsonObject().getAsJsonObject("defaultProperties").get("key2").getAsString());
assertEquals("value3", json.getAsJsonObject().getAsJsonObject("defaultProperties").get("key3").getAsString());