def testCreateOutputFileDictionary(self): strPathToCCP4iResult = os.path.join(self.getPluginTestsDataHome(), "XSDataResultCCP4i_reference.xml") strXML = self.readAndParseFile(strPathToCCP4iResult) EDFactoryPluginStatic.loadModule("XSDataCCP4iv1_1") from XSDataCCP4iv1_1 import XSDataResultCCP4i xsDataResultCCP4i = XSDataResultCCP4i.parseString(strXML) xsDataStringListOfOutputFiles = xsDataResultCCP4i.getListOfOutputFiles( ) pluginMXCuBE = self.createPlugin() pluginMXCuBE.configure() strResultCharacterisationFileName = "XSDataResultCharacterisation_reference.xml" strPathToReferenceFile = os.path.join( self.getPluginTestsDataHome(), strResultCharacterisationFileName) strXML = self.readAndParseFile(strPathToReferenceFile) xsDataResultCharacterisation = XSDataResultCharacterisation.parseString( strXML) strDNAFileDirectoryPath = pluginMXCuBE.createDNAFileDirectoryPath( xsDataResultCharacterisation) pluginMXCuBE.createDNAFileDirectory(strDNAFileDirectoryPath) xsDataDictionary = pluginMXCuBE.createOutputFileDictionary( xsDataStringListOfOutputFiles, xsDataResultCharacterisation, strDNAFileDirectoryPath) EDAssert.equal(False, xsDataDictionary is None) shutil.rmtree(strDNAFileDirectoryPath)
def testGetXSDataResultCharacterisation(self): strPathToCCP4iResult = os.path.join(self.getPluginTestsDataHome(), "XSDataResultCCP4i_reference.xml") strXML = self.readAndParseFile(strPathToCCP4iResult) EDFactoryPluginStatic.loadModule("XSDataCCP4iv1_1") from XSDataCCP4iv1_1 import XSDataResultCCP4i xsDataResultCCP4i = XSDataResultCCP4i.parseString(strXML) strListOfOutputFiles = xsDataResultCCP4i.getListOfOutputFiles().getValue() pluginMXCuBE = self.createPlugin() xsDataResultCharacterisation = pluginMXCuBE.getXSDataResultCharacterisation(strListOfOutputFiles) strPathToResultCharacterisationReference = os.path.join(self.getPluginTestsDataHome(), "EDPluginControlCharacterisationv1_1_dataOutput.xml") xsDataResultCharacterisationReference = XSDataResultCharacterisation.parseFile(strPathToResultCharacterisationReference) EDAssert.equal(xsDataResultCharacterisationReference.marshal(), xsDataResultCharacterisation.marshal())
def testGetXSDataResultCharacterisation(self): strPathToCCP4iResult = os.path.join(self.getPluginTestsDataHome(), "XSDataResultCCP4i_reference.xml") strXML = self.readAndParseFile(strPathToCCP4iResult) EDFactoryPluginStatic.loadModule("XSDataCCP4iv1_1") from XSDataCCP4iv1_1 import XSDataResultCCP4i xsDataResultCCP4i = XSDataResultCCP4i.parseString(strXML) strListOfOutputFiles = xsDataResultCCP4i.getListOfOutputFiles( ).getValue() pluginMXCuBE = self.createPlugin() xsDataResultCharacterisation = pluginMXCuBE.getXSDataResultCharacterisation( strListOfOutputFiles) strPathToResultCharacterisationReference = os.path.join( self.getPluginTestsDataHome(), "EDPluginControlCharacterisationv1_1_dataOutput.xml") xsDataResultCharacterisationReference = XSDataResultCharacterisation.parseFile( strPathToResultCharacterisationReference) EDAssert.equal(xsDataResultCharacterisationReference.marshal(), xsDataResultCharacterisation.marshal())
def testCreateOutputFileDictionary(self): strPathToCCP4iResult = os.path.join(self.getPluginTestsDataHome(), "XSDataResultCCP4i_reference.xml") strXML = self.readAndParseFile(strPathToCCP4iResult) EDFactoryPluginStatic.loadModule("XSDataCCP4iv1_1") from XSDataCCP4iv1_1 import XSDataResultCCP4i xsDataResultCCP4i = XSDataResultCCP4i.parseString(strXML) xsDataStringListOfOutputFiles = xsDataResultCCP4i.getListOfOutputFiles() pluginMXCuBE = self.createPlugin() pluginMXCuBE.configure() strResultCharacterisationFileName = "XSDataResultCharacterisation_reference.xml" strPathToReferenceFile = os.path.join(self.getPluginTestsDataHome(), strResultCharacterisationFileName) strXML = self.readAndParseFile(strPathToReferenceFile) xsDataResultCharacterisation = XSDataResultCharacterisation.parseString(strXML) strDNAFileDirectoryPath = pluginMXCuBE.createDNAFileDirectoryPath(xsDataResultCharacterisation) pluginMXCuBE.createDNAFileDirectory(strDNAFileDirectoryPath) xsDataDictionary = pluginMXCuBE.createOutputFileDictionary(xsDataResultCharacterisation, strDNAFileDirectoryPath) EDAssert.equal(False, xsDataDictionary is None) shutil.rmtree(strDNAFileDirectoryPath)
def doSuccessActionCharacterisation(self, _edPlugin): """ retrieve the potential warning messages """ EDPluginControlInterfacev1_1.doSuccessActionCharacterisation( self, _edPlugin) # Generate file with executive summary... pyStrCharacterisationExecutiveSummary = "" pyListExecutiveSummaryLines = self.getPluginCharacterisation( ).getListExecutiveSummaryLines() for pyStrLine in pyListExecutiveSummaryLines: pyStrCharacterisationExecutiveSummary += pyStrLine + "\n" pyStrSummaryDirectory = self.getWorkingDirectory() pyStrSummaryPath = os.path.join( pyStrSummaryDirectory, "CharacterisationExecutiveSummary.txt") EDUtilsFile.writeFile(pyStrSummaryPath, pyStrCharacterisationExecutiveSummary) xsDataResultCCP4i = XSDataResultCCP4i() # Construct the listOfOutputFiles string... pyStrListOfOutputFiles = '\n' pyStrListOfOutputFiles = pyStrListOfOutputFiles + self.getBaseDirectory( ) + '\n' xsDataOutput = self.getPluginCharacterisation().getDataOutput() pyListPredictionImages = xsDataOutput.getIndexingResult( ).getPredictionResult().getPredictionImage() for xsDataImagePrediction in pyListPredictionImages: strImagePath = xsDataImagePrediction.getPath().getValue() pyStrListOfOutputFiles = pyStrListOfOutputFiles + strImagePath + '\n' pyStrCharacterisationDirectory = os.path.join( self.getWorkingDirectory(), "Characterisation") # "Hack" for determining if we use version 1.1 or 1.2 of the BEST plugin... pyStrBestWorkingDirectory = os.path.join( pyStrCharacterisationDirectory, "Strategy") pyStrBestPlotFilePath = None pyStrBestLogFilePath = None if (os.path.exists(os.path.join(pyStrBestWorkingDirectory, "Bestv1_1"))): pyStrBestWorkingDirectory = os.path.join(pyStrBestWorkingDirectory, "Bestv1_1") pyStrBestPlotFilePath = os.path.join(pyStrBestWorkingDirectory, "Bestv1_1_plots.mtv") pyStrBestLogFilePath = os.path.join(pyStrBestWorkingDirectory, "Bestv1_1.log") elif (os.path.exists( os.path.join(pyStrBestWorkingDirectory, "Bestv1_2"))): pyStrBestWorkingDirectory = os.path.join(pyStrBestWorkingDirectory, "Bestv1_2") pyStrBestPlotFilePath = os.path.join(pyStrBestWorkingDirectory, "Bestv1_2_plots.mtv") pyStrBestLogFilePath = os.path.join(pyStrBestWorkingDirectory, "best.log") pyStrCharacterisationOutput = None if self.getPluginCharacterisation().getClassName( ) == "EDPluginControlCharacterisationv1_1": pyStrCharacterisationOutput = os.path.join( pyStrCharacterisationDirectory, "ControlCharacterisationv1_1_dataOutput.xml") elif self.getPluginCharacterisation().getClassName( ) == "EDPluginControlCharacterisationv1_2": pyStrCharacterisationOutput = os.path.join( pyStrCharacterisationDirectory, "ControlCharacterisationv1_2_dataOutput.xml") pyStrListOfOutputFiles = pyStrListOfOutputFiles + pyStrCharacterisationOutput + '\n' if (pyStrBestLogFilePath is not None): pyStrListOfOutputFiles = pyStrListOfOutputFiles + pyStrBestLogFilePath + '\n' pyStrListOfOutputFiles = pyStrListOfOutputFiles + pyStrBestPlotFilePath + '\n' pyStrListOfOutputFiles = pyStrListOfOutputFiles + pyStrSummaryPath + '\n' xsDataStringListOfOutputFiles = XSDataString(pyStrListOfOutputFiles) xsDataResultCCP4i.setListOfOutputFiles(xsDataStringListOfOutputFiles) self.setDataOutput(xsDataResultCCP4i)