/** * Test for LDAP-13. */ @Test public void testModifyAttributeByteArray() { tested.setAttribute(new BasicAttribute("abc", new byte[] { 1, 2, 3 })); tested.setUpdateMode(true); // Perform test tested.setAttributeValue("abc", new byte[] { 1, 2, 3 }); ModificationItem[] modificationItems = tested.getModificationItems(); assertThat(modificationItems.length).isEqualTo(0); }
@Test public void testAddAttributeValueAttributeWithOtherValueExists() throws NamingException { tested.setAttribute(new BasicAttribute("abc", "321")); // Perform test tested.addAttributeValue("abc", "123"); Attributes attrs = tested.getAttributes(); Attribute attr = attrs.get("abc"); assertThat((String) attr.get(0)).isEqualTo("321"); assertThat((String) attr.get(1)).isEqualTo("123"); }
@Test public void testModifyMultiValueAttributeModificationOrder() throws NamingException { BasicAttribute attribute = new BasicAttribute("abc"); attribute.add("Some Person"); attribute.add("Some Other Person"); tested.setAttribute(attribute); tested.setUpdateMode(true); tested.setAttributeValues("abc", new String[] { "some person", "Some Other Person" }); // Perform test ModificationItem[] modificationItems = tested.getModificationItems(); assertThat(modificationItems.length).isEqualTo(2); ModificationItem modificationItem = modificationItems[0]; assertThat(modificationItem.getModificationOp()).isEqualTo(DirContext.REMOVE_ATTRIBUTE); assertThat(modificationItem.getAttribute().get()).isEqualTo("Some Person"); modificationItem = modificationItems[1]; assertThat(modificationItem.getModificationOp()).isEqualTo(DirContext.ADD_ATTRIBUTE); assertThat(modificationItem.getAttribute().get()).isEqualTo("some person"); }
@Test public void testAddAttributeValueAttributeWithSameValueExists() throws NamingException { tested.setAttribute(new BasicAttribute("abc", "123")); // Perform test tested.addAttributeValue("abc", "123"); Attributes attrs = tested.getAttributes(); Attribute attr = attrs.get("abc"); assertThat(attr.size()).isEqualTo(1); assertThat((String) attr.get(0)).isEqualTo("123"); }
@Test public void testRemoveAttributeValueAttributeWithOtherValueExists() throws NamingException { tested.setAttribute(new BasicAttribute("abc", "321")); // Perform test tested.removeAttributeValue("abc", "123"); Attributes attributes = tested.getAttributes(); Attribute attr = attributes.get("abc"); assertThat(attr).isNotNull(); assertThat(attr.size()).isEqualTo(1); assertThat(attr.get()).isEqualTo("321"); }
@Test public void testGetModificationItemsOnAddAttributeValueInUpdateModeAttributeWhenSameValueExistsInOrigAttrs() throws NamingException { tested.setAttribute(new BasicAttribute("abc", "123")); tested.setUpdateMode(true); // Perform test tested.addAttributeValue("abc", "123"); Attributes attrs = tested.getAttributes(); assertThat(attrs.get("abc")).isNotNull(); ModificationItem[] modificationItems = tested.getModificationItems(); assertThat(modificationItems.length).isEqualTo(0); }
@Test public void testAddAttributeValueInUpdateModeAttributeWhenOtherValueExistsInOrigAttrs() throws NamingException { tested.setAttribute(new BasicAttribute("abc", "321")); tested.setUpdateMode(true); // Perform test tested.addAttributeValue("abc", "123"); Attributes attrs = tested.getAttributes(); assertThat(attrs.get("abc")).isNotNull(); ModificationItem[] modificationItems = tested.getModificationItems(); assertThat(modificationItems.length).isEqualTo(1); Attribute attribute = modificationItems[0].getAttribute(); assertThat(attribute.size()).isEqualTo(1); assertThat(attribute.getID()).isEqualTo("abc"); assertThat(attribute.get()).isEqualTo("123"); }
@Test public void testRemoveAttributeValueAttributeWithOtherAndSameValueExists() throws NamingException { BasicAttribute basicAttribute = new BasicAttribute("abc"); basicAttribute.add("123"); basicAttribute.add("321"); tested.setAttribute(basicAttribute); // Perform test tested.removeAttributeValue("abc", "123"); Attributes attributes = tested.getAttributes(); Attribute attr = attributes.get("abc"); assertThat(attr).isNotNull(); assertThat(attr.size()).isEqualTo(1); assertThat(attr.get()).isEqualTo("321"); }
@Test public void testRemoveAttributeValueInUpdateModeSameValueExistsInOrigAttrs() { tested.setAttribute(new BasicAttribute("abc", "123")); tested.setUpdateMode(true); // Perform test tested.removeAttributeValue("abc", "123"); ModificationItem[] modificationItems = tested.getModificationItems(); assertThat(modificationItems.length).isEqualTo(1); Attribute modificationAttribute = modificationItems[0].getAttribute(); assertThat(modificationAttribute.getID()).isEqualTo("abc"); assertThat(modificationAttribute.size()).isEqualTo(0); assertThat(modificationItems[0].getModificationOp()).isEqualTo(DirContext.REMOVE_ATTRIBUTE); }
@Test public void testRemoveAttributeValueAttributeWithSameValueExists() { tested.setAttribute(new BasicAttribute("abc", "123")); // Perform test tested.removeAttributeValue("abc", "123"); Attributes attributes = tested.getAttributes(); Attribute attr = attributes.get("abc"); assertThat(attr).isNull(); }
@Test public void testRemoveAttributeValueInUpdateModeSameAndOtherValueExistsInOrigAttrs() throws NamingException { BasicAttribute basicAttribute = new BasicAttribute("abc"); basicAttribute.add("123"); basicAttribute.add("321"); tested.setAttribute(basicAttribute); tested.setUpdateMode(true); // Perform test tested.removeAttributeValue("abc", "123"); ModificationItem[] modificationItems = tested.getModificationItems(); assertThat(modificationItems.length).isEqualTo(1); Attribute modificationAttribute = modificationItems[0].getAttribute(); assertThat(modificationAttribute.getID()).isEqualTo("abc"); assertThat(modificationAttribute.size()).isEqualTo(1); assertThat(modificationAttribute.get()).isEqualTo("123"); assertThat(modificationItems[0].getModificationOp()).isEqualTo(DirContext.REMOVE_ATTRIBUTE); }
/** * Test for LDAP-15: DirContextAdapter.setAttribute(). Verifies that setting * an Attribute should modify updatedAttrs if in update mode. * * @throws NamingException */ @Test public void testSetAttribute_UpdateMode() throws NamingException { // Set original attribute value Attribute attribute = new BasicAttribute("cn", "john doe"); tested.setAttribute(attribute); // Set to update mode tested.setUpdateMode(true); // Perform test - update the attribute Attribute updatedAttribute = new BasicAttribute("cn", "nisse hult"); tested.setAttribute(updatedAttribute); // Verify result ModificationItem[] mods = tested.getModificationItems(); assertThat(mods.length).isEqualTo(1); assertThat(mods[0].getModificationOp()).isEqualTo(DirContext.REPLACE_ATTRIBUTE); Attribute modificationAttribute = mods[0].getAttribute(); assertThat(modificationAttribute.getID()).isEqualTo("cn"); assertThat(modificationAttribute.get()).isEqualTo("nisse hult"); }
@Test public void testGetStringAttributes_AttributeExists_NullValue() { tested.setAttribute(new BasicAttribute("someAttribute", null)); String result = tested.getStringAttribute("someAttribute"); assertThat(result).isNull(); }