@Override public boolean apply(String db) { return HiveDatasetFinder.this.whitelistBlacklist.acceptDb(db); } });
@Test public void testMultiWhitelist() throws Exception { WhitelistBlacklist whitelistBlacklist = new WhitelistBlacklist("dba,dbb.tablea", ""); Assert.assertTrue(whitelistBlacklist.acceptDb("dba")); Assert.assertTrue(whitelistBlacklist.acceptDb("dbb")); Assert.assertFalse(whitelistBlacklist.acceptDb("dbc")); Assert.assertTrue(whitelistBlacklist.acceptTable("dba", "tablea")); Assert.assertTrue(whitelistBlacklist.acceptTable("dba", "tableb")); Assert.assertTrue(whitelistBlacklist.acceptTable("dbb", "tablea")); Assert.assertFalse(whitelistBlacklist.acceptTable("dbc", "tablea")); }
@Test public void testDbPattern() throws Exception { WhitelistBlacklist whitelistBlacklist = new WhitelistBlacklist("db*", ""); Assert.assertTrue(whitelistBlacklist.acceptDb("dba")); Assert.assertTrue(whitelistBlacklist.acceptDb("dbb")); Assert.assertFalse(whitelistBlacklist.acceptDb("database")); Assert.assertTrue(whitelistBlacklist.acceptTable("dba", "tablea")); Assert.assertTrue(whitelistBlacklist.acceptTable("dba", "tableb")); Assert.assertTrue(whitelistBlacklist.acceptTable("dbb", "tablea")); Assert.assertFalse(whitelistBlacklist.acceptTable("database", "tablea")); }
@Test public void testDbBlacklist() throws Exception { WhitelistBlacklist whitelistBlacklist = new WhitelistBlacklist("", "dba"); Assert.assertFalse(whitelistBlacklist.acceptDb("dba")); Assert.assertTrue(whitelistBlacklist.acceptDb("dbb")); Assert.assertFalse(whitelistBlacklist.acceptTable("dba", "tablea")); Assert.assertFalse(whitelistBlacklist.acceptTable("dba", "tableb")); Assert.assertTrue(whitelistBlacklist.acceptTable("dbb", "tablea")); }
@Test public void testDbWhitelistStar() throws Exception { WhitelistBlacklist whitelistBlacklist = new WhitelistBlacklist("dba.*", ""); Assert.assertTrue(whitelistBlacklist.acceptDb("dba")); Assert.assertFalse(whitelistBlacklist.acceptDb("dbb")); Assert.assertTrue(whitelistBlacklist.acceptTable("dba", "tablea")); Assert.assertTrue(whitelistBlacklist.acceptTable("dba", "tableb")); Assert.assertFalse(whitelistBlacklist.acceptTable("dbb", "tablea")); }
@Test public void testSimpleBlacklist() throws Exception { WhitelistBlacklist whitelistBlacklist = new WhitelistBlacklist("", "dba.tablea"); Assert.assertTrue(whitelistBlacklist.acceptDb("dba")); Assert.assertTrue(whitelistBlacklist.acceptDb("dbb")); Assert.assertFalse(whitelistBlacklist.acceptTable("dba", "tablea")); Assert.assertTrue(whitelistBlacklist.acceptTable("dba", "tableb")); Assert.assertTrue(whitelistBlacklist.acceptTable("dbb", "tablea")); }
@Test public void testDbAndTablePattern() throws Exception { WhitelistBlacklist whitelistBlacklist = new WhitelistBlacklist("db*.table*", ""); Assert.assertTrue(whitelistBlacklist.acceptDb("dba")); Assert.assertTrue(whitelistBlacklist.acceptDb("dbb")); Assert.assertFalse(whitelistBlacklist.acceptDb("database")); Assert.assertTrue(whitelistBlacklist.acceptTable("dba", "tablea")); Assert.assertTrue(whitelistBlacklist.acceptTable("dba", "tableb")); Assert.assertFalse(whitelistBlacklist.acceptTable("dba", "other")); Assert.assertTrue(whitelistBlacklist.acceptTable("dbb", "tablea")); Assert.assertFalse(whitelistBlacklist.acceptTable("database", "tablea")); }
@Test public void testDbBlacklistStar() throws Exception { WhitelistBlacklist whitelistBlacklist = new WhitelistBlacklist("", "dba.*"); Assert.assertFalse(whitelistBlacklist.acceptDb("dba")); Assert.assertTrue(whitelistBlacklist.acceptDb("dbb")); Assert.assertFalse(whitelistBlacklist.acceptTable("dba", "tablea")); Assert.assertFalse(whitelistBlacklist.acceptTable("dba", "tableb")); Assert.assertTrue(whitelistBlacklist.acceptTable("dbb", "tablea")); }
@Test public void testWhitelistBlacklist() throws Exception { WhitelistBlacklist whitelistBlacklist = new WhitelistBlacklist("dba", "dba.tablea"); Assert.assertTrue(whitelistBlacklist.acceptDb("dba")); Assert.assertFalse(whitelistBlacklist.acceptDb("dbb")); Assert.assertFalse(whitelistBlacklist.acceptTable("dba", "tablea")); Assert.assertTrue(whitelistBlacklist.acceptTable("dba", "tableb")); Assert.assertFalse(whitelistBlacklist.acceptTable("dbb", "tableb")); }
@Test public void testDbWhitelist() throws Exception { WhitelistBlacklist whitelistBlacklist = new WhitelistBlacklist("dba", ""); Assert.assertTrue(whitelistBlacklist.acceptDb("dba")); Assert.assertFalse(whitelistBlacklist.acceptDb("dbb")); Assert.assertTrue(whitelistBlacklist.acceptTable("dba", "tablea")); Assert.assertTrue(whitelistBlacklist.acceptTable("dba", "tableb")); Assert.assertFalse(whitelistBlacklist.acceptTable("dbb", "tablea")); }
@Test public void testMultipleTablesWhitelist() throws Exception { WhitelistBlacklist whitelistBlacklist = new WhitelistBlacklist("dba.tablea|tableb", ""); Assert.assertTrue(whitelistBlacklist.acceptDb("dba")); Assert.assertFalse(whitelistBlacklist.acceptDb("dbb")); Assert.assertTrue(whitelistBlacklist.acceptTable("dba", "tablea")); Assert.assertTrue(whitelistBlacklist.acceptTable("dba", "tableb")); Assert.assertFalse(whitelistBlacklist.acceptTable("dba", "tablec")); Assert.assertFalse(whitelistBlacklist.acceptTable("dbb", "tablea")); }
@Test public void testSimpleWhitelist() throws Exception { WhitelistBlacklist whitelistBlacklist = new WhitelistBlacklist("Dba.Tablea", ""); Assert.assertTrue(whitelistBlacklist.acceptDb("dba")); Assert.assertFalse(whitelistBlacklist.acceptDb("dbb")); Assert.assertTrue(whitelistBlacklist.acceptTable("dba", "tablea")); Assert.assertFalse(whitelistBlacklist.acceptTable("dba", "tableb")); Assert.assertFalse(whitelistBlacklist.acceptTable("dbb", "tablea")); Assert.assertTrue(whitelistBlacklist.acceptTable("dbA", "tablea")); Assert.assertTrue(whitelistBlacklist.acceptTable("dbA", "TableA")); }
@Test public void testTablePattern() throws Exception { WhitelistBlacklist whitelistBlacklist = new WhitelistBlacklist("dba.table*|accept", ""); Assert.assertTrue(whitelistBlacklist.acceptDb("dba")); Assert.assertFalse(whitelistBlacklist.acceptDb("dbb")); Assert.assertTrue(whitelistBlacklist.acceptTable("dba", "tablea")); Assert.assertTrue(whitelistBlacklist.acceptTable("dba", "tableb")); Assert.assertTrue(whitelistBlacklist.acceptTable("dba", "accept")); Assert.assertFalse(whitelistBlacklist.acceptTable("dba", "other")); Assert.assertFalse(whitelistBlacklist.acceptTable("dbb", "tablea")); }
Assert.assertTrue(optionalWhitelistBlacklist.isPresent(), "Whitelist blacklist specified in WUS, WhiteListBlackList object should be present"); Assert.assertTrue(optionalWhitelistBlacklist.get().acceptDb("mydb")); Assert.assertTrue(optionalWhitelistBlacklist.get().acceptTable("mydb", "mytable")); Assert.assertTrue(optionalWhitelistBlacklist.isPresent(), "Whitelist blacklist specified in WUS, WhiteListBlackList object should be present"); Assert.assertTrue(!optionalWhitelistBlacklist.get().acceptDb("mydb")); Assert.assertTrue(!optionalWhitelistBlacklist.get().acceptTable("mydb", "mytable")); Assert.assertTrue(optionalWhitelistBlacklist.get().acceptDb("yourdb")); Assert.assertTrue(optionalWhitelistBlacklist.get().acceptTable("yourdb", "mytable")); Assert.assertTrue(optionalWhitelistBlacklist.isPresent(), "Whitelist blacklist specified in WUS, WhiteListBlackList object should be present"); Assert.assertTrue(!optionalWhitelistBlacklist.get().acceptDb("mydb")); Assert.assertTrue(!optionalWhitelistBlacklist.get().acceptTable("yourdb", "mytable")); Assert.assertTrue(optionalWhitelistBlacklist.get().acceptDb("yourdb")); Assert.assertTrue(optionalWhitelistBlacklist.get().acceptTable("yourdb", "yourtable")); Assert.assertTrue(optionalWhitelistBlacklist.isPresent(), "Whitelist blacklist specified in WUS, WhiteListBlackList object should be present"); Assert.assertTrue(optionalWhitelistBlacklist.get().acceptDb("mydb")); Assert.assertTrue(optionalWhitelistBlacklist.get().acceptTable("yourdb", "mytable")); Assert.assertTrue(optionalWhitelistBlacklist.get().acceptDb("yourdb")); Assert.assertTrue(!optionalWhitelistBlacklist.get().acceptTable("yourdb", "yourtable"));
@Override public boolean apply(String db) { return HiveDatasetFinder.this.whitelistBlacklist.acceptDb(db); } });