Maintain backwards compatability with older version of Jython on Unicode
| | |
| | | |
| | | <iterate var="sharedLib" in="sharedLibs"> |
| | | <import machine="STAF_LOCAL_HOSTNAME" |
| | | file="'%s/%s' % (TESTS_FUNCTIONS_DIR,sharedLib)" /> |
| | | file="'%s/%s' % (TESTS_FUNCTIONS_DIR,sharedLib)"/> |
| | | </iterate> |
| | | |
| | | </sequence> |
| | |
| | | <function name="importPythonLibraries"> |
| | | <function-prolog> |
| | | This function imports the Python libraries and objects, |
| | | both starndard and local shared ones. |
| | | both standard and local shared ones. |
| | | </function-prolog> |
| | | |
| | | <sequence> |
| | |
| | | import re |
| | | import os |
| | | import sys |
| | | from org.python.core import PyString,PyUnicode,PyList,PyDictionary |
| | | from org.python.core import PyString,PyList,PyDictionary |
| | | </script> |
| | | |
| | | <!-- Load in any additional Java classes --> |
| | |
| | | <script> |
| | | STAXLogMessage = 1 |
| | | </script> |
| | | |
| | | |
| | | <call function="'importSharedLibraries'"/> |
| | | |
| | | |
| | | <call function="'importPythonLibraries'"/> |
| | | |
| | | <call function="'initialiseGlobalVariables'"/> |
| | |
| | | </script> |
| | | |
| | | <!-- Check that returnString is really a string or unicode --> |
| | | <if expr='returnString.__class__ is not PyString |
| | | and returnString.__class__ is not PyUnicode'> |
| | | <if expr='value_not_string(returnString)'> |
| | | <sequence> |
| | | <message log="1" level="'Error'"> |
| | | 'Invalid returnString type (%s), requires str or unicode.' \ |
| | |
| | | </script> |
| | | |
| | | <!-- Check that returnString is really a string --> |
| | | <if expr='returnString.__class__ is not PyString |
| | | and returnString.__class__ is not PyUnicode'> |
| | | <if expr='value_not_string(returnString)'> |
| | | <sequence> |
| | | <message log="1" level="'Error'"> |
| | | 'ERROR : Invalid returnString type (%s), requires str or unicode.' \ |
| | |
| | | "list_matches" , |
| | | "count_attr" , |
| | | "host_is_localhost" , |
| | | "md5_hash" |
| | | "md5_hash" , |
| | | "value_not_string" |
| | | ] |
| | | |
| | | class format_testcase: |
| | |
| | | import md5 |
| | | m = md5.new() |
| | | return m |
| | | |
| | | def value_not_string(value): |
| | | from org.python.core import PyString,PyList,PyDictionary |
| | | try: |
| | | from org.python.core import PyUnicode |
| | | except ImportError: |
| | | # Unicode is NOT supported in this version of Jython |
| | | print "WARNING: Jython version does not support Unicode." |
| | | if value.__class__ is not PyString: |
| | | return 1 |
| | | else: |
| | | return 0 |
| | | |
| | | # Unicode is supported in this version of Jython |
| | | if value.__class__ is not PyString and value.__class__ is not PyUnicode: |
| | | return 1 |
| | | else: |
| | | return 0 |
| | | |