@Test
public void testAddAuthzPathsMapping() throws Exception {
Set<MPath> paths;
sentryStore.persistFullPathsImage(new HashMap<String, Collection<String>>(), 0);
long latestID = sentryStore.getCurrentAuthzPathsSnapshotID();
sentryStore.addAuthzPathsMapping("db1.tb1", Arrays.asList("/hive/db1/tb1"), null);
paths = sentryStore.getMAuthzPaths(latestID, "db1.tb1");
assertEquals(paths.size(), 1);
assertTrue(paths.stream().anyMatch(x -> x.getPath().equalsIgnoreCase("/hive/db1/tb1")));
sentryStore.addAuthzPathsMapping("db1.tb1", Arrays.asList("/hive/db1/tb1/par1"), null);
paths = sentryStore.getMAuthzPaths(latestID, "db1.tb1");
assertEquals(paths.size(), 2);
assertTrue(paths.stream().anyMatch(x -> x.getPath().equalsIgnoreCase("/hive/db1/tb1/par1")));
sentryStore.addAuthzPathsMapping("db1.tb1", Arrays.asList("/hive/db1/tb1/par2","/hive/db1/tb1/par3"), null);
paths = sentryStore.getMAuthzPaths(latestID, "db1.tb1");
assertEquals(paths.size(), 4);
assertTrue(paths.stream().anyMatch(x -> x.getPath().equalsIgnoreCase("/hive/db1/tb1/par2")));
assertTrue(paths.stream().anyMatch(x -> x.getPath().equalsIgnoreCase("/hive/db1/tb1/par3")));
}