mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

al_xipe
25.21.2007 b3ba51e8d1f4ac88411f716f20d3671c195ea759
massive retrofit of the logging tests into the framework
7 files modified
689 ■■■■ changed files
opends/tests/functional-tests/testcases/logging/logging.xml 50 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/logging/logging_cleanup.xml 26 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/logging/logging_properties.xml 336 ●●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/logging/logging_retention.xml 99 ●●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/logging/logging_rotation.xml 79 ●●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/logging/logging_setup.xml 26 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/logging/logging_writer.xml 73 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/logging/logging.xml
@@ -26,56 +26,26 @@
 !      Portions Copyright 2006-2007 Sun Microsystems, Inc.
 ! -->
<stax>
  <defaultcall function="main_logging"/>
  <function name="main_logging">
    <sequence>
      <block name="'logging'">
         <sequence>
          <script>
            CurrentTestPath['group']='logging'
            CurrentTestPath['suite']=STAXCurrentBlock
             CurrentTestPath['group']=STAXCurrentBlock
          </script>
          <call function="'testSuite_Preamble'"/>
          <import machine="'%s' % (STAF_LOCAL_HOSTNAME)"
            file="'%s/testcases/logging/logging_setup.xml' % (TESTS_DIR)"/>
          <call function="'logging_setup'"/>
          <import machine="'%s' % STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/logging/logging_rotation.xml' % (TESTS_DIR)"/>
          <call function="'logging_rotation'" />
          <import machine="'%s' % STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/logging/logging_properties.xml' % (TESTS_DIR)"/>
          <call function="'logging_properties'" />
          <import machine="'%s' % STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/logging/logging_writer.xml' % (TESTS_DIR)"/>
          <call function="'logging_writer'" />
          <import machine="'%s' % STAF_LOCAL_HOSTNAME"
            file="'%s/testcases/logging/logging_retention.xml' % (TESTS_DIR)"/>
          <call function="'logging_retention'" />
          <import machine="'%s' % (STAF_LOCAL_HOSTNAME)"
            file="'%s/testcases/logging/logging_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'logging_cleanup'"/>
          <call function="'testSuite_Postamble'"/>
          <call function="'testGroup_Preamble'" />
          <iterate var="_test" in="['setup','rotation','properties','writer','retention','cleanup']" >
            <sequence>
              <import machine="STAF_LOCAL_HOSTNAME"
                      file="'%s/testcases/logging/logging_%s.xml' % (TESTS_DIR,_test)"/>
              <call function="'logging_%s' % _test" />
        </sequence>
          </iterate>
          <call function="'testGroup_Postamble'" />
        </sequence>
      </block>
    </sequence>
  </function>
</stax>
opends/tests/functional-tests/testcases/logging/logging_cleanup.xml
@@ -26,18 +26,11 @@
 !      Portions Copyright 2007 Sun Microsystems, Inc.
 ! -->
<stax>
  <defaultcall function="logging_cleanup"/>
  <function name="logging_cleanup">
    <sequence>
      <block name="'cleanup'">
        <sequence>
          <block name="'Block DS Process Stop'">        
          <!--- Stop DS -->
        <sequence>
@@ -50,24 +43,21 @@
                  'dsHost'    : DIRECTORY_INSTANCE_HOST,
                  'dsPort'    : DIRECTORY_INSTANCE_PORT,
                  'dsBindDN'  : DIRECTORY_INSTANCE_DN,
                  'dsBindPwd' : DIRECTORY_INSTANCE_PSWD }
                  'dsBindPwd' : DIRECTORY_INSTANCE_PSWD
                }
              </call>
              <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
                  'result'     : STAXResult
                }
              </call>
        </sequence>        
          <!--- End Block DS Process Stop -->
          </block>
      <block name="'Block Remove DS Topology'">
      <!-- Remove  the topology created for the test suite -->
      <sequence>
              <message>
                 'Remove DS topology created for the Test Suite'
              </message>          
@@ -76,19 +66,15 @@
        
        <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
                  'result'     : STAXResult
                }
              </call>
      
      </sequence>        
      <!-- End Block Remove DS Topology-->  
      </block>                                  
        </sequence>        
      </block>
     </sequence>
  </function>
</stax>
opends/tests/functional-tests/testcases/logging/logging_properties.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE stax SYSTEM "../../../stax.dtd">
<!DOCTYPE stax SYSTEM "../../shared/stax.dtd">
<!--
 ! CDDL HEADER START
 !
@@ -26,12 +26,13 @@
 !      Portions Copyright 2006-2007 Sun Microsystems, Inc.
 ! -->
<stax>
<defaultcall function="logging_properties"/>
<function name="logging_properties" scope="local">      
<sequence>
      <script>
        CurrentTestPath['suite']=STAXCurrentFunction
      </script>
      <call function="'testSuite_Preamble'" />
       <!--- Test Case : access logger -->
       <!---
  #@TestMarker             access logger
@@ -46,9 +47,7 @@
  #@TestResult                Success if OpenDS returns 0 for all operations
      -->
      
  <testcase name="'logging : properties checks:  Access logger '">
      <testcase name="getTestCaseName('Access logger')">
   <sequence>
    <call function="'testCase_Preamble'"/>
  <message>
@@ -56,10 +55,12 @@
    </message>      
  <!--   create a logger  publisher-->         
  <message>'------  create logger publisher --' </message>
          <message>
            '------  create logger publisher --'
          </message>
     
     <!-- DESACTRIVATED : bug 2107]-->
     <call function="'testFailed'"/>
          <!--<call function="'testFailed'"/>-->
     <script>
       bug=2107
       </script>
@@ -74,7 +75,8 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--type file-based-access --set asynchronous:false --set log-file-mode:555 --set log-file:logs/access --set enabled:true ',
        'expectedRC'             : 0 }
                  'expectedRC'     : 0
                }
         </call>          
       </sequence>
      </if>
