Ejemplo n.º 1
0
    def testMaxDepth1(self):
        from statistics.treestat import TreeStat

        WikiPageFactory().create(self.wikiroot, "Страница 1", [])

        treeStat = TreeStat(self.wikiroot)

        self.assertEqual(len(treeStat.maxDepth), 1)

        self.assertEqual(treeStat.maxDepth[0][0], 1)
        self.assertEqual(treeStat.maxDepth[0][1], self.wikiroot["Страница 1"])
Ejemplo n.º 2
0
    def testAttachmentSize2(self):
        from statistics.treestat import TreeStat

        treeStat = TreeStat(self.wikiroot)
        WikiPageFactory().create(self.wikiroot, "Страница 1", [])

        pagesList = treeStat.pageAttachmentsSize

        self.assertEqual(len(pagesList), 1)
        self.assertEqual(pagesList[0][0], self.wikiroot["Страница 1"])
        self.assertEqual(pagesList[0][1], 0)
Ejemplo n.º 3
0
    def test_global_var_childlist_02(self):
        from snippets.snippetparser import SnippetParser
        page = self.testPage
        subpage1 = WikiPageFactory().create(page, "Страница 1", [])
        subpage2 = WikiPageFactory().create(page, "Страница 2", [])
        subpage3 = WikiPageFactory().create(page, "Страница 3", [])

        subpage2.order = 1
        subpage3.order = 4
        subpage1.order = 10

        template = '{{__childlist}}'
        selectedText = ''
        vars = {}

        right_result = 'Страница 2, Страница 3, Страница 1'

        parser = SnippetParser(template, '.', self.application)
        result = parser.process(selectedText, page, **vars)

        self.assertEqual(result, right_result)
Ejemplo n.º 4
0
    def setUp(self):
        BaseMainWndTest.setUp(self)
        self.config = GeneralGuiConfig(Application.config)
        self.config.pageTab.remove_option()

        self.wikipage = WikiPageFactory().create(self.wikiroot,
                                                 u'Викистраница', [])
        self.htmlpage = HtmlPageFactory().create(self.wikiroot,
                                                 u'HTML-страница', [])

        Application.wikiroot = self.wikiroot
        Application.selectedPage = None
Ejemplo n.º 5
0
    def setUp(self):
        dirlist = ["plugins/datagraph", "plugins/htmlheads"]

        self.loader = PluginsLoader(Application)
        self.loader.load(dirlist)

        self.path = mkdtemp(prefix='Абырвалг абыр')
        self.wikiroot = WikiDocument.create(self.path)
        self.page = WikiPageFactory().create(self.wikiroot, "Страница 1", [])
        Application.wikiroot = None

        self.parser = ParserFactory().make(self.page, Application.config)
Ejemplo n.º 6
0
def _create_tree(level, maxlevel, nsiblings, parent):
    from outwiker.pages.wiki.wikipage import WikiPageFactory

    if level <= maxlevel:
        for n in range(nsiblings):
            pagename = u'page_{:03g}_{:03g}'.format(level, n)
            print(u'Create page {}'.format(pagename))

            newpage = WikiPageFactory().create(parent, pagename, [])
            newpage.content = u'Абырвалг'
            newpage.icon = u'images/outwiker_16.png'
            _create_tree(level + 1, maxlevel, nsiblings, newpage)
Ejemplo n.º 7
0
    def setUp(self):
        self.initApplication()
        self.wikiroot = self.createWiki()
        self.testPage = WikiPageFactory().create(self.wikiroot, "Страница 1",
                                                 [])
        plugins_dir = ["plugins/snippets"]

        self.loader = PluginsLoader(self.application)
        self.loader.load(plugins_dir)

        self.application.wikiroot = self.wikiroot
        self.application.selectedPage = self.testPage
Ejemplo n.º 8
0
    def test_dot(self):
        page = WikiPageFactory().create(self.wikiroot, 'Викистраница', [])
        Tester.dialogTester.append(self._set_title_func, '.')
        Tester.dialogTester.appendError()

        editPage(self.application.mainWindow, page)

        self.assertIsNone(self.wikiroot['Викистраница'])
        self.assertEqual(page.title, '(1)')
        self.assertEqual(page.display_title, '.')
        self.assertIsNotNone(self.wikiroot['(1)'])
        self.assertEqual(self.wikiroot['(1)'].alias, '.')
