use of org.apache.directory.api.dsmlv2.Dsmlv2ResponseParser in project directory-ldap-api by apache.
the class SearchResultDoneTest method testResponseWith1EmptyReferral.
/**
* Test parsing of a response with an empty Referral
*/
@Test
public void testResponseWith1EmptyReferral() {
Dsmlv2ResponseParser parser = null;
try {
parser = new Dsmlv2ResponseParser(getCodec());
parser.setInput(SearchResultDoneTest.class.getResource("response_with_1_empty_referral.xml").openStream(), "UTF-8");
parser.parse();
} catch (Exception e) {
fail(e.getMessage());
}
SearchResultDone searchResultDone = ((SearchResponse) parser.getBatchResponse().getCurrentResponse().getDecorated()).getSearchResultDone();
LdapResult ldapResult = searchResultDone.getLdapResult();
Collection<String> referrals = ldapResult.getReferral().getLdapUrls();
assertEquals(0, referrals.size());
}
use of org.apache.directory.api.dsmlv2.Dsmlv2ResponseParser in project directory-ldap-api by apache.
the class SearchResultEntryTest method testResponseWith1Control.
/**
* Test parsing of a response with a (optional) Control element
*/
@Test
public void testResponseWith1Control() {
Dsmlv2ResponseParser parser = null;
try {
parser = new Dsmlv2ResponseParser(getCodec());
parser.setInput(SearchResultEntryTest.class.getResource("response_with_1_control.xml").openStream(), "UTF-8");
parser.parse();
} catch (Exception e) {
fail(e.getMessage());
}
SearchResponse searchResponse = (SearchResponse) parser.getBatchResponse().getCurrentResponse().getDecorated();
SearchResultEntry searchResultEntry = searchResponse.getCurrentSearchResultEntry();
Map<String, Control> controls = searchResponse.getCurrentSearchResultEntry().getControls();
assertEquals(1, searchResultEntry.getControls().size());
Control control = controls.get("1.2.840.113556.1.4.643");
assertNotNull(control);
assertTrue(control.isCritical());
assertEquals("1.2.840.113556.1.4.643", control.getOid());
assertEquals("Some text", Strings.utf8ToString(((DsmlControl<?>) control).getValue()));
}
use of org.apache.directory.api.dsmlv2.Dsmlv2ResponseParser in project directory-ldap-api by apache.
the class SearchResultEntryTest method testResponseWith1ControlEmptyValue.
/**
* Test parsing of a response with a (optional) Control element with empty value
*/
@Test
public void testResponseWith1ControlEmptyValue() {
Dsmlv2ResponseParser parser = null;
try {
parser = new Dsmlv2ResponseParser(getCodec());
parser.setInput(SearchResultEntryTest.class.getResource("response_with_1_control_empty_value.xml").openStream(), "UTF-8");
parser.parse();
} catch (Exception e) {
fail(e.getMessage());
}
SearchResponse searchResponse = (SearchResponse) parser.getBatchResponse().getCurrentResponse().getDecorated();
SearchResultEntry searchResultEntry = searchResponse.getCurrentSearchResultEntry();
Map<String, Control> controls = searchResultEntry.getControls();
assertEquals(1, searchResultEntry.getControls().size());
Control control = controls.get("1.2.840.113556.1.4.643");
assertNotNull(control);
assertTrue(control.isCritical());
assertEquals("1.2.840.113556.1.4.643", control.getOid());
assertFalse(((DsmlControl<?>) control).hasValue());
}
use of org.apache.directory.api.dsmlv2.Dsmlv2ResponseParser in project directory-ldap-api by apache.
the class SearchResultEntryTest method testResponseWith0Attr.
/**
* Test parsing of a response with 0 Attr
*/
@Test
public void testResponseWith0Attr() {
Dsmlv2ResponseParser parser = null;
try {
parser = new Dsmlv2ResponseParser(getCodec());
parser.setInput(SearchResultEntryTest.class.getResource("response_with_0_attr.xml").openStream(), "UTF-8");
parser.parse();
} catch (Exception e) {
fail(e.getMessage());
}
assertTrue(true);
}
use of org.apache.directory.api.dsmlv2.Dsmlv2ResponseParser in project directory-ldap-api by apache.
the class SearchResultEntryTest method testResponseWith2Attr1Value.
/**
* Test parsing of a response with 2 Attr 1 Value
*/
@Test
public void testResponseWith2Attr1Value() {
Dsmlv2ResponseParser parser = null;
try {
parser = new Dsmlv2ResponseParser(getCodec());
parser.setInput(SearchResultEntryTest.class.getResource("response_with_2_attr_1_value.xml").openStream(), "UTF-8");
parser.parse();
} catch (Exception e) {
fail(e.getMessage());
}
SearchResultEntry searchResultEntry = ((SearchResponse) parser.getBatchResponse().getCurrentResponse().getDecorated()).getCurrentSearchResultEntry();
Entry entry = searchResultEntry.getEntry();
assertEquals(2, entry.size());
Attribute objectClassAttribute = entry.get("objectclass");
assertEquals(1, objectClassAttribute.size());
Iterator<Value> valueIterator = objectClassAttribute.iterator();
assertTrue(valueIterator.hasNext());
Value value = valueIterator.next();
assertEquals("top", value.getValue());
assertFalse(valueIterator.hasNext());
Attribute dcAttribute = entry.get("dc");
assertEquals(1, objectClassAttribute.size());
valueIterator = dcAttribute.iterator();
assertTrue(valueIterator.hasNext());
value = valueIterator.next();
assertEquals("example", value.getValue());
assertFalse(valueIterator.hasNext());
}
Aggregations