@@ -90,9 +92,12 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :   'File-Based Access Logger',
        'optionsString'           : '--set auto-flush:true',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>
  <message>'------  get auto-flush --' </message>
          <message>
            '------  get auto-flush --'
          </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -102,9 +107,9 @@
        'propertyType'           : 'publisher' ,
        'propertyName'           :  'File-Based Access Logger',
        'attributeName'          : 'auto-flush',
        'expectedAttributeValue'         : 'true'  }
              'expectedAttributeValue' : 'true'
            }
    </call>     
  <!--   append  -->               
  <message>'------  set append  to false  --' </message>
    <call function="'dsconfig'">
@@ -116,7 +121,8 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--set append:false',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>     
  <message>'------  get append --' </message>     
    <call function="'dsconfigGet'">
@@ -128,7 +134,8 @@
        'propertyType'           : 'publisher' ,
        'propertyName'           :  'File-Based Access Logger',
        'attributeName'          : 'append',
        'expectedAttributeValue'         : 'false'  }
              'expectedAttributeValue' : 'false'
            }
    </call>     
     
  <!--   asynchronous  -->                    
@@ -142,7 +149,8 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--set asynchronous:true',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>              
  <message>'------  get asynchronous --' </message>     
    <call function="'dsconfigGet'">
@@ -180,7 +188,8 @@
        'propertyType'           : 'publisher' ,
        'propertyName'           : 'File-Based Access Logger',
        'attributeName'          : 'buffer-size',
        'expectedAttributeValue'         : '10 mb'  }
              'expectedAttributeValue' : '10 mb'
            }
    </call>     
     
  <!--   time-interval  -->            
@@ -194,7 +203,8 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--set time-interval:3m',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>       
  <message>'------  get time-interval --' </message>     
    <call function="'dsconfigGet'">
@@ -207,7 +217,8 @@
        'propertyName'           : 'File-Based Access Logger',
        'attributeName'          : 'time-interval',
    'extraParams'             : '-M s',
        'expectedAttributeValue'         : '180 s'  }
              'expectedAttributeValue' : '180 s'
            }
    </call>     
     
  <!--   log-file  -->       
@@ -221,7 +232,8 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--set log-file:logs/testaccess',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>       
  <message>'------  get log-file --' </message>     
    <call function="'dsconfigGet'">
@@ -233,7 +245,8 @@
        'propertyType'           : 'publisher' ,
        'propertyName'           : 'File-Based Access Logger',
        'attributeName'          : 'log-file',
        'expectedAttributeValue'         : 'logs/testaccess'  }
              'expectedAttributeValue' : 'logs/testaccess'
            }
    </call>     
  <!--   log-file  -->       
  <message>'------  set log-file  to logs/access  --' </message>
@@ -246,7 +259,8 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--set log-file:logs/access',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>       
          
  <!--   log-file-mode  -->                         
@@ -260,7 +274,8 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--set log-file-mode:777',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>    
  <message>'------  get log-file-mode --' </message>     
    <call function="'dsconfigGet'">
@@ -272,7 +287,8 @@
        'propertyType'           : 'publisher' ,
        'propertyName'           : 'File-Based Access Logger',
        'attributeName'          : 'log-file-mode',
        'expectedAttributeValue'         : '777'  }
              'expectedAttributeValue' : '777'
            }
    </call>     
  <!--   queue-size  -->                         
@@ -286,7 +302,8 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--set queue-size:1000',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>    
  <message>'------  get queue-size --' </message>     
    <call function="'dsconfigGet'">
@@ -298,11 +315,14 @@
        'propertyType'           : 'publisher' ,
        'propertyName'           : 'File-Based Access Logger',
        'attributeName'          : 'queue-size',
        'expectedAttributeValue'         : '1000'  }
              'expectedAttributeValue' : '1000'
            }
    </call>               
     
  <!--   suppress-synchronization-operations  -->                         
  <message>'------  set suppress-synchronization-operations  to 1000  --' </message>
          <message>
            '------  set suppress-synchronization-operations  to 1000  --'
          </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -312,9 +332,12 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--set suppress-synchronization-operations:true',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>    
  <message>'------  get suppress-synchronization-operations --' </message>
          <message>
            '------  get suppress-synchronization-operations --'
          </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -324,12 +347,14 @@
        'propertyType'           : 'publisher' ,
        'propertyName'           : 'File-Based Access Logger',
        'attributeName'          : 'suppress-synchronization-operations',
        'expectedAttributeValue'         : 'true'  }
              'expectedAttributeValue' : 'true'
            }
    </call>     
          
  <!--   suppress-internal-operations  -->                         
  <message>'------  set suppress-internal-operations  to false  --' </message>
          <message>
            '------  set suppress-internal-operations  to false  --'
          </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -339,9 +364,12 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--set suppress-internal-operations:false',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>    
  <message>'------  get suppress-synchronization-operations --' </message>
          <message>
            '------  get suppress-synchronization-operations --'
          </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -351,7 +379,8 @@
        'propertyType'           : 'publisher' ,
        'propertyName'           : 'File-Based Access Logger',
        'attributeName'          : 'suppress-internal-operations',
        'expectedAttributeValue'         : 'false'  }
              'expectedAttributeValue' : 'false'
            }
    </call>          
     
  <!--   delete  a logger  publisher-->         
@@ -366,7 +395,8 @@
        'subcommand'           : 'delete-log-publisher' ,    
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'expectedRC'             : 0 }
                  'expectedRC'     : 0
                }
        </call>          
      </sequence>
     </if>
@@ -388,17 +418,16 @@
  #@TestResult                Success if OpenDS returns 0 for all operations
      -->
      
  <testcase name="'logging : properties checks:  Error logger '">
      <testcase name="getTestCaseName('Error logger')">
   <sequence>
    <call function="'testCase_Preamble'"/>
  <message>
        '----  Check the Error logger s properties  -----'
    </message>      
  <!--    default-severity  -->         
  <message>'------  set default-severity to mild-error --' </message>
            <message>
              '------  set default-severity to mild-error --'
            </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -408,7 +437,8 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :   'File-Based Error Logger',
        'optionsString'           : '--set default-severity:mild-error',
        'expectedRC'             : 0 }
                'expectedRC'     : 0
              }
    </call>
  <message>'------  get default-severity --' </message>     
    <call function="'dsconfigGet'">