Ejemplo n.º 9
0
    def test_special_chars(self):
        page = WikiPageFactory().create(self.wikiroot, 'Викистраница', [])
        Tester.dialogTester.append(self._set_title_func,
                                   'Тест ><|?*:"\\/#% проверка')
        Tester.dialogTester.appendError()

        editPage(self.application.mainWindow, page)

        self.assertEqual(page.title, 'Тест ___________ проверка')
        self.assertEqual(page.display_title, 'Тест ><|?*:"\\/#% проверка')
        self.assertEqual(page.alias, 'Тест ><|?*:"\\/#% проверка')
        self.assertIsNotNone(self.wikiroot['Тест ___________ проверка'])
Ejemplo n.º 10
0
 def reset():
     """
     Установить словарь фабрик в первоначальное состояние.
     Используется для тестирования.
     Это не конструктор. В случае изменения списка фабрик,
     установленных по умолчанию, нужно изменять этот метод.
     """
     FactorySelector._factories = {factory.getTypeString(): factory
                                   for factory
                                   in [WikiPageFactory(),
                                       HtmlPageFactory(),
                                       TextPageFactory(),
                                       SearchPageFactory()]}
    def setUp (self):
        super (LinkDialogControllerTest, self).setUp()
        copyTextToClipboard (u'')
        self._config = WikiConfig (Application.config)
        self._config.linkStyleOptions.value = 0

        self.files = [u'../test/samplefiles/accept.png',
                      u'../test/samplefiles/add.png',
                      u'../test/samplefiles/html.txt',
                      ]

        factory = WikiPageFactory()
        self._testpage = factory.create (self.wikiroot, u"Страница 1", [])
Ejemplo n.º 12
0
    def testAttachmentSize3(self):
        from statistics.treestat import TreeStat

        treeStat = TreeStat(self.wikiroot)
        WikiPageFactory().create(self.wikiroot, u"Страница 1", [])
        Attachment(self.wikiroot[u"Страница 1"]).attach(
            self.fullFilesPath[0:1])

        pagesList = treeStat.pageAttachmentsSize

        self.assertEqual(len(pagesList), 1)
        self.assertEqual(pagesList[0][0], self.wikiroot[u"Страница 1"])
        self.assertEqual(pagesList[0][1], 781)
Ejemplo n.º 13
0
    def testPageContentLength2(self):
        from statistics.treestat import TreeStat

        WikiPageFactory().create(self.wikiroot, u"Страница 1", [])
        self.wikiroot[u"Страница 1"].content = u"Бла"

        treeStat = TreeStat(self.wikiroot)

        pagesList = treeStat.pageContentLength

        self.assertEqual(len(pagesList), 1)
        self.assertEqual(pagesList[0][0], self.wikiroot[u"Страница 1"])
        self.assertEqual(pagesList[0][1], 3)
Ejemplo n.º 14
0
    def testPageDate3(self):
        from statistics.treestat import TreeStat

        treeStat = TreeStat(self.wikiroot)
        WikiPageFactory().create(self.wikiroot, "Страница 1", [])
        WikiPageFactory().create(self.wikiroot["Страница 1"], "Страница 2", [])
        WikiPageFactory().create(self.wikiroot["Страница 1/Страница 2"],
                                 "Страница 3", [])

        self.wikiroot["Страница 1"].datetime = datetime.datetime(2013, 4, 23)
        self.wikiroot["Страница 1/Страница 2"].datetime = datetime.datetime(
            2013, 4, 20)
        self.wikiroot[
            "Страница 1/Страница 2/Страница 3"].datetime = datetime.datetime(
                2013, 4, 30)

        self.assertEqual(len(treeStat.pageDate), 3)
        self.assertEqual(treeStat.pageDate[0],
                         self.wikiroot["Страница 1/Страница 2/Страница 3"])
        self.assertEqual(treeStat.pageDate[1], self.wikiroot["Страница 1"])
        self.assertEqual(treeStat.pageDate[2],
                         self.wikiroot["Страница 1/Страница 2"])
Ejemplo n.º 15
0
    def setUp(self):
        self.initApplication()
        self.wikiroot = self.createWiki()
        self.actionController = self.application.actionController
        self.action = self.application.actionController.getAction(TEXT_COLOR_STR_ID)

        WikiPageFactory().create(self.wikiroot, "wiki", [])
        self.testedPage = self.wikiroot["wiki"]
        self.application.wikiroot = self.wikiroot
        self.application.selectedPage = self.testedPage

        self.editor = self.application.mainWindow.pagePanel.pageView.codeEditor
        Tester.dialogTester.clear()
