@Test public void ifAdminValueDoesNotMatchDefaultType_returnsFalse() throws Exception { JSONObject json = emptySettingsObject() .put("admin", new JSONObject() .put("key1", false)); assertThat(validator.isValid(json.toString()), is(false)); }
@Override public boolean isValid(String json) { try { JSONObject jsonObject = new JSONObject(json); JSONObject general = jsonObject.getJSONObject("general"); JSONObject admin = jsonObject.getJSONObject("admin"); return !hasInvalidTypes(general, generalDefaults) && !hasInvalidTypes(admin, adminDefaults); } catch (JSONException e) { return false; } }
StructureAndTypeSettingsValidator implements SettingsValidator { @Override public boolean isValid(String json) { try { JSONObject jsonObject = new JSONObject(json); JSONObject general = jsonObject.getJSONObject("general"); JSONObject admin = jsonObject.getJSONObject("admin"); return !hasInvalidTypes(general, generalDefaults) && !hasInvalidTypes(admin, adminDefaults); } catch (JSONException e) { return false; } } }
StructureAndTypeSettingsValidator implements SettingsValidator { @Override public boolean isValid(String json) { try { JSONObject jsonObject = new JSONObject(json); JSONObject general = jsonObject.getJSONObject("general"); JSONObject admin = jsonObject.getJSONObject("admin"); return !hasInvalidTypes(general, generalDefaults) && !hasInvalidTypes(admin, adminDefaults); } catch (JSONException e) { return false; } } StructureAndTypeSettingsValidator(Map<String, Object> generalDefaults, Map<String, Object> adminDefaults); }
StructureAndTypeSettingsValidator implements SettingsValidator { @Override public boolean isValid(String json) { try { JSONObject jsonObject = new JSONObject(json); JSONObject general = jsonObject.getJSONObject("general"); JSONObject admin = jsonObject.getJSONObject("admin"); return !hasInvalidTypes(general, generalDefaults) && !hasInvalidTypes(admin, adminDefaults); } catch (JSONException e) { return false; } } StructureAndTypeSettingsValidator(Map<String, Object> generalDefaults, Map<String, Object> adminDefaults); @Override boolean isValid(String json); }
StructureAndTypeSettingsValidator implements SettingsValidator { @Override public boolean isValid(String json) { try { JSONObject jsonObject = new JSONObject(json); JSONObject general = jsonObject.getJSONObject("general"); JSONObject admin = jsonObject.getJSONObject("admin"); return !hasInvalidTypes(general, generalDefaults) && !hasInvalidTypes(admin, adminDefaults); } catch (JSONException e) { return false; } } StructureAndTypeSettingsValidator(Map<String, Object> generalDefaults, Map<String, Object> adminDefaults); @Override boolean isValid(String json);  }