@@ -420,7 +450,8 @@
        'propertyType'           : 'publisher' ,
        'propertyName'           :  'File-Based Error Logger',
        'attributeName'          : 'default-severity',
        'expectedAttributeValue'         : 'mild-error'  }
                'expectedAttributeValue' : 'mild-error'
              }
    </call>     
  <!--  override-severity -->   
@@ -434,9 +465,12 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Error Logger',
        'optionsString'           : '--set "override-severity:request=info,schema"',
        'expectedRC'             : 0 }
                'expectedRC'     : 0
              }
    </call>     
  <message>'------  get override-severity --' </message>
            <message>
              '------  get override-severity --'
            </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -446,14 +480,13 @@
        'propertyType'           : 'publisher' ,
        'propertyName'           :  'File-Based Error Logger',
        'attributeName'          : 'override-severity',
        'expectedAttributeValue'         : 'request=info,schema'  }
                'expectedAttributeValue' : 'request=info,schema'
              }
    </call>     
    <call function="'testCase_Postamble'"/>
  </sequence>
 </testcase>
       <!--- Test Case : Debug logger -->
       <!---
  #@TestMarker             Debug logger
@@ -468,8 +501,7 @@
  #@TestResult                Success if OpenDS returns 0 for all operations
      -->
      
  <testcase name="'logging : properties checks:  Debug logger '">
      <testcase name="getTestCaseName('Debug logger')">
   <sequence>
    <call function="'testCase_Preamble'"/>
  <message>
@@ -487,7 +519,8 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :   'File-Based Debug Logger',
        'optionsString'           : '--set default-debug-category:thrown',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>
  <message>'------  get default-debug-category --' </message>     
    <call function="'dsconfigGet'">
@@ -499,7 +532,8 @@
        'propertyType'           : 'publisher' ,
        'propertyName'           :  'File-Based Debug Logger',
        'attributeName'          : 'default-debug-category',
        'expectedAttributeValue'         : 'thrown'  }
              'expectedAttributeValue' : 'thrown'
            }
    </call>     
  <!--  default-debug-level -->   
@@ -513,7 +547,8 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Debug Logger',
        'optionsString'           : '--set default-debug-level:verbose',
        'expectedRC'             : 0 }
              'expectedRC'      : 0
            }
    </call>     
  <message>'------  get default-debug-level --' </message>     
    <call function="'dsconfigGet'">
@@ -525,12 +560,14 @@
        'propertyType'           : 'publisher' ,
        'propertyName'           :  'File-Based Debug Logger',
        'attributeName'          : 'default-debug-level',
        'expectedAttributeValue'         : 'verbose'  }
              'expectedAttributeValue' : 'verbose'
            }
    </call>     
  <!--  default-include-throwable-cause -->   
  <message>'------  set default-include-throwable-cause    --' </message>
          <message>
            '------  set default-include-throwable-cause    --'
          </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -540,7 +577,8 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Debug Logger',
        'optionsString'           : '--set default-include-throwable-cause:true',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>     
  <message>'------  get default-include-throwable-cause --' </message>     
    <call function="'dsconfigGet'">
@@ -552,12 +590,14 @@
        'propertyType'           : 'publisher' ,
        'propertyName'           :  'File-Based Debug Logger',
        'attributeName'          : 'default-include-throwable-cause',
        'expectedAttributeValue'         : 'true'  }
              'expectedAttributeValue' : 'true'
            }
    </call>     
  <!--  default-omit-method-entry-arguments -->   
  <message>'------  set default-omit-method-entry-arguments    --' </message>
          <message>
            '------  set default-omit-method-entry-arguments    --'
          </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -567,9 +607,12 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Debug Logger',
        'optionsString'           : '--set default-omit-method-entry-arguments:true',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>     
  <message>'------  get default-omit-method-entry-arguments --' </message>
          <message>
            '------  get default-omit-method-entry-arguments --'
          </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -579,12 +622,14 @@
        'propertyType'           : 'publisher' ,
        'propertyName'           :  'File-Based Debug Logger',
        'attributeName'          : 'default-omit-method-entry-arguments',
        'expectedAttributeValue'         : 'true'  }
              'expectedAttributeValue' : 'true'
            }
    </call>     
     
  <!--  default-omit-method-return-value -->   
  <message>'------  set default-include-throwable-cause    --' </message>
          <message>
            '------  set default-include-throwable-cause    --'
          </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -606,12 +651,14 @@
        'propertyType'           : 'publisher' ,
        'propertyName'           :  'File-Based Debug Logger',
        'attributeName'          : 'default-omit-method-return-value',
        'expectedAttributeValue'         : 'true'  }
              'expectedAttributeValue' : 'true'
            }
    </call>                        
     
  <!--  default-throwable-stack-frames -->   
  <message>'------  set default-throwable-stack-frames    --' </message>
          <message>
            '------  set default-throwable-stack-frames    --'
          </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -621,7 +668,8 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Debug Logger',
        'optionsString'           : '--set default-throwable-stack-frames:2',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>     
  <message>'------  get default-throwable-stack-frames --' </message>     
    <call function="'dsconfigGet'">
@@ -633,7 +681,8 @@
        'propertyType'           : 'publisher' ,
        'propertyName'           :  'File-Based Debug Logger',
        'attributeName'          : 'default-throwable-stack-frames',
        'expectedAttributeValue'         : '2'  }
              'expectedAttributeValue' : '2'
            }
    </call>                                   
    <call function="'testCase_Postamble'"/>
  </sequence>
@@ -652,17 +701,13 @@
  #@TestPostamble         none
  #@TestResult               Success if OpenDS returns 0 for all operations
      -->
  <testcase name="'logging : properties checks:  Rotation policy '">
      <testcase name="getTestCaseName('Rotation policy')">
   <sequence>
    <call function="'testCase_Preamble'"/>
  <message>
        '----  Check the Rotation policy properties  -----'
    </message>      
     
  <!-- create-log-rotation-policy  with the type size-limit -->         
  <message>'------  create a size limit rotation policy --' </message>
    <call function="'dsconfig'">
