Repository: curator
Updated Branches:
  refs/heads/CURATOR-397 7a15af6ac -> 6428a9238


Added a test for ACLs


Project: http://git-wip-us.apache.org/repos/asf/curator/repo
Commit: http://git-wip-us.apache.org/repos/asf/curator/commit/6428a923
Tree: http://git-wip-us.apache.org/repos/asf/curator/tree/6428a923
Diff: http://git-wip-us.apache.org/repos/asf/curator/diff/6428a923

Branch: refs/heads/CURATOR-397
Commit: 6428a9238892eba6e9f89551ed4602d2a7c5a04f
Parents: 7a15af6
Author: randgalt <[email protected]>
Authored: Thu May 18 15:32:38 2017 +0200
Committer: randgalt <[email protected]>
Committed: Thu May 18 15:32:38 2017 +0200

----------------------------------------------------------------------
 .../x/async/modeled/TestModeledFramework.java   | 27 ++++++++++++++++++++
 1 file changed, 27 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/curator/blob/6428a923/curator-x-async/src/test/java/org/apache/curator/x/async/modeled/TestModeledFramework.java
----------------------------------------------------------------------
diff --git 
a/curator-x-async/src/test/java/org/apache/curator/x/async/modeled/TestModeledFramework.java
 
b/curator-x-async/src/test/java/org/apache/curator/x/async/modeled/TestModeledFramework.java
index 9157d6f..42a9e63 100644
--- 
a/curator-x-async/src/test/java/org/apache/curator/x/async/modeled/TestModeledFramework.java
+++ 
b/curator-x-async/src/test/java/org/apache/curator/x/async/modeled/TestModeledFramework.java
@@ -32,10 +32,16 @@ import 
org.apache.curator.x.async.modeled.models.TestNewerModel;
 import org.apache.curator.x.async.modeled.versioned.Versioned;
 import org.apache.curator.x.async.modeled.versioned.VersionedModeledFramework;
 import org.apache.zookeeper.KeeperException;
+import org.apache.zookeeper.ZooDefs;
+import org.apache.zookeeper.data.ACL;
+import org.apache.zookeeper.data.Id;
+import org.apache.zookeeper.server.auth.DigestAuthenticationProvider;
 import org.testng.Assert;
 import org.testng.annotations.Test;
 import java.math.BigInteger;
+import java.security.NoSuchAlgorithmException;
 import java.util.Collections;
+import java.util.List;
 import java.util.Set;
 import java.util.concurrent.CountDownLatch;
 
@@ -148,4 +154,25 @@ public class TestModeledFramework extends 
TestModeledFrameworkBase
             return versioned.set(badVersion);
         }).whenComplete((s, e) -> Assert.assertTrue(e instanceof 
KeeperException.BadVersionException)));
     }
+
+    @Test
+    public void testAcl() throws NoSuchAlgorithmException
+    {
+        List<ACL> aclList = Collections.singletonList(new 
ACL(ZooDefs.Perms.WRITE, new Id("digest", 
DigestAuthenticationProvider.generateDigest("test:test"))));
+        ModelSpec<TestModel> aclModelSpec = 
ModelSpec.builder(modelSpec.path(), 
modelSpec.serializer()).withAclList(aclList).build();
+        ModeledFramework<TestModel> client = ModeledFramework.wrap(async, 
aclModelSpec);
+        complete(client.set(new TestModel("John", "Galt", "Galt's Gulch", 21, 
BigInteger.valueOf(1010101))));
+        complete(client.update(new TestModel("John", "Galt", "Galt's Gulch", 
54, BigInteger.valueOf(88))), (__, e) -> Assert.assertNotNull(e, "Should've 
gotten an auth failure"));
+
+        try ( CuratorFramework authCurator = CuratorFrameworkFactory.builder()
+            .connectString(server.getConnectString())
+            .retryPolicy(new RetryOneTime(1))
+            .authorization("digest", "test:test".getBytes())
+            .build() )
+        {
+            authCurator.start();
+            ModeledFramework<TestModel> authClient = 
ModeledFramework.wrap(AsyncCuratorFramework.wrap(authCurator), aclModelSpec);
+            complete(authClient.update(new TestModel("John", "Galt", "Galt's 
Gulch", 42, BigInteger.valueOf(66))), (__, e) -> Assert.assertNull(e, 
"Should've succeeded"));
+        }
+    }
 }

Reply via email to