Пример #1
0
    def test_get_versions(self):
        """
            Assert that a path can get all versions
        """
        pages = [
            self.page_1,
            self.page_2,
            self.page_3,
            self.page_4
        ]

        pages_1 = Page.get_versions(self.page_1.path, pages)
        pages_2 = Page.get_versions(self.page_2.path, pages)
        pages_3 = Page.get_versions(self.page_3.path, pages)
        pages_4 = Page.get_versions(self.page_4.path, pages)

        assert self.page_1 in pages_1
        assert self.page_2 not in pages_1
        assert self.page_3 not in pages_1
        assert self.page_4 not in pages_1

        assert self.page_1 not in pages_2
        assert self.page_2 in pages_2
        assert self.page_3 in pages_2
        assert self.page_4 not in pages_2

        assert self.page_1 not in pages_3
        assert self.page_2 in pages_3
        assert self.page_3 in pages_3
        assert self.page_4 not in pages_3

        assert self.page_1 not in pages_4
        assert self.page_2 not in pages_4
        assert self.page_3 not in pages_4
        assert self.page_4 in pages_4
Пример #2
0
def delete(url):
    page = current_wiki.get_or_404(url)
    all_pages = current_wiki.index()
    pages = Page.get_versions(page.path, all_pages)

    for p in pages:
        current_wiki.delete(p.url)

    flash('Page "%s" was deleted.' % page.title, 'success')
    return redirect(url_for('wiki.home'))
Пример #3
0
def versions(url):
    """
    @file: routes.py
    @author: Dustin Gulley
    @date: 04/08/2018
    Returns all page versions of a specified url
    'myfile_v1' -> [Page with 'path/to/myfile_v1.txt', Page with 'path/to/myfile_v2.txt']
    """
    page = current_wiki.get(url)
    all_pages = current_wiki.index()
    pages = Page.get_versions(page.path, all_pages)
    return render_template('versions.html', pages=pages)
Пример #4
0
def move(url):
    page = current_wiki.get_or_404(url)
    form = URLForm(obj=page)
    if form.validate_on_submit():
        newurl = form.url.data
        current_wiki.move(url, newurl)

        # Delete non-moved pages
        all_pages = current_wiki.index()
        pages = Page.get_versions(page.path, all_pages)

        for p in pages:
            current_wiki.delete(p.url)

        flash('Page "%s" was deleted.' % page.title, 'success')

        return redirect(url_for('wiki.display', url=newurl))
    return render_template('move.html', form=form, page=page)