@@ -674,10 +719,10 @@
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my size rotation policy',
        'optionsString'           : '--type size-limit --set file-size-limit:5mb',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>
     
  <message>'------  get file-size-limit --' </message>     
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
@@ -688,7 +733,8 @@
        'propertyType'           : 'policy' ,
        'propertyName'           : 'my size rotation policy',
        'attributeName'          : 'file-size-limit',
        'expectedAttributeValue'         : '5 mb'  }
              'expectedAttributeValue' : '5 mb'
            }
    </call>     
  <!--   set file-size-limit  -->               
@@ -702,7 +748,8 @@
        'objectType'              : 'policy-name' ,
        'objectName'             :   'my size rotation policy',
        'optionsString'           : '--set file-size-limit:5kb',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>     
  <message>'------  get file-size-limit --' </message>     
    <call function="'dsconfigGet'">
@@ -714,7 +761,8 @@
        'propertyType'           : 'policy' ,
        'propertyName'           : 'my size rotation policy',
        'attributeName'          : 'file-size-limit',
        'expectedAttributeValue'         : '5 kb'  }
              'expectedAttributeValue' : '5 kb'
            }
    </call>     
    
  <message>'------  delete a size limit rotation policy --' </message>
@@ -726,12 +774,15 @@
        'subcommand'           : 'delete-log-rotation-policy' ,    
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my size rotation policy',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>  
     
  <!-- ################################-->
  <!-- create-log-rotation-policy  with the type time-limit -->         
  <message>'------  create a time limit rotation policy --' </message>
          <message>
            '------  create a time limit rotation policy --'
          </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -741,7 +792,8 @@
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my time rotation policy',
        'optionsString'           : '--type time-limit --set rotation-interval:3d',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>
     
  <message>'------  get rotation-interval --' </message>     
@@ -755,7 +807,8 @@
        'propertyName'           : 'my time rotation policy',
        'attributeName'          : 'rotation-interval',
        'extraParams'         : '-M d',
        'expectedAttributeValue'         : '3 d'  }
              'expectedAttributeValue' : '3 d'
            }
    </call>     
  <!--   set rotation-interval  -->               
@@ -769,7 +822,8 @@
        'objectType'              : 'policy-name' ,
        'objectName'             :   'my time rotation policy',
        'optionsString'           : '--set rotation-interval:3s',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>     
  <message>'------  get rotation-interval --' </message>     
    <call function="'dsconfigGet'">
@@ -782,7 +836,8 @@
        'propertyName'           : 'my time rotation policy',
        'attributeName'          : 'rotation-interval',
        'extraParams'         : '-M s',    
        'expectedAttributeValue'         : '3 s'  }
              'expectedAttributeValue' : '3 s'
            }
    </call>          
  <message>'------  delete a time limit rotation policy --' </message>
@@ -794,7 +849,8 @@
        'subcommand'           : 'delete-log-rotation-policy' ,    
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my time rotation policy',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>
               
  <!-- ################################-->
@@ -809,7 +865,8 @@
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my fixedtime rotation policy',
        'optionsString'           : '--type fixed-time --set time-of-day:1203',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>
     
  <message>'------  get time-of-day --' </message>     
@@ -822,7 +879,8 @@
        'propertyType'           : 'policy' ,
        'propertyName'           :  'my fixedtime rotation policy',
        'attributeName'          : 'time-of-day',
        'expectedAttributeValue'         : '1203'  }
              'expectedAttributeValue' : '1203'
            }
    </call>     
  <!--   set time-of-day  -->               
@@ -836,7 +894,8 @@
        'objectType'              : 'policy-name' ,
        'objectName'             :   'my fixedtime rotation policy',
        'optionsString'           : '--set time-of-day:0934',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>     
  <message>'------  get time-of-day --' </message>     
    <call function="'dsconfigGet'">
@@ -848,7 +907,8 @@
        'propertyType'           : 'policy' ,
        'propertyName'           :  'my fixedtime rotation policy',
        'attributeName'          : 'time-of-day',
        'expectedAttributeValue'         : '0934'  }
              'expectedAttributeValue' : '0934'
            }
    </call>  
  <!-- delete-log-rotation-policy  with the type fixed-time -->         
@@ -861,15 +921,14 @@
        'subcommand'           : 'delete-log-rotation-policy' ,    
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my fixedtime rotation policy',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>
    <call function="'testCase_Postamble'"/>
  </sequence>
 </testcase>
       <!--- Test Case : Retention policy -->
       <!---
  #@TestMarker             retention policy
@@ -883,19 +942,16 @@
  #@TestPostamble         none
  #@TestResult               Success if OpenDS returns 0 for all operations
      -->
  <testcase name="'logging : properties checks:  retention policy '">
      <testcase name="getTestCaseName('retention policy')">
   <sequence>
    <call function="'testCase_Preamble'"/>
  <message>
        '----  Check the retention policy properties  -----'
    </message>      
  <!-- create-log-retention-policy  with the type size-limit -->         
  <message>'------  create a size limit retention policy --' </message>
            <message>
              '------  create a size limit retention policy --'
            </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -905,10 +961,9 @@
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my size retention policy',
        'optionsString'           : '--type size-limit --set disk-space-used:5mb',
        'expectedRC'             : 0 }
                'expectedRC'     : 0
              }
    </call>
  <message>'------  get file-size-limit --' </message>     
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
@@ -919,7 +974,8 @@
        'propertyType'           : 'policy' ,
        'propertyName'           : 'my size retention policy',
        'attributeName'          : 'disk-space-used',
        'expectedAttributeValue'         : '5 mb'  }
                'expectedAttributeValue' : '5 mb'
              }
    </call>     
  <!--   set disk-space-used  -->               
@@ -933,7 +989,8 @@
        'objectType'              : 'policy-name' ,
        'objectName'             :   'my size retention policy',
        'optionsString'           : '--set disk-space-used:5kb',
        'expectedRC'             : 0 }
                'expectedRC'     : 0
              }
    </call>     
  <message>'------  get disk-space-used --' </message>     
    <call function="'dsconfigGet'">
