From 38b88d16b004b4fc62125d00c5bc2bd0a504e306 Mon Sep 17 00:00:00 2001
From: ludovicp <ludovicp@localhost>
Date: Thu, 27 May 2010 12:56:17 +0000
Subject: [PATCH] Fix an issue in External ChangeLog where an NPE is raised when include-attributes are configured and a modification doesn't contain those attributes.
---
opends/tests/unit-tests-testng/src/server/org/opends/server/replication/ExternalChangeLogTest.java | 20 ++++++++++++--------
1 files changed, 12 insertions(+), 8 deletions(-)
diff --git a/opends/tests/unit-tests-testng/src/server/org/opends/server/replication/ExternalChangeLogTest.java b/opends/tests/unit-tests-testng/src/server/org/opends/server/replication/ExternalChangeLogTest.java
index 68c4833..b15b2ba 100644
--- a/opends/tests/unit-tests-testng/src/server/org/opends/server/replication/ExternalChangeLogTest.java
+++ b/opends/tests/unit-tests-testng/src/server/org/opends/server/replication/ExternalChangeLogTest.java
@@ -3856,10 +3856,11 @@
replServers.add("localhost:"+replicationServerPort);
DomainFakeCfg domainConf =
new DomainFakeCfg(baseDn2, 1702, replServers);
- // SortedSet<String> includeAttributes = new TreeSet<String>();
- // includeAttributes.add("sn");
+
+ // on o=test2,sid=1702 include attrs set to : 'sn'
SortedSet<AttributeType> eclInclude = new TreeSet<AttributeType>();
eclInclude.add(DirectoryServer.getAttributeType("sn"));
+ eclInclude.add(DirectoryServer.getAttributeType("roomnumber"));
ExternalChangelogDomainFakeCfg eclCfg =
new ExternalChangelogDomainFakeCfg(true, eclInclude);
domainConf.setExternalChangelogDomain(eclCfg);
@@ -3875,6 +3876,8 @@
baseDn3 = DN.decode(TEST_ROOT_DN_STRING3);
domainConf =
new DomainFakeCfg(baseDn3, 1703, replServers);
+
+ // on o=test3,sid=1703 include attrs set to : 'objectclass'
eclInclude = new TreeSet<AttributeType>();
eclInclude.add(DirectoryServer.getAttributeType("objectclass"));
eclCfg =
@@ -3887,6 +3890,7 @@
domain3 = MultimasterReplication.createNewDomain(domainConf);
domain3.start();
+ // on o=test2,sid=1704 include attrs set to : 'cn'
domainConf =
new DomainFakeCfg(baseDn2, 1704, replServers);
eclInclude = new TreeSet<AttributeType>();
@@ -3921,7 +3925,7 @@
+ "telephonenumber: 12121212");
Entry uentry1 = TestCaseUtils.entryFromLdifString(lentry);
- addEntry(uentry1);
+ addEntry(uentry1); // add fiona in o=test2
lentry = new String(
"dn: cn=Robert Hue," + TEST_ROOT_DN_STRING3 + "\n"
@@ -3934,9 +3938,9 @@
+ "uid: robert\n"
+ "telephonenumber: 131313");
Entry uentry2 = TestCaseUtils.entryFromLdifString(lentry);
- addEntry(uentry2);
+ addEntry(uentry2); // add robert in o=test3
- //
+ // mod 'sn' of fiona (o=test2) with 'sn' configured as ecl-incl-att
AttributeBuilder builder = new AttributeBuilder("sn");
builder.add("newsn");
Modification mod =
@@ -3948,7 +3952,7 @@
modOpBasis.run();
waitOpResult(modOpBasis, ResultCode.SUCCESS);
- //
+ // mod 'telephonenumber' of robert (o=test3)
builder = new AttributeBuilder("telephonenumber");
builder.add("555555");
mod =
@@ -3960,7 +3964,7 @@
modOpBasis2.run();
waitOpResult(modOpBasis2, ResultCode.SUCCESS);
- //
+ // moddn robert (o=test3) to robert2 (o=test3)
ModifyDNOperationBasis modDNOp = new ModifyDNOperationBasis(connection,
InternalClientConnection.nextOperationID(),
InternalClientConnection.nextMessageID(),
@@ -3971,7 +3975,7 @@
modDNOp.run();
waitOpResult(modDNOp, ResultCode.SUCCESS);
- //
+ // del robert (o=test3)
delOp = new DeleteOperationBasis(connection,
InternalClientConnection.nextOperationID(),
InternalClientConnection.nextMessageID(), null,
--
Gitblit v1.10.0