diff options
Diffstat (limited to 'security-utils/src/test/java/com')
2 files changed, 30 insertions, 2 deletions
diff --git a/security-utils/src/test/java/com/yahoo/security/tls/json/TransportSecurityOptionsJsonSerializerTest.java b/security-utils/src/test/java/com/yahoo/security/tls/json/TransportSecurityOptionsJsonSerializerTest.java index a6e1de66c68..952c4d05972 100644 --- a/security-utils/src/test/java/com/yahoo/security/tls/json/TransportSecurityOptionsJsonSerializerTest.java +++ b/security-utils/src/test/java/com/yahoo/security/tls/json/TransportSecurityOptionsJsonSerializerTest.java @@ -5,6 +5,7 @@ import com.yahoo.security.tls.policy.AuthorizedPeers; import com.yahoo.security.tls.policy.HostGlobPattern; import com.yahoo.security.tls.policy.PeerPolicy; import com.yahoo.security.tls.policy.RequiredPeerCredential; +import com.yahoo.security.tls.policy.Role; import org.junit.Test; import java.io.ByteArrayInputStream; @@ -15,6 +16,7 @@ import java.util.Collections; import java.util.HashSet; import static com.yahoo.security.tls.policy.RequiredPeerCredential.Field.*; +import static java.util.Collections.singleton; import static org.junit.Assert.*; /** @@ -30,10 +32,10 @@ public class TransportSecurityOptionsJsonSerializerTest { .withAuthorizedPeers( new AuthorizedPeers( new HashSet<>(Arrays.asList( - new PeerPolicy("cfgserver", Arrays.asList( + new PeerPolicy("cfgserver", singleton(new Role("myrole")), Arrays.asList( new RequiredPeerCredential(CN, new HostGlobPattern("mycfgserver")), new RequiredPeerCredential(SAN_DNS, new HostGlobPattern("*.suffix.com")))), - new PeerPolicy("node", Collections.singletonList(new RequiredPeerCredential(CN, new HostGlobPattern("hostname")))))))) + new PeerPolicy("node", singleton(new Role("anotherrole")), Collections.singletonList(new RequiredPeerCredential(CN, new HostGlobPattern("hostname")))))))) .build(); ByteArrayOutputStream out = new ByteArrayOutputStream(); diff --git a/security-utils/src/test/java/com/yahoo/security/tls/policy/AuthorizedPeersTest.java b/security-utils/src/test/java/com/yahoo/security/tls/policy/AuthorizedPeersTest.java new file mode 100644 index 00000000000..ac201fcabbc --- /dev/null +++ b/security-utils/src/test/java/com/yahoo/security/tls/policy/AuthorizedPeersTest.java @@ -0,0 +1,26 @@ +package com.yahoo.security.tls.policy; + +import org.junit.Test; + +import java.util.HashSet; +import java.util.List; + +import static com.yahoo.security.tls.policy.RequiredPeerCredential.Field.CN; +import static java.util.Arrays.asList; +import static java.util.Collections.singleton; +import static java.util.Collections.singletonList; + +/** + * @author bjorncs + */ +public class AuthorizedPeersTest { + + @Test(expected = IllegalArgumentException.class) + public void throws_exception_on_peer_policies_with_duplicate_names() { + List<RequiredPeerCredential> requiredPeerCredential = singletonList(new RequiredPeerCredential(CN, new HostGlobPattern("mycfgserver"))); + PeerPolicy peerPolicy1 = new PeerPolicy("duplicate-name", singleton(new Role("role")), requiredPeerCredential); + PeerPolicy peerPolicy2 = new PeerPolicy("duplicate-name", singleton(new Role("anotherrole")), requiredPeerCredential); + new AuthorizedPeers(new HashSet<>(asList(peerPolicy1, peerPolicy2))); + } + +}
\ No newline at end of file |