### Question:
BackupManager { public void restore(@NotNull final String keyspace) throws IOException, TimeoutException { final List<String> tables = jmxConnect.getColumnFamilyNames(keyspace); for (final String table : tables) { LOGGER.info("Restoring backup of {}/{}", keyspace, table); restoreTableSnapshot(keyspace, table); LOGGER.info("Reloading SSTables for {}/{}", keyspace, table); jmxConnect.getColumnFamilyStoreProxy(keyspace, table).loadNewSSTables(); } } BackupManager(@NotNull final JmxConnect jmxConnect, @NotNull final String backupDir); void backup(@NotNull final String keyspace); void backup(@NotNull final String keyspace, @NotNull final String snapshot); void restore(@NotNull final String keyspace);  }### Answer:
@Test public void testRestore() throws IOException, TimeoutException { createCassandraDirs(KEYSPACE, TABLE, SNAPSHOT, false); createBackupDirs(KEYSPACE, TABLE); backupManager.restore(KEYSPACE); assertEquals(Arrays.asList("loadNewSSTables"), jmxConnect.getInvocations()); assertTrue(new File(dataDir, KEYSPACE + "/" + TABLE + "-0/data.db").isFile()); assertTrue(new File(dataDir, KEYSPACE + "/" + TABLE + "-0/index.db").isFile()); }