| | |
| | | |
| | | |
| | | |
| | | import java.util.Arrays; |
| | | import java.util.Collections; |
| | | import java.util.Iterator; |
| | | import java.util.NoSuchElementException; |
| | | |
| | | import org.opends.sdk.schema.Schema; |
| | | import org.testng.Assert; |
| | | import org.testng.annotations.Test; |
| | |
| | | Assert.assertTrue(attribute.remove(ByteString.valueOf("another value"))); |
| | | Assert.assertEquals(attribute.size(), 0); |
| | | } |
| | | |
| | | |
| | | |
| | | @Test |
| | | public void testAdd() |
| | | { |
| | | Attribute a = new LinkedAttribute("test"); |
| | | Assert.assertTrue(a.add(ByteString.valueOf("value1"))); |
| | | Assert.assertFalse(a.add(ByteString.valueOf("value1"))); |
| | | Assert.assertTrue(a.add(ByteString.valueOf("value2"))); |
| | | Assert.assertFalse(a.add(ByteString.valueOf("value2"))); |
| | | Assert.assertTrue(a.add(ByteString.valueOf("value3"))); |
| | | Assert.assertFalse(a.add(ByteString.valueOf("value3"))); |
| | | Assert.assertEquals(a.size(), 3); |
| | | Iterator<ByteString> i = a.iterator(); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value1")); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value2")); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value3")); |
| | | Assert.assertFalse(i.hasNext()); |
| | | } |
| | | |
| | | |
| | | |
| | | @Test |
| | | public void testAddAll() |
| | | { |
| | | // addAll to an empty attribute. |
| | | Attribute a = new LinkedAttribute("test"); |
| | | Assert.assertFalse(a.addAll(Collections.<ByteString> emptyList(), null)); |
| | | Iterator<ByteString> i = a.iterator(); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | a = new LinkedAttribute("test"); |
| | | Assert.assertTrue(a.addAll(Arrays.asList(ByteString.valueOf("value1")), |
| | | null)); |
| | | i = a.iterator(); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value1")); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | a = new LinkedAttribute("test"); |
| | | Assert.assertTrue(a.addAll( |
| | | Arrays.asList(ByteString.valueOf("value1"), |
| | | ByteString.valueOf("value2")), null)); |
| | | i = a.iterator(); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value1")); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value2")); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | // addAll to a single-valued attribute. |
| | | a = new LinkedAttribute("test", ByteString.valueOf("value1")); |
| | | Assert.assertFalse(a.addAll(Collections.<ByteString> emptyList(), null)); |
| | | i = a.iterator(); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value1")); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | a = new LinkedAttribute("test", ByteString.valueOf("value1")); |
| | | Assert.assertTrue(a.addAll(Arrays.asList(ByteString.valueOf("value2")), |
| | | null)); |
| | | i = a.iterator(); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value1")); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value2")); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | a = new LinkedAttribute("test", ByteString.valueOf("value1")); |
| | | Assert.assertTrue(a.addAll( |
| | | Arrays.asList(ByteString.valueOf("value2"), |
| | | ByteString.valueOf("value3")), null)); |
| | | i = a.iterator(); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value1")); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value2")); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value3")); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | // addAll to a multi-valued attribute. |
| | | a = new LinkedAttribute("test", ByteString.valueOf("value1"), |
| | | ByteString.valueOf("value2")); |
| | | Assert.assertFalse(a.addAll(Collections.<ByteString> emptyList(), null)); |
| | | i = a.iterator(); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value1")); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value2")); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | a = new LinkedAttribute("test", ByteString.valueOf("value1"), |
| | | ByteString.valueOf("value2")); |
| | | Assert.assertTrue(a.addAll(Arrays.asList(ByteString.valueOf("value3")), |
| | | null)); |
| | | i = a.iterator(); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value1")); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value2")); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value3")); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | a = new LinkedAttribute("test", ByteString.valueOf("value1"), |
| | | ByteString.valueOf("value2")); |
| | | Assert.assertTrue(a.addAll( |
| | | Arrays.asList(ByteString.valueOf("value3"), |
| | | ByteString.valueOf("value4")), null)); |
| | | i = a.iterator(); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value1")); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value2")); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value3")); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value4")); |
| | | Assert.assertFalse(i.hasNext()); |
| | | } |
| | | |
| | | |
| | | |
| | | @Test |
| | | public void testClear() |
| | | { |
| | | Attribute a = new LinkedAttribute("test"); |
| | | Assert.assertTrue(a.isEmpty()); |
| | | Assert.assertEquals(a.size(), 0); |
| | | a.clear(); |
| | | Assert.assertTrue(a.isEmpty()); |
| | | Assert.assertEquals(a.size(), 0); |
| | | |
| | | a.add(ByteString.valueOf("value1")); |
| | | Assert.assertFalse(a.isEmpty()); |
| | | Assert.assertEquals(a.size(), 1); |
| | | a.clear(); |
| | | Assert.assertTrue(a.isEmpty()); |
| | | Assert.assertEquals(a.size(), 0); |
| | | |
| | | a.add(ByteString.valueOf("value1")); |
| | | a.add(ByteString.valueOf("value2")); |
| | | Assert.assertFalse(a.isEmpty()); |
| | | Assert.assertEquals(a.size(), 2); |
| | | a.clear(); |
| | | Assert.assertTrue(a.isEmpty()); |
| | | Assert.assertEquals(a.size(), 0); |
| | | |
| | | a.add(ByteString.valueOf("value1")); |
| | | a.add(ByteString.valueOf("value2")); |
| | | a.add(ByteString.valueOf("value3")); |
| | | Assert.assertFalse(a.isEmpty()); |
| | | Assert.assertEquals(a.size(), 3); |
| | | a.clear(); |
| | | Assert.assertTrue(a.isEmpty()); |
| | | Assert.assertEquals(a.size(), 0); |
| | | } |
| | | |
| | | |
| | | |
| | | @Test |
| | | public void testContains() |
| | | { |
| | | Attribute a = new LinkedAttribute("test"); |
| | | Assert.assertFalse(a.contains(ByteString.valueOf("value4"))); |
| | | |
| | | a.add(ByteString.valueOf("value1")); |
| | | Assert.assertTrue(a.contains(ByteString.valueOf("value1"))); |
| | | Assert.assertFalse(a.contains(ByteString.valueOf("value4"))); |
| | | |
| | | a.add(ByteString.valueOf("value2")); |
| | | Assert.assertTrue(a.contains(ByteString.valueOf("value1"))); |
| | | Assert.assertTrue(a.contains(ByteString.valueOf("value2"))); |
| | | Assert.assertFalse(a.contains(ByteString.valueOf("value4"))); |
| | | |
| | | a.add(ByteString.valueOf("value3")); |
| | | Assert.assertTrue(a.contains(ByteString.valueOf("value1"))); |
| | | Assert.assertTrue(a.contains(ByteString.valueOf("value2"))); |
| | | Assert.assertTrue(a.contains(ByteString.valueOf("value3"))); |
| | | Assert.assertFalse(a.contains(ByteString.valueOf("value4"))); |
| | | } |
| | | |
| | | |
| | | |
| | | @Test |
| | | public void testContainsAll() |
| | | { |
| | | Attribute a = new LinkedAttribute("test"); |
| | | Assert.assertTrue(a.containsAll(Collections.<ByteString> emptyList())); |
| | | Assert |
| | | .assertFalse(a.containsAll(Arrays.asList(ByteString.valueOf("value1")))); |
| | | Assert.assertFalse(a.containsAll(Arrays.asList( |
| | | ByteString.valueOf("value1"), ByteString.valueOf("value2")))); |
| | | Assert.assertFalse(a.containsAll(Arrays.asList( |
| | | ByteString.valueOf("value1"), ByteString.valueOf("value2"), |
| | | ByteString.valueOf("value3")))); |
| | | |
| | | a.add(ByteString.valueOf("value1")); |
| | | Assert.assertTrue(a.containsAll(Collections.<ByteString> emptyList())); |
| | | Assert |
| | | .assertTrue(a.containsAll(Arrays.asList(ByteString.valueOf("value1")))); |
| | | Assert.assertFalse(a.containsAll(Arrays.asList( |
| | | ByteString.valueOf("value1"), ByteString.valueOf("value2")))); |
| | | Assert.assertFalse(a.containsAll(Arrays.asList( |
| | | ByteString.valueOf("value1"), ByteString.valueOf("value2"), |
| | | ByteString.valueOf("value3")))); |
| | | |
| | | a.add(ByteString.valueOf("value2")); |
| | | Assert.assertTrue(a.containsAll(Collections.<ByteString> emptyList())); |
| | | Assert |
| | | .assertTrue(a.containsAll(Arrays.asList(ByteString.valueOf("value1")))); |
| | | Assert.assertTrue(a.containsAll(Arrays.asList(ByteString.valueOf("value1"), |
| | | ByteString.valueOf("value2")))); |
| | | Assert.assertFalse(a.containsAll(Arrays.asList( |
| | | ByteString.valueOf("value1"), ByteString.valueOf("value2"), |
| | | ByteString.valueOf("value3")))); |
| | | } |
| | | |
| | | |
| | | |
| | | @Test |
| | | public void testFirstValue() |
| | | { |
| | | Attribute a = new LinkedAttribute("test"); |
| | | try |
| | | { |
| | | a.firstValue(); |
| | | Assert.fail("Expected NoSuchElementException"); |
| | | } |
| | | catch (NoSuchElementException e) |
| | | { |
| | | // Expected. |
| | | } |
| | | |
| | | a = new LinkedAttribute("test", ByteString.valueOf("value1")); |
| | | Assert.assertEquals(a.firstValue(), ByteString.valueOf("value1")); |
| | | |
| | | a = new LinkedAttribute("test", ByteString.valueOf("value1"), |
| | | ByteString.valueOf("value2")); |
| | | Assert.assertEquals(a.firstValue(), ByteString.valueOf("value1")); |
| | | |
| | | a = new LinkedAttribute("test", ByteString.valueOf("value2"), |
| | | ByteString.valueOf("value1")); |
| | | Assert.assertEquals(a.firstValue(), ByteString.valueOf("value2")); |
| | | } |
| | | |
| | | |
| | | |
| | | @Test |
| | | public void testGetAttributeDescription() |
| | | { |
| | | AttributeDescription ad = AttributeDescription.valueOf("test"); |
| | | Attribute a = new LinkedAttribute(ad); |
| | | Assert.assertEquals(a.getAttributeDescription(), ad); |
| | | } |
| | | |
| | | |
| | | |
| | | @Test |
| | | public void testIterator() |
| | | { |
| | | Attribute a = new LinkedAttribute("test"); |
| | | Iterator<ByteString> i = a.iterator(); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | a = new LinkedAttribute("test", ByteString.valueOf("value1")); |
| | | i = a.iterator(); |
| | | Assert.assertTrue(i.hasNext()); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value1")); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | a = new LinkedAttribute("test", ByteString.valueOf("value1"), |
| | | ByteString.valueOf("value2")); |
| | | i = a.iterator(); |
| | | Assert.assertTrue(i.hasNext()); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value1")); |
| | | Assert.assertTrue(i.hasNext()); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value2")); |
| | | Assert.assertFalse(i.hasNext()); |
| | | } |
| | | |
| | | |
| | | |
| | | @Test |
| | | public void testRemove() |
| | | { |
| | | Attribute a = new LinkedAttribute("test"); |
| | | Assert.assertFalse(a.remove(ByteString.valueOf("value1"))); |
| | | Iterator<ByteString> i = a.iterator(); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | a = new LinkedAttribute("test", ByteString.valueOf("value1")); |
| | | Assert.assertFalse(a.remove(ByteString.valueOf("value2"))); |
| | | i = a.iterator(); |
| | | Assert.assertTrue(i.hasNext()); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value1")); |
| | | Assert.assertFalse(i.hasNext()); |
| | | Assert.assertTrue(a.remove(ByteString.valueOf("value1"))); |
| | | i = a.iterator(); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | a = new LinkedAttribute("test", ByteString.valueOf("value1"), |
| | | ByteString.valueOf("value2")); |
| | | Assert.assertFalse(a.remove(ByteString.valueOf("value3"))); |
| | | i = a.iterator(); |
| | | Assert.assertTrue(i.hasNext()); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value1")); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value2")); |
| | | Assert.assertFalse(i.hasNext()); |
| | | Assert.assertTrue(a.remove(ByteString.valueOf("value1"))); |
| | | i = a.iterator(); |
| | | Assert.assertTrue(i.hasNext()); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value2")); |
| | | Assert.assertFalse(i.hasNext()); |
| | | Assert.assertTrue(a.remove(ByteString.valueOf("value2"))); |
| | | i = a.iterator(); |
| | | Assert.assertFalse(i.hasNext()); |
| | | } |
| | | |
| | | |
| | | |
| | | @Test |
| | | public void testRemoveAll() |
| | | { |
| | | // removeAll from an empty attribute. |
| | | Attribute a = new LinkedAttribute("test"); |
| | | Assert.assertFalse(a.removeAll(Collections.<ByteString> emptyList(), null)); |
| | | Iterator<ByteString> i = a.iterator(); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | a = new LinkedAttribute("test"); |
| | | Assert.assertFalse(a.removeAll(Arrays.asList(ByteString.valueOf("value1")), |
| | | null)); |
| | | i = a.iterator(); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | a = new LinkedAttribute("test"); |
| | | Assert.assertFalse(a.removeAll(Arrays.asList(ByteString.valueOf("value1"), |
| | | ByteString.valueOf("value2")))); |
| | | i = a.iterator(); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | // removeAll from single-valued attribute. |
| | | a = new LinkedAttribute("test", ByteString.valueOf("value1")); |
| | | Assert.assertFalse(a.removeAll(Collections.<ByteString> emptyList(), null)); |
| | | i = a.iterator(); |
| | | Assert.assertTrue(i.hasNext()); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value1")); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | a = new LinkedAttribute("test", ByteString.valueOf("value1")); |
| | | Assert.assertTrue(a.removeAll(Arrays.asList(ByteString.valueOf("value1")), |
| | | null)); |
| | | i = a.iterator(); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | a = new LinkedAttribute("test", ByteString.valueOf("value1")); |
| | | Assert.assertTrue(a.removeAll(Arrays.asList(ByteString.valueOf("value1"), |
| | | ByteString.valueOf("value2")))); |
| | | i = a.iterator(); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | // removeAll from multi-valued attribute. |
| | | a = new LinkedAttribute("test", ByteString.valueOf("value1"), |
| | | ByteString.valueOf("value2"), ByteString.valueOf("value3"), |
| | | ByteString.valueOf("value4")); |
| | | Assert.assertFalse(a.removeAll(Collections.<ByteString> emptyList(), null)); |
| | | i = a.iterator(); |
| | | Assert.assertTrue(i.hasNext()); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value1")); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value2")); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value3")); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value4")); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | a = new LinkedAttribute("test", ByteString.valueOf("value1"), |
| | | ByteString.valueOf("value2"), ByteString.valueOf("value3"), |
| | | ByteString.valueOf("value4")); |
| | | Assert.assertTrue(a.removeAll(Arrays.asList(ByteString.valueOf("value1")), |
| | | null)); |
| | | i = a.iterator(); |
| | | Assert.assertTrue(i.hasNext()); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value2")); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value3")); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value4")); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | a = new LinkedAttribute("test", ByteString.valueOf("value1"), |
| | | ByteString.valueOf("value2"), ByteString.valueOf("value3"), |
| | | ByteString.valueOf("value4")); |
| | | Assert.assertTrue(a.removeAll( |
| | | Arrays.asList(ByteString.valueOf("value1"), |
| | | ByteString.valueOf("value2")), null)); |
| | | i = a.iterator(); |
| | | Assert.assertTrue(i.hasNext()); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value3")); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value4")); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | a = new LinkedAttribute("test", ByteString.valueOf("value1"), |
| | | ByteString.valueOf("value2"), ByteString.valueOf("value3"), |
| | | ByteString.valueOf("value4")); |
| | | Assert.assertTrue(a.removeAll( |
| | | Arrays.asList(ByteString.valueOf("value1"), |
| | | ByteString.valueOf("value2"), ByteString.valueOf("value3")), null)); |
| | | i = a.iterator(); |
| | | Assert.assertTrue(i.hasNext()); |
| | | Assert.assertEquals(i.next(), ByteString.valueOf("value4")); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | a = new LinkedAttribute("test", ByteString.valueOf("value1"), |
| | | ByteString.valueOf("value2"), ByteString.valueOf("value3"), |
| | | ByteString.valueOf("value4")); |
| | | Assert.assertTrue(a.removeAll(Arrays.asList(ByteString.valueOf("value1"), |
| | | ByteString.valueOf("value2"), ByteString.valueOf("value3"), |
| | | ByteString.valueOf("value4")), null)); |
| | | i = a.iterator(); |
| | | Assert.assertFalse(i.hasNext()); |
| | | |
| | | a = new LinkedAttribute("test", ByteString.valueOf("value1"), |
| | | ByteString.valueOf("value2"), ByteString.valueOf("value3"), |
| | | ByteString.valueOf("value4")); |
| | | Assert.assertTrue(a.removeAll(Arrays.asList(ByteString.valueOf("value1"), |
| | | ByteString.valueOf("value2"), ByteString.valueOf("value3"), |
| | | ByteString.valueOf("value4"), ByteString.valueOf("value5")), null)); |
| | | i = a.iterator(); |
| | | Assert.assertFalse(i.hasNext()); |
| | | } |
| | | } |