示例#1
0
    def testMenu(self):
        menu = rc.Menu(
            StringIO('''IDC_KLONK MENU
BEGIN
    POPUP "&File """
    BEGIN
        MENUITEM "E&xit",                       IDM_EXIT
        MENUITEM "This be ""Klonk"" me like",   ID_FILE_THISBE
        POPUP "gonk"
        BEGIN
            MENUITEM "Klonk && is ""good""",           ID_GONK_KLONKIS
        END
        MENUITEM "This is a very long menu caption to try to see if we can make the ID go to a continuation line, blablabla blablabla bla blabla blablabla blablabla blablabla blablabla...",
                                        ID_FILE_THISISAVERYLONGMENUCAPTIONTOTRYTOSEEIFWECANMAKETHEIDGOTOACONTINUATIONLINE
    END
    POPUP "&Help"
    BEGIN
        MENUITEM "&About ...",                  IDM_ABOUT
    END
END'''), 'IDC_KLONK')

        menu.Parse()
        self.failUnless(len(menu.GetTextualIds()) == 6)
        self.failUnless(len(menu.GetCliques()) == 1)
        self.failUnless(
            len(menu.GetCliques()[0].GetMessage().GetPlaceholders()) == 9)

        transl = menu.Translate('en')
        self.failUnless(transl.strip() == menu.GetText().strip())
  def testRegressionMenuId(self):
    menu = rc.Menu(StringIO.StringIO('''
IDR_HYPERMENU_FOLDER MENU
BEGIN
    POPUP "HyperFolder"
    BEGIN
        MENUITEM "Open Containing Folder",      IDM_OPENFOLDER
    END
END'''.strip()), 'IDR_HYPERMENU_FOLDER')
    menu.Parse()
    self.failUnless(len(menu.GetTextualIds()) == 2)
  def testRegressionTabs(self):
    menu = rc.Menu(StringIO.StringIO('''
IDR_HYPERMENU_FOLDER MENU
BEGIN
    POPUP "Hyper\\tFolder"
    BEGIN
        MENUITEM "Open Containing Folder",      IDM_OPENFOLDER
    END
END'''.strip()), 'IDR_HYPERMENU_FOLDER')
    menu.Parse()
    transl = menu.Translate('en')
    # Shouldn't find \\t (the \t shouldn't be changed to \\t)
    self.failUnless(transl.find('\\\\t') == -1)
示例#4
0
    def testRegressionNewlines(self):
        menu = rc.Menu('''
IDR_HYPERMENU_FOLDER MENU
BEGIN
    POPUP "Hyper\\nFolder"
    BEGIN
        MENUITEM "Open Containing Folder",      IDM_OPENFOLDER
    END
END'''.strip())
        menu.Parse()
        transl = menu.Translate('en')
        # Shouldn't find \\n (the \n shouldn't be changed to \\n)
        self.failUnless(transl.find('\\\\n') == -1)