def addTestCaseFromName(self, _strTestCaseName): """ This method adds a test case give it's name to the test suite. If the test case cannot be loaded an error message is issued and it's name is added to the list of not executed test cases. @return: NumberTestCaseFailure @rtype: integer """ edTestCase = None exceptionObject = None try: edTestCase = EDUtilsTest.getFactoryPluginTest().loadPlugin( _strTestCaseName) except ImportError as exceptionObject: strWarningMessage = "Could not create the test case: %s, reason: %s" % ( _strTestCaseName, exceptionObject) EDVerbose.WARNING(strWarningMessage) self.__dictTestCaseNotExecuted[_strTestCaseName] = "%s : %s" % ( self.getClassName(), strWarningMessage) if edTestCase is None: if exceptionObject is None: EDVerbose.error( "EDTestSuite.addTestCaseFromName: Could not create the test case: " + _strTestCaseName) self.__dictTestCaseNotExecuted[ _strTestCaseName] = "%s : Could not create the test case" % self.getClassName( ) else: edTestCase.setTestSuiteName(self.getClassName()) self.__listTestCase.append(edTestCase)
def __init__(self, _strPluginName, _strPluginDir=None, _strTestName=None): """ Initialize the test case by determining the paths to the plugin home and plugin test directories. """ EDTestCase.__init__(self, _strTestName) self._edPlugin = None self._strPluginName = _strPluginName self._strPluginHome = EDUtilsTest.getFactoryPluginTest().getModuleLocation(_strPluginName) self._strPluginTestsDataHome = EDUtilsTest.getPluginTestDataDirectory(self.getClassName()) self._listRequiredConfigurationPluginNames = [] self._strConfigurationFile = None
def addTestCaseFromName(self, _strTestCaseName): """ This method adds a test case give it's name to the test suite. If the test case cannot be loaded an error message is issued and it's name is added to the list of not executed test cases. @return: NumberTestCaseFailure @rtype: integer """ edTestCase = None exceptionObject = None try: edTestCase = EDUtilsTest.getFactoryPluginTest().loadPlugin(_strTestCaseName) except exceptions.ImportError, exceptionObject: strWarningMessage = "Could not create the test case: %s, reason: %s" % (_strTestCaseName, exceptionObject) EDVerbose.WARNING(strWarningMessage) self.__dictTestCaseNotExecuted[_strTestCaseName] = "%s : %s" % (self.getClassName(), strWarningMessage)
def __init__(self, _strPluginName, _strPluginDir=None, _strTestName=None): """ Initialize the test case by determining the paths to the plugin home and plugin test directories. """ EDTestCase.__init__(self, _strTestName) self.__strPluginName = _strPluginName self.__strTestsDataDir = None self.__strPluginTestsDataDir = None self.__strPluginHome = EDUtilsTest.getFactoryPluginTest().getModuleLocation(_strPluginName) self.__strPluginTestsDataHome = EDUtilsTest.getPluginTestDataDirectory(self.getClassName()) self.__listRequiredConfigurationPluginNames = [] self.__strConfigurationFile = None self.__dictConfigurations = {} #key=pluginName ; value=config self.dictReplace = {"${EDNA_TESTS_DATA_HOME}": EDUtilsTest.getTestsDataHome(), "${EDNA_PLUGIN_TESTS_DATA_HOME}" : self.getPluginTestsDataHome(), "${EDNA_HOME}": EDUtilsPath.getEdnaHome(), "${USER}": os.getenv("USER", "UndefindedUser"), "${TMPDIR}": os.getenv("TMPDIR", tempfile.gettempdir()), }
def __init__(self): """ """ EDTestCasePluginExecute.__init__(self, "EDPluginTestPluginFactory") strModuleLocation = EDUtilsTest.getFactoryPluginTest().getModuleLocation("EDPluginTestPluginFactory") strRootDirectory = EDUtilsPath.appendListOfPaths(strModuleLocation, [ "..", "tests", "data" ]) # Default input self.setDataInputFile(os.path.join(strRootDirectory, "XSDataInputString_reference.xml")) self.setReferenceDataOutputFile(os.path.join(strRootDirectory, "XSDataResultString_reference.xml")) # Named input self.setDataInputFile(os.path.join(strRootDirectory, "XSDataInputString_reference.xml"), "value1") self.setReferenceDataOutputFile(os.path.join(strRootDirectory, "XSDataResultString_reference.xml"), "value1") # List input self.setDataInputFile(os.path.join(strRootDirectory, "XSDataInputString_reference.xml"), "value2") self.setDataInputFile(os.path.join(strRootDirectory, "XSDataInputString_reference.xml"), "value2") self.setDataInputFile(os.path.join(strRootDirectory, "XSDataInputString_reference.xml"), "value2") self.setReferenceDataOutputFile(os.path.join(strRootDirectory, "XSDataResultString_reference.xml"), "value2") self.setReferenceDataOutputFile(os.path.join(strRootDirectory, "XSDataResultString_reference.xml"), "value2") self.setReferenceDataOutputFile(os.path.join(strRootDirectory, "XSDataResultString_reference.xml"), "value2")
def preProcess(self): """ Scans the command line. """ EDVerbose.DEBUG("EDTestLauncher.preProcess") edCommandLine = EDCommandLine(sys.argv) EDVerbose.log(self.getEdCommandLine().getCommandLine()) self.processCommandLineDebugVerboseLogFile() bContinue = True strTestName = edCommandLine.getArgument(EDTestLauncher.TEST_LABEL) EDVerbose.DEBUG("EDTestLauncher.preProcess: test name = %r" % strTestName) if (strTestName is None): EDVerbose.screen("ERROR - no --test argument found") bContinue = False else: self.__edTestCase = EDUtilsTest.getFactoryPluginTest().loadPlugin(strTestName) if (bContinue): # Determine the base directory if(self.getBaseDir() is None): self.processCommandLineBaseDirectory() # Create the application working directory strApplicationInstanceName = strTestName + "_" + time.strftime("%Y%m%d-%H%M%S", time.localtime()) if(self.getWorkingDir() is None): self.setWorkingDir(strApplicationInstanceName) self.createApplicationWorkingDirectory() # Set the name of the log file EDVerbose.setLogFileName(os.path.join(self.getBaseDir(), strApplicationInstanceName + ".log")) # The check for --quiet and --DEBUG should ideally be placed elsewhere, # for example in EDApplication. if (edCommandLine.existCommand(EDTestLauncher.QUIET_LABEL)): EDVerbose.setVerboseOff() EDVerbose.setTestOff() if (edCommandLine.existCommand(EDApplication.DEBUG_PARAM_LABEL_1) or \ edCommandLine.existCommand(EDApplication.DEBUG_PARAM_LABEL_2)): EDVerbose.setVerboseDebugOn() EDVerbose.DEBUG("EDTestLauncher.preProcess: Debug mode")