### Question:
JsonConfiguration implements Configurable<JsonElement, JsonConfiguration> { public JsonObject getJsonObject() { return this.jsonObject; } JsonConfiguration();  JsonConfiguration(@NotNull Gson gson);  JsonConfiguration(@NotNull byte[] bytes);  JsonConfiguration(String json);  JsonConfiguration(InputStream stream);  JsonConfiguration(Reader json);  JsonConfiguration(File file);  JsonConfiguration(JsonObject jsonObject); static JsonConfiguration read(Path path); @NotNull static JsonConfiguration fromMap(@NotNull Map<String, JsonElement> map); static JsonConfiguration read(String path); static JsonConfiguration read(File path); @NotNull @Override JsonConfiguration add(@NotNull String key, @Nullable JsonConfiguration value); @NotNull @Override JsonConfiguration add(@NotNull String key, @Nullable Object value); @NotNull @Override JsonConfiguration add(@NotNull String key, @Nullable String value); @NotNull @Override JsonConfiguration add(@NotNull String key, @Nullable Integer value); @NotNull @Override JsonConfiguration add(@NotNull String key, @Nullable Long value); @NotNull @Override JsonConfiguration add(@NotNull String key, @Nullable Short value); @NotNull @Override JsonConfiguration add(@NotNull String key, @Nullable Byte value); @NotNull @Override JsonConfiguration add(@NotNull String key, @Nullable Boolean value); @NotNull @Override JsonConfiguration add(@NotNull String key, @Nullable Double value); @NotNull @Override JsonConfiguration add(@NotNull String key, @Nullable Float value); @NotNull @Override JsonConfiguration remove(@NotNull String key); @NotNull @Override JsonConfiguration get(@NotNull String key); @Override T get(@NotNull String key, @NotNull TypeToken<T> type); @Override T get(@NotNull String key, @NotNull Class<T> type); @NotNull @Override String getString(@NotNull String key); @NotNull @Override Integer getInteger(String key); @NotNull @Override Long getLong(String key); @NotNull @Override Short getShort(String key); @NotNull @Override Byte getByte(String key); @NotNull @Override Boolean getBoolean(String key); @NotNull @Override Double getDouble(String key); @NotNull @Override Float getFloat(String key); @Override JsonConfiguration getOrDefault(String key, JsonConfiguration def); @Override T getOrDefault(String key, Type type, T def); @Override T getOrDefault(String key, Class<T> type, T def); @Override String getOrDefault(String key, String def); @Override Integer getOrDefault(String key, Integer def); @Override Long getOrDefault(String key, Long def); @Override Short getOrDefault(String key, Short def); @Override Byte getOrDefault(String key, Byte def); @Override Boolean getOrDefault(String key, Boolean def); @Override Double getOrDefault(String key, Double def); @Override Float getOrDefault(String key, Float def); @Override JsonConfiguration getOrDefaultIf(String key, JsonConfiguration def, Predicate<JsonConfiguration> predicate); @Override T getOrDefaultIf(String key, Type type, T def, Predicate<T> predicate); @Override T getOrDefaultIf(String key, Class<T> type, T def, Predicate<T> predicate); @Override String getOrDefaultIf(String key, String def, Predicate<String> predicate); @Override Integer getOrDefaultIf(String key, Integer def, Predicate<Integer> predicate); @Override Long getOrDefaultIf(String key, Long def, Predicate<Long> predicate); @Override Short getOrDefaultIf(String key, Short def, Predicate<Short> predicate); @Override Byte getOrDefaultIf(String key, Byte def, Predicate<Byte> predicate); @Override Boolean getOrDefaultIf(String key, Boolean def, Predicate<Boolean> predicate); @Override Double getOrDefaultIf(String key, Double def, Predicate<Double> predicate); @Override Float getOrDefaultIf(String key, Float def, Predicate<Float> predicate); @Override boolean has(String key); @Override void write(Path path); @Override void write(String path); @Override void write(File path); @NotNull @Override String toPrettyString(); @NotNull @Override byte[] toPrettyBytes(); @NotNull @Override Map<String, JsonElement> asMap(); @NotNull @Override JsonConfiguration copy(); JsonObject getJsonObject(); @NotNull Gson getGson(); static final JsonConfiguration EMPTY; }### Answer:
@Test void testInvalidFromString() { JsonConfiguration configuration = new JsonConfiguration("{grg}"); Assertions.assertTrue(configuration.getJsonObject().keySet().isEmpty()); }