From 9462ec1695071ceae32278c169cd95a594f5f9cf Mon Sep 17 00:00:00 2001
From: ugaston <ugaston@localhost>
Date: Wed, 06 Feb 2008 18:30:53 +0000
Subject: [PATCH] Small fix + make-up schema replication test suite
---
opends/tests/functional-tests/testcases/replication/schema/schema.xml | 509 ++++++++++++++++++++++++++++++++++---------------------
1 files changed, 312 insertions(+), 197 deletions(-)
diff --git a/opends/tests/functional-tests/testcases/replication/schema/schema.xml b/opends/tests/functional-tests/testcases/replication/schema/schema.xml
index c5a407c..2cacbda 100644
--- a/opends/tests/functional-tests/testcases/replication/schema/schema.xml
+++ b/opends/tests/functional-tests/testcases/replication/schema/schema.xml
@@ -47,7 +47,8 @@
<!--- Test Suite information
#@TestSuiteName Replication Schema Replication Tests
- #@TestSuitePurpose Verify that the schema is replicated as any other suffix in a replicated topology.
+ #@TestSuitePurpose Verify that the schema is replicated as any
+ other suffix in a replicated topology.
#@TestSuiteID Schema Replication Tests
#@TestSuiteGroup Schema Replication
#@TestGroup Replication
@@ -57,7 +58,7 @@
<import machine="STAF_LOCAL_HOSTNAME"
- file="'%s/testcases/replication/replication_setup.xml' % (TESTS_DIR)"/>
+ file="'%s/testcases/replication/replication_setup.xml' % TESTS_DIR"/>
<call function="'replication_setup'" />
<script>
@@ -74,18 +75,21 @@
<!--- Test Case information
#@TestMarker Replication Schema Replication Tests
#@TestName Replication: Schema Replication: Add objectclass
- #@TestID Add objectclass
- #@TestPurpose Check schema replication when a new objectclass is added
- #@TestPreamble
- #@TestSteps
+ #@TestID Add objectclass
+ #@TestPurpose Check schema replication when a new objectclass
+ is added
+ #@TestPreamble Load entries
+ #@TestSteps Add new objectclass definition on server1
+ #@TestSteps Add entry of new objectclass on server2
#@TestPostamble
- #@TestResult
+ #@TestResult Success if schema add and entry add replicated
-->
<testcase name="getTestCaseName('Add objectclass')">
<sequence>
<call function="'testCase_Preamble'"/>
<message>
- 'Replication: Schema Replication: Add objectclass. Check schema replication when a new objectclass is added'
+ 'Replication: Schema Replication: Add objectclass. \
+ Check schema replication when a new objectclass is added'
</message>
<!-- Load entries into "master" server -->
@@ -96,7 +100,9 @@
'dsInstancePort' : master.getPort(),
'dsInstanceDn' : master.getRootDn(),
'dsInstancePswd' : master.getRootPwd(),
- 'entryToBeAdded' : '%s/replication/Example.ldif' % clientDataDir }
+ 'entryToBeAdded' : '%s/replication/Example.ldif' % \
+ clientDataDir
+ }
</call>
<script>
@@ -105,15 +111,16 @@
<!-- Modify schema in "master" server -->
<call function="'modifyAnAttribute'">
- { 'dsPath' : masterPath,
- 'dsInstanceHost' : masterHost ,
+ { 'dsPath' : masterPath,
+ 'dsInstanceHost' : masterHost ,
'dsInstancePort' : master.getPort(),
- 'dsInstanceDn' : master.getRootDn(),
+ 'dsInstanceDn' : master.getRootDn(),
'dsInstancePswd' : master.getRootPwd(),
- 'DNToModify' : 'cn=schema',
- 'attributeName' : 'objectClasses',
+ 'DNToModify' : 'cn=schema',
+ 'attributeName' : 'objectClasses',
'newAttributeValue' : newObjectclass,
- 'changetype' : 'add' }
+ 'changetype' : 'add'
+ }
</call>
<!-- Add entry to "consumer" server -->
@@ -124,22 +131,22 @@
'dsInstancePort' : consumer.getPort(),
'dsInstanceDn' : consumer.getRootDn(),
'dsInstancePswd' : consumer.getRootPwd(),
- 'entryToBeAdded' : '%s/replication/testuser-0.ldif' % clientDataDir }
+ 'entryToBeAdded' : '%s/replication/testuser-0.ldif' % \
+ clientDataDir
+ }
</call>
- <!-- Verify the synchronization of the schema among the servers in the topology -->
+ <!-- Verify the synchronization of the schema among the servers
+ in the topology -->
<call function="'verifySchemas'">
[ clientHost, clientPath, master, consumerList, '99-user.ldif' ]
</call>
- <!-- Verify the synchronization of the trees among the servers in the topology -->
+ <!-- Verify the synchronization of the trees among the servers in
+ the topology -->
<call function="'verifyTrees'">
[ clientHost, clientPath, master, consumerList, synchroSuffix ]
- </call>
-
- <script>
- knownIssue(2599)
- </script>
+ </call>
<call function="'testCase_Postamble'"/>
</sequence>
@@ -150,19 +157,25 @@
<!--- Test Case information
#@TestMarker Replication Schema Replication Tests
- #@TestName Replication: Schema Replication: Add attributetype
- #@TestID Add attributetype
- #@TestPurpose Check schema replication when a new attributetype is added
+ #@TestName Replication: Schema Replication:
+ Add attributetype
+ #@TestID Add attributetype
+ #@TestPurpose Check schema replication when a new
+ attributetype is added
#@TestPreamble
- #@TestSteps
+ #@TestSteps Add new attributeType and new objectclass
+ definition on server1
+ #@TestSteps Add new entry containing new objectclass and
+ new attributeType on server2
#@TestPostamble
- #@TestResult
+ #@TestResult Success if schema add and entry adds replicated
-->
<testcase name="getTestCaseName('Add attributetype')">
<sequence>
<call function="'testCase_Preamble'"/>
<message>
- 'Replication: Schema Replication: Add attributetype Check schema replication when a new attributetype is added'
+ 'Replication: Schema Replication: Add attributetype Check \
+ schema replication when a new attributetype is added'
</message>
<script>
@@ -172,26 +185,28 @@
<!-- Modify schema in "master" server -->
<call function="'modifyAnAttribute'">
- { 'dsPath' : masterPath,
- 'dsInstanceHost' : masterHost ,
+ { 'dsPath' : masterPath,
+ 'dsInstanceHost' : masterHost ,
'dsInstancePort' : master.getPort(),
- 'dsInstanceDn' : master.getRootDn(),
+ 'dsInstanceDn' : master.getRootDn(),
'dsInstancePswd' : master.getRootPwd(),
- 'DNToModify' : 'cn=schema',
- 'attributeName' : 'attributeTypes',
+ 'DNToModify' : 'cn=schema',
+ 'attributeName' : 'attributeTypes',
'newAttributeValue' : newAttributetype,
- 'changetype' : 'add' }
+ 'changetype' : 'add'
+ }
</call>
<call function="'modifyAnAttribute'">
- { 'dsPath' : masterPath,
- 'dsInstanceHost' : masterHost ,
+ { 'dsPath' : masterPath,
+ 'dsInstanceHost' : masterHost ,
'dsInstancePort' : master.getPort(),
- 'dsInstanceDn' : master.getRootDn(),
+ 'dsInstanceDn' : master.getRootDn(),
'dsInstancePswd' : master.getRootPwd(),
- 'DNToModify' : 'cn=schema',
- 'attributeName' : 'objectClasses',
+ 'DNToModify' : 'cn=schema',
+ 'attributeName' : 'objectClasses',
'newAttributeValue' : newObjectclass,
- 'changetype' : 'add' }
+ 'changetype' : 'add'
+ }
</call>
<!-- Add entry to "consumer" server -->
@@ -202,22 +217,22 @@
'dsInstancePort' : consumer.getPort(),
'dsInstanceDn' : consumer.getRootDn(),
'dsInstancePswd' : consumer.getRootPwd(),
- 'entryToBeAdded' : '%s/replication/testuser-1.ldif' % clientDataDir }
+ 'entryToBeAdded' : '%s/replication/testuser-1.ldif' % \
+ clientDataDir
+ }
</call>
- <!-- Verify the synchronization of the schema among the servers in the topology -->
+ <!-- Verify the synchronization of the schema among the servers in
+ the topology -->
<call function="'verifySchemas'">
[ clientHost, clientPath, master, consumerList, '99-user.ldif' ]
</call>
- <!-- Verify the synchronization of the trees among the servers in the topology -->
+ <!-- Verify the synchronization of the trees among the servers in
+ the topology -->
<call function="'verifyTrees'">
[ clientHost, clientPath, master, consumerList, synchroSuffix ]
- </call>
-
- <script>
- knownIssue(2599)
- </script>
+ </call>
<call function="'testCase_Postamble'"/>
</sequence>
@@ -227,19 +242,28 @@
<!-- Test Case information
#@TestMarker Replication Schema Replication Tests
- #@TestName Replication: Schema Replication: Delete objectclass
- #@TestID Delete objectclass
- #@TestPurpose Check schema replication when an objectclass is deleted
+ #@TestName Replication: Schema Replication:
+ Delete objectclass
+ #@TestID Delete objectclass
+ #@TestPurpose Check schema replication when an objectclass
+ is deleted
#@TestPreamble
- #@TestSteps
+ #@TestSteps Remove user-defined objectclass definition on
+ server1
+ #@TestSteps Delete entry on server1
+ #@TestSteps Add entry containing removed objectclass on
+ every server
#@TestPostamble
- #@TestResult
+ #@TestResult Success if schema remove replicated and last
+ entry add rejected on all servers (error 65:
+ objectclass violation)
-->
<testcase name="getTestCaseName('Delete objectclass')">
<sequence>
<call function="'testCase_Preamble'"/>
<message>
- 'Replication: Schema Replication: Delete objectclass Check schema replication when an objectclass is deleted'
+ 'Replication: Schema Replication: Delete objectclass Check \
+ schema replication when an objectclass is deleted'
</message>
<script>
@@ -248,30 +272,32 @@
<!-- Modify schema in "master" server -->
<call function="'modifyAnAttribute'">
- { 'dsPath' : masterPath,
- 'dsInstanceHost' : masterHost ,
+ { 'dsPath' : masterPath,
+ 'dsInstanceHost' : masterHost ,
'dsInstancePort' : master.getPort(),
- 'dsInstanceDn' : master.getRootDn(),
+ 'dsInstanceDn' : master.getRootDn(),
'dsInstancePswd' : master.getRootPwd(),
- 'DNToModify' : 'cn=schema',
- 'attributeName' : 'objectClasses',
+ 'DNToModify' : 'cn=schema',
+ 'attributeName' : 'objectClasses',
'newAttributeValue' : newObjectclass,
- 'changetype' : 'delete' }
+ 'changetype' : 'delete'
+ }
</call>
<!-- Delete previously added entry -->
<call function="'ldapDeleteWithScript'">
- { 'location' : clientHost,
- 'dsPath' : clientPath,
- 'dsInstanceHost' : master.getHostname(),
- 'dsInstancePort' : master.getPort(),
+ { 'location' : clientHost,
+ 'dsPath' : clientPath,
+ 'dsInstanceHost' : master.getHostname(),
+ 'dsInstancePort' : master.getPort(),
'dsInstanceDn' : master.getRootDn(),
- 'dsInstancePswd' : master.getRootPwd(),
- 'dsDn' : ['cn=testuser-0,ou=People,%s' % synchroSuffix]
+ 'dsInstancePswd' : master.getRootPwd(),
+ 'dsDn' : ['cn=testuser-0,ou=People,%s' % synchroSuffix]
}
</call>
- <!-- Try to add entry to servers; should be rejected with error 65 (objectclass violation) -->
+ <!-- Try to add entry to servers; should be rejected with error 65
+ (objectclass violation) -->
<iterate var="server" in="_topologyServerList">
<call function="'addEntry'">
{ 'location' : clientHost,
@@ -280,25 +306,25 @@
'dsInstancePort' : server.getPort(),
'dsInstanceDn' : server.getRootDn(),
'dsInstancePswd' : server.getRootPwd(),
- 'entryToBeAdded' : '%s/replication/testuser-0.ldif' % clientDataDir,
- 'expectedRC' : 65 }
+ 'entryToBeAdded' : '%s/replication/testuser-0.ldif' % \
+ clientDataDir,
+ 'expectedRC' : 65
+ }
</call>
</iterate>
- <!-- Verify the synchronization of the schema among the servers in the topology -->
+ <!-- Verify the synchronization of the schema among the servers in
+ the topology -->
<call function="'verifySchemas'">
[ clientHost, clientPath, master, consumerList, '99-user.ldif' ]
</call>
- <!-- Verify the synchronization of the trees among the servers in the topology -->
+ <!-- Verify the synchronization of the trees among the servers in
+ the topology -->
<call function="'verifyTrees'">
[ clientHost, clientPath, master, consumerList, synchroSuffix ]
</call>
-
- <script>
- knownIssue(2599)
- </script>
-
+
<call function="'testCase_Postamble'"/>
</sequence>
</testcase>
@@ -307,19 +333,30 @@
<!-- Test Case information
#@TestMarker Replication Schema Replication Tests
- #@TestName Replication: Schema Replication: Modify objectclass
- #@TestID Modify objectclass
- #@TestPurpose Check schema replication when an objectclass is modified
+ #@TestName Replication: Schema Replication:
+ Modify objectclass
+ #@TestID Modify objectclass
+ #@TestPurpose Check schema replication when an objectclass is
+ modified
#@TestPreamble
- #@TestSteps
+ #@TestSteps Remove user-defined objectclass definition on
+ server1
+ #@TestSteps Add modified version of removed user-defined
+ objectclass on server1 (make attributes
+ MANDATORY)
+ #@TestSteps Add entry containing newly added objectclass but
+ without required attributes on every server
#@TestPostamble
- #@TestResult
+ #@TestResult Success if schema modify replicated and entry
+ add rejected with error 65 (objectclass
+ violation) on all servers
-->
<testcase name="getTestCaseName('Modify objectclass')">
<sequence>
<call function="'testCase_Preamble'"/>
<message>
- 'Replication: Schema Replication: Modify objectclass Check schema replication when an objectclass is modified'
+ 'Replication: Schema Replication: Modify objectclass Check \
+ schema replication when an objectclass is modified'
</message>
<script>
@@ -329,29 +366,32 @@
<!-- Modify schema in "master" server -->
<call function="'modifyAnAttribute'">
- { 'dsPath' : masterPath,
- 'dsInstanceHost' : masterHost ,
+ { 'dsPath' : masterPath,
+ 'dsInstanceHost' : masterHost ,
'dsInstancePort' : master.getPort(),
- 'dsInstanceDn' : master.getRootDn(),
+ 'dsInstanceDn' : master.getRootDn(),
'dsInstancePswd' : master.getRootPwd(),
- 'DNToModify' : 'cn=schema',
- 'attributeName' : 'objectClasses',
+ 'DNToModify' : 'cn=schema',
+ 'attributeName' : 'objectClasses',
'newAttributeValue' : oldObjectclass,
- 'changetype' : 'delete' }
+ 'changetype' : 'delete'
+ }
</call>
<call function="'modifyAnAttribute'">
- { 'dsPath' : masterPath,
- 'dsInstanceHost' : masterHost ,
+ { 'dsPath' : masterPath,
+ 'dsInstanceHost' : masterHost ,
'dsInstancePort' : master.getPort(),
- 'dsInstanceDn' : master.getRootDn(),
+ 'dsInstanceDn' : master.getRootDn(),
'dsInstancePswd' : master.getRootPwd(),
- 'DNToModify' : 'cn=schema',
- 'attributeName' : 'objectClasses',
+ 'DNToModify' : 'cn=schema',
+ 'attributeName' : 'objectClasses',
'newAttributeValue' : newObjectclass,
- 'changetype' : 'add' }
+ 'changetype' : 'add'
+ }
</call>
- <!-- Try to add entry to servers; should be rejected with error 65 (objectclass violation) -->
+ <!-- Try to add entry to servers; should be rejected with error 65
+ (objectclass violation) -->
<iterate var="server" in="_topologyServerList">
<call function="'addEntry'">
{ 'location' : clientHost,
@@ -360,25 +400,25 @@
'dsInstancePort' : server.getPort(),
'dsInstanceDn' : server.getRootDn(),
'dsInstancePswd' : server.getRootPwd(),
- 'entryToBeAdded' : '%s/replication/testuser-2.ldif' % clientDataDir,
- 'expectedRC' : 65 }
+ 'entryToBeAdded' : '%s/replication/testuser-2.ldif' % \
+ clientDataDir,
+ 'expectedRC' : 65
+ }
</call>
</iterate>
- <!-- Verify the synchronization of the schema among the servers in the topology -->
+ <!-- Verify the synchronization of the schema among the servers in
+ the topology -->
<call function="'verifySchemas'">
[ clientHost, clientPath, master, consumerList, '99-user.ldif' ]
</call>
- <!-- Verify the synchronization of the trees among the servers in the topology -->
+ <!-- Verify the synchronization of the trees among the servers in
+ the topology -->
<call function="'verifyTrees'">
[ clientHost, clientPath, master, consumerList, synchroSuffix ]
</call>
-
- <script>
- knownIssue(2599)
- </script>
-
+
<call function="'testCase_Postamble'"/>
</sequence>
</testcase>
@@ -387,19 +427,28 @@
<!--- Test Case information
#@TestMarker Replication Schema Replication Tests
- #@TestName Replication: Schema Replication: Add objectclass (edit schema file)
- #@TestID Add objectclass (edit schema file)
- #@TestPurpose Check schema replication when a new objectclass is added manually
+ #@TestName Replication: Schema Replication: Add objectclass
+ (edit schema file)
+ #@TestID Add objectclass (edit schema file)
+ #@TestPurpose Check schema replication when a new objectclass
+ is added manually
#@TestPreamble
- #@TestSteps
+ #@TestSteps Stop servers
+ #@TestSteps Edit 99-user.ldif to add new objectclass
+ definition on server1
+ #@TestSteps Start servers
+ #@TestSteps Add entry of new objectclass on server2
#@TestPostamble
- #@TestResult
+ #@TestResult Success if schema add and entry add replicated
-->
- <testcase name="getTestCaseName('Add objectclass (edit schema file)')">
+ <testcase name="getTestCaseName
+ ('Add objectclass (edit schema file)')">
<sequence>
<call function="'testCase_Preamble'"/>
<message>
- 'Replication: Schema Replication: Add objectclass (edit schema file). Check schema replication when a new objectclass is added manually'
+ 'Replication: Schema Replication: Add objectclass (edit \
+ schema file). Check schema replication when a new objectclass \
+ is added manually'
</message>
<!-- Stop the servers in the topology -->
@@ -409,16 +458,20 @@
<!-- Modify schema in "master" server -->
<call function="'copyFile'">
- { 'location' : masterHost,
- 'srcfile' : currentSchemaFile,
- 'destfile' : provSchemaFile }
+ { 'location' : masterHost,
+ 'remotehost' : masterHost,
+ 'srcfile' : currentSchemaFile,
+ 'destfile' : provSchemaFile
+ }
</call>
<call function="'LdifModifyWithScript'">
- { 'location' : masterHost,
- 'dsPath' : masterPath,
- 'sourceLdif' : provSchemaFile,
- 'changesLdif' : '%s/replication/schemamods-0.ldif' % masterDataDir,
- 'targetLdif' : currentSchemaFile }
+ { 'location' : masterHost,
+ 'dsPath' : masterPath,
+ 'sourceLdif' : provSchemaFile,
+ 'changesLdif' : '%s/replication/schemamods-0.ldif' % \
+ masterDataDir,
+ 'targetLdif' : currentSchemaFile
+ }
</call>
<!-- Start the servers in the topology -->
@@ -428,7 +481,8 @@
<call function="'Sleep'">
{ 'location' : masterHost,
- 'sleepForMilliSeconds' : 1000 }
+ 'sleepForMilliSeconds' : 1000
+ }
</call>
<!-- Add entry to "consumer" server -->
@@ -439,23 +493,23 @@
'dsInstancePort' : consumer.getPort(),
'dsInstanceDn' : consumer.getRootDn(),
'dsInstancePswd' : consumer.getRootPwd(),
- 'entryToBeAdded' : '%s/replication/newtestuser-0.ldif' % clientDataDir }
+ 'entryToBeAdded' : '%s/replication/newtestuser-0.ldif' % \
+ clientDataDir
+ }
</call>
- <!-- Verify the synchronization of the schema among the servers in the topology -->
+ <!-- Verify the synchronization of the schema among the servers in
+ the topology -->
<call function="'verifySchemas'">
[ clientHost, clientPath, master, consumerList, '99-user.ldif' ]
</call>
- <!-- Verify the synchronization of the trees among the servers in the topology -->
+ <!-- Verify the synchronization of the trees among the servers in
+ the topology -->
<call function="'verifyTrees'">
[ clientHost, clientPath, master, consumerList, synchroSuffix ]
</call>
-
- <script>
- knownIssue(2599)
- </script>
-
+
<call function="'testCase_Postamble'"/>
</sequence>
</testcase>
@@ -465,19 +519,29 @@
<!--- Test Case information
#@TestMarker Replication Schema Replication Tests
- #@TestName Replication: Schema Replication: Add attributetype (edit schema file)
- #@TestID Add attributetype (edit schema file)
- #@TestPurpose Check schema replication when a new attributetype is added manually
+ #@TestName Replication: Schema Replication: Add
+ attributetype (edit schema file)
+ #@TestID Add attributetype (edit schema file)
+ #@TestPurpose Check schema replication when a new
+ attributetype is added manually
#@TestPreamble
- #@TestSteps
+ #@TestSteps Stop servers
+ #@TestSteps Edit 99-user.ldif to add new objectclass and
+ new attributeType definition on server1
+ #@TestSteps Start servers
+ #@TestSteps Add new entry containing new objectclass and
+ new attributeType on server2
#@TestPostamble
- #@TestResult
+ #@TestResult Success if schema add and entry adds replicated
-->
- <testcase name="getTestCaseName('Add attributetype (edit schema file)')">
+ <testcase name="getTestCaseName
+ ('Add attributetype (edit schema file)')">
<sequence>
<call function="'testCase_Preamble'"/>
<message>
- 'Replication: Schema Replication: Add attributetype (edit schema file). Check schema replication when a new attributetype is added manually'
+ 'Replication: Schema Replication: Add attributetype (edit \
+ schema file). Check schema replication when a new \
+ attributetype is added manually'
</message>
<!-- Stop the servers in the topology -->
@@ -487,16 +551,20 @@
<!-- Modify schema in "master" server -->
<call function="'copyFile'">
- { 'location' : masterHost,
- 'srcfile' : currentSchemaFile,
- 'destfile' : provSchemaFile }
+ { 'location' : masterHost,
+ 'remotehost' : masterHost,
+ 'srcfile' : currentSchemaFile,
+ 'destfile' : provSchemaFile
+ }
</call>
<call function="'LdifModifyWithScript'">
- { 'location' : masterHost,
- 'dsPath' : masterPath,
- 'sourceLdif' : provSchemaFile,
- 'changesLdif' : '%s/replication/schemamods-1.ldif' % masterDataDir,
- 'targetLdif' : currentSchemaFile }
+ { 'location' : masterHost,
+ 'dsPath' : masterPath,
+ 'sourceLdif' : provSchemaFile,
+ 'changesLdif' : '%s/replication/schemamods-1.ldif' % \
+ masterDataDir,
+ 'targetLdif' : currentSchemaFile
+ }
</call>
<!-- Start the servers in the topology -->
@@ -506,7 +574,8 @@
<call function="'Sleep'">
{ 'location' : masterHost,
- 'sleepForMilliSeconds' : 1000 }
+ 'sleepForMilliSeconds' : 1000
+ }
</call>
<!-- Add entry to "consumer" server -->
@@ -517,23 +586,23 @@
'dsInstancePort' : consumer.getPort(),
'dsInstanceDn' : consumer.getRootDn(),
'dsInstancePswd' : consumer.getRootPwd(),
- 'entryToBeAdded' : '%s/replication/newtestuser-1.ldif' % clientDataDir }
+ 'entryToBeAdded' : '%s/replication/newtestuser-1.ldif' % \
+ clientDataDir
+ }
</call>
- <!-- Verify the synchronization of the schema among the servers in the topology -->
+ <!-- Verify the synchronization of the schema among the servers in
+ the topology -->
<call function="'verifySchemas'">
[ clientHost, clientPath, master, consumerList, '99-user.ldif' ]
</call>
- <!-- Verify the synchronization of the trees among the servers in the topology -->
+ <!-- Verify the synchronization of the trees among the servers in
+ the topology -->
<call function="'verifyTrees'">
[ clientHost, clientPath, master, consumerList, synchroSuffix ]
</call>
-
- <script>
- knownIssue(2599)
- </script>
-
+
<call function="'testCase_Postamble'"/>
</sequence>
</testcase>
@@ -543,19 +612,32 @@
<!-- Test Case information
#@TestMarker Replication Schema Replication Tests
- #@TestName Replication: Schema Replication: Delete objectclass (edit schema file)
- #@TestID Delete objectclass (edit schema file)
- #@TestPurpose Check schema replication when an objectclass is deleted manually
+ #@TestName Replication: Schema Replication: Delete
+ objectclass (edit schema file)
+ #@TestID Delete objectclass (edit schema file)
+ #@TestPurpose Check schema replication when an objectclass is
+ deleted manually
#@TestPreamble
- #@TestSteps
+ #@TestSteps Stop servers
+ #@TestSteps Edit 99-user.ldif to remove user-defined
+ objectclass definition on server1
+ #@TestSteps Start servers
+ #@TestSteps Delete entry on server1
+ #@TestSteps Add entry containing removed objectclass on
+ every server
#@TestPostamble
- #@TestResult
+ #@TestResult Success if schema remove replicated and last
+ entry add rejected on all servers (error 65:
+ objectclass violation)
-->
- <testcase name="getTestCaseName('Delete objectclass (edit schema file)')">
+ <testcase name="getTestCaseName
+ ('Delete objectclass (edit schema file)')">
<sequence>
<call function="'testCase_Preamble'"/>
<message>
- 'Replication: Schema Replication: Delete objectclass (edit schema file). Check schema replication when an objectclass is deleted manually'
+ 'Replication: Schema Replication: Delete objectclass (edit \
+ schema file). Check schema replication when an objectclass is \
+ deleted manually'
</message>
<!-- Stop the servers in the topology -->
@@ -565,16 +647,20 @@
<!-- Modify schema in "master" server -->
<call function="'copyFile'">
- { 'location' : masterHost,
- 'srcfile' : currentSchemaFile,
- 'destfile' : provSchemaFile }
+ { 'location' : masterHost,
+ 'remotehost' : masterHost,
+ 'srcfile' : currentSchemaFile,
+ 'destfile' : provSchemaFile
+ }
</call>
<call function="'LdifModifyWithScript'">
- { 'location' : masterHost,
- 'dsPath' : masterPath,
- 'sourceLdif' : provSchemaFile,
- 'changesLdif' : '%s/replication/schemamods-2.ldif' % masterDataDir,
- 'targetLdif' : currentSchemaFile }
+ { 'location' : masterHost,
+ 'dsPath' : masterPath,
+ 'sourceLdif' : provSchemaFile,
+ 'changesLdif' : '%s/replication/schemamods-2.ldif' % \
+ masterDataDir,
+ 'targetLdif' : currentSchemaFile
+ }
</call>
<!-- Start the servers in the topology -->
@@ -591,16 +677,18 @@
'dsInstancePort' : master.getPort(),
'dsInstanceDn' : master.getRootDn(),
'dsInstancePswd' : master.getRootPwd(),
- 'dsDn' : ['cn=newtestuser-0,ou=People,%s' % synchroSuffix]
+ 'dsDn' : ['cn=newtestuser-0,ou=People,%s' % synchroSuffix]
}
</call>
<call function="'Sleep'">
{ 'location' : masterHost,
- 'sleepForMilliSeconds' : 1000 }
+ 'sleepForMilliSeconds' : 1000
+ }
</call>
- <!-- Try to add entry to servers; should be rejected with error 65 (objectclass violation) -->
+ <!-- Try to add entry to servers; should be rejected with error 65
+ (objectclass violation) -->
<iterate var="server" in="_topologyServerList">
<call function="'addEntry'">
{ 'location' : clientHost,
@@ -609,17 +697,21 @@
'dsInstancePort' : server.getPort(),
'dsInstanceDn' : server.getRootDn(),
'dsInstancePswd' : server.getRootPwd(),
- 'entryToBeAdded' : '%s/replication/newtestuser-0.ldif' % clientDataDir,
- 'expectedRC' : 65 }
+ 'entryToBeAdded' : '%s/replication/newtestuser-0.ldif' % \
+ clientDataDir,
+ 'expectedRC' : 65
+ }
</call>
</iterate>
- <!-- Verify the synchronization of the schema among the servers in the topology -->
+ <!-- Verify the synchronization of the schema among the servers in
+ the topology -->
<call function="'verifySchemas'">
[ clientHost, clientPath, master, consumerList, '99-user.ldif' ]
</call>
- <!-- Verify the synchronization of the trees among the servers in the topology -->
+ <!-- Verify the synchronization of the trees among the servers in
+ the topology -->
<call function="'verifyTrees'">
[ clientHost, clientPath, master, consumerList, synchroSuffix ]
</call>
@@ -637,19 +729,32 @@
<!-- Test Case information
#@TestMarker Replication Schema Replication Tests
- #@TestName Replication: Schema Replication: Modify objectclass (edit schema file)
- #@TestID Modify objectclass (edit schema file)
- #@TestPurpose Check schema replication when an objectclass is modified manually
+ #@TestName Replication: Schema Replication: Modify
+ objectclass (edit schema file)
+ #@TestID Modify objectclass (edit schema file)
+ #@TestPurpose Check schema replication when an objectclass is
+ modified manually
#@TestPreamble
- #@TestSteps
+ #@TestSteps Stop servers
+ #@TestSteps Edit 99-user.ldif to modify user-defined
+ objectclass (make attributes MANDATORY) on
+ server1
+ #@TestSteps Start servers
+ #@TestSteps Add entry containing newly added objectclass but
+ without required attributes on every server
#@TestPostamble
- #@TestResult
+ #@TestResult Success if schema modify replicated and entry
+ add rejected with error 65 (objectclass
+ violation) on all servers
-->
- <testcase name="getTestCaseName('Modify objectclass (edit schema file)')">
+ <testcase name="getTestCaseName
+ ('Modify objectclass (edit schema file)')">
<sequence>
<call function="'testCase_Preamble'"/>
<message>
- 'Replication: Schema Replication: Modify objectclass (edit schema file). Check schema replication when an objectclass is modified manually'
+ 'Replication: Schema Replication: Modify objectclass (edit \
+ schema file). Check schema replication when an objectclass is \
+ modified manually'
</message>
<!-- Stop the servers in the topology -->
@@ -659,16 +764,20 @@
<!-- Modify schema in "master" server -->
<call function="'copyFile'">
- { 'location' : masterHost,
- 'srcfile' : currentSchemaFile,
- 'destfile' : provSchemaFile }
+ { 'location' : masterHost,
+ 'remotehost' : masterHost,
+ 'srcfile' : currentSchemaFile,
+ 'destfile' : provSchemaFile
+ }
</call>
<call function="'LdifModifyWithScript'">
- { 'location' : masterHost,
- 'dsPath' : masterPath,
- 'sourceLdif' : provSchemaFile,
- 'changesLdif' : '%s/replication/schemamods-3.ldif' % masterDataDir,
- 'targetLdif' : currentSchemaFile }
+ { 'location' : masterHost,
+ 'dsPath' : masterPath,
+ 'sourceLdif' : provSchemaFile,
+ 'changesLdif' : '%s/replication/schemamods-3.ldif' % \
+ masterDataDir,
+ 'targetLdif' : currentSchemaFile
+ }
</call>
<!-- Start the servers in the topology -->
@@ -678,10 +787,12 @@
<call function="'Sleep'">
{ 'location' : masterHost,
- 'sleepForMilliSeconds' : 1000 }
+ 'sleepForMilliSeconds' : 1000
+ }
</call>
- <!-- Try to add entry to servers; should be rejected with error 65 (objectclass violation) -->
+ <!-- Try to add entry to servers; should be rejected with error 65
+ (objectclass violation) -->
<iterate var="server" in="_topologyServerList">
<call function="'addEntry'">
{ 'location' : clientHost,
@@ -690,17 +801,21 @@
'dsInstancePort' : server.getPort(),
'dsInstanceDn' : server.getRootDn(),
'dsInstancePswd' : server.getRootPwd(),
- 'entryToBeAdded' : '%s/replication/newtestuser-2.ldif' % clientDataDir,
- 'expectedRC' : 65 }
+ 'entryToBeAdded' : '%s/replication/newtestuser-2.ldif' % \
+ clientDataDir,
+ 'expectedRC' : 65
+ }
</call>
</iterate>
- <!-- Verify the synchronization of the schema among the servers in the topology -->
+ <!-- Verify the synchronization of the schema among the servers in
+ the topology -->
<call function="'verifySchemas'">
[ clientHost, clientPath, master, consumerList, '99-user.ldif' ]
</call>
- <!-- Verify the synchronization of the trees among the servers in the topology -->
+ <!-- Verify the synchronization of the trees among the servers in
+ the topology -->
<call function="'verifyTrees'">
[ clientHost, clientPath, master, consumerList, synchroSuffix ]
</call>
@@ -716,7 +831,7 @@
<import machine="STAF_LOCAL_HOSTNAME"
- file="'%s/testcases/replication/replication_cleanup.xml' % (TESTS_DIR)"/>
+ file="'%s/testcases/replication/replication_cleanup.xml' % TESTS_DIR"/>
<call function="'replication_cleanup'" />
<call function="'testSuite_Postamble'"/>
--
Gitblit v1.10.0