### Question:
FileBasedVariableRegistry implements VariableRegistry { @Override public Map<VariableDescriptor, String> getVariableMap() { return Collections.unmodifiableMap(map); } FileBasedVariableRegistry(final Path[] propertiesPaths); @Override Map<VariableDescriptor, String> getVariableMap();  }### Answer:
@Test public void testCreateCustomVariableRegistry() { final Path fooPath = Paths.get("src/test/resources/TestVariableRegistry/foobar.properties"); final Path testPath = Paths.get("src/test/resources/TestVariableRegistry/test.properties"); Path[] paths = {fooPath, testPath}; final String vendorUrl = System.getProperty("java.vendor.url"); VariableRegistry variableRegistry = new FileBasedVariableRegistry(paths); final Map<VariableDescriptor, String> variables = variableRegistry.getVariableMap(); assertTrue(variables.containsKey(new VariableDescriptor("fake.property.3"))); assertEquals(vendorUrl, variableRegistry.getVariableValue("java.vendor.url")); assertEquals("test me out 3, test me out 4", variableRegistry.getVariableValue("fake.property.3")); }