### Question:
Instructions { public static Properties merge(Properties properties, File extra) throws IOException { Properties props = load(extra); return mergeAndOverrideExisting(properties, props); } private  Instructions(); static Properties merge(Properties properties, File extra); static Properties mergeAndOverrideExisting(Properties props1, Properties props2); static Properties mergeAndSkipExisting(Properties props1, Properties props2); static Properties load(File file); static Properties sanitize(Properties properties);  }### Answer:
@Test public void testMerge() throws Exception { Properties props1 = new Properties(); props1.put("Export-Package", "org.foo"); props1.put("Import-Package", "!*"); File file = new File("src/test/resources/instructions/instructions.bnd"); assertThat(Instructions.merge(props1, file)) .hasSize(3) .containsEntry("Export-Package", "org.foo") .containsEntry("Import-Package", "*") .containsEntry("Private-Package", "org.acme"); }