From f815a8217adef82186eda06a32a386c04a8e7769 Mon Sep 17 00:00:00 2001
From: Christophe Sovant <christophe.sovant@forgerock.com>
Date: Thu, 12 Mar 2009 09:55:47 +0000
Subject: [PATCH] Fix random tests failed in logging and tasks testsuites + add knownIssue tag in snmp testsuite
---
opends/tests/staf-tests/shared/functions/utils.xml | 111 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 109 insertions(+), 2 deletions(-)
diff --git a/opends/tests/staf-tests/shared/functions/utils.xml b/opends/tests/staf-tests/shared/functions/utils.xml
index 01c861d..7188643 100755
--- a/opends/tests/staf-tests/shared/functions/utils.xml
+++ b/opends/tests/staf-tests/shared/functions/utils.xml
@@ -221,8 +221,113 @@
<tcstatus result="'fail'"/>
</sequence>
</function>
-
-<!-- checktestString -->
+
+ <!-- Search string -->
+ <function name="searchString" scope="local">
+ <function-prolog>
+ This function search for a string in the retrun string of a testcase
+ Return 0 if the string is found, 1 otherwise
+ </function-prolog>
+
+ <function-map-args>
+ <function-arg-def name="expectedString" type="required">
+ <function-arg-description>
+ the substring expected from the command
+ </function-arg-description>
+ <function-arg-property name="type" value="string"/>
+ </function-arg-def>
+ <function-arg-def name="returnString" type="required">
+ <function-arg-description>
+ the return string received from command
+ </function-arg-description>
+ <function-arg-property name="type" value="string"/>
+ </function-arg-def>
+ <function-arg-def name="knownIssue" type="optional" default="None">
+ <function-arg-description>
+ Known issue. Corresponds to an issue number.
+ </function-arg-description>
+ <function-arg-property name="type" value="string"/>
+ </function-arg-def>
+ <function-arg-def name="expectedRC" type="optional" default="0">
+ <function-arg-description>
+ Expected return code value. Default value is 0.
+ Wildcard 'noCheck' to not check the RC
+ </function-arg-description>
+ <function-arg-property name="type" value="string"/>
+ </function-arg-def>
+ </function-map-args>
+
+ <sequence>
+ <script>
+ searchre = re.compile('%s' % expectedString)
+ myRC = 0
+ myReason = 'None'
+ </script>
+
+ <!-- Check that returnString is really a string -->
+ <if expr='returnString.__class__ is not org.python.core.PyString'>
+ <sequence>
+ <message log="1" level="'Error'">
+ 'ERROR : Invalid returnString type (%s), requires org.python.core.PyString.' \
+ % returnString.__class__
+ </message>
+ <script>
+ myRC = 1
+ myReason = 'Python error'
+ </script>
+
+ <return>[myRC, myReason]</return>
+ </sequence>
+ </if>
+
+ <!-- Search for the expectedString -->
+ <if expr='re.search(searchre, returnString) != None'>
+ <sequence>
+ <message log="1">
+ 'SUCCESS : Found substring, %s, in the return string' \
+ % (expectedString)
+ </message>
+ <script>
+ myRC = 0
+ myReason = 'String found'
+ </script>
+ </sequence>
+ <else>
+ <sequence>
+ <message log="1" level="'Error'">
+ 'ERROR : Did not find substring, %s, in the return string, %s' \
+ % (expectedString, returnString)
+ </message>
+ <script>
+ myRC = 1
+ myReason = 'String not found'
+ </script>
+ </sequence>
+ </else>
+ </if>
+
+ <!-- Manage expectedRC and knownIssue -->
+ <if expr="expectedRC != 'noCheck'">
+ <if expr="myRC == expectedRC">
+ <tcstatus result="'pass'"/>
+ <else>
+ <if expr="knownIssue == None">
+ <tcstatus result="'fail'"/>
+ <else>
+ <call function="'setKnownIssue'">
+ { 'issueId' : knownIssue }
+ </call>
+ </else>
+ </if>
+ </else>
+ </if>
+ </if>
+
+ <return>[myRC, myReason]</return>
+ </sequence>
+ </function>
+
+ <!-- DEPRECATED, use searchString function -->
<function name="checktestString">
<function-prolog>
This function checks the return string against an expected return substring for a testcase
@@ -291,6 +396,7 @@
</sequence>
</function>
+ <!-- DEPRECATED, use searchString function -->
<function name="checktestStringNotPresent">
<function-prolog>
This function checks the return string against an expected return substring that should not be present for a testcase
@@ -348,6 +454,7 @@
</sequence>
</function>
+ <!-- DEPRECATED, use searchString function -->
<function name="searchStringForSubstring">
<function-prolog>
This function simply searches a string for a substring
--
Gitblit v1.10.0