@@ -945,10 +1002,13 @@
        'propertyType'           : 'policy' ,
        'propertyName'           : 'my size retention policy',
        'attributeName'          : 'disk-space-used',
        'expectedAttributeValue'         : '5 kb'  }
                'expectedAttributeValue' : '5 kb'
              }
    </call>     
    
  <message>'------  delete a size limit retention policy --' </message>
            <message>
              '------  delete a size limit retention policy --'
            </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -957,12 +1017,15 @@
        'subcommand'           : 'delete-log-retention-policy' ,    
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my size retention policy',
        'expectedRC'             : 0 }
                'expectedRC'     : 0
              }
    </call>  
     
  <!-- ################################-->
  <!-- create-log-retention-policy  with the type  free-disk-space -->         
  <message>'------  create a free-disk-space limit retention policy --' </message>
            <message>
              '------  create a free-disk-space limit retention policy --'
            </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -972,10 +1035,13 @@
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my free-disk-space retention policy',
        'optionsString'           : '--type free-disk-space --set free-disk-space:6Gb',
        'expectedRC'             : 0 }
                'expectedRC'     : 0
              }
    </call>
     
  <message>'------  get free_disk-space --' </message>
            <message>
              '------  get free_disk-space --'
            </message>
    <call function="'dsconfigGet'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -985,7 +1051,8 @@
        'propertyType'           : 'policy' ,
        'propertyName'           : 'my free-disk-space retention policy',
        'attributeName'          : 'free-disk-space',
        'expectedAttributeValue'         : '6 gb'  }
                'expectedAttributeValue' : '6 gb'
              }
    </call>     
  <!--   set free_disk-space  -->               
@@ -999,7 +1066,8 @@
        'objectType'              : 'policy-name' ,
        'objectName'             :   'my free-disk-space retention policy',
        'optionsString'           : '--set free-disk-space:4mb',
        'expectedRC'             : 0 }
                'expectedRC'     : 0
              }
    </call>     
  <message>'------  get free_disk-space --' </message>     
    <call function="'dsconfigGet'">
@@ -1011,10 +1079,13 @@
        'propertyType'           : 'policy' ,
        'propertyName'           : 'my free-disk-space retention policy',
        'attributeName'          : 'free-disk-space',
        'expectedAttributeValue'         : '4 mb'  }
                'expectedAttributeValue' : '4 mb'
              }
    </call>          
  <message>'------  delete a free-disk-space retention policy --' </message>
            <message>
              '------  delete a free-disk-space retention policy --'
            </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -1023,12 +1094,15 @@
        'subcommand'           : 'delete-log-retention-policy' ,    
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my free-disk-space retention policy',
        'expectedRC'             : 0 }
                'expectedRC'     : 0
              }
    </call>
               
  <!-- ################################-->
  <!-- create-log-retention-policy  with the type  file-count -->         
  <message>'------  create a fixed time limit retention policy --' </message>
          <message>
            '------  create a fixed time limit retention policy --'
          </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -1038,7 +1112,8 @@
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my filecount retention policy',
        'optionsString'           : '--type file-count --set number-of-files:10',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>
     
  <message>'------  get number-of-files --' </message>     
@@ -1051,7 +1126,8 @@
        'propertyType'           : 'policy' ,
        'propertyName'           :  'my filecount retention policy',
        'attributeName'          : 'number-of-files',
        'expectedAttributeValue'         : '10'  }
              'expectedAttributeValue' : '10'
            }
    </call>     
  <!--   set number-of-files  -->               
@@ -1065,7 +1141,8 @@
        'objectType'              : 'policy-name' ,
        'objectName'             :   'my filecount retention policy',
        'optionsString'           : '--set number-of-files:32',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>     
  <message>'------  get number-of-files --' </message>     
    <call function="'dsconfigGet'">
@@ -1077,11 +1154,14 @@
        'propertyType'           : 'policy' ,
        'propertyName'           :  'my filecount retention policy',
        'attributeName'          : 'number-of-files',
        'expectedAttributeValue'         : '32'  }
              'expectedAttributeValue' : '32'
            }
    </call>  
  <!-- delete-log-retention-policy  with the type file-count -->         
  <message>'------  delete a fixed file-count  retention policy --' </message>
          <message>
            '------  delete a fixed file-count  retention policy --'
          </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -1090,15 +1170,13 @@
        'subcommand'           : 'delete-log-retention-policy' ,    
        'objectType'              : 'policy-name' ,
        'objectName'             :  'my filecount retention policy',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>
    <call function="'testCase_Postamble'"/>
  </sequence>
 </testcase>    
      <call function="'testSuite_Postamble'" />
</sequence>
</function>
</stax>
opends/tests/functional-tests/testcases/logging/logging_retention.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE stax SYSTEM "../../../stax.dtd">
<!DOCTYPE stax SYSTEM "../../shared/stax.dtd">
<!--
 ! CDDL HEADER START
 !
@@ -26,12 +26,14 @@
 !      Portions Copyright 2006-2007 Sun Microsystems, Inc.
 ! -->
<stax>
<defaultcall function="logging_retention"/>
<function name="logging_retention" scope="local">      
    <block name="STAXCurrentFunction">
<sequence>
        <script>
          CurrentTestPath['suite']=STAXCurrentFunction
        </script>
        <call function="'testSuite_Preamble'" />
<!--- Test Case : retention policy -->
<!---
#@TestMarker            size limit  retention 
@@ -44,16 +46,12 @@
#@TestPostamble       none
#@TestResult              the number of logs must not exceed 3
      -->
  <testcase name="'logging : Retention policy :  file count  '">
        <testcase name="getTestCaseName('file count')">
   <sequence>
    <call function="'testCase_Preamble'"/>
  <message>
        '----  Check the file count  -----'
    </message>            
  <!-- set the max number of files to keep -->   
  <script>
    numberFiles=5
