コード例 #1
0
    def testExecute(self):
        """
        """
        self.run()

        # Checks that there are no error messages

        plugin = self.getPlugin()

        strExpectedOutput = self.readAndParseFile (self.getReferenceDataOutputFile())
        strObtainedOutput = self.readAndParseFile (self.m_edObtainedOutputDataFile)
        EDVerbose.DEBUG("Checking obtained result...")
        xsDataResultReference = XSDataResultExecThumbnail.parseString(strExpectedOutput)
        xsDataResultObtained = XSDataResultExecThumbnail.parseString(strObtainedOutput)

        EDAssert.equal(xsDataResultReference.marshal(), xsDataResultObtained.marshal(), "XML are the same")

        strExpectedOutput = self.readAndParseFile (self.getReferenceDataOutputFile())
        xsDataResultReference = XSDataResultExecThumbnail.parseString(strExpectedOutput)
        outputFileName = xsDataResultReference.getThumbnailPath().getPath().getValue()
        outputImage = Image.open(outputFileName)

        self.loadTestImage([os.path.basename(outputFileName)])
        referenceFileName = os.path.join(EDUtilsPath.EDNA_TESTIMAGES, os.path.basename(outputFileName))
        referenceImage = Image.open(referenceFileName)

        EDAssert.arraySimilar(numpy.asarray(outputImage), numpy.asarray(referenceImage), _strComment="Images are the same", _fAbsMaxDelta=5)
    def testExecute(self):
        """
        """
        self.run()

        # Checks that there are no error messages

        plugin = self.getPlugin()

#        EDVerbose.DEBUG("Checking error messages...")
#        EDAssert.equal(self.m_iNoErrorMessages, self.getErrorMessages().getNumberObjects())
#
#        EDVerbose.DEBUG("Checking warning messages...")
#        EDAssert.equal(self.m_iNoWarningMessages, self.getWarningMessages().getNumberObjects())

        strExpectedOutput = self.readAndParseFile (self.getReferenceDataOutputFile())
        strObtainedOutput = self.readAndParseFile (self.m_edObtainedOutputDataFile)
        EDVerbose.DEBUG("Checking obtained result...")
        xsDataResultReference = XSDataResultExecThumbnail.parseString(strExpectedOutput)
        xsDataResultObtained = XSDataResultExecThumbnail.parseString(strObtainedOutput)

        EDAssert.equal(xsDataResultReference.marshal(), xsDataResultObtained.marshal(), "XML are the same")

        strExpectedOutput = self.readAndParseFile (self.getReferenceDataOutputFile())
        xsDataResultReference = XSDataResultExecThumbnail.parseString(strExpectedOutput)
        outputFileName = xsDataResultReference.getThumbnailPath().getPath().getValue()
        outputImage = Image.open(outputFileName)

        referenceFileName = os.path.join(self.getPluginTestsDataHome(), os.path.basename(outputFileName))
        referenceImage = Image.open(referenceFileName)

#        print (numpy.asarray(outputImage) - numpy.asarray(referenceImage))
#        print (numpy.asarray(outputImage) - numpy.asarray(referenceImage)).max()
#        print (numpy.asarray(outputImage) - numpy.asarray(referenceImage)).min()
#        print numpy.asarray(outputImage).shape
#        print numpy.asarray(referenceImage).shape

#        from fabio.edfimage import edfimage
#        edfimage(numpy.asarray(outputImage) - numpy.asarray(referenceImage)).write("/tmp/toto.edf", force_type=numpy.asarray(outputImage).dtype)

        EDAssert.arraySimilar(numpy.asarray(outputImage), numpy.asarray(referenceImage), _strComment="Images are the same", _fAbsMaxDelta=5)
コード例 #3
0
    def postProcess(self, _edObject=None):
        """
        Postprocess of the plugin:
         
        * set output of the plugin
        * free some memory from large arrays
        """
        EDPluginExec.postProcess(self)
        EDVerbose.DEBUG("EDPluginExecThumbnailv10.postProcess")
        # Create some output data

        xsDataResult = XSDataResultExecThumbnail()
        if os.path.isfile(self.output):
            xsDataFile = XSDataFile()
            xsDataFile.setPath(XSDataString(self.output))
            xsDataResult.setThumbnailPath(xsDataFile)
            xsDataString = XSDataString()
            xsDataString.setValue(self.format)
            xsDataResult.setThumbnailType(xsDataString)
        self.setDataOutput(xsDataResult)
        self.npaImage = None
