From b092ba85131000627f16a15abc8203f1982f81d1 Mon Sep 17 00:00:00 2001
From: Guy Paddock <guy@rosieapp.com>
Date: Fri, 27 Oct 2017 04:48:50 +0000
Subject: [PATCH] Add OUs to `BasicRequestsTest`
---
opendj-rest2ldap/src/test/java/org/forgerock/opendj/rest2ldap/BasicRequestsTest.java | 125 +++++++++++++++++++++++++++++++++++------
1 files changed, 106 insertions(+), 19 deletions(-)
diff --git a/opendj-rest2ldap/src/test/java/org/forgerock/opendj/rest2ldap/BasicRequestsTest.java b/opendj-rest2ldap/src/test/java/org/forgerock/opendj/rest2ldap/BasicRequestsTest.java
index 080979a..7b9c3ac 100644
--- a/opendj-rest2ldap/src/test/java/org/forgerock/opendj/rest2ldap/BasicRequestsTest.java
+++ b/opendj-rest2ldap/src/test/java/org/forgerock/opendj/rest2ldap/BasicRequestsTest.java
@@ -93,7 +93,7 @@
private static final QueryFilter<JsonPointer> NO_FILTER = QueryFilter.alwaysTrue();
@Test
- public void testQueryAll() throws Exception {
+ public void testQueryAllWithNoSubtree() throws Exception {
final Connection connection = newConnection();
final List<ResourceResponse> resources = new LinkedList<>();
final QueryResponse result =
@@ -102,11 +102,26 @@
newQueryRequest("").setQueryFilter(NO_FILTER),
resources);
- assertThat(resources).hasSize(5);
+ assertThat(resources).hasSize(7);
assertThat(result.getPagedResultsCookie()).isNull();
assertThat(result.getTotalPagedResults()).isEqualTo(-1);
}
+// @Test
+// public void testQueryAllWithSubtree() throws Exception {
+// final Connection connection = newConnection();
+// final List<ResourceResponse> resources = new LinkedList<>();
+// final QueryResponse result =
+// connection.query(
+// newAuthConnectionContext(),
+// newQueryRequest("").setQueryFilter(NO_FILTER),
+// resources);
+//
+// assertThat(resources).hasSize(7);
+// assertThat(result.getPagedResultsCookie()).isNull();
+// assertThat(result.getTotalPagedResults()).isEqualTo(-1);
+// }
+
@Test
public void testQueryNone() throws Exception {
final Connection connection = newConnection();
@@ -128,12 +143,22 @@
QueryResponse result =
connection.query(
newAuthConnectionContext(),
- newQueryRequest("").setQueryFilter(NO_FILTER).setPageSize(2), resources);
+ newQueryRequest("")
+ .setQueryFilter(NO_FILTER)
+ .setPageSize(3),
+ resources);
assertThat(result.getPagedResultsCookie()).isNotNull();
- assertThat(resources).hasSize(2);
- assertThat(resources.get(0).getId()).isEqualTo("test1");
- assertThat(resources.get(1).getId()).isEqualTo("test2");
+ assertThat(resources).hasSize(3);
+
+ assertThat(resources.get(0).getContent().get("_ou").isNotNull());
+ assertThat(resources.get(0).getContent().get("_ou").asString()).isEqualTo("level1");
+
+ assertThat(resources.get(1).getContent().get("_ou").isNull());
+ assertThat(resources.get(1).getId()).isEqualTo("test1");
+
+ assertThat(resources.get(2).getContent().get("_ou").isNull());
+ assertThat(resources.get(2).getId()).isEqualTo("test2");
String cookie = result.getPagedResultsCookie();
@@ -145,15 +170,22 @@
newAuthConnectionContext(),
newQueryRequest("")
.setQueryFilter(NO_FILTER)
- .setPageSize(2)
+ .setPageSize(3)
.setPagedResultsCookie(cookie),
resources);
assertThat(result.getPagedResultsCookie()).isNotNull();
- assertThat(resources).hasSize(2);
+ assertThat(resources).hasSize(3);
+
+ assertThat(resources.get(0).getContent().get("_ou").isNull());
assertThat(resources.get(0).getId()).isEqualTo("test3");
+
+ assertThat(resources.get(1).getContent().get("_ou").isNull());
assertThat(resources.get(1).getId()).isEqualTo("test4");
+ assertThat(resources.get(2).getContent().get("_ou").isNull());
+ assertThat(resources.get(2).getId()).isEqualTo("test5");
+
cookie = result.getPagedResultsCookie();
resources.clear();
@@ -164,13 +196,15 @@
newAuthConnectionContext(),
newQueryRequest("")
.setQueryFilter(NO_FILTER)
- .setPageSize(2)
+ .setPageSize(3)
.setPagedResultsCookie(cookie),
resources);
assertThat(result.getPagedResultsCookie()).isNull();
assertThat(resources).hasSize(1);
- assertThat(resources.get(0).getId()).isEqualTo("test5");
+
+ assertThat(resources.get(0).getContent().get("_ou").isNull());
+ assertThat(resources.get(0).getId()).isEqualTo("test6");
}
@Test
@@ -189,8 +223,8 @@
assertThat(result.getPagedResultsCookie()).isNotNull();
assertThat(resources).hasSize(2);
- assertThat(resources.get(0).getId()).isEqualTo("test3");
- assertThat(resources.get(1).getId()).isEqualTo("test4");
+ assertThat(resources.get(0).getId()).isEqualTo("test2");
+ assertThat(resources.get(1).getId()).isEqualTo("test3");
}
@Test(expectedExceptions = NotFoundException.class)
@@ -775,6 +809,9 @@
"_id",
simple("uid").isRequired(true).writability(CREATE_ONLY))
.property(
+ "_ou",
+ simple("ou").isRequired(false).writability(CREATE_ONLY))
+ .property(
"name",
object()
.property("displayName", simple("cn").isRequired(true))
@@ -799,18 +836,24 @@
assertThat(actual.getId()).isEqualTo(expectedResource.getId());
assertThat(actual.getRevision()).isEqualTo(expectedResource.getRevision());
- assertThat(actual.getContent().getObject()).isEqualTo(expectedResource.getContent().getObject());
+
+ assertThat(actual.getContent().getObject())
+ .isEqualTo(expectedResource.getContent().getObject());
}
private AuthenticatedConnectionContext newAuthConnectionContext() throws IOException {
return newAuthConnectionContext(new ArrayList<Request>());
}
- private AuthenticatedConnectionContext newAuthConnectionContext(List<Request> requests) throws IOException {
- return new AuthenticatedConnectionContext(ctx(), getConnectionFactory(requests).getConnection());
+ private AuthenticatedConnectionContext newAuthConnectionContext(List<Request> requests)
+ throws IOException {
+ return new AuthenticatedConnectionContext(
+ ctx(),
+ getConnectionFactory(requests).getConnection());
}
- private ConnectionFactory getConnectionFactory(final List<Request> requests) throws IOException {
+ private ConnectionFactory getConnectionFactory(final List<Request> requests)
+ throws IOException {
// @formatter:off
final MemoryBackend backend =
new MemoryBackend(new LDIFEntryReader(
@@ -862,7 +905,46 @@
"userpassword: password",
"cn: test user 5",
"sn: user 5",
- "etag: 55555"
+ "etag: 55555",
+ "",
+ "dn: uid=test6,dc=test",
+ "objectClass: top",
+ "objectClass: person",
+ "uid: test6",
+ "userpassword: password",
+ "cn: test user 6",
+ "sn: user 6",
+ "etag: 66666",
+ "",
+ "dn: ou=level1,dc=test",
+ "objectClass: top",
+ "objectClass: organizationalUnit",
+ "ou: level1",
+ "etag: 77777",
+ "",
+ "dn: uid=sub1,ou=level1,dc=test",
+ "objectClass: top",
+ "objectClass: person",
+ "uid: sub1",
+ "userpassword: password",
+ "cn: test user level 1",
+ "sn: user 7",
+ "etag: 88888",
+ "",
+ "dn: ou=level2,ou=level1,dc=test",
+ "objectClass: top",
+ "objectClass: organizationalUnit",
+ "ou: level2",
+ "etag: 99999",
+ "",
+ "dn: uid=sub2,ou=level2,ou=level1,dc=test",
+ "objectClass: top",
+ "objectClass: person",
+ "uid: sub2",
+ "userpassword: password",
+ "cn: test user level 2",
+ "sn: user 8",
+ "etag: 86753"
));
// @formatter:on
@@ -938,10 +1020,15 @@
@Override
public void handleSearch(RequestContext requestContext, SearchRequest request,
- IntermediateResponseHandler intermediateResponseHandler, SearchResultHandler entryHandler,
+ IntermediateResponseHandler intermediateResponseHandler,
+ SearchResultHandler entryHandler,
LdapResultHandler<Result> resultHandler) {
requests.add(request);
- handler.handleSearch(requestContext, request, intermediateResponseHandler, entryHandler,
+ handler.handleSearch(
+ requestContext,
+ request,
+ intermediateResponseHandler,
+ entryHandler,
resultHandler);
}
--
Gitblit v1.10.0