@@ -68,10 +66,13 @@
             'dsInstancePswd'   :     DIRECTORY_INSTANCE_PSWD,
         'dsFilter'    : 'objectclass=*',
             'dsScope'        : 'base',
             'expectedRC'     :  0 }
                'expectedRC'     :  0
              }
           </call> 
               
    <message>'-- create a new  file count  retention policy --'</message>
            <message>
              '-- create a new  file count  retention policy --'
            </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -81,10 +82,13 @@
        'objectType'              : 'policy-name' ,
        'objectName'             : 'my file count retention policy',
        'optionsString'           : '--type  file-count  --set number-of-files:%s' % (numberFiles),
        'expectedRC'             : 0 }
                'expectedRC'     : 0
              }
    </call>  
     
    <message>'------  Add this retention policy to the Access log publisher --' </message>
            <message>
              '------  Add this retention policy to the Access log publisher --'
            </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -94,10 +98,12 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--add retention-policy-dn:"cn=my file count retention policy,cn=Log Retention Policies,cn=config"',
        'expectedRC'             : 0 }
                'expectedRC'     : 0
              }
    </call>
    <message>'-- create a new size limit rotation policy --'</message>
            <message>
              '-- create a new size limit rotation policy --'
            </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -107,10 +113,12 @@
        'objectType'              : 'policy-name' ,
        'objectName'             : 'my size Limit Rotation Policy',
        'optionsString'           : '--type size-limit --set file-size-limit:4kb',
        'expectedRC'             : 0 }
                'expectedRC'     : 0
              }
    </call>  
    <message>'------  Add this rotation policy to the Access log publisher --' </message>
            <message>
              '------  Add this rotation policy to the Access log publisher --'
            </message>
    <call function="'dsconfig'">
  { 'dsInstanceHost'  : DIRECTORY_INSTANCE_HOST,
  'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
@@ -120,7 +128,8 @@
  'objectType'      : 'publisher-name' ,
  'objectName'     :  'File-Based Access Logger',
  'optionsString'      : '--add rotation-policy-dn:"cn=my size Limit Rotation Policy,cn=Log Rotation Policies,cn=config"',
  'expectedRC'     : 0 }
                'expectedRC'     : 0
              }
    </call>
  <call function="'dsconfig'">
@@ -132,7 +141,8 @@
  'objectType'      : 'publisher-name' ,
  'objectName'     :  'File-Based Access Logger',
  'optionsString'      : '--add  auto-flush:true --set append:true --set asynchronous:false',
  'expectedRC'     : 0 }
                'expectedRC'     : 0
              }
    </call>
  <!--  Starting loop -->
@@ -159,11 +169,12 @@
             'dsInstancePswd'   :     DIRECTORY_INSTANCE_PSWD,
         'dsFilter'    : 'objectclass=*',
             'dsScope'        : 'base',
             'expectedRC'     :  0 }
                    'expectedRC'     :  0
                  }
           </call>   
             <call function="'listFolder'">
             { 'location' : '%s' % (DIRECTORY_INSTANCE_HOST),
                  { 'location'   : DIRECTORY_INSTANCE_HOST,
               'foldername' : '%s/%s/logs' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME),
               'filename' : 'access'
              }
@@ -174,7 +185,9 @@
                  <script>
            error=1
                  </script>                    
                  <message>'Error, the number of logs files exceed the retention policy'</message>
                    <message>
                      'Error, the number of logs files exceed the retention policy'
                    </message>
                <call function="'testFailed'"/>
            </sequence>
             </if>
@@ -187,13 +200,17 @@
 
    <if expr="error == 0" >
      <sequence>
             <message>'SUCCESS:  the retention policy has been checked'</message>
                <message>
                  'SUCCESS:  the retention policy has been checked'
                </message>
           <call function="'testPassed'"/>
        </sequence>
      </if>       
    <!-- cleanup --> 
   <message>'------  remove this rotation policy to the Access log publisher --' </message>
            <message>
              '------  remove this rotation policy to the Access log publisher --'
            </message>
    <call function="'dsconfig'">
  { 'dsInstanceHost'  : DIRECTORY_INSTANCE_HOST,
  'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
@@ -203,11 +220,13 @@
  'objectType'      : 'publisher-name' ,
  'objectName'     :  'File-Based Access Logger',
  'optionsString'      : '--remove rotation-policy-dn:"cn=my size Limit Rotation Policy,cn=Log Rotation Policies,cn=config"',
  'expectedRC'     : 0 }
                'expectedRC'     : 0
              }
    </call>
     
    <message>'------  remove this retention policy to the Access log publisher --' </message>
            <message>
              '------  remove this retention policy to the Access log publisher --'
            </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -217,11 +236,14 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--remove retention-policy-dn:"cn=my file count retention policy,cn=Log Retention Policies,cn=config"',
        'expectedRC'             : 0 }
                'expectedRC'     : 0
              }
    </call>
    <message>'-- delete a new  file count  retention policy --'</message>
            <message>
              '-- delete a new  file count  retention policy --'
            </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -230,11 +252,14 @@
        'subcommand'           : 'delete-log-retention-policy' ,
        'objectType'              : 'policy-name' ,
        'objectName'             : 'my file count retention policy',
        'expectedRC'             : 0 }
                'expectedRC'             : 0
              }
    </call>           
    <message>'-- delete a new size limit rotation policy --'</message>
            <message>
              '-- delete a new size limit rotation policy --'
            </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -243,15 +268,15 @@
        'subcommand'           : 'delete-log-rotation-policy' ,
        'objectType'              : 'policy-name' ,
        'objectName'             : 'my size Limit Rotation Policy',
        'expectedRC'             : 0 }
                'expectedRC'     : 0
              }
    </call>             
                    
    <call function="'testCase_Postamble'"/>
  </sequence>
 </testcase>
        <call function="'testSuite_Postamble'"/>
</sequence>
    </block>
</function>
</stax>
opends/tests/functional-tests/testcases/logging/logging_rotation.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE stax SYSTEM "../../../stax.dtd">
<!DOCTYPE stax SYSTEM "../../shared/stax.dtd">
<!--
 ! CDDL HEADER START
 !
@@ -26,13 +26,13 @@
 !      Portions Copyright 2006-2007 Sun Microsystems, Inc.
 ! -->
<stax>
<defaultcall function="logging_rotation"/>
<function name="logging_rotation" scope="local">      
<sequence>
      <script>
        CurrentTestPath['suite']=STAXCurrentFunction
      </script>
      <call function="'testSuite_Preamble'" />
       <!---
  #@TestMarker            size limit  rotation 
  #@TestName              size limit  rotation 
@@ -45,16 +45,16 @@
  #@TestResult             the logs size must match the rotation size            
      -->
      
  <testcase name="'logging : Rotation  policy : size limit  '">
      <testcase name="getTestCaseName('size limit')">
   <sequence>
    <call function="'testCase_Preamble'"/>
  <message>
        '----  Check the size limit rotation -----'
    </message>            
     
    <message>'-- create a new size limit rotation policy --'</message>
          <message>
            '-- create a new size limit rotation policy --'
          </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -64,10 +64,13 @@
        'objectType'              : 'policy-name' ,
        'objectName'             : 'my size Limit Rotation Policy',
        'optionsString'           : '--type size-limit --set file-size-limit:4kb',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>  
     
  <message>'------  Add this rotation policy to the Access log publisher --' </message>
          <message>
            '------  Add this rotation policy to the Access log publisher --'
          </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -77,7 +80,8 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--add rotation-policy-dn:"cn=my size Limit Rotation Policy,cn=Log Rotation Policies,cn=config"',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>
  <call function="'dsconfig'">
@@ -89,7 +93,8 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--add  auto-flush:true --set append:true --set asynchronous:false --set buffer-size:64kb',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>     
    <call function="'dsconfigGet'">
@@ -104,7 +109,6 @@
    }
    </call>     
  
   <call function="'Sleep'">
            { 'sleepForMilliSeconds'  : 20000 }
   </call>
@@ -113,8 +117,6 @@
   <script>  
          listName=[]
          listSize=[]
   </script>
   <script>
     cpt=0
     nbLog=0
     </script>  
@@ -136,7 +138,8 @@
          'dsInstancePswd'   :     DIRECTORY_INSTANCE_PSWD,
      'dsFilter'    : 'objectclass=*',
          'dsScope'                 : 'base',
          'expectedRC'           :  0 }
                  'expectedRC'     : 0
                }
          </call>    
@@ -154,7 +157,7 @@
                
       <message>'--- Check log files ---'</message>  
         <call function="'listFolder'">
          { 'location' : '%s' % (DIRECTORY_INSTANCE_HOST),
                { 'location'   : DIRECTORY_INSTANCE_HOST,
           'foldername' : '%s/%s/logs' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME),
           'filename' : 'access'
           }
@@ -169,7 +172,9 @@
           logsize=result["size"]
           found=0
         </script>
         <message>'the log file status for file  "%s" is %s ' % (logname,logsize)</message>
                      <message>
                        'the log file status for file  "%s" is %s ' % (logname,logsize)
                      </message>
         <script>
           for currentLog in listName:
               if currentLog == logname:
@@ -193,7 +198,9 @@
          <script>
        nbLog=1
      </script> 
          <message>'The new log file status is : %s : %s' % (listName,listSize)</message>
                  <message>
                    'The new log file status is : %s : %s' % (listName,listSize)
                  </message>
          </sequence>        
     </if>
     <script>
@@ -210,16 +217,22 @@
     
   <if expr="RC == 1">
     <sequence>
          <message>'A log rotation has been done. The new rotation file is "%s" (size = %s) ' % (newlogName,newlogSize)</message>
              <message>
                'A log rotation has been done. The new rotation file is "%s" (size = %s) ' % (newlogName,newlogSize)
              </message>
       
       <if expr="int(newlogSize) &lt;  4100 and int(newlogSize) > 4000" >
             <sequence>
               <message>'SUCCESS. The rotation based on size limit is successfull.  The file "%s" (size = %s) ' % (newlogName,newlogSize)</message>
                  <message>
                    'SUCCESS. The rotation based on size limit is successfull.  The file "%s" (size = %s) ' % (newlogName,newlogSize)
                  </message>
               <call function="'testPassed'"/>              
       </sequence>
         <else>       
           <sequence>
           <message>'ERROR in the rotation. The file "%s" (size = %s) does not match the rotation size ' % (newlogName,newlogSize)</message>
                    <message>
                      'ERROR in the rotation. The file "%s" (size = %s) does not match the rotation size ' % (newlogName,newlogSize)
                    </message>
               <call function="'testFailed'"/>     
         </sequence>
     </else>
@@ -233,12 +246,13 @@
     </else>  
     </if>     
  <!-- ############################### -->
    <!--   clean rotation policy -->     
  <!-- ############################### -->   
     
  <message>'------  remove this rotation policy to the Access log publisher --' </message>
          <message>
            '------  remove this rotation policy to the Access log publisher --'
          </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -248,11 +262,13 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--remove rotation-policy-dn:"cn=my size Limit Rotation Policy,cn=Log Rotation Policies,cn=config"',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>
    <message>'-- delete a new size limit rotation policy --'</message>
          <message>
            '-- delete a new size limit rotation policy --'
          </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -261,15 +277,14 @@
        'subcommand'           : 'delete-log-rotation-policy' ,
        'objectType'              : 'policy-name' ,
        'objectName'             : 'my size Limit Rotation Policy',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>  
    <call function="'testCase_Postamble'"/>
  </sequence>
 </testcase>
      <call function="'testSuite_Postamble'" />
</sequence>
</function>
</stax>
  
opends/tests/functional-tests/testcases/logging/logging_setup.xml
@@ -26,22 +26,14 @@
 !      Portions Copyright 2007 Sun Microsystems, Inc.
 ! -->
<stax>
  <defaultcall function="logging_setup"/>
  <function name="logging_setup">
    <sequence>
      <block name="'setup'">
        <sequence>
      <block name="'Block Create DS Topology'">
      <!-- Create the topology necessary to the test group/suite -->
        <sequence>
              <message>
                 'Create DS topology as described in config.py'
              </message>
@@ -52,18 +44,16 @@
                    
        <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
                    'result'   : STAXResult
                }
              </call>
            </sequence>      
          <!--- End Block Create DS Topology -->  
          </block>                    
      <block name="'Block DS Process Active'">      
          <!--- Start DS -->
        <sequence>
              <message>
                 'Start DS to run on port %s' % (DIRECTORY_INSTANCE_PORT)
              </message>
@@ -75,25 +65,21 @@
  
              <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
                  'result'     : STAXResult
                }
              </call>
  
              <!--- Check that DS started -->
              <call function="'isAlive'">
                { 'noOfLoops'        : 5 ,
                  'noOfMilliSeconds' : 2000 }
                  'noOfMilliSeconds' : 2000
                }
              </call>      
            </sequence>
          <!--- End Block DS Process Active -->
          </block>              
        </sequence>        
      </block>
     </sequence>
  </function>
</stax>
opends/tests/functional-tests/testcases/logging/logging_writer.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE stax SYSTEM "../../../stax.dtd">
<!DOCTYPE stax SYSTEM "../../shared/stax.dtd">
<!--
 ! CDDL HEADER START
 !
@@ -26,13 +26,13 @@
 !      Portions Copyright 2006-2007 Sun Microsystems, Inc.
 ! -->
<stax>
<defaultcall function="logging_writer"/>
<function name="logging_writer" scope="local">      
<sequence>
      <script>
        CurrentTestPath['suite']=STAXCurrentFunction
      </script>
      <call function="'testSuite_Preamble'"/>
<!-- #################################### -->
<!--
  #@TestMarker             access logger
@@ -49,22 +49,15 @@
  #@TestResult               The recors must be written to disk after each operation
      -->
<!-- #################################### -->
<testcase name="'logging : Synchronous mode- auto-flush=true :  Access logger '">
      <testcase name="getTestCaseName('Synchronous mode- auto-flush=true - Access logger')">
  <sequence>
    <call function="'testCase_Preamble'"/>
  <message>
        '----  Check the Synchronous mode for Access loggers -----'
    </message>      
  <message>
    '  asynchronous:false  -  auto-flush:true  -  append:false -  buffer-size:20kb '
  </message>      
  <message>'------  set properties --' </message>
    <call function="'dsconfig'">
      { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
@@ -75,7 +68,8 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Access Logger',
        'optionsString'           : '--set auto-flush:true --set append:false --set asynchronous:false --set buffer-size:20kb',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>
    <call function="'dsconfig'">
@@ -87,15 +81,14 @@
        'objectType'              : 'policy-name' ,
        'objectName'             :  'Size Limit Rotation Policy',
        'optionsString'           : '--set file-size-limit:1mb',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>
     
   <!--  Starting loop -->       
   <script>  
          listName=[]
          listSize=[]
   </script>
   <script>
     cpt=0
     </script>  
     
@@ -116,10 +109,10 @@
          'dsInstancePswd'   :     DIRECTORY_INSTANCE_PSWD,
      'dsFilter'    : 'objectclass=*'  ,
          'dsScope'                 : 'base',
          'expectedRC'           :  0 }
                  'expectedRC'     : 0
                }
          </call>    
        <call function="'dsconfigGet'">
        { 'dsInstanceHost'       : DIRECTORY_INSTANCE_HOST,
        'dsInstancePort'         : DIRECTORY_INSTANCE_PORT ,
@@ -149,7 +142,9 @@
           logsize=result["size"]
           found=0
         </script>
         <message>'log file status for file  %s is %s ' % (logname,logsize)</message>
                      <message>
                        'log file status for file  %s is %s ' % (logname,logsize)
                      </message>
         <script>   
           for currentLog in listName:
               if currentLog == logname:
@@ -169,34 +164,40 @@
    </iterate>
    </sequence>
      </if>    
        <message>'The new log file status is : %s : %s' % (listName,listSize)</message>
              <message>
                'The new log file status is : %s : %s' % (listName,listSize)
              </message>
     <script>
       cpt=cpt+1
     </script>   
     </sequence>   
     </loop>  
   <message>'The log file status of the file "%s" has changed ' % logname</message>
          <message>
            'The log file status of the file "%s" has changed ' % logname
          </message>
   <!-- Check log file -->
   <!-- records must be writen after each operation -->   
   <!-- we should exit the loop after the first ldapsearch -->  
   <if expr="cpt != 2">
     <sequence>
     <message>'ERROR.  The writer are not flushed after every log records'</message>
              <message>
                'ERROR.  The writer are not flushed after every log records'
              </message>
         <call function="'testFailed'"/>     
     </sequence>
   <else>
      <sequence>
      <message>'SUCCESS. The writer are flushed after every log records' </message>
                <message>
                  'SUCCESS. The writer are flushed after every log records'
                </message>
          <call function="'testPassed'"/>     
          </sequence>        
   </else>   
   </if>
  </sequence>
 </testcase>
<!-- #################################### -->
<!--
  #@TestMarker            Debug logger
@@ -214,9 +215,7 @@
      -->
<!-- #################################### -->
            
<testcase name="'logging :   basic tests on Debug logger '">
      <testcase name="getTestCaseName('basic tests on Debug logger')">
  <sequence>
    <call function="'testCase_Preamble'"/>
  <message>
@@ -233,19 +232,20 @@
        'objectType'              : 'publisher-name' ,
        'objectName'             :  'File-Based Debug Logger',
        'optionsString'           : '--set enabled:true --set default-debug-level:all --set log-file:logs/mydebug',
        'expectedRC'             : 0 }
              'expectedRC'     : 0
            }
    </call>       
               
    <call function="'RestartDs'">
    {   'dsHost'    : DIRECTORY_INSTANCE_HOST,
             'dsPort'    : DIRECTORY_INSTANCE_PORT,
             'dsBindDN'  : DIRECTORY_INSTANCE_DN,
             'dsBindPwd' : DIRECTORY_INSTANCE_PSWD }
              'dsBindPwd' : DIRECTORY_INSTANCE_PSWD
            }
     </call>
     <message>'--- Check log files ---'</message>  
     <call function="'listFolder'">
          { 'location' : '%s' % (DIRECTORY_INSTANCE_HOST),
            { 'location'   : '%s' % DIRECTORY_INSTANCE_HOST,
           'foldername' : '%s/%s/logs' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME),
           'filename' : 'mydebug'
           }
@@ -268,7 +268,6 @@
           <script>      
           logsize=result["size"]
                 </script>    
           <if expr="logsize == 0">
                   <sequence>
                      <message>'ERROR.  The Debug logger should contain data'</message>      
@@ -284,19 +283,13 @@
   </if>  
   <if expr="error == 0">
     <sequence>
         <call function="'testPassed'"/>      
         </sequence>
     <else>
         <sequence>
         <call function="'testFailed'"/>            
         </sequence>
     </else>     
   </if>       
  </sequence>
 </testcase>  
</sequence>
</function>
</stax>