Beispiel #1
0
 def test_problemNameRecognition(self):
     rm = ReaderManager()
     problemnames2line = {}
     fname = os.path.join(DATADIR, "problemnames.txt")
     with open(fname, "r") as problemNames:
         for line in problemNames:
             parsedName = rm.getProblemName(line)
             self.assertIsNotNone(parsedName, "'%s' problem name line was parsed to None" % line)
             msg = "Error in line '%s'\n: '%s' already contained in line '%s'" % \
                   (line, parsedName, problemnames2line.get(parsedName))
             self.assertTrue((parsedName not in problemnames2line), msg)
             problemnames2line[parsedName] = line[:]
Beispiel #2
0
    def test_fileExtensions(self):
        """
        Test if an experiment accepts
        """
        # all possible extensions  should be accepted
        for extension in ReaderManager().getFileExtensions():
            self.experiment.addOutputFile("bla" + extension)

        # if called with an unknown extension, this should raise a ValueError
        for otherextension in [".res", ".txt"]:
            with self.assertRaises(ValueError):
                self.experiment.addOutputFile("bla" + otherextension)
Beispiel #3
0
def loadAdditionalReaders(filenames=[]):
    readers = []
    # TODO Test this
    if filenames == []:
        filenames = os.listdir('./')
        if readersDirExists():
            filenames = filenames + os.listdir(getReadersDir())
    for _file in filenames:
        if _file.endswith(".xml") or _file.endswith(".ipr"):
            try:
                rm = ReaderManager.fromXMLFile(_file)
                readers = readers + rm.getChildren()
            except:
                pass
    return readers
Beispiel #4
0
    def loadParser(self):
        thedir = str(".")
        filename = str(
            QFileDialog.getOpenFileName(self,
                                        caption="%s - Load a parser" %
                                        QApplication.applicationName(),
                                        directory=thedir,
                                        filter=str("XML files (*.xml)")))
        if filename:
            try:
                parser = ReaderManager.fromXMLFile(filename)
                message = "Loaded parser from %s" % filename
                self.setParser(parser)
            except Exception:
                message = "Error: Could not load parser from file %s" % filename

            self.updateStatus(message)
Beispiel #5
0
                                        filter=str("XML files (*.xml)")))
        if not filename:
            return

        misc.saveAsXML(self.parser, filename)
        self.filename = filename
        self.updateStatus("Saved parser to file %s" % filename)


if __name__ == '__main__':
    app = QApplication(sys.argv)
    imw = IpetMainWindow()
    imw.setWindowTitle("Parser Window")

    app.setApplicationName("Parser Window")

    readermanager = ReaderManager.fromXMLFile("../scripts/readers-example.xml")
    ExperimentManagement.addOutputFiles([
        '../test/check.short.scip-3.1.0.1.linux.x86_64.gnu.dbg.spx.opt85.testmode.out'
    ])
    ExperimentManagement.getExperiment().collectData()
    parserwindow = IPETParserWindow()
    parserwindow.setParser(readermanager)
    imw.setCentralWidget(parserwindow)
    imw.populateMenu(parserwindow)
    imw.populateToolBar(parserwindow)

    imw.show()

    sys.exit(app.exec_())