@Test
public void testReadWriteJobManagerMetadata() throws IOException {
final Map<String, String> testData1 = new HashMap<String, String>();
testData1.put("metaKey1","metaValue1");
testData1.put("metaKey2","metaValue2");
this.tracker.get().set(TEST_TOPIC_1, testData1 );
final Map<String, String> testData2 = new HashMap<String, String>();
testData2.put("metaKey1","metaValue1");
testData2.put("metaKey2","metaValue2");
this.tracker.get().set(TEST_TOPIC_2, testData2);
this.tracker.get().writeJobManagerMetadata();
final FileStatus[] statuses = fileSystem.listStatus(basePath);
Assert.assertEquals(1,fileSystem.listStatus(basePath).length);
this.tracker = Optional.absent();
this.tracker = Optional.of(new JobManagerMetadataTracker(config));
Assert.assertEquals(this.tracker.get().contains(TEST_TOPIC_1), true);
Assert.assertEquals(this.tracker.get().contains(TEST_TOPIC_2), true);
Assert.assertEquals(this.tracker.get().get(TEST_TOPIC_2).get().keySet().size(),2);
Assert.assertEquals(this.tracker.get().get(TEST_TOPIC_1).get().keySet().size(),2);
Assert.assertEquals(this.tracker.get().get(TEST_TOPIC_1).get().get("metaKey1").toString(),"metaValue1");
Assert.assertEquals(this.tracker.get().get(TEST_TOPIC_1).get().get("metaKey1").toString(),"metaValue1");
}