private void assertParentFieldValues(Settings.Setting setting, Map<String, String>... fieldsValues) { if (fieldsValues.length == 0) { assertThat(setting.getParentValueOneOfCase()).isEqualTo(PARENTVALUEONEOF_NOT_SET); } else { assertThat(setting.getParentFieldValues().getFieldValuesList()).hasSize(fieldsValues.length); int index = 0; for (Settings.FieldValues.Value fieldsValue : setting.getParentFieldValues().getFieldValuesList()) { assertThat(fieldsValue.getValue()).isEqualTo(fieldsValues[index]); index++; } } }
private static void convertPropertySetToProps(Map<String, String> result, Setting s) { List<String> ids = new ArrayList<>(); int id = 1; for (Value v : s.getFieldValues().getFieldValuesList()) { for (Map.Entry<String, String> entry : v.getValue().entrySet()) { result.put(s.getKey() + "." + id + "." + entry.getKey(), entry.getValue()); } ids.add(String.valueOf(id)); id++; } result.put(s.getKey(), ids.stream().collect(Collectors.joining(","))); } }
private Settings.FieldValues.Builder createFieldValuesBuilder(List<Map<String, String>> fieldValues) { Settings.FieldValues.Builder builder = Settings.FieldValues.newBuilder(); for (Map<String, String> propertySetMap : fieldValues) { builder.addFieldValuesBuilder().putAllValue(propertySetMap); } return builder; }
@Test public void should_load_global_propertyset_settings() { Builder valuesBuilder = Value.newBuilder(); valuesBuilder.getMutableValue().put("filepattern", "**/*.xml"); valuesBuilder.getMutableValue().put("rulepattern", "*:S12345"); Value value1 = valuesBuilder.build(); valuesBuilder.clear(); valuesBuilder.getMutableValue().put("filepattern", "**/*.java"); valuesBuilder.getMutableValue().put("rulepattern", "*:S456"); Value value2 = valuesBuilder.build(); assertThat(DefaultSettingsLoader.toMap(asList(Setting.newBuilder() .setKey("sonar.issue.exclusions.multicriteria") .setFieldValues(FieldValues.newBuilder().addFieldValues(value1).addFieldValues(value2)).build()))) .containsOnly(entry("sonar.issue.exclusions.multicriteria", "1,2"), entry("sonar.issue.exclusions.multicriteria.1.filepattern", "**/*.xml"), entry("sonar.issue.exclusions.multicriteria.1.rulepattern", "*:S12345"), entry("sonar.issue.exclusions.multicriteria.2.filepattern", "**/*.java"), entry("sonar.issue.exclusions.multicriteria.2.rulepattern", "*:S456")); }
private Settings.FieldValues.Builder createFieldValuesBuilder(List<Map<String, String>> fieldValues) { Settings.FieldValues.Builder builder = Settings.FieldValues.newBuilder(); for (Map<String, String> propertySetMap : fieldValues) { builder.addFieldValuesBuilder().putAllValue(propertySetMap); } return builder; }
private static void convertPropertySetToProps(Map<String, String> result, Setting s) { List<String> ids = new ArrayList<>(); int id = 1; for (Value v : s.getFieldValues().getFieldValuesList()) { for (Map.Entry<String, String> entry : v.getValue().entrySet()) { result.put(s.getKey() + "." + id + "." + entry.getKey(), entry.getValue()); } ids.add(String.valueOf(id)); id++; } result.put(s.getKey(), ids.stream().collect(Collectors.joining(","))); } }
private void assertFieldValues(Settings.Setting setting, Map<String, String>... fieldsValues) { assertThat(setting.getFieldValues().getFieldValuesList()).hasSize(fieldsValues.length); int index = 0; for (Settings.FieldValues.Value fieldsValue : setting.getFieldValues().getFieldValuesList()) { assertThat(fieldsValue.getValue()).isEqualTo(fieldsValues[index]); index++; } }