def test2_nonLIFT(self):
     """Verify that toolbox and paxml files are read correctly.
     Make sure that non-lift files do not show the WS dialog.
     """
     Test2Data = collections.namedtuple(
         'Test2Data', ['filename', 'refNum', 'phm', 'pht', 'ge'])
     dataSets = [
         Test2Data("TbxPhonCorpus.xml", "JPDN37.6", u"a\u0256upa",
                   u"a\u0256\u0268pa", "kitchen.stove"),
         Test2Data("TbxPhonCorpus.xml", "JPDN37.4", u"pane", u"pæne",
                   "vessel.to.store.rice"),
         Test2Data("PAdata.paxml", "JPDN23.1", u"mat\u0283t\u0283æ",
                   u"m\u0259t\u0283\u025b", "unmarried cousin"),
         Test2Data("PAdata.paxml", "JPDN58.02", u"bod\u032ae", u"boðe",
                   "bush")
     ]
     for data in dataSets:
         useDialog = self._test2_make_useDialog(data)
         DlgPhonSettings.useDialog = useDialog
         DlgGrabExamples.useDialog = useDialog_insertEx(data.refNum)
         self.runDlgSettings(False)
         wsCode = self.dlgSettings.dlgCtrls.txtWritingSys.getText()
         self.assertEqual(wsCode, "")
         testutil.do_dispose(self.dlgSettings)
         self.runDlgGrabEx(True)
         self.verifyString(1, data.phm)
         self.verifyString(2, data.pht)
         self.verifyString(3, data.ge)
 def runDlg(self, useDialog):
     DlgDataConversion.useDialog = useDialog
     try:
         self.dlg.showDlg()
     except testutil.MsgSentException:
         pass
     testutil.do_dispose(self.dlg)
 def runDlg(self, useDialog):
     DlgApplyConverter.useDialog = useDialog
     self.dlg = DlgApplyConverter(self.calcUnoObjs)
     try:
         self.dlg.showDlg()
     except testutil.MsgSentException:
         pass
     testutil.do_dispose(self.dlg)
 def _test5_check_comparisondoc(self, dataSets):
     compDoc = self.dlgGrabEx.app.operations.exUpdater.compDoc
     self.assertIsNotNone(compDoc)
     self.assertIsNotNone(compDoc.writerDoc)
     self.assertIsNotNone(compDoc.writerDoc.document)
     numTables = compDoc.writerDoc.document.getTextTables().getCount()
     multiLineExs = 1  # number of examples that have another line
     self.assertEqual(numTables, 3 * len(dataSets) + multiLineExs)
     compDoc.writerDoc.document.close(True)
     testutil.do_dispose(self.dlgGrabEx)
     self.dlgGrabEx = None
Example #5
0
 def runDlg(self, useDialog, dispose=True):
     DlgSpellingAdjustments.useDialog = useDialog
     if self.dlg:
         testutil.do_dispose(self.dlg)
     self.dlg = DlgSpellingAdjustments(self.calcUnoObjs)
     try:
         self.dlg.showDlg()
     except testutil.MsgSentException:
         pass
     if dispose:
         testutil.do_dispose(self.dlg)
         self.dlg = None
    def _test1_lexPhonetic(self):
        """Lexeme Phonetic, Citation Phonemic"""
        def useDialog(innerSelf):
            filepath = os.path.join(util.TESTDATA_FOLDER, "FWlexicon.lift")
            innerSelf.dlgCtrls.fileControl.setText(filepath)
            innerSelf.evtHandler.actionPerformed(
                MyActionEvent("SelectWritingSys"))
            innerSelf.dlgCtrls.optionLexemePht.setState(1)
            innerSelf.evtHandler.actionPerformed(MyActionEvent("OK"))

        DlgPhonSettings.useDialog = useDialog
        DlgGrabExamples.useDialog = useDialog_insertEx("JPDN21.4")
        Test1BData = collections.namedtuple(
            'Test1BData', ['wsDisplay', 'wsIndex', 'wsCode', 'pht', 'phm'])
        dataSets = [
            Test1BData(
                # IPA
                "Irula (Phonetic) (iru-x-X_ETIC)",
                2,
                "iru-x-X_ETIC",
                u"amman",
                u"ammanCitForm"),
            Test1BData(
                # Tamil script
                "Vette Kada Irula (iru)",
                3,
                "iru",
                u"\u0b85\u0bae\u0bcd\u0bae\u0bc6",  # Tamil /amme/
                u"\u0b85\u0bae\u0bcd\u0bae\u0bc7"),  # Tamil /ammee/
            Test1BData(
                "(none)",
                0,
                "",
                u"\u0b85\u0bae\u0bcd\u0bae\u0bc6",  # Tamil /amme/
                u"\u0b85\u0bae\u0bcd\u0bae\u0bc7")
        ]  # Tamil /ammee/
        for data in dataSets:
            DlgWritingSystem.useDialog = useDialog_writingSys(
                self, data.wsDisplay, data.wsIndex)
            self.runDlgSettings(False)
            self.assertEqual(self.dlgSettings.dlgCtrls.txtWritingSys.getText(),
                             data.wsCode)
            testutil.do_dispose(self.dlgSettings)
            self.runDlgGrabEx(True)
            self.verifyString(1, data.phm)
            self.verifyString(2, data.pht)
            self.verifyString(3, "father")
            self.verifyString(4, "JPDN21.4")
