/* See LICENSE for licensing and NOTICE for copyright. */ package org.ldaptive.ad; import org.ldaptive.LdapUtils; import org.testng.Assert; import org.testng.annotations.DataProvider; import org.testng.annotations.Test; /** * Unit test for {@link SecurityIdentifier}. * * @author Middleware Services */ public class SecurityIdentifierTest { /** * ObjectSid test data. * * @return ldap attribute values * * @throws Exception if test data cannot be generated */ @DataProvider(name = "sids") public Object[][] createSids() throws Exception { return new Object[][] { new Object[] { "S-1-5-21-1051162837-3568060411-1686669321-1105", LdapUtils.base64Decode("AQUAAAAAAAUVAAAA1XinPvtHrNQJiIhkUQQAAA=="), }, new Object[] { "S-1-5-21-1051162837-3568060411-1686669321-3173", LdapUtils.base64Decode("AQUAAAAAAAUVAAAA1XinPvtHrNQJiIhkZQwAAA=="), }, new Object[] { "S-1-5-21-1051162837-3568060411-1686669321-1000", LdapUtils.base64Decode("AQUAAAAAAAUVAAAA1XinPvtHrNQJiIhk6AMAAA=="), }, }; } /** * @param sidString objectSid string form * @param sid security identifier * * @throws Exception On test failure. */ @Test(groups = {"ad"}, dataProvider = "sids") public void testToString(final String sidString, final byte[] sid) throws Exception { Assert.assertEquals(sidString, SecurityIdentifier.toString(sid)); } /** * @param sidString objectSid string form * @param sid security identifier * * @throws Exception On test failure. */ @Test(groups = {"ad"}, dataProvider = "sids") public void testToBytes(final String sidString, final byte[] sid) throws Exception { Assert.assertEquals(sid, SecurityIdentifier.toBytes(sidString)); } }