Repository: incubator-sentry Updated Branches: refs/heads/SENTRY-999 0c0065174 -> 6c248e465
http://git-wip-us.apache.org/repos/asf/incubator-sentry/blob/6c248e46/sentry-policy/sentry-policy-search/src/test/java/org/apache/sentry/policy/search/TestSearchWildcardPrivilege.java ---------------------------------------------------------------------- diff --git a/sentry-policy/sentry-policy-search/src/test/java/org/apache/sentry/policy/search/TestSearchWildcardPrivilege.java b/sentry-policy/sentry-policy-search/src/test/java/org/apache/sentry/policy/search/TestSearchWildcardPrivilege.java deleted file mode 100644 index 688e3f8..0000000 --- a/sentry-policy/sentry-policy-search/src/test/java/org/apache/sentry/policy/search/TestSearchWildcardPrivilege.java +++ /dev/null @@ -1,205 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.sentry.policy.search; -import static junit.framework.Assert.assertFalse; -import static junit.framework.Assert.assertTrue; -import static org.apache.sentry.core.common.utils.SentryConstants.AUTHORIZABLE_JOINER; -import static org.apache.sentry.core.common.utils.SentryConstants.KV_JOINER; -import static org.apache.sentry.core.common.utils.SentryConstants.KV_SEPARATOR; - -import org.apache.sentry.core.model.search.SearchConstants; -import org.apache.sentry.policy.common.Privilege; -import org.apache.sentry.core.common.utils.KeyValue; -import org.junit.Test; - -public class TestSearchWildcardPrivilege { - - private static final String ALL = SearchConstants.ALL; - - @Test - public void testSimpleNoAction() throws Exception { - Privilege collection1 = create(new KeyValue("collection", "coll1")); - Privilege collection2 = create(new KeyValue("collection", "coll2")); - Privilege collection1Case = create(new KeyValue("colleCtIon", "coLl1")); - - assertTrue(collection1.implies(collection1)); - assertTrue(collection2.implies(collection2)); - assertTrue(collection1.implies(collection1Case)); - assertTrue(collection1Case.implies(collection1)); - - assertFalse(collection1.implies(collection2)); - assertFalse(collection1Case.implies(collection2)); - assertFalse(collection2.implies(collection1)); - assertFalse(collection2.implies(collection1Case)); - } - - @Test - public void testSimpleAction() throws Exception { - Privilege query = - create(new KeyValue("collection", "coll1"), new KeyValue("action", "query")); - Privilege update = - create(new KeyValue("collection", "coll1"), new KeyValue("action", "update")); - Privilege queryCase = - create(new KeyValue("colleCtIon", "coLl1"), new KeyValue("AcTiOn", "QuERy")); - - assertTrue(query.implies(query)); - assertTrue(update.implies(update)); - assertTrue(query.implies(queryCase)); - assertTrue(queryCase.implies(query)); - - assertFalse(query.implies(update)); - assertFalse(queryCase.implies(update)); - assertFalse(update.implies(query)); - assertFalse(update.implies(queryCase)); - } - - @Test - public void testRoleShorterThanRequest() throws Exception { - Privilege collection1 = create(new KeyValue("collection", "coll1")); - Privilege query = - create(new KeyValue("collection", "coll1"), new KeyValue("action", "query")); - Privilege update = - create(new KeyValue("collection", "coll1"), new KeyValue("action", "update")); - Privilege all = - create(new KeyValue("collection", "coll1"), new KeyValue("action", ALL)); - - assertTrue(collection1.implies(query)); - assertTrue(collection1.implies(update)); - assertTrue(collection1.implies(all)); - - assertFalse(query.implies(collection1)); - assertFalse(update.implies(collection1)); - assertTrue(all.implies(collection1)); - } - - @Test - public void testCollectionAll() throws Exception { - Privilege collectionAll = create(new KeyValue("collection", ALL)); - Privilege collection1 = create(new KeyValue("collection", "coll1")); - assertTrue(collectionAll.implies(collection1)); - assertTrue(collection1.implies(collectionAll)); - - Privilege allUpdate = - create(new KeyValue("collection", ALL), new KeyValue("action", "update")); - Privilege allQuery = - create(new KeyValue("collection", ALL), new KeyValue("action", "query")); - Privilege coll1Update = - create(new KeyValue("collection", "coll1"), new KeyValue("action", "update")); - Privilege coll1Query = - create(new KeyValue("collection", "coll1"), new KeyValue("action", "query")); - assertTrue(allUpdate.implies(coll1Update)); - assertTrue(allQuery.implies(coll1Query)); - assertTrue(coll1Update.implies(allUpdate)); - assertTrue(coll1Query.implies(allQuery)); - assertFalse(allUpdate.implies(coll1Query)); - assertFalse(coll1Update.implies(coll1Query)); - assertFalse(allQuery.implies(coll1Update)); - assertFalse(coll1Query.implies(allUpdate)); - assertFalse(allUpdate.implies(allQuery)); - assertFalse(allQuery.implies(allUpdate)); - assertFalse(coll1Update.implies(coll1Query)); - assertFalse(coll1Query.implies(coll1Update)); - - // test different length paths - assertTrue(collectionAll.implies(allUpdate)); - assertTrue(collectionAll.implies(allQuery)); - assertTrue(collectionAll.implies(coll1Update)); - assertTrue(collectionAll.implies(coll1Query)); - assertFalse(allUpdate.implies(collectionAll)); - assertFalse(allQuery.implies(collectionAll)); - assertFalse(coll1Update.implies(collectionAll)); - assertFalse(coll1Query.implies(collectionAll)); - } - - @Test - public void testActionAll() throws Exception { - Privilege coll1All = - create(new KeyValue("collection", "coll1"), new KeyValue("action", ALL)); - Privilege coll1Update = - create(new KeyValue("collection", "coll1"), new KeyValue("action", "update")); - Privilege coll1Query = - create(new KeyValue("collection", "coll1"), new KeyValue("action", "query")); - assertTrue(coll1All.implies(coll1All)); - assertTrue(coll1All.implies(coll1Update)); - assertTrue(coll1All.implies(coll1Query)); - assertFalse(coll1Update.implies(coll1All)); - assertFalse(coll1Query.implies(coll1All)); - - // test different lengths - Privilege coll1 = - create(new KeyValue("collection", "coll1")); - assertTrue(coll1All.implies(coll1)); - assertTrue(coll1.implies(coll1All)); - } - - @Test - public void testUnexpected() throws Exception { - Privilege p = new Privilege() { - @Override - public boolean implies(Privilege p) { - return false; - } - }; - Privilege collection1 = create(new KeyValue("collection", "coll1")); - assertFalse(collection1.implies(null)); - assertFalse(collection1.implies(p)); - assertFalse(collection1.equals(null)); - assertFalse(collection1.equals(p)); - } - - @Test(expected=IllegalArgumentException.class) - public void testNullString() throws Exception { - System.out.println(create((String)null)); - } - - @Test(expected=IllegalArgumentException.class) - public void testEmptyString() throws Exception { - System.out.println(create("")); - } - - @Test(expected=IllegalArgumentException.class) - public void testEmptyKey() throws Exception { - System.out.println(create(KV_JOINER.join("collection", ""))); - } - - @Test(expected=IllegalArgumentException.class) - public void testEmptyValue() throws Exception { - System.out.println(create(KV_JOINER.join("", "coll1"))); - } - - @Test(expected=IllegalArgumentException.class) - public void testEmptyPart() throws Exception { - System.out.println(create(AUTHORIZABLE_JOINER. - join(KV_JOINER.join("collection1", "coll1"), ""))); - } - - @Test(expected=IllegalArgumentException.class) - public void testOnlySeperators() throws Exception { - System.out.println(create(AUTHORIZABLE_JOINER. - join(KV_SEPARATOR, KV_SEPARATOR, KV_SEPARATOR))); - } - - static SearchWildcardPrivilege create(KeyValue... keyValues) { - return create(AUTHORIZABLE_JOINER.join(keyValues)); - - } - static SearchWildcardPrivilege create(String s) { - return new SearchWildcardPrivilege(s); - } -} http://git-wip-us.apache.org/repos/asf/incubator-sentry/blob/6c248e46/sentry-policy/sentry-policy-sqoop/src/test/java/org/apache/sentry/policy/sqoop/TestSqoopWildcardPrivilege.java ---------------------------------------------------------------------- diff --git a/sentry-policy/sentry-policy-sqoop/src/test/java/org/apache/sentry/policy/sqoop/TestSqoopWildcardPrivilege.java b/sentry-policy/sentry-policy-sqoop/src/test/java/org/apache/sentry/policy/sqoop/TestSqoopWildcardPrivilege.java deleted file mode 100644 index 8d27726..0000000 --- a/sentry-policy/sentry-policy-sqoop/src/test/java/org/apache/sentry/policy/sqoop/TestSqoopWildcardPrivilege.java +++ /dev/null @@ -1,178 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.sentry.policy.sqoop; -import static junit.framework.Assert.assertFalse; -import static junit.framework.Assert.assertTrue; -import static org.apache.sentry.core.common.utils.SentryConstants.AUTHORIZABLE_JOINER; -import static org.apache.sentry.core.common.utils.SentryConstants.KV_JOINER; -import static org.apache.sentry.core.common.utils.SentryConstants.KV_SEPARATOR; - -import org.apache.sentry.core.model.sqoop.SqoopActionConstant; -import org.apache.sentry.policy.common.Privilege; -import org.apache.sentry.core.common.utils.KeyValue; -import org.junit.Test; - -public class TestSqoopWildcardPrivilege { - private static final Privilege SQOOP_SERVER1_ALL = - create(new KeyValue("SERVER", "server1"), new KeyValue("action", SqoopActionConstant.ALL)); - private static final Privilege SQOOP_SERVER1_READ = - create(new KeyValue("SERVER", "server1"), new KeyValue("action", SqoopActionConstant.READ)); - private static final Privilege SQOOP_SERVER1_WRITE = - create(new KeyValue("SERVER", "server1"), new KeyValue("action", SqoopActionConstant.WRITE)); - - private static final Privilege SQOOP_SERVER1_JOB1_ALL = - create(new KeyValue("SERVER", "server1"), new KeyValue("JOB", "job1"), new KeyValue("action", SqoopActionConstant.ALL)); - private static final Privilege SQOOP_SERVER1_JOB1_READ = - create(new KeyValue("SERVER", "server1"), new KeyValue("JOB", "job1"), new KeyValue("action", SqoopActionConstant.READ)); - private static final Privilege SQOOP_SERVER1_JOB1_WRITE = - create(new KeyValue("SERVER", "server1"), new KeyValue("JOB", "job1"), new KeyValue("action", SqoopActionConstant.WRITE)); - - private static final Privilege SQOOP_SERVER1_LINK1_ALL = - create(new KeyValue("SERVER", "server1"), new KeyValue("LINK", "link1"), new KeyValue("action", SqoopActionConstant.ALL)); - private static final Privilege SQOOP_SERVER1_LINK1_READ = - create(new KeyValue("SERVER", "server1"), new KeyValue("LINK", "link1"), new KeyValue("action", SqoopActionConstant.READ)); - private static final Privilege SQOOP_SERVER1_LINK1_WRITE = - create(new KeyValue("SERVER", "server1"), new KeyValue("LINK", "link1"), new KeyValue("action", SqoopActionConstant.WRITE)); - - private static final Privilege SQOOP_SERVER1_CONNECTOR1_ALL = - create(new KeyValue("SERVER", "server1"), new KeyValue("CONNECTOR", "connector1"), new KeyValue("action", SqoopActionConstant.ALL)); - private static final Privilege SQOOP_SERVER1_CONNECTOR1_READ = - create(new KeyValue("SERVER", "server1"), new KeyValue("CONNECTOR", "connector1"), new KeyValue("action", SqoopActionConstant.READ)); - private static final Privilege SQOOP_SERVER1_CONNECTOR1_WRITE = - create(new KeyValue("SERVER", "server1"), new KeyValue("CONNECTOR", "connector1"), new KeyValue("action", SqoopActionConstant.WRITE)); - - - @Test - public void testSimpleAction() throws Exception { - //server - assertFalse(SQOOP_SERVER1_WRITE.implies(SQOOP_SERVER1_READ)); - assertFalse(SQOOP_SERVER1_READ.implies(SQOOP_SERVER1_WRITE)); - //connector - assertFalse(SQOOP_SERVER1_CONNECTOR1_WRITE.implies(SQOOP_SERVER1_CONNECTOR1_READ)); - assertFalse(SQOOP_SERVER1_CONNECTOR1_READ.implies(SQOOP_SERVER1_CONNECTOR1_WRITE)); - //job - assertFalse(SQOOP_SERVER1_JOB1_READ.implies(SQOOP_SERVER1_JOB1_WRITE)); - assertFalse(SQOOP_SERVER1_JOB1_WRITE.implies(SQOOP_SERVER1_JOB1_READ)); - //link - assertFalse(SQOOP_SERVER1_LINK1_READ.implies(SQOOP_SERVER1_LINK1_WRITE)); - assertFalse(SQOOP_SERVER1_LINK1_WRITE.implies(SQOOP_SERVER1_LINK1_READ)); - } - - @Test - public void testShorterThanRequest() throws Exception { - //job - assertTrue(SQOOP_SERVER1_ALL.implies(SQOOP_SERVER1_JOB1_ALL)); - assertTrue(SQOOP_SERVER1_ALL.implies(SQOOP_SERVER1_JOB1_READ)); - assertTrue(SQOOP_SERVER1_ALL.implies(SQOOP_SERVER1_JOB1_WRITE)); - - assertFalse(SQOOP_SERVER1_WRITE.implies(SQOOP_SERVER1_READ)); - assertTrue(SQOOP_SERVER1_READ.implies(SQOOP_SERVER1_JOB1_READ)); - assertTrue(SQOOP_SERVER1_WRITE.implies(SQOOP_SERVER1_JOB1_WRITE)); - - //link - assertTrue(SQOOP_SERVER1_ALL.implies(SQOOP_SERVER1_LINK1_ALL)); - assertTrue(SQOOP_SERVER1_ALL.implies(SQOOP_SERVER1_LINK1_READ)); - assertTrue(SQOOP_SERVER1_ALL.implies(SQOOP_SERVER1_LINK1_WRITE)); - - assertTrue(SQOOP_SERVER1_READ.implies(SQOOP_SERVER1_LINK1_READ)); - assertTrue(SQOOP_SERVER1_WRITE.implies(SQOOP_SERVER1_LINK1_WRITE)); - - //connector - assertTrue(SQOOP_SERVER1_ALL.implies(SQOOP_SERVER1_CONNECTOR1_ALL)); - assertTrue(SQOOP_SERVER1_ALL.implies(SQOOP_SERVER1_CONNECTOR1_READ)); - assertTrue(SQOOP_SERVER1_ALL.implies(SQOOP_SERVER1_CONNECTOR1_WRITE)); - - assertTrue(SQOOP_SERVER1_READ.implies(SQOOP_SERVER1_CONNECTOR1_READ)); - assertTrue(SQOOP_SERVER1_WRITE.implies(SQOOP_SERVER1_CONNECTOR1_WRITE)); - } - - @Test - public void testActionAll() throws Exception { - //server - assertTrue(SQOOP_SERVER1_ALL.implies(SQOOP_SERVER1_READ)); - assertTrue(SQOOP_SERVER1_ALL.implies(SQOOP_SERVER1_WRITE)); - - //job - assertTrue(SQOOP_SERVER1_JOB1_ALL.implies(SQOOP_SERVER1_JOB1_READ)); - assertTrue(SQOOP_SERVER1_JOB1_ALL.implies(SQOOP_SERVER1_JOB1_WRITE)); - - //link - assertTrue(SQOOP_SERVER1_LINK1_ALL.implies(SQOOP_SERVER1_LINK1_READ)); - assertTrue(SQOOP_SERVER1_LINK1_ALL.implies(SQOOP_SERVER1_LINK1_WRITE)); - - //connector - assertTrue(SQOOP_SERVER1_CONNECTOR1_ALL.implies(SQOOP_SERVER1_CONNECTOR1_READ)); - assertTrue(SQOOP_SERVER1_CONNECTOR1_ALL.implies(SQOOP_SERVER1_CONNECTOR1_WRITE)); - } - - @Test - public void testUnexpected() throws Exception { - Privilege p = new Privilege() { - @Override - public boolean implies(Privilege p) { - return false; - } - }; - Privilege job1 = create(new KeyValue("SERVER", "server"), new KeyValue("JOB", "job1")); - assertFalse(job1.implies(null)); - assertFalse(job1.implies(p)); - assertFalse(job1.equals(null)); - assertFalse(job1.equals(p)); - } - - @Test(expected=IllegalArgumentException.class) - public void testNullString() throws Exception { - System.out.println(create((String)null)); - } - - @Test(expected=IllegalArgumentException.class) - public void testEmptyString() throws Exception { - System.out.println(create("")); - } - - @Test(expected=IllegalArgumentException.class) - public void testEmptyKey() throws Exception { - System.out.println(create(KV_JOINER.join("", "server1"))); - } - - @Test(expected=IllegalArgumentException.class) - public void testEmptyValue() throws Exception { - System.out.println(create(KV_JOINER.join("SERVER", ""))); - } - - @Test(expected=IllegalArgumentException.class) - public void testEmptyPart() throws Exception { - System.out.println(create(AUTHORIZABLE_JOINER. - join(KV_JOINER.join("SERVER", "server1"), ""))); - } - - @Test(expected=IllegalArgumentException.class) - public void testOnlySeperators() throws Exception { - System.out.println(create(AUTHORIZABLE_JOINER. - join(KV_SEPARATOR, KV_SEPARATOR, KV_SEPARATOR))); - } - - static SqoopWildcardPrivilege create(KeyValue... keyValues) { - return create(AUTHORIZABLE_JOINER.join(keyValues)); - - } - static SqoopWildcardPrivilege create(String s) { - return new SqoopWildcardPrivilege(s); - } -}