Example #7
0
    def runDlg(self, useDialog=None, dispose=False, fileItem=None):
        if useDialog:
            DlgWordListFile.useDialog = useDialog
        else:

            def useDialog_empty(dummy_innerSelf):
                pass

            DlgWordListFile.useDialog = useDialog_empty

        if not fileItem:
            fileItem = WordListFileItem(None)
        if self.dlg:
            testutil.do_dispose(self.dlg)
        self.dlg = DlgWordListFile(fileItem, self.unoObjs, None)
        try:
            self.dlg.showDlg()
        except testutil.MsgSentException:
            pass
        if dispose:
            testutil.do_dispose(self.dlg)
            self.dlg = None
Example #8
0
 def runDlg(self, dispose):
     self.dlg = DlgBulkConversion(self.unoObjs)
     self.dlg.showDlg()
     if dispose:
         testutil.do_dispose(self.dlg)
         self.dlg = None
 def runDlgGrabEx(self, dispose):
     self.dlgGrabEx = DlgGrabExamples(EXTYPE_INTERLINEAR, self.unoObjs)
     self.dlgGrabEx.showDlg()
     if dispose:
         testutil.do_dispose(self.dlgGrabEx)
         self.dlgGrabEx = None
 def runDlgSettings(self, dispose):
     self.dlgSettings = DlgInterlinSettings(self.unoObjs)
     self.dlgSettings.showDlg()
     if dispose:
         testutil.do_dispose(self.dlgSettings)
         self.dlgSettings = None
 def tearDown(self):
     if self.dlg:
         if hasattr(self.dlg, "dlgDispose"):
             testutil.do_dispose(self.dlg)
Example #12
0
    def test6_results(self):
        """Set the form contents and dlg.fileItem.
        Verify resulting dlg.fileItem and dlg.ok.
        """
        initial_param = WordListFileItem(None)
        initial_param.filepath = r"C:\a\b\c.lift"
        initial_param.filetype = 'lift'
        initial_param.writingSystem = "iru"
        whatToGrab = WhatToGrab(None)
        whatToGrab.grabType = WhatToGrab.FIELD
        whatToGrab.whichOne = "phm"
        initial_param.thingsToGrab.append(whatToGrab)
        initial_param.splitByWhitespace = False

        stuff_to_add = WordListFileItem(None)
        stuff_to_add.filepath = r"/home/user1/a/b/c.LIFT"
        stuff_to_add.filetype = 'lift'
        stuff_to_add.writingSystem = "iru-x-X_ETIC"
        whatToGrab = WhatToGrab(None)
        whatToGrab.grabType = WhatToGrab.FIELD
        whatToGrab.whichOne = "pht"
        stuff_to_add.thingsToGrab.append(whatToGrab)
        stuff_to_add.splitByWhitespace = False

        Test6Data = collections.namedtuple('Test6Data',
                                           ['action', 'param_filled', 'do_ok'])
        dataSets = [
            Test6Data(action, param_filled, do_ok)
            for action in ('no change', 'add', 'remove')
            for param_filled in (False, True) for do_ok in (True, False)
        ]
        for data in dataSets:
            if data.param_filled:
                fileItem_in = initial_param.getDeepCopy()
            else:
                fileItem_in = WordListFileItem(None)
            fileItem_in_out = fileItem_in.getDeepCopy()
            useDialog = self._test6_make_useDialog(data, fileItem_in,
                                                   stuff_to_add)
            try:
                self.runDlg(useDialog, fileItem=fileItem_in_out)
                self.assertEqual(self.dlg.getResult(),
                                 data.do_ok,
                                 msg=repr(data))
                if data.action == 'no change' or not data.do_ok:
                    assert_fileitems_equal(fileItem_in_out,
                                           fileItem_in,
                                           self,
                                           msg=repr(data))
                elif data.action == 'add':
                    verifyItem = stuff_to_add.getDeepCopy()
                    if data.param_filled:
                        verifyItem.thingsToGrab = list(
                            initial_param.thingsToGrab)
                        verifyItem.thingsToGrab.extend(
                            stuff_to_add.thingsToGrab)
                    assert_fileitems_equal(fileItem_in_out,
                                           verifyItem,
                                           self,
                                           msg=repr(data))
                    assert_fileitems_notequal(fileItem_in_out,
                                              fileItem_in,
                                              self,
                                              msg=repr(data))
                elif data.action == 'remove':
                    verifyItem = fileItem_in.getDeepCopy()
                    del verifyItem.thingsToGrab[:]
                    assert_fileitems_equal(fileItem_in_out,
                                           verifyItem,
                                           self,
                                           msg=repr(data))
            finally:
                testutil.do_dispose(self.dlg)
                self.dlg = None
 def runDlg(self, useDialog):
     DlgAbbreviations.useDialog = useDialog
     self.dlg.showDlg()
     testutil.do_dispose(self.dlg)
Example #14
0
 def runDlgGrabEx(self, dispose):
     self.dlgGrabEx = DlgGrabExamples("grammar", self.unoObjs)
     self.dlgGrabEx.showDlg()
     if dispose:
         testutil.do_dispose(self.dlgGrabEx)
         self.dlgGrabEx = None