Ejemplo n.º 16
0
    def setUp(self):
        self.initApplication()
        self.wikiroot = self.createWiki()
        self.testPage = WikiPageFactory().create(self.wikiroot, "Страница 1",
                                                 [])

        self.filesPath = "testdata/samplefiles/"
        dirlist = ["plugins/texequation"]

        self.loader = PluginsLoader(self.application)
        self.loader.load(dirlist)

        self.testPage = self.wikiroot["Страница 1"]
Ejemplo n.º 17
0
    def setUp(self):
        super(WikiTableActionsTest, self).setUp()
        self._application = Application

        config = GeneralGuiConfig(self._application.config)
        config.tableColsCount.remove_option()
        factory = WikiPageFactory()
        self._testpage = factory.create(self.wikiroot, u"Страница 1", [])

        self._application.wikiroot = self.wikiroot
        self._application.selectedPage = self._testpage

        Tester.dialogTester.appendOk()
Ejemplo n.º 18
0
    def setUp(self):
        self.initApplication()
        self.wikiroot = self.createWiki()
        self.config = GeneralGuiConfig(self.application.config)
        self.config.pageTab.remove_option()

        self.wikipage = WikiPageFactory().create(self.wikiroot, 'Викистраница',
                                                 [])
        self.htmlpage = HtmlPageFactory().create(self.wikiroot,
                                                 'HTML-страница', [])

        self.application.wikiroot = self.wikiroot
        self.application.selectedPage = None
Ejemplo n.º 19
0
    def setUp(self):
        self.initApplication()
        self.wikiroot = self.createWiki()

        config = GeneralGuiConfig(self.application.config)
        config.tableColsCount.remove_option()
        factory = WikiPageFactory()
        self._testpage = factory.create(self.wikiroot, "Страница 1", [])

        self.application.wikiroot = self.wikiroot
        self.application.selectedPage = self._testpage

        Tester.dialogTester.appendOk()
Ejemplo n.º 20
0
    def setUp(self):
        dirlist = ["plugins/datagraph"]

        self.loader = PluginsLoader(Application)
        self.loader.load(dirlist)

        self._defaultWidth = '700'
        self._defaultHeight = '300'

        self.path = mkdtemp(prefix='Абырвалг абыр')
        self.wikiroot = WikiDocument.create(self.path)
        self.page = WikiPageFactory().create(self.wikiroot, "Страница 1", [])
        Application.wikiroot = None
Ejemplo n.º 21
0
    def setUp(self):
        self.initApplication()
        self.wikiroot = self.createWiki()
        self.testPage = WikiPageFactory().create(self.wikiroot, "Страница 1",
                                                 [])
        plugins_dir = ["plugins/snippets"]
        self.application.wikiroot = self.wikiroot

        self.loader = PluginsLoader(self.application)
        self.loader.load(plugins_dir)

        from snippets.gui.variablesdialog import VariablesDialogController
        self._controller = VariablesDialogController(self.application)
Ejemplo n.º 22
0
    def testMulti_01(self):
        WikiPageFactory().create(self.wikiroot, "Викистраница 1", [])
        WikiPageFactory().create(self.wikiroot, "Викистраница 2", [])

        fname_1 = os.path.join(self.wikiroot["Викистраница 1"].path,
                               self.styleFile)
        fname_2 = os.path.join(self.wikiroot["Викистраница 2"].path,
                               self.styleFile)

        self.application.wikiroot = self.wikiroot
        self.application.selectedPage = None

        Tester.dialogTester.append(self.__selectSecond)
        self.application.actionController.getAction(
            SetStyleToBranchAction.stringId).run(None)

        self.assertTrue(os.path.exists(fname_1))
        self.assertTrue(os.path.exists(fname_2))
        self.assertTrue(
            os.path.exists(self.wikiroot["Викистраница 1"].getHtmlPath()))
        self.assertTrue(
            os.path.exists(self.wikiroot["Викистраница 2"].getHtmlPath()))
Ejemplo n.º 23
0
    def test_duplicate_01(self):
        WikiPageFactory().create(self.wikiroot, "Викистраница", [])

        Tester.dialogTester.append(self._set_title_func, 'Викистраница')
        Tester.dialogTester.appendError()
        createPageWithDialog(self.application.mainWindow, self.wikiroot)

        self.assertEqual(len(self.wikiroot), 2)
        self.assertIsNotNone(self.wikiroot['Викистраница'])

        self.assertIsNotNone(self.wikiroot['Викистраница (1)'])
        self.assertEqual(self.wikiroot['Викистраница (1)'].alias,
                         'Викистраница')
Ejemplo n.º 24
0
    def test_begin_special_chars_underlines(self):
        page = WikiPageFactory().create(self.wikiroot, 'Викистраница', [])
        Tester.dialogTester.append(self._set_title_func, '##Викистраница')
        Tester.dialogTester.appendError()

        editPage(self.application.mainWindow, page)

        self.assertIsNone(self.wikiroot['Викистраница'])
        self.assertEqual(page.title, '--Викистраница')
        self.assertEqual(page.display_title, '##Викистраница')
        self.assertIsNotNone(self.wikiroot['--Викистраница'])
        self.assertEqual(self.wikiroot['--Викистраница'].alias,
                         '##Викистраница')
Ejemplo n.º 25
0
    def setUp(self):
        super(InsertDateTest, self).setUp()

        WikiPageFactory().create(self.wikiroot, u"Викистраница", [])
        HtmlPageFactory().create(self.wikiroot, u"HTML", [])

        self._wikipage = self.wikiroot[u"Викистраница"]
        self._wikipage.content = u""

        self._htmlpage = self.wikiroot[u"Викистраница"]
        self._htmlpage.content = u""

        Application.wikiroot = self.wikiroot
        Application.selectedPage = self._wikipage
Ejemplo n.º 26
0
    def setUp(self):
        self.__pluginname = "Spoiler"
        self.initApplication()
        self.wikiroot = self.createWiki()
        self.testPage = WikiPageFactory().create(self.wikiroot, "Страница 1",
                                                 [])

        dirlist = ["plugins/spoiler"]

        self.loader = PluginsLoader(self.application)
        self.loader.load(dirlist)

        self.factory = ParserFactory()
        self.parser = self.factory.make(self.testPage, self.application.config)
Ejemplo n.º 27
0
    def testSingle_03 (self):
        WikiPageFactory().create (self.wikiroot, u"Викистраница", [])
        page = self.wikiroot[u"Викистраница"]
        path = os.path.join (page.path, self.styleFile)

        Application.wikiroot = self.wikiroot
        Application.selectedPage = None

        Tester.dialogTester.append (self.__selectDefault)

        Application.actionController.getAction (SetStyleToBranchAction.stringId).run(None)

        self.assertEqual (Tester.dialogTester.count, 0)
        self.assertFalse (os.path.exists (path))
Ejemplo n.º 28
0
    def testLinesWiki1(self):
        from statistics.pagestat import PageStat

        WikiPageFactory().create(self.wikiroot, "Страница 1", [])
        testPage = self.wikiroot["Страница 1"]

        testPage.content = """Бла бла бла
Еще одна строка
И еще строка
Последняя строка"""

        pageStat = PageStat(testPage)

        self.assertEqual(pageStat.lines, 4)
Ejemplo n.º 29
0
    def testFrequentTags4(self):
        from statistics.treestat import TreeStat

        WikiPageFactory().create(self.wikiroot, "Страница 1",
                                 ["тег 1", "тег 2", "тег 3"])
        WikiPageFactory().create(self.wikiroot["Страница 1"], "Страница 2",
                                 ["тег 1", "тег 3"])
        WikiPageFactory().create(self.wikiroot["Страница 1/Страница 2"],
                                 "Страница 3", ["тег 3"])
        WikiPageFactory().create(self.wikiroot, "Страница 4", [])
        WikiPageFactory().create(self.wikiroot["Страница 1"], "Страница 5", [])

        treeStat = TreeStat(self.wikiroot)

        self.assertEqual(len(treeStat.frequentTags), 3)
        self.assertEqual(treeStat.frequentTags[0][0], "тег 3")
        self.assertEqual(treeStat.frequentTags[0][1], 3)

        self.assertEqual(treeStat.frequentTags[1][0], "тег 1")
        self.assertEqual(treeStat.frequentTags[1][1], 2)

        self.assertEqual(treeStat.frequentTags[2][0], "тег 2")
        self.assertEqual(treeStat.frequentTags[2][1], 1)
    def setUp(self):
        self.path = mkdtemp(prefix='Абырвалг абыр')

        self.wikiroot = WikiDocument.create(self.path)

        WikiPageFactory().create(self.wikiroot, "Страница 1", [])
        self.testPage = self.wikiroot["Страница 1"]

        filesPath = "testdata/samplefiles/"
        self.files = ["accept.png", "add.png", "first.jpg",
                      "image.jpeg", "файл с пробелами.tmp"]
        self.fullFilesPath = [os.path.join(filesPath, fname)
                              for fname
                              in self.files]