### Question:
SystemPropertiesBean implements CommandListener { @Command public String home() { return System.getProperty("user.home"); }  @Command String home(); @Command String home(@Exists @Directory File file); @Command String user(); @Command String dir(); @Command String dir(@Exists @Directory File file); @Command String setProperty(@Option({"key", "k"}) String key, @Option({"value", "v"}) String value); @Command String getProperty(@Option({"key", "k"}) String key); @Command String javaVendor(); @Command String javaVendorUrl(); @Command String javaVersion(); @Command String osArch(); @Command String osName(); @Command String osVersion();  }### Answer:
@Test public void testHome() throws Exception { assertEquals(System.getProperty("user.home"), main.exec("home")); final File newHome = new File(main.exec("home") + File.separator + "kurtcobain"); Files.mkdir(newHome); main.exec("home", newHome.getAbsolutePath()); assertEquals(newHome.getAbsolutePath(), main.exec("home")); newHome.delete(); }