@Test
public void addStringValues()
{

  final Set<String> commonNames = new HashSet<>();
  commonNames.add("Bill Wallace");
  commonNames.add("William Wallace");
  final Set<byte[]> binaryCommonNames = new HashSet<>();
  binaryCommonNames.add("Bill Wallace".getBytes(StandardCharsets.UTF_8));
  binaryCommonNames.add("William Wallace".getBytes(StandardCharsets.UTF_8));
  final LdapAttribute la = new LdapAttribute();
  la.setName("cn");
  la.addStringValues(commonNames);
  Assert.assertNotNull(la.getStringValue());
  Assert.assertNotNull(la.getStringValues());
  Assert.assertNotNull(la.getBinaryValue());
  Assert.assertNotNull(la.getBinaryValues());
  Assert.assertEquals(la.getStringValues().size(), 2);
  Assert.assertEquals(la.getBinaryValues().size(), 2);
  Assert.assertTrue(la.getStringValues().contains("Bill Wallace"));
  Assert.assertTrue(la.getStringValues().contains("William Wallace"));
  Assert.assertEqualsNoOrder(commonNames.toArray(new String[2]), la.getStringValues().toArray(new String[2]));
  Assert.assertEquals(binaryCommonNames.size(), la.getBinaryValues().size());
  for (byte[] b : binaryCommonNames) {
    Assert.assertTrue(la.getBinaryValues().stream().anyMatch(a -> Arrays.equals(a, b)));
  }
  la.clear();
  Assert.assertEquals(la.size(), 0);
}