~ubuntu-branches/ubuntu/natty/moin/natty-updates

« back to all changes in this revision

Viewing changes to MoinMoin/macro/_tests/test_GetVal.py

  • Committer: Bazaar Package Importer
  • Author(s): Jonas Smedegaard
  • Date: 2008-06-22 21:17:13 UTC
  • mto: This revision was merged to the branch mainline in revision 18.
  • Revision ID: james.westby@ubuntu.com-20080622211713-inlv5k4eifxckelr
ImportĀ upstreamĀ versionĀ 1.7.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
3
3
    MoinMoin - MoinMoin.macro GetVal tested
4
4
 
5
5
    @copyright: 2007 MoinMoin:ReimarBauer
 
6
 
6
7
    @license: GNU GPL, see COPYING for details.
7
8
"""
8
9
import os, py
10
11
from MoinMoin import macro
11
12
from MoinMoin.Page import Page
12
13
from MoinMoin.PageEditor import PageEditor
13
 
from MoinMoin._tests import become_trusted, create_page, make_macro, nuke_page
 
14
 
 
15
from MoinMoin._tests import become_trusted, create_page, nuke_page
14
16
 
15
17
class TestGetVal:
16
18
    """GetVal: testing getVal macro """
23
25
    def teardown_class(self):
24
26
        nuke_page(self.request, self.pagename)
25
27
 
26
 
    def _test_macro(self, name, args, page):
27
 
        m = make_macro(self.request, page)
 
28
    def _make_macro(self):
 
29
        """Test helper"""
 
30
        from MoinMoin.parser.text import Parser
 
31
        from MoinMoin.formatter.text_html import Formatter
 
32
        p = Parser("##\n", self.request)
 
33
        p.formatter = Formatter(self.request)
 
34
        p.formatter.page = self.page
 
35
        self.request.formatter = p.formatter
 
36
        p.form = self.request.form
 
37
        m = macro.Macro(p)
 
38
        return m
 
39
 
 
40
    def _test_macro(self, name, args):
 
41
        m = self._make_macro()
28
42
        return m.execute(name, args)
29
43
 
30
44
    def testGetValNoACLs(self):
31
45
        """ macro GetVal test: 'reads VAR' """
32
 
        page = create_page(self.request, self.pagename, u' VAR:: This is an example')
33
 
        result = self._test_macro(u'GetVal', "%s,%s" % (self.pagename, u'VAR'), page)
 
46
 
 
47
        self.page = create_page(self.request, self.pagename, u' VAR:: This is an example')
 
48
 
 
49
        result = self._test_macro(u'GetVal', "%s,%s" % (self.pagename, u'VAR'))
 
50
 
34
51
        assert result == "This is an example"
35
52
 
36
53
    def testGetValAfterADictPageIsDeleted(self):
37
54
        """ macro GetVal test: 'reads Dict var after another Dict is removed' """
38
55
        request = self.request
39
 
        become_trusted(request)
 
56
 
40
57
        page = create_page(request, u'SomeDict', u" EXAMPLE:: This is an example text")
41
58
        page.deletePage()
 
59
 
42
60
        page = create_page(request, self.pagename, u' VAR:: This is a brand new example')
43
 
        result = self._test_macro(u'GetVal', "%s,%s" % (self.pagename, u'VAR'), page)
 
61
        result = self._test_macro(u'GetVal', "%s,%s" % (self.pagename, u'VAR'))
 
62
 
44
63
        nuke_page(request, u'SomeDict')
 
64
 
45
65
        assert result == "This is a brand new example"
46
66
 
47
67
    def testGetValACLs(self):
48
68
        """ macro GetVal test: 'cant read VAR on an ACL protected page' """
49
69
        py.test.skip("user has no rights to create acl pages")
50
 
        page = create_page(self.request, self.pagename,
51
 
                           '#acl SomeUser:read,write All:delete\n VAR:: This is an example')
52
 
        result = self._test_macro(u'GetVal', "%s,%s" % (self.pagename, u'VAR'), page)
 
70
        self.page = create_page(self.request, self.pagename,
 
71
                                '#acl SomeUser:read,write All:delete\n VAR:: This is an example')
 
72
        result = self._test_macro(u'GetVal', "%s,%s" % (self.pagename, u'VAR'))
53
73
        assert result == "<<GetVal: You don't have enough rights on this page>>"
54
74
 
55
75
coverage_modules = ['MoinMoin.macro.GetVal']