コード例 #4
0
    def testExecute(self):
        """
        """
        self.run()

        # Checks that there are no error messages

        plugin = self.getPlugin()

        strExpectedOutput = self.readAndParseFile(
            self.getReferenceDataOutputFile())
        strObtainedOutput = self.readAndParseFile(
            self.m_edObtainedOutputDataFile)
        EDVerbose.DEBUG("Checking obtained result...")
        xsDataResultReference = XSDataResultExecThumbnail.parseString(
            strExpectedOutput)
        xsDataResultObtained = XSDataResultExecThumbnail.parseString(
            strObtainedOutput)

        EDAssert.equal(xsDataResultReference.marshal(),
                       xsDataResultObtained.marshal(), "XML are the same")

        strExpectedOutput = self.readAndParseFile(
            self.getReferenceDataOutputFile())
        xsDataResultReference = XSDataResultExecThumbnail.parseString(
            strExpectedOutput)
        outputFileName = xsDataResultReference.getThumbnailPath().getPath(
        ).getValue()
        outputImage = Image.open(outputFileName)

        self.loadTestImage([os.path.basename(outputFileName)])
        referenceFileName = os.path.join(EDUtilsPath.EDNA_TESTIMAGES,
                                         os.path.basename(outputFileName))
        referenceImage = Image.open(referenceFileName)

        EDAssert.arraySimilar(numpy.asarray(outputImage),
                              numpy.asarray(referenceImage),
                              _strComment="Images are the same",
                              _fAbsMaxDelta=5)
コード例 #5
0
    def preProcess(self):
        """
        PreProcess of the execution test: download an EDF file from http://www.edna-site.org
        and remove any existing output file, i.e. /tmp/diff6105.edf 
        """
        EDTestCasePluginExecute.preProcess(self)

        xsDataInput = XSDataInputExecThumbnail.parseString(self.readAndParseFile (self.getDataInputFile()))
        self.loadTestImage([ os.path.basename(xsDataInput.getInputImagePath().getPath().getValue())])
        strExpectedOutput = self.readAndParseFile (self.getReferenceDataOutputFile())
        xsDataResultReference = XSDataResultExecThumbnail.parseString(strExpectedOutput)
        outputFileName = xsDataResultReference.getThumbnailPath().getPath().getValue()
        EDVerbose.DEBUG(" Output file is %s" % outputFileName)
        if os.path.isfile(outputFileName):
            EDVerbose.DEBUG(" Output file exists %s, I will remove it" % outputFileName)
            os.remove(outputFileName)
コード例 #6
0
    def preProcess(self):
        """
        PreProcess of the execution test: download an EDF file from http://www.edna-site.org
        and remove any existing output file, i.e. /tmp/diff6105.edf 
        """
        EDTestCasePluginExecute.preProcess(self)

        xsDataInput = XSDataInputExecThumbnail.parseString(
            self.readAndParseFile(self.getDataInputFile()))
        self.loadTestImage([
            os.path.basename(
                xsDataInput.getInputImagePath().getPath().getValue())
        ])
        strExpectedOutput = self.readAndParseFile(
            self.getReferenceDataOutputFile())
        xsDataResultReference = XSDataResultExecThumbnail.parseString(
            strExpectedOutput)
        outputFileName = xsDataResultReference.getThumbnailPath().getPath(
        ).getValue()
        EDVerbose.DEBUG(" Output file is %s" % outputFileName)
        if os.path.isfile(outputFileName):
            EDVerbose.DEBUG(" Output file exists %s, I will remove it" %
                            outputFileName)
            os.remove(outputFileName)
コード例 #7
0
ファイル: EDPluginExecThumbnailv10.py プロジェクト: kif/edna
    def postProcess(self, _edObject=None):
        """
        Postprocess of the plugin:
         
        * set output of the plugin
        * free some memory from large arrays
        """
        EDPluginExec.postProcess(self)
        EDVerbose.DEBUG("EDPluginExecThumbnailv10.postProcess")
        # Create some output data

        xsDataResult = XSDataResultExecThumbnail()
        if os.path.isfile(self.output):
            xsDataFile = XSDataFile()
            xsDataFile.setPath(XSDataString(self.output))
            xsDataResult.setThumbnailPath(xsDataFile)
            xsDataString = XSDataString()
            xsDataString.setValue(self.format)
            xsDataResult.setThumbnailType(xsDataString)
        self.setDataOutput(xsDataResult)
        self